bug-gmp
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [patch 4.1.3] Correctly handle zero operands with gcc on PA


From: Kevin Ryde
Subject: Re: [patch 4.1.3] Correctly handle zero operands with gcc on PA
Date: Fri, 28 May 2004 08:05:02 +1000
User-agent: Gnus/5.110003 (No Gnus v0.3) Emacs/21.3 (gnu/linux)

"John David Anglin" <address@hidden> writes:
>
> Here is a small fix to correctly handle zero operands using gcc on the
> the PA.  See gcc/config/pa.c.
>
> 2004-05-24  John David Anglin  <address@hidden>
>
>       * longlong.h (add_ssaaaa, sub_ddmmss): Use 'r' modifier with register
>       or zero operands.

You need to provide a failing test case.  As far as I know these
macros work in current usages.

> --- longlong.h.orig   Fri May 21 15:15:07 2004
> +++ longlong.h        Fri May 21 15:16:05 2004
> @@ -206,11 +206,11 @@ long __MPN(count_leading_zeros) _PROTO (
>     is just a case of no direct support for 2.0n but treating it like 1.0. */
>  #if defined (__GNUC__) && ! defined (_LONG_LONG_LIMB)
>  #define add_ssaaaa(sh, sl, ah, al, bh, bl) \
> -  __asm__ ("add %4,%5,%1\n\tadd,dc %2,%3,%0"                         \
> +  __asm__ ("add %r4,%r5,%1\n\tadd,dc %r2,%r3,%0"                     \
>          : "=r" (sh), "=&r" (sl)                                      \
>          : "rM" (ah), "rM" (bh), "%rM" (al), "rM" (bl))
>  #define sub_ddmmss(sh, sl, ah, al, bh, bl) \
> -  __asm__ ("sub %4,%5,%1\n\tsub,db %2,%3,%0"                         \
> +  __asm__ ("sub %r4,%r5,%1\n\tsub,db %r2,%r3,%0"                     \
>          : "=r" (sh), "=&r" (sl)                                      \
>          : "rM" (ah), "rM" (bh), "rM" (al), "rM" (bl))

Looks likely, but I don't speak enough hppa to evaluate this, Cc'ed to
someone who does.  (This is the 2.0w macros.)

-- 
All followups to address@hidden please.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]