Don't use %r19 (linkage table pointer).
authordrepper <drepper>
Sun, 15 Oct 2000 03:22:28 +0000 (03:22 +0000)
committerdrepper <drepper>
Sun, 15 Oct 2000 03:22:28 +0000 (03:22 +0000)
sysdeps/hppa/hppa1.1/addmul_1.s
sysdeps/hppa/hppa1.1/mul_1.s
sysdeps/hppa/hppa1.1/submul_1.s
sysdeps/hppa/hppa1.1/udiv_qrnnd.s
sysdeps/hppa/lshift.s
sysdeps/hppa/rshift.s
sysdeps/hppa/sub_n.s
sysdeps/hppa/udiv_qrnnd.s

index 0fdcb3c..5b3e048 100644 (file)
@@ -1,71 +1,72 @@
-; HP-PA-1.1 __mpn_addmul_1 -- Multiply a limb vector with a limb and
-; add the result to a second limb vector.
+;! HP-PA-1.1 __mpn_addmul_1 -- Multiply a limb vector with a limb and
+;! add the result to a second limb vector.
 
-; Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
+;! Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
 
-; This file is part of the GNU MP Library.
+;! This file is part of the GNU MP Library.
 
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Library General Public License as published by
-; the Free Software Foundation; either version 2 of the License, or (at your
-; option) any later version.
+;! The GNU MP Library is free software; you can redistribute it and/or modify
+;! it under the terms of the GNU Library General Public License as published by
+;! the Free Software Foundation; either version 2 of the License, or (at your
+;! option) any later version.
 
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
-; License for more details.
+;! The GNU MP Library is distributed in the hope that it will be useful, but
+;! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;! or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+;! License for more details.
 
-; You should have received a copy of the GNU Library General Public License
-; along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
+;! You should have received a copy of the GNU Library General Public License
+;! along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
+;! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+;! MA 02111-1307, USA.
 
 
-; INPUT PARAMETERS
-; res_ptr      r26
-; s1_ptr       r25
-; size         r24
-; s2_limb      r23
+;! INPUT PARAMETERS
+;! res_ptr     r26
+;! s1_ptr      r25
+;! size                r24
+;! s2_limb     r23
 
-; This runs at 11 cycles/limb on a PA7000.  With the used instructions, it
-; can not become faster due to data cache contention after a store.  On the
-; PA7100 it runs at 10 cycles/limb, and that can not be improved either,
-; since only the xmpyu does not need the integer pipeline, so the only
-; dual-issue we will get are addc+xmpyu.  Unrolling could gain a cycle/limb
-; on the PA7100.
+;! This runs at 11 cycles/limb on a PA7000.  With the used instructions, it
+;! can not become faster due to data cache contention after a store.  On the
+;! PA7100 it runs at 10 cycles/limb, and that can not be improved either,
+;! since only the xmpyu does not need the integer pipeline, so the only
+;! dual-issue we will get are addc+xmpyu.  Unrolling could gain a cycle/limb
+;! on the PA7100.
 
-; There are some ideas described in mul_1.s that applies to this code too.
+;! There are some ideas described in mul_1.s that applies to this code too.
 
-       .code
+       .text
        .export         __mpn_addmul_1
-__mpn_addmul_1
+__mpn_addmul_1:        
        .proc
        .callinfo       frame=64,no_calls
        .entry
 
        ldo             64(%r30),%r30
        fldws,ma        4(%r25),%fr5
-       stw             %r23,-16(%r30)          ; move s2_limb ...
+       stw             %r23,-16(%r30)          ;! move s2_limb ...
        addib,=         -1,%r24,L$just_one_limb
-        fldws          -16(%r30),%fr4          ; ... into fr4
-       add             %r0,%r0,%r0             ; clear carry
+        fldws          -16(%r30),%fr4          ;! ... into fr4
+       add             %r0,%r0,%r0             ;! clear carry
        xmpyu           %fr4,%fr5,%fr6
        fldws,ma        4(%r25),%fr7
        fstds           %fr6,-16(%r30)
        xmpyu           %fr4,%fr7,%fr8
-       ldw             -12(%r30),%r19          ; least significant limb in product
+       ldw             -12(%r30),%r20          ;! least significant limb in product
        ldw             -16(%r30),%r28
 
        fstds           %fr8,-16(%r30)
        addib,=         -1,%r24,L$end
         ldw            -12(%r30),%r1
 
-; Main loop
-L$loop ldws            0(%r26),%r29
+;! Main loop
+L$loop:        
+       ldws            0(%r26),%r29
        fldws,ma        4(%r25),%fr5
-       add             %r29,%r19,%r19
-       stws,ma         %r19,4(%r26)
-       addc            %r28,%r1,%r19
+       add             %r29,%r20,%r20
+       stws,ma         %r20,4(%r26)
+       addc            %r28,%r1,%r20
        xmpyu           %fr4,%fr5,%fr6
        ldw             -16(%r30),%r28
        fstds           %fr6,-16(%r30)
@@ -73,27 +74,28 @@ L$loop      ldws            0(%r26),%r29
        addib,<>        -1,%r24,L$loop
         ldw            -12(%r30),%r1
 
-L$end  ldw             0(%r26),%r29
-       add             %r29,%r19,%r19
-       stws,ma         %r19,4(%r26)
-       addc            %r28,%r1,%r19
+L$end:         
+       ldw             0(%r26),%r29
+       add             %r29,%r20,%r20
+       stws,ma         %r20,4(%r26)
+       addc            %r28,%r1,%r20
        ldw             -16(%r30),%r28
        ldws            0(%r26),%r29
        addc            %r0,%r28,%r28
-       add             %r29,%r19,%r19
-       stws,ma         %r19,4(%r26)
+       add             %r29,%r20,%r20
+       stws,ma         %r20,4(%r26)
        addc            %r0,%r28,%r28
        bv              0(%r2)
-        ldo            -64(%r30),%r30
+       ldo             -64(%r30),%r30
 
-L$just_one_limb
+L$just_one_limb:       
        xmpyu           %fr4,%fr5,%fr6
        ldw             0(%r26),%r29
        fstds           %fr6,-16(%r30)
        ldw             -12(%r30),%r1
        ldw             -16(%r30),%r28
-       add             %r29,%r1,%r19
-       stw             %r19,0(%r26)
+       add             %r29,%r1,%r20
+       stw             %r20,0(%r26)
        addc            %r0,%r28,%r28
        bv              0(%r2)
         ldo            -64(%r30),%r30
index cdd0c1d..7f53916 100644 (file)
@@ -1,92 +1,94 @@
-; HP-PA-1.1 __mpn_mul_1 -- Multiply a limb vector with a limb and store
-; the result in a second limb vector.
+;! HP-PA-1.1 __mpn_mul_1 -- Multiply a limb vector with a limb and store
+;! the result in a second limb vector.
 
-; Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
+;! Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
 
-; This file is part of the GNU MP Library.
+;! This file is part of the GNU MP Library.
 
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Library General Public License as published by
-; the Free Software Foundation; either version 2 of the License, or (at your
-; option) any later version.
+;! The GNU MP Library is free software; you can redistribute it and/or modify
+;! it under the terms of the GNU Library General Public License as published by
+;! the Free Software Foundation; either version 2 of the License, or (at your
+;! option) any later version.
 
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
-; License for more details.
+;! The GNU MP Library is distributed in the hope that it will be useful, but
+;! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;! or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+;! License for more details.
 
-; You should have received a copy of the GNU Library General Public License
-; along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
+;! You should have received a copy of the GNU Library General Public License
+;! along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
+;! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+;! MA 02111-1307, USA.
 
 
-; INPUT PARAMETERS
-; res_ptr      r26
-; s1_ptr       r25
-; size         r24
-; s2_limb      r23
+;! INPUT PARAMETERS
+;! res_ptr     r26
+;! s1_ptr      r25
+;! size                r24
+;! s2_limb     r23
 
-; This runs at 9 cycles/limb on a PA7000.  With the used instructions, it can
-; not become faster due to data cache contention after a store.  On the
-; PA7100 it runs at 7 cycles/limb, and that can not be improved either, since
-; only the xmpyu does not need the integer pipeline, so the only dual-issue
-; we will get are addc+xmpyu.  Unrolling would not help either CPU.
+;! This runs at 9 cycles/limb on a PA7000.  With the used instructions, it can
+;! not become faster due to data cache contention after a store.  On the
+;! PA7100 it runs at 7 cycles/limb, and that can not be improved either, since
+;! only the xmpyu does not need the integer pipeline, so the only dual-issue
+;! we will get are addc+xmpyu.  Unrolling would not help either CPU.
 
-; We could use fldds to read two limbs at a time from the S1 array, and that
-; could bring down the times to 8.5 and 6.5 cycles/limb for the PA7000 and
-; PA7100, respectively.  We don't do that since it does not seem worth the
-; (alignment) troubles...
+;! We could use fldds to read two limbs at a time from the S1 array, and that
+;! could bring down the times to 8.5 and 6.5 cycles/limb for the PA7000 and
+;! PA7100, respectively.  We don't do that since it does not seem worth the
+;! (alignment) troubles...
 
-; At least the PA7100 is rumored to be able to deal with cache-misses
-; without stalling instruction issue.  If this is true, and the cache is
-; actually also lockup-free, we should use a deeper software pipeline, and
-; load from S1 very early!  (The loads and stores to -12(sp) will surely be
-; in the cache.)
+;! At least the PA7100 is rumored to be able to deal with cache-misses
+;! without stalling instruction issue.  If this is true, and the cache is
+;! actually also lockup-free, we should use a deeper software pipeline, and
+;! load from S1 very early;  (The loads and stores to -12(sp) will surely be
+;! in the cache.)
 
-       .code
+       .text
        .export         __mpn_mul_1
-__mpn_mul_1
+__mpn_mul_1:   
        .proc
        .callinfo       frame=64,no_calls
        .entry
 
        ldo             64(%r30),%r30
        fldws,ma        4(%r25),%fr5
-       stw             %r23,-16(%r30)          ; move s2_limb ...
+       stw             %r23,-16(%r30)          ;! move s2_limb ...
        addib,=         -1,%r24,L$just_one_limb
-        fldws          -16(%r30),%fr4          ; ... into fr4
-       add             %r0,%r0,%r0             ; clear carry
+        fldws          -16(%r30),%fr4          ;! ... into fr4
+       add             %r0,%r0,%r0             ;! clear carry
        xmpyu           %fr4,%fr5,%fr6
        fldws,ma        4(%r25),%fr7
        fstds           %fr6,-16(%r30)
        xmpyu           %fr4,%fr7,%fr8
-       ldw             -12(%r30),%r19          ; least significant limb in product
+       ldw             -12(%r30),%r20          ;! least significant limb in product
        ldw             -16(%r30),%r28
 
        fstds           %fr8,-16(%r30)
        addib,=         -1,%r24,L$end
         ldw            -12(%r30),%r1
 
-; Main loop
-L$loop fldws,ma        4(%r25),%fr5
-       stws,ma         %r19,4(%r26)
-       addc            %r28,%r1,%r19
+;! Main loop
+L$loop:        
+       fldws,ma        4(%r25),%fr5
+       stws,ma         %r20,4(%r26)
+       addc            %r28,%r1,%r20
        xmpyu           %fr4,%fr5,%fr6
        ldw             -16(%r30),%r28
        fstds           %fr6,-16(%r30)
        addib,<>        -1,%r24,L$loop
         ldw            -12(%r30),%r1
 
-L$end  stws,ma         %r19,4(%r26)
-       addc            %r28,%r1,%r19
+L$end: 
+       stws,ma         %r20,4(%r26)
+       addc            %r28,%r1,%r20
        ldw             -16(%r30),%r28
-       stws,ma         %r19,4(%r26)
+       stws,ma         %r20,4(%r26)
        addc            %r0,%r28,%r28
        bv              0(%r2)
         ldo            -64(%r30),%r30
 
-L$just_one_limb
+L$just_one_limb:       
        xmpyu           %fr4,%fr5,%fr6
        fstds           %fr6,-16(%r30)
        ldw             -16(%r30),%r28
index a4a3854..f2c19c7 100644 (file)
@@ -1,77 +1,78 @@
-; HP-PA-1.1 __mpn_submul_1 -- Multiply a limb vector with a limb and
-; subtract the result from a second limb vector.
+;! HP-PA-1.1 __mpn_submul_1 -- Multiply a limb vector with a limb and
+;! subtract the result from a second limb vector.
 
-; Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
+;! Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
 
-; This file is part of the GNU MP Library.
+;! This file is part of the GNU MP Library.
 
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Library General Public License as published by
-; the Free Software Foundation; either version 2 of the License, or (at your
-; option) any later version.
+;! The GNU MP Library is free software; you can redistribute it and/or modify
+;! it under the terms of the GNU Library General Public License as published by
+;! the Free Software Foundation; either version 2 of the License, or (at your
+;! option) any later version.
 
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
-; License for more details.
+;! The GNU MP Library is distributed in the hope that it will be useful, but
+;! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;! or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+;! License for more details.
 
-; You should have received a copy of the GNU Library General Public License
-; along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
+;! You should have received a copy of the GNU Library General Public License
+;! along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
+;! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+;! MA 02111-1307, USA.
 
 
-; INPUT PARAMETERS
-; res_ptr      r26
-; s1_ptr       r25
-; size         r24
-; s2_limb      r23
+;! INPUT PARAMETERS
+;! res_ptr     r26
+;! s1_ptr      r25
+;! size                r24
+;! s2_limb     r23
 
-; This runs at 12 cycles/limb on a PA7000.  With the used instructions, it
-; can not become faster due to data cache contention after a store.  On the
-; PA7100 it runs at 11 cycles/limb, and that can not be improved either,
-; since only the xmpyu does not need the integer pipeline, so the only
-; dual-issue we will get are addc+xmpyu.  Unrolling could gain a cycle/limb
-; on the PA7100.
+;! This runs at 12 cycles/limb on a PA7000.  With the used instructions, it
+;! can not become faster due to data cache contention after a store.  On the
+;! PA7100 it runs at 11 cycles/limb, and that can not be improved either,
+;! since only the xmpyu does not need the integer pipeline, so the only
+;! dual-issue we will get are addc+xmpyu.  Unrolling could gain a cycle/limb
+;! on the PA7100.
 
-; There are some ideas described in mul_1.s that applies to this code too.
+;! There are some ideas described in mul_1.s that applies to this code too.
 
-; It seems possible to make this run as fast as __mpn_addmul_1, if we use
-;      sub,>>= %r29,%r19,%r22
-;      addi    1,%r28,%r28
-; but that requires reworking the hairy software pipeline...
+;! It seems possible to make this run as fast as __mpn_addmul_1, if we use
+;!     sub,>>= %r29,%r20,%r22
+;!     addi    1,%r28,%r28
+;! but that requires reworking the hairy software pipeline...
 
-       .code
+       .text
        .export         __mpn_submul_1
-__mpn_submul_1
+__mpn_submul_1:        
        .proc
        .callinfo       frame=64,no_calls
        .entry
 
        ldo             64(%r30),%r30
        fldws,ma        4(%r25),%fr5
-       stw             %r23,-16(%r30)          ; move s2_limb ...
+       stw             %r23,-16(%r30)          ;! move s2_limb ...
        addib,=         -1,%r24,L$just_one_limb
-        fldws          -16(%r30),%fr4          ; ... into fr4
-       add             %r0,%r0,%r0             ; clear carry
+        fldws          -16(%r30),%fr4          ;! ... into fr4
+       add             %r0,%r0,%r0             ;! clear carry
        xmpyu           %fr4,%fr5,%fr6
        fldws,ma        4(%r25),%fr7
        fstds           %fr6,-16(%r30)
        xmpyu           %fr4,%fr7,%fr8
-       ldw             -12(%r30),%r19          ; least significant limb in product
+       ldw             -12(%r30),%r20          ;! least significant limb in product
        ldw             -16(%r30),%r28
 
        fstds           %fr8,-16(%r30)
        addib,=         -1,%r24,L$end
         ldw            -12(%r30),%r1
 
-; Main loop
-L$loop ldws            0(%r26),%r29
+;! Main loop
+L$loop:        
+       ldws            0(%r26),%r29
        fldws,ma        4(%r25),%fr5
-       sub             %r29,%r19,%r22
-       add             %r22,%r19,%r0
+       sub             %r29,%r20,%r22
+       add             %r22,%r20,%r0
        stws,ma         %r22,4(%r26)
-       addc            %r28,%r1,%r19
+       addc            %r28,%r1,%r20
        xmpyu           %fr4,%fr5,%fr6
        ldw             -16(%r30),%r28
        fstds           %fr6,-16(%r30)
@@ -79,22 +80,23 @@ L$loop      ldws            0(%r26),%r29
        addib,<>        -1,%r24,L$loop
         ldw            -12(%r30),%r1
 
-L$end  ldw             0(%r26),%r29
-       sub             %r29,%r19,%r22
-       add             %r22,%r19,%r0
+L$end: 
+       ldw             0(%r26),%r29
+       sub             %r29,%r20,%r22
+       add             %r22,%r20,%r0
        stws,ma         %r22,4(%r26)
-       addc            %r28,%r1,%r19
+       addc            %r28,%r1,%r20
        ldw             -16(%r30),%r28
        ldws            0(%r26),%r29
        addc            %r0,%r28,%r28
-       sub             %r29,%r19,%r22
-       add             %r22,%r19,%r0
+       sub             %r29,%r20,%r22
+       add             %r22,%r20,%r0
        stws,ma         %r22,4(%r26)
        addc            %r0,%r28,%r28
        bv              0(%r2)
         ldo            -64(%r30),%r30
 
-L$just_one_limb
+L$just_one_limb:       
        xmpyu           %fr4,%fr5,%fr6
        ldw             0(%r26),%r29
        fstds           %fr6,-16(%r30)
index bf7dc70..c0a02d8 100644 (file)
@@ -1,53 +1,55 @@
-; HP-PA  __udiv_qrnnd division support, used from longlong.h.
-; This version runs fast on PA 7000 and later.
+;! HP-PA  __udiv_qrnnd division support, used from longlong.h.
+;! This version runs fast on PA 7000 and later.
 
-; Copyright (C) 1993, 1994 Free Software Foundation, Inc.
+;! Copyright (C) 1993, 1994 Free Software Foundation, Inc.
 
-; This file is part of the GNU MP Library.
+;! This file is part of the GNU MP Library.
 
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Library General Public License as published by
-; the Free Software Foundation; either version 2 of the License, or (at your
-; option) any later version.
+;! The GNU MP Library is free software; you can redistribute it and/or modify
+;! it under the terms of the GNU Library General Public License as published by
+;! the Free Software Foundation; either version 2 of the License, or (at your
+;! option) any later version.
 
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
-; License for more details.
+;! The GNU MP Library is distributed in the hope that it will be useful, but
+;! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;! or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+;! License for more details.
 
-; You should have received a copy of the GNU Library General Public License
-; along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
+;! You should have received a copy of the GNU Library General Public License
+;! along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
+;! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+;! MA 02111-1307, USA.
 
 
-; INPUT PARAMETERS
-; rem_ptr      gr26
-; n1           gr25
-; n0           gr24
-; d            gr23
+;! INPUT PARAMETERS
+;! rem_ptr     gr26
+;! n1          gr25
+;! n0          gr24
+;! d           gr23
 
-       .code
-L$0000 .word           0x43f00000
+       .text
+L$0000:        
+       .word           0x43f00000
        .word           0x0
        .export         __udiv_qrnnd
-__udiv_qrnnd
+__udiv_qrnnd:  
        .proc
        .callinfo       frame=64,no_calls
        .entry
        ldo             64(%r30),%r30
 
-       stws            %r25,-16(0,%r30)        ; n_hi
-       stws            %r24,-12(0,%r30)        ; n_lo
-       ldil            L'L$0000,%r19
-       ldo             R'L$0000(%r19),%r19
+       stws            %r25,-16(0,%r30)        ;! n_hi
+       stws            %r24,-12(0,%r30)        ;! n_lo
+       b,l             L$0,%r1
+       ldo             L$0000-L$0(%r1),%r1
+L$0:
        fldds           -16(0,%r30),%fr5
        stws            %r23,-12(0,%r30)
        comib,<=        0,%r25,L$1
        fcnvxf,dbl,dbl  %fr5,%fr5
-       fldds           0(0,%r19),%fr4
+       fldds           0(0,%r1),%fr4
        fadd,dbl        %fr4,%fr5,%fr5
-L$1
+L$1:   
        fcpy,sgl        %fr0,%fr6L
        fldws           -12(0,%r30),%fr6R
        fcnvxf,dbl,dbl  %fr6,%fr4
@@ -62,13 +64,14 @@ L$1
        ldws            -12(0,%r30),%r21
        ldws            -16(0,%r30),%r20
        sub             %r24,%r21,%r22
-       subb            %r25,%r20,%r19
-       comib,=         0,%r19,L$2
+       subb            %r25,%r20,%r1
+       comib,=         0,%r1,L$2
        ldo             -64(%r30),%r30
 
        add             %r22,%r23,%r22
        ldo             -1(%r28),%r28
-L$2    bv              0(%r2)
+L$2:   
+       bv              0(%r2)
        stws            %r22,0(0,%r26)
 
        .exit
index abac6ec..de6dd76 100644 (file)
@@ -1,34 +1,34 @@
-; HP-PA  __mpn_lshift --
+;! HP-PA  __mpn_lshift --
 
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
+;! Copyright (C) 1992, 1994 Free Software Foundation, Inc.
 
-; This file is part of the GNU MP Library.
+;! This file is part of the GNU MP Library.
 
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Library General Public License as published by
-; the Free Software Foundation; either version 2 of the License, or (at your
-; option) any later version.
+;! The GNU MP Library is free software; you can redistribute it and/or modify
+;! it under the terms of the GNU Library General Public License as published by
+;! the Free Software Foundation; either version 2 of the License, or (at your
+;! option) any later version.
 
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
-; License for more details.
+;! The GNU MP Library is distributed in the hope that it will be useful, but
+;! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;! or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+;! License for more details.
 
-; You should have received a copy of the GNU Library General Public License
-; along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
+;! You should have received a copy of the GNU Library General Public License
+;! along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
+;! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+;! MA 02111-1307, USA.
 
 
-; INPUT PARAMETERS
-; res_ptr      gr26
-; s_ptr                gr25
-; size         gr24
-; cnt          gr23
+;! INPUT PARAMETERS
+;! res_ptr     gr26
+;! s_ptr       gr25
+;! size                gr24
+;! cnt         gr23
 
-       .code
+       .text
        .export         __mpn_lshift
-__mpn_lshift
+__mpn_lshift:
        .proc
        .callinfo       frame=64,no_calls
        .entry
@@ -39,12 +39,12 @@ __mpn_lshift
        subi            32,%r23,%r1
        mtsar           %r1
        addib,=         -1,%r24,L$0004
-       vshd            %r0,%r22,%r28           ; compute carry out limb
+       vshd            %r0,%r22,%r28           ;! compute carry out limb
        ldws,mb         -4(0,%r25),%r29
        addib,=         -1,%r24,L$0002
        vshd            %r22,%r29,%r20
 
-L$loop ldws,mb         -4(0,%r25),%r22
+L$loop:        ldws,mb         -4(0,%r25),%r22
        stws,mb         %r20,-4(0,%r26)
        addib,=         -1,%r24,L$0003
        vshd            %r29,%r22,%r20
@@ -53,12 +53,12 @@ L$loop      ldws,mb         -4(0,%r25),%r22
        addib,<>        -1,%r24,L$loop
        vshd            %r22,%r29,%r20
 
-L$0002 stws,mb         %r20,-4(0,%r26)
+L$0002:        stws,mb         %r20,-4(0,%r26)
        vshd            %r29,%r0,%r20
        bv              0(%r2)
        stw             %r20,-4(0,%r26)
-L$0003 stws,mb         %r20,-4(0,%r26)
-L$0004 vshd            %r22,%r0,%r20
+L$0003:        stws,mb         %r20,-4(0,%r26)
+L$0004:        vshd            %r22,%r0,%r20
        bv              0(%r2)
        stw             %r20,-4(0,%r26)
 
index c1480e5..bba60cf 100644 (file)
@@ -1,34 +1,34 @@
-; HP-PA  __mpn_rshift -- 
+;! HP-PA  __mpn_rshift -- 
 
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
+;! Copyright (C) 1992, 1994 Free Software Foundation, Inc.
 
-; This file is part of the GNU MP Library.
+;! This file is part of the GNU MP Library.
 
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Library General Public License as published by
-; the Free Software Foundation; either version 2 of the License, or (at your
-; option) any later version.
+;! The GNU MP Library is free software; you can redistribute it and/or modify
+;! it under the terms of the GNU Library General Public License as published by
+;! the Free Software Foundation; either version 2 of the License, or (at your
+;! option) any later version.
 
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
-; License for more details.
+;! The GNU MP Library is distributed in the hope that it will be useful, but
+;! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;! or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+;! License for more details.
 
-; You should have received a copy of the GNU Library General Public License
-; along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
+;! You should have received a copy of the GNU Library General Public License
+;! along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
+;! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+;! MA 02111-1307, USA.
 
 
-; INPUT PARAMETERS
-; res_ptr      gr26
-; s_ptr                gr25
-; size         gr24
-; cnt          gr23
+;! INPUT PARAMETERS
+;! res_ptr     gr26
+;! s_ptr       gr25
+;! size                gr24
+;! cnt         gr23
 
-       .code
+       .text
        .export         __mpn_rshift
-__mpn_rshift
+__mpn_rshift:
        .proc
        .callinfo       frame=64,no_calls
        .entry
@@ -36,12 +36,12 @@ __mpn_rshift
        ldws,ma         4(0,%r25),%r22
        mtsar           %r23
        addib,=         -1,%r24,L$0004
-       vshd            %r22,%r0,%r28           ; compute carry out limb
+       vshd            %r22,%r0,%r28           ;! compute carry out limb
        ldws,ma         4(0,%r25),%r29
        addib,=         -1,%r24,L$0002
        vshd            %r29,%r22,%r20
 
-L$loop ldws,ma         4(0,%r25),%r22
+L$loop:        ldws,ma         4(0,%r25),%r22
        stws,ma         %r20,4(0,%r26)
        addib,=         -1,%r24,L$0003
        vshd            %r22,%r29,%r20
@@ -50,12 +50,12 @@ L$loop      ldws,ma         4(0,%r25),%r22
        addib,<>        -1,%r24,L$loop
        vshd            %r29,%r22,%r20
 
-L$0002 stws,ma         %r20,4(0,%r26)
+L$0002:        stws,ma         %r20,4(0,%r26)
        vshd            %r0,%r29,%r20
        bv              0(%r2)
        stw             %r20,0(0,%r26)
-L$0003 stws,ma         %r20,4(0,%r26)
-L$0004 vshd            %r0,%r22,%r20
+L$0003:        stws,ma         %r20,4(0,%r26)
+L$0004:        vshd            %r0,%r22,%r20
        bv              0(%r2)
        stw             %r20,0(0,%r26)
 
index 04fa3e1..b50bb11 100644 (file)
@@ -1,56 +1,56 @@
-; HP-PA  __mpn_sub_n -- Subtract two limb vectors of the same length > 0 and
-; store difference in a third limb vector.
+;! HP-PA  __mpn_sub_n -- Subtract two limb vectors of the same length > 0 and
+;! store difference in a third limb vector.
 
-; Copyright (C) 1992, 1994 Free Software Foundation, Inc.
+;! Copyright (C) 1992, 1994 Free Software Foundation, Inc.
 
-; This file is part of the GNU MP Library.
+;! This file is part of the GNU MP Library.
 
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Library General Public License as published by
-; the Free Software Foundation; either version 2 of the License, or (at your
-; option) any later version.
+;! The GNU MP Library is free software; you can redistribute it and/or modify
+;! it under the terms of the GNU Library General Public License as published by
+;! the Free Software Foundation; either version 2 of the License, or (at your
+;! option) any later version.
 
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
-; License for more details.
+;! The GNU MP Library is distributed in the hope that it will be useful, but
+;! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;! or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+;! License for more details.
 
-; You should have received a copy of the GNU Library General Public License
-; along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
+;! You should have received a copy of the GNU Library General Public License
+;! along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
+;! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+;! MA 02111-1307, USA.
 
 
-; INPUT PARAMETERS
-; res_ptr      gr26
-; s1_ptr       gr25
-; s2_ptr       gr24
-; size         gr23
+;! INPUT PARAMETERS
+;! res_ptr     gr26
+;! s1_ptr      gr25
+;! s2_ptr      gr24
+;! size                gr23
 
-; One might want to unroll this as for other processors, but it turns
-; out that the data cache contention after a store makes such
-; unrolling useless.  We can't come under 5 cycles/limb anyway.
+;! One might want to unroll this as for other processors, but it turns
+;! out that the data cache contention after a store makes such
+;! unrolling useless.  We can't come under 5 cycles/limb anyway.
 
-       .code
+       .text
        .export         __mpn_sub_n
-__mpn_sub_n
+__mpn_sub_n:
        .proc
        .callinfo       frame=0,no_calls
        .entry
 
-       ldws,ma         4(0,%r25),%r20
-       ldws,ma         4(0,%r24),%r19
+       ldws,ma         4(0,%r25),%r21
+       ldws,ma         4(0,%r24),%r20
 
-       addib,=         -1,%r23,L$end   ; check for (SIZE == 1)
-        sub            %r20,%r19,%r28  ; subtract first limbs ignoring cy
+       addib,=         -1,%r23,L$end   ;! check for (SIZE == 1)
+        sub            %r21,%r20,%r28  ;! subtract first limbs ignoring cy
 
-L$loop ldws,ma         4(0,%r25),%r20
-       ldws,ma         4(0,%r24),%r19
+L$loop:        ldws,ma         4(0,%r25),%r21
+       ldws,ma         4(0,%r24),%r20
        stws,ma         %r28,4(0,%r26)
        addib,<>        -1,%r23,L$loop
-        subb           %r20,%r19,%r28
+        subb           %r21,%r20,%r28
 
-L$end  stws            %r28,0(0,%r26)
+L$end: stws            %r28,0(0,%r26)
        addc            %r0,%r0,%r28
        bv              0(%r2)
         subi           1,%r28,%r28
index 9b45eb4..0532057 100644 (file)
@@ -1,45 +1,45 @@
-; HP-PA  __udiv_qrnnd division support, used from longlong.h.
-; This version runs fast on pre-PA7000 CPUs.
+;! HP-PA  __udiv_qrnnd division support, used from longlong.h.
+;! This version runs fast on pre-PA7000 CPUs.
 
-; Copyright (C) 1993, 1994 Free Software Foundation, Inc.
+;! Copyright (C) 1993, 1994 Free Software Foundation, Inc.
 
-; This file is part of the GNU MP Library.
+;! This file is part of the GNU MP Library.
 
-; The GNU MP Library is free software; you can redistribute it and/or modify
-; it under the terms of the GNU Library General Public License as published by
-; the Free Software Foundation; either version 2 of the License, or (at your
-; option) any later version.
+;! The GNU MP Library is free software; you can redistribute it and/or modify
+;! it under the terms of the GNU Library General Public License as published by
+;! the Free Software Foundation; either version 2 of the License, or (at your
+;! option) any later version.
 
-; The GNU MP Library is distributed in the hope that it will be useful, but
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
-; License for more details.
+;! The GNU MP Library is distributed in the hope that it will be useful, but
+;! WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;! or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
+;! License for more details.
 
-; You should have received a copy of the GNU Library General Public License
-; along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
-; the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
-; MA 02111-1307, USA.
+;! You should have received a copy of the GNU Library General Public License
+;! along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
+;! the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+;! MA 02111-1307, USA.
 
 
-; INPUT PARAMETERS
-; rem_ptr      gr26
-; n1           gr25
-; n0           gr24
-; d            gr23
+;! INPUT PARAMETERS
+;! rem_ptr     gr26
+;! n1          gr25
+;! n0          gr24
+;! d           gr23
 
-; The code size is a bit excessive.  We could merge the last two ds;addc
-; sequences by simply moving the "bb,< Odd" instruction down.  The only
-; trouble is the FFFFFFFF code that would need some hacking.
+;! The code size is a bit excessive.  We could merge the last two ds;addc
+;! sequences by simply moving the "bb,< Odd" instruction down.  The only
+;! trouble is the FFFFFFFF code that would need some hacking.
 
-       .code
+       .text
        .export         __udiv_qrnnd
-__udiv_qrnnd
+__udiv_qrnnd:
        .proc
        .callinfo       frame=0,no_calls
        .entry
 
        comb,<          %r23,0,L$largedivisor
-        sub            %r0,%r23,%r1            ; clear cy as side-effect
+        sub            %r0,%r23,%r1            ;! clear cy as side-effect
        ds              %r0,%r1,%r0
        addc            %r24,%r24,%r24
        ds              %r25,%r23,%r25
@@ -111,12 +111,12 @@ __udiv_qrnnd
        bv              0(%r2)
         addc           %r28,%r28,%r28
 
-L$largedivisor
-       extru           %r24,31,1,%r19          ; r19 = n0 & 1
+L$largedivisor:
+       extru           %r24,31,1,%r20          ;! r20 = n0 & 1
        bb,<            %r23,31,L$odd
-        extru          %r23,30,31,%r22         ; r22 = d >> 1
-       shd             %r25,%r24,1,%r24        ; r24 = new n0
-       extru           %r25,30,31,%r25         ; r25 = new n1
+        extru          %r23,30,31,%r22         ;! r22 = d >> 1
+       shd             %r25,%r24,1,%r24        ;! r24 = new n0
+       extru           %r25,30,31,%r25         ;! r25 = new n1
        sub             %r0,%r22,%r21
        ds              %r0,%r21,%r0
        addc            %r24,%r24,%r24
@@ -185,14 +185,14 @@ L$largedivisor
        ds              %r25,%r22,%r25
        comclr,>=       %r25,%r0,%r0
        addl            %r25,%r22,%r25
-       sh1addl         %r25,%r19,%r25
+       sh1addl         %r25,%r20,%r25
        stws            %r25,0(0,%r26)
        bv              0(%r2)
         addc           %r24,%r24,%r28
 
-L$odd  addib,sv,n      1,%r22,L$FF..           ; r22 = (d / 2 + 1)
-       shd             %r25,%r24,1,%r24        ; r24 = new n0
-       extru           %r25,30,31,%r25         ; r25 = new n1
+L$odd: addib,sv,n      1,%r22,L$FF..           ;! r22 = (d / 2 + 1)
+       shd             %r25,%r24,1,%r24        ;! r24 = new n0
+       extru           %r25,30,31,%r25         ;! r25 = new n1
        sub             %r0,%r22,%r21
        ds              %r0,%r21,%r0
        addc            %r24,%r24,%r24
@@ -262,8 +262,8 @@ L$odd       addib,sv,n      1,%r22,L$FF..           ; r22 = (d / 2 + 1)
        addc            %r24,%r24,%r28
        comclr,>=       %r25,%r0,%r0
        addl            %r25,%r22,%r25
-       sh1addl         %r25,%r19,%r25
-; We have computed (n1,,n0) / (d + 1), q' = r28, r' = r25
+       sh1addl         %r25,%r20,%r25
+;! We have computed (n1,,n0) / (d + 1), q' = r28, r' = r25
        add,nuv         %r28,%r25,%r25
        addl            %r25,%r1,%r25
        addc            %r0,%r28,%r28
@@ -273,9 +273,9 @@ L$odd       addib,sv,n      1,%r22,L$FF..           ; r22 = (d / 2 + 1)
        bv              0(%r2)
         addc           %r0,%r28,%r28
 
-; This is just a special case of the code above.
-; We come here when d == 0xFFFFFFFF
-L$FF.. add,uv          %r25,%r24,%r24
+;! This is just a special case of the code above.
+;! We come here when d == 0xFFFFFFFF
+L$FF..:        add,uv          %r25,%r24,%r24
        sub,<<          %r24,%r23,%r0
        ldo             1(%r24),%r24
        stws            %r24,0(0,%r26)