diff options
author | Kevin Ryde <user42@zip.com.au> | 2001-07-10 23:47:20 +0200 |
---|---|---|
committer | Kevin Ryde <user42@zip.com.au> | 2001-07-10 23:47:20 +0200 |
commit | 2e2e689f14ffbde9ac3e337a657d9a86659cd6a7 (patch) | |
tree | 49d98c6c46b568b38c900d8b2cdbeb2de16ef170 /gmp-h.in | |
parent | 0f92b2b12113b87c8aa3c527eff4d88d612ce8f9 (diff) | |
download | gmp-2e2e689f14ffbde9ac3e337a657d9a86659cd6a7.tar.gz |
More of:
* gmp-h.in (__GMPN_COPY): Add form to help gcc on power and powerpc.
Diffstat (limited to 'gmp-h.in')
-rw-r--r-- | gmp-h.in | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -1758,9 +1758,9 @@ mpf_size (mpf_srcptr f) On ppc630 for instance this is optimal since it can sustain only 1 store per cycle. - gcc 2.95.x (for powerpc64 -maix64, or powerpc32) doesn't recognise the - "for" loop in the generic code below can become ldu/stu/bdnz. The - do/while here helps it get to that. + gcc 2.95.x (powerpc64 -maix64, or powerpc32) doesn't recognise the "for" + loop in the generic code below can become ldu/stu/bdnz. The do/while + here helps it get to that. In gcc -mpowerpc64 mode, without -maix64, __size seems to want to be an mp_limb_t to get into the ctr register, and even then the loop is a @@ -1788,6 +1788,7 @@ mpf_size (mpf_srcptr f) #define __GMPN_COPY(dst, src, size) \ do { \ /* ASSERT (MPN_SAME_OR_SEPARATE_P (dst, src, size)); */ \ + __GMPN_COPY_INCR (dst, src, size); \ } while (0) #endif |