diff options
author | Torbjorn Granlund <tege@gmplib.org> | 2011-11-09 22:31:09 +0100 |
---|---|---|
committer | Torbjorn Granlund <tege@gmplib.org> | 2011-11-09 22:31:09 +0100 |
commit | 76dbb3ab764f748395af063c5b58f188ccbdb163 (patch) | |
tree | 77fa4883f0f912ee56d48be1497f95c081ab41e0 | |
parent | 0247111bce9444a966b57323f42fdd3e5a754b22 (diff) | |
download | gmp-76dbb3ab764f748395af063c5b58f188ccbdb163.tar.gz |
Add measuring of mpn_addcnd_n, mpn_subcnd_n.
-rw-r--r-- | tune/common.c | 11 | ||||
-rw-r--r-- | tune/speed.c | 3 | ||||
-rw-r--r-- | tune/speed.h | 2 |
3 files changed, 16 insertions, 0 deletions
diff --git a/tune/common.c b/tune/common.c index dbcc5ce90..eb2d4ba1a 100644 --- a/tune/common.c +++ b/tune/common.c @@ -1107,6 +1107,17 @@ speed_mpn_rsh1sub_n (struct speed_params *s) } #endif +double +speed_mpn_addcnd_n (struct speed_params *s) +{ + SPEED_ROUTINE_MPN_BINARY_N_CALL (mpn_addcnd_n (wp, xp, yp, s->size, 1)); +} +double +speed_mpn_subcnd_n (struct speed_params *s) +{ + SPEED_ROUTINE_MPN_BINARY_N_CALL (mpn_subcnd_n (wp, xp, yp, s->size, 1)); +} + /* mpn_and_n etc can be macros and so have to be handled with SPEED_ROUTINE_MPN_BINARY_N_CALL forms */ double diff --git a/tune/speed.c b/tune/speed.c index 0604edded..061517e28 100644 --- a/tune/speed.c +++ b/tune/speed.c @@ -468,6 +468,9 @@ const struct routine_t { { "mpn_rsh1sub_n", speed_mpn_rsh1sub_n, FLAG_R_OPTIONAL }, #endif + { "mpn_addcnd_n", speed_mpn_addcnd_n, FLAG_R_OPTIONAL }, + { "mpn_subcnd_n", speed_mpn_subcnd_n, FLAG_R_OPTIONAL }, + { "MPN_ZERO", speed_MPN_ZERO }, { "binvert_limb", speed_binvert_limb, FLAG_NODATA }, diff --git a/tune/speed.h b/tune/speed.h index 08c01a5dc..70484d391 100644 --- a/tune/speed.h +++ b/tune/speed.h @@ -148,6 +148,7 @@ double speed_mpn_add_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_add_err1_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_add_err2_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_add_err3_n __GMP_PROTO ((struct speed_params *s)); +double speed_mpn_addcnd_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_addlsh_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_addlsh1_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_addlsh2_n __GMP_PROTO ((struct speed_params *s)); @@ -305,6 +306,7 @@ double speed_mpn_sub_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_sub_err1_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_sub_err2_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_sub_err3_n __GMP_PROTO ((struct speed_params *s)); +double speed_mpn_subcnd_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_sublsh_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_sublsh1_n __GMP_PROTO ((struct speed_params *s)); double speed_mpn_sublsh2_n __GMP_PROTO ((struct speed_params *s)); |