diff options
author | Marco Bodrato <bodrato@mail.dm.unipi.it> | 2015-08-06 04:23:43 +0200 |
---|---|---|
committer | Marco Bodrato <bodrato@mail.dm.unipi.it> | 2015-08-06 04:23:43 +0200 |
commit | 1e2d3478a34da0aed55bd4d57903c38c377d0d37 (patch) | |
tree | 1efb255c196e889d80ed1e6f3b000c380c1e586e /tune/speed.h | |
parent | 24d699066b311dc5e900db85cdd95084831c5672 (diff) | |
download | gmp-1e2d3478a34da0aed55bd4d57903c38c377d0d37.tar.gz |
tune: Support mpn_sqrlo and mpn_sqrlo_basecase in tune/speed.
Diffstat (limited to 'tune/speed.h')
-rw-r--r-- | tune/speed.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/tune/speed.h b/tune/speed.h index 0c28780bd..9fdb06bfd 100644 --- a/tune/speed.h +++ b/tune/speed.h @@ -277,6 +277,8 @@ double speed_mpn_nussbaumer_mul_sqr (struct speed_params *); double speed_mpn_mul_n (struct speed_params *); double speed_mpn_mul_n_sqr (struct speed_params *); double speed_mpn_mulmid_n (struct speed_params *); +double speed_mpn_sqrlo (struct speed_params *); +double speed_mpn_sqrlo_basecase (struct speed_params *); double speed_mpn_mullo_n (struct speed_params *); double speed_mpn_mullo_basecase (struct speed_params *); double speed_mpn_nand_n (struct speed_params *); @@ -1143,8 +1145,10 @@ int speed_routine_count_zeros_setup (struct speed_params *, mp_ptr, int, int); #define SPEED_ROUTINE_MPN_MULLO_N(function) \ SPEED_ROUTINE_MPN_MULLO_N_CALL (function (wp, s->xp, s->yp, s->size)); -/* For mpn_mul_basecase, xsize=r, ysize=s->size. */ #define SPEED_ROUTINE_MPN_MULLO_BASECASE(function) \ + SPEED_ROUTINE_MPN_MULLO_N_CALL (function (wp, s->xp, s->yp, s->size)); + +#define SPEED_ROUTINE_MPN_SQRLO(function) \ { \ mp_ptr wp; \ unsigned i; \ @@ -1157,14 +1161,13 @@ int speed_routine_count_zeros_setup (struct speed_params *, mp_ptr, int, int); SPEED_TMP_ALLOC_LIMBS (wp, s->size, s->align_wp); \ \ speed_operand_src (s, s->xp, s->size); \ - speed_operand_src (s, s->yp, s->size); \ speed_operand_dst (s, wp, s->size); \ speed_cache_fill (s); \ \ speed_starttime (); \ i = s->reps; \ do \ - function (wp, s->xp, s->yp, s->size); \ + function (wp, s->xp, s->size); \ while (--i != 0); \ t = speed_endtime (); \ \ |