summaryrefslogtreecommitdiff
path: root/tune/many.pl
diff options
context:
space:
mode:
authorKevin Ryde <user42@zip.com.au>2001-12-21 18:23:19 +0100
committerKevin Ryde <user42@zip.com.au>2001-12-21 18:23:19 +0100
commit298c54f38f2c45fccdc0810dd55513d5974e0eaa (patch)
treeadb3582d5d45a111f197fa5c4e9e7874f3313a62 /tune/many.pl
parent78a99433243be7749c1084dd724e3a664aa810c9 (diff)
downloadgmp-298c54f38f2c45fccdc0810dd55513d5974e0eaa.tar.gz
* tests/devel/try.c, tune/speed.c, tune/speed.h, tune/common.c,
tune/many.pl, tune/Makefile.am (mpn_preinv_divrem_1): Add testing and measuring.
Diffstat (limited to 'tune/many.pl')
-rwxr-xr-xtune/many.pl17
1 files changed, 14 insertions, 3 deletions
diff --git a/tune/many.pl b/tune/many.pl
index f9f5ccca9..03344e41b 100755
--- a/tune/many.pl
+++ b/tune/many.pl
@@ -349,15 +349,26 @@ my @table =
'carrys'=> [''],
'speed' => 'SPEED_ROUTINE_MPN_COPY',
},
-
+
+ # mpn_preinv_divrem_1 is an optional extra entrypoint
{
'regexp'=> 'divrem_1',
+ 'funs' => ['divrem_1', 'preinv_divrem_1'],
'ret' => 'mp_limb_t',
- 'args' => 'mp_ptr rp, mp_size_t xsize, mp_srcptr sp, mp_size_t size, mp_limb_t divisor',
- 'speed_flags' => 'FLAG_R',
+ 'args_divrem_1' => 'mp_ptr rp, mp_size_t xsize, mp_srcptr sp, mp_size_t size, mp_limb_t divisor',
+ 'args_preinv_divrem_1' => 'mp_ptr rp, mp_size_t xsize, mp_srcptr sp, mp_size_t size, mp_limb_t divisor, mp_limb_t inverse, unsigned shift',
+ 'speed_flags'=> 'FLAG_R',
'speed_suffixes' => ['f'],
},
{
+ 'regexp'=> 'pre_divrem_1',
+ 'funs' => ['preinv_divrem_1'],
+ 'ret' => 'mp_limb_t',
+ 'args' => 'mp_ptr qp, mp_size_t qxn, mp_srcptr ap, mp_size_t asize, mp_limb_t divisor, mp_limb_t inverse, int shift',
+ 'speed_flags' => 'FLAG_R',
+ },
+
+ {
'regexp'=> 'divrem_2',
'ret' => 'mp_limb_t',
'args' => 'mp_ptr qp, mp_size_t qxn, mp_srcptr np, mp_size_t nsize, mp_srcptr dp',