Should we declare _itch functions __GMP_NOTHROW __GMP_ATTRIBUTE_PURE ?

Torbjorn Granlund tg at gmplib.org
Sun Jan 5 14:48:47 UTC 2014


bodrato at mail.dm.unipi.it writes:

  https://gmplib.org/devel/lcov/shell/gmp/mpn/sec_powm.c.gcov.html
  
  I saw that the function mpn_sec_powm_itch() is called twice for each
  mpn_sec_powm(). This depends (I assume) because of the multiple evaluation
  in the macro TMP_ALLOC_LIMBS (n + mpn_sec_powm_itch (bn, en, n));
  in /mpz/powm_sec.c .
  
Good catch!

  Of course we can heal the code by precomputing n+itch to use the macro on
  a single variable, but, shouldn't we suggest the compiler that all the
  _itch functions are pure anyway?
  
Indeed.  I pushed a fix.


Torbjörn
Please encrypt, key id 0xC8601622


More information about the gmp-devel mailing list