Changeset 806c18 in git for factory/ffops.h
- Timestamp:
- Nov 15, 2010, 4:34:57 PM (13 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- 7c3bca08c96331a56864c1d35b8c2e8ff2e0be89
- Parents:
- c840d97af622b4e4da8761738b540e21144f716b
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/ffops.h
rc840d9 r806c18 25 25 int n = a % ff_prime; 26 26 #if defined(i386) || defined(NTL_AVOID_BRANCHING) 27 n += (n >> 31) & ff_prime; 27 n += (n >> 31) & ff_prime; 28 28 return n; 29 29 #else … … 36 36 { 37 37 if ( cf_glob_switches.isOn( SW_SYMMETRIC_FF ) ) 38 38 return ( a > ff_halfprime ) ? a - ff_prime : a; 39 39 else 40 40 return a; 41 41 } 42 42 … … 45 45 int n = (int)(a % (long)ff_prime); 46 46 #if defined(i386) || defined(NTL_AVOID_BRANCHING) 47 n += (n >> 31) & ff_prime; 47 n += (n >> 31) & ff_prime; 48 48 return n; 49 49 #else … … 57 57 int n = (int)(a % (INT64)ff_prime); 58 58 #if defined(i386) || defined(NTL_AVOID_BRANCHING) 59 n += (n >> 31) & ff_prime; 59 n += (n >> 31) & ff_prime; 60 60 return n; 61 61 #else … … 71 71 int r=( a + b ); 72 72 r -= ff_prime; 73 r += (r >> 31) & ff_prime; 73 r += (r >> 31) & ff_prime; 74 74 return r; 75 75 #else … … 85 85 #if defined(i386) || defined(NTL_AVOID_BRANCHING) 86 86 int r=( a - b ); 87 r += (r >> 31) & ff_prime; 87 r += (r >> 31) & ff_prime; 88 88 return r; 89 89 #else … … 100 100 #if defined(i386) || defined(NTL_AVOID_BRANCHING) 101 101 int r= -a; 102 r += (r >> 31) & ff_prime; 102 r += (r >> 31) & ff_prime; 103 103 return r; 104 104 #else … … 110 110 { 111 111 if ( ff_big ) 112 112 return ff_bignorm( (INT64)a * (INT64)b ); 113 113 else 114 114 return ff_longnorm ( (long)a * (long)b ); 115 115 } 116 116 … … 118 118 { 119 119 if ( ff_big ) 120 120 return ff_biginv( a ); 121 121 else { 122 123 124 125 126 122 register int b; 123 if ( (b = (int)(ff_invtab[a])) ) 124 return b; 125 else 126 return ff_newinv( a ); 127 127 } 128 128
Note: See TracChangeset
for help on using the changeset viewer.