summaryrefslogtreecommitdiff
path: root/mpn
diff options
context:
space:
mode:
Diffstat (limited to 'mpn')
-rw-r--r--mpn/alpha/ev6/nails/addmul_2.asm17
-rw-r--r--mpn/alpha/ev6/nails/addmul_3.asm17
-rw-r--r--mpn/alpha/ev6/nails/addmul_4.asm19
3 files changed, 22 insertions, 31 deletions
diff --git a/mpn/alpha/ev6/nails/addmul_2.asm b/mpn/alpha/ev6/nails/addmul_2.asm
index fd460211b..a3ef0961b 100644
--- a/mpn/alpha/ev6/nails/addmul_2.asm
+++ b/mpn/alpha/ev6/nails/addmul_2.asm
@@ -1,6 +1,6 @@
dnl Alpha ev6 nails mpn_addmul_2.
-dnl Copyright 2002, 2005 Free Software Foundation, Inc.
+dnl Copyright 2002, 2005, 2006 Free Software Foundation, Inc.
dnl
dnl This file is part of the GNU MP Library.
dnl
@@ -78,11 +78,9 @@ PROLOGUE(mpn_addmul_2)
mulq v1, ulimb, m1a C U1
umulh v1, ulimb, m1b C U1
lda n, -1(n)
- beq n, Lend C U0
+ beq n, L(end) C U0
ALIGN(16)
-C MAIN LOOP
-Loop:
- bis r31, r31, r31 C U1 nop
+L(top): bis r31, r31, r31 C U1 nop
addq r19, acc0, acc0 C U0 propagate nail
ldq rlimb, 0(rp) C L0
ldq ulimb, 0(up) C L1
@@ -110,10 +108,9 @@ Loop:
lda n, -1(n) C L0
srl r19,NUMB_BITS, r19 C U1 extract nail part
stq r28, -8(rp) C L1
- bne n, Loop C U0
-C END LOOP
-Lend:
- ldq rlimb, 0(rp)
+ bne n, L(top) C U0
+
+L(end): ldq rlimb, 0(rp)
addq r19, acc0, acc0 C propagate nail
lda rp, 8(rp)
srl m0a,NAIL_BITS, r8 C U0
@@ -135,5 +132,5 @@ Lend:
addq r19, acc1, r0
ret r31, (r26), 1
-EPILOGUE(mpn_addmul_2)
+EPILOGUE()
ASM_END()
diff --git a/mpn/alpha/ev6/nails/addmul_3.asm b/mpn/alpha/ev6/nails/addmul_3.asm
index a6aa97bf7..1e7edc72c 100644
--- a/mpn/alpha/ev6/nails/addmul_3.asm
+++ b/mpn/alpha/ev6/nails/addmul_3.asm
@@ -1,6 +1,6 @@
dnl Alpha ev6 nails mpn_addmul_3.
-dnl Copyright 2002 Free Software Foundation, Inc.
+dnl Copyright 2002, 2006 Free Software Foundation, Inc.
dnl
dnl This file is part of the GNU MP Library.
dnl
@@ -78,7 +78,6 @@ PROLOGUE(mpn_addmul_3)
sll v2,NAIL_BITS, v2
bis r31, r31, r19
-C MAIN LOOP
ldq ulimb, 0(up)
lda up, 8(up)
mulq v0, ulimb, m0a C U1
@@ -88,10 +87,9 @@ C MAIN LOOP
lda n, -1(n)
mulq v2, ulimb, m2a C U1
umulh v2, ulimb, m2b C U1
- beq n, Lend C U0
+ beq n, L(end) C U0
ALIGN(16)
-Loop:
- bis r31, r31, r31 C nop
+L(top): bis r31, r31, r31 C nop
ldq rlimb, 0(rp)
ldq ulimb, 0(up)
addq r19, acc0, acc0 C propagate nail
@@ -129,10 +127,9 @@ Loop:
bis r31, r31, r31 C nop
stq r28, -8(rp)
- bne n, Loop C U0
-C END LOOP
-Lend:
- ldq rlimb, 0(rp)
+ bne n, L(top) C U0
+
+L(end): ldq rlimb, 0(rp)
addq r19, acc0, acc0 C propagate nail
lda rp, 8(rp)
srl m0a,NAIL_BITS, r8 C U0
@@ -161,5 +158,5 @@ Lend:
addq r19, acc2, m0a
ret r31, (r26), 1
-EPILOGUE(mpn_addmul_3)
+EPILOGUE()
ASM_END()
diff --git a/mpn/alpha/ev6/nails/addmul_4.asm b/mpn/alpha/ev6/nails/addmul_4.asm
index d17418a8e..e006b2229 100644
--- a/mpn/alpha/ev6/nails/addmul_4.asm
+++ b/mpn/alpha/ev6/nails/addmul_4.asm
@@ -1,6 +1,6 @@
dnl Alpha ev6 nails mpn_addmul_4.
-dnl Copyright 2002, 2005 Free Software Foundation, Inc.
+dnl Copyright 2002, 2005, 2006 Free Software Foundation, Inc.
dnl
dnl This file is part of the GNU MP Library.
dnl
@@ -102,11 +102,9 @@ PROLOGUE(mpn_addmul_4)
umulh v2, ulimb, m2b C U1
mulq v3, ulimb, m3a C U1
umulh v3, ulimb, m3b C U1
- beq n, Lend C U0
+ beq n, L(end) C U0
ALIGN(16)
-C MAIN LOOP
-Loop:
- bis r31, r31, r31 C U1 nop
+L(top): bis r31, r31, r31 C U1 nop
ldq rlimb, 0(rp) C L0
ldq ulimb, 0(up) C L1
addq r19, acc0, acc0 C U0 propagate nail
@@ -149,12 +147,11 @@ Loop:
addq r8, acc2, acc2 C L0
bis r31, m3b, acc3 C L1
umulh v3, ulimb, m3b C U1
- bne n, Loop C U0
-C END LOOP
-Lend:
- ldq rlimb, 0(rp)
+ bne n, L(top) C U0
+
+L(end): ldq rlimb, 0(rp)
addq r19, acc0, acc0 C propagate nail
- lda rp, 8(rp)
+ lda rp, 8(rp) C FIXME: DELETE
srl m0a,NAIL_BITS, r8 C U0
addq r8, acc0, r19
addq m0b, acc1, acc0
@@ -194,5 +191,5 @@ Lend:
ldq r15, 56(r30)
lda r30, 240(r30)
ret r31, (r26), 1
-EPILOGUE(mpn_addmul_4)
+EPILOGUE()
ASM_END()