diff options
author | Kevin Ryde <user42@zip.com.au> | 2001-07-10 01:12:16 +0200 |
---|---|---|
committer | Kevin Ryde <user42@zip.com.au> | 2001-07-10 01:12:16 +0200 |
commit | 9abbe78cba46ac7adc58cd53f7d438cf2eeb4a0e (patch) | |
tree | 9b380e27933ede32ebe4ad2ab0efc211d64fa3d9 /gmp-h.in | |
parent | 7f404329fa751a1c8364dd3b19cd27d9bac984ba (diff) | |
download | gmp-9abbe78cba46ac7adc58cd53f7d438cf2eeb4a0e.tar.gz |
* gmp-h.in (__GMPN_ADD_1): Avoid a bug in egcs 2.91.66.
Diffstat (limited to 'gmp-h.in')
-rw-r--r-- | gmp-h.in | 15 |
1 files changed, 9 insertions, 6 deletions
@@ -1493,6 +1493,9 @@ mpf_size (mpf_srcptr f) \ } while (0) +/* The initializers for __dst etc here avoid a bug in egcs 2.91.66 19990314 + on redhat 6.1, which shows up in tests/mpn/t-aors_1.c check_add_1() as + the size parameter to the asm block getting instead the src pointer. */ #define __GMPN_ADD_1(cout, dst, src, size, n) \ do { \ /* ASSERT ((size) >= 1); */ \ @@ -1510,9 +1513,9 @@ mpf_size (mpf_srcptr f) } \ else \ { \ - mp_ptr __dst; \ - mp_srcptr __src; \ - mp_size_t __size; \ + mp_ptr __dst = (dst); \ + mp_srcptr __src = (src); \ + mp_size_t __size = (size); \ \ __asm__ __volatile__ \ (__GMP_ASM_L(top) ":\n" \ @@ -1530,9 +1533,9 @@ mpf_size (mpf_srcptr f) "=&r" (__dst), \ "=&r" (__src), \ "=&rm" (__size) \ - : "1" (dst), \ - "2" (src), \ - "3" (size), \ + : "1" (__dst), \ + "2" (__src), \ + "3" (__size), \ "0" (n) \ : "memory"); \ \ |