summaryrefslogtreecommitdiff
path: root/mpn/powerpc64
diff options
context:
space:
mode:
authorTorbjorn Granlund <tg@gmplib.org>2018-11-11 13:59:17 +0100
committerTorbjorn Granlund <tg@gmplib.org>2018-11-11 13:59:17 +0100
commit0c011e4e2c3e3d6bff229b923aef0e544c15079d (patch)
tree63cc4adcc94dc838ef468f8b059823300c1e543f /mpn/powerpc64
parentc8e77e22eb51e7f26ac0c9dc4116fabc384e33f2 (diff)
downloadgmp-0c011e4e2c3e3d6bff229b923aef0e544c15079d.tar.gz
Tweak for slightly better speed.
* mpn/powerpc64/mode64/p9/addmul_1.asm: Tweak for slightly better speed.
Diffstat (limited to 'mpn/powerpc64')
-rw-r--r--mpn/powerpc64/mode64/p9/addmul_1.asm14
1 files changed, 7 insertions, 7 deletions
diff --git a/mpn/powerpc64/mode64/p9/addmul_1.asm b/mpn/powerpc64/mode64/p9/addmul_1.asm
index 5b6de92b0..dfaf31b6d 100644
--- a/mpn/powerpc64/mode64/p9/addmul_1.asm
+++ b/mpn/powerpc64/mode64/p9/addmul_1.asm
@@ -1,6 +1,6 @@
dnl POWER9 mpn_addmul_1.
-dnl Copyright 2017 Free Software Foundation, Inc.
+dnl Copyright 2017, 2018 Free Software Foundation, Inc.
dnl This file is part of the GNU MP Library.
dnl
@@ -37,7 +37,7 @@ C POWER5 -
C POWER6 -
C POWER7 -
C POWER8 -
-C POWER9 ?
+C POWER9 2.4-2.6
C TODO
C * Schedule for POWER9 pipeline.
@@ -55,9 +55,9 @@ PROLOGUE(mpn_addmul_1)
cmpdi cr6, n, 2
- addi r0, n, -1
- srdi r0, r0, 1
- mtctr r0
+ addi r0, n, -1 C FIXME: postpone
+ srdi r0, r0, 1 C FIXME: postpone
+ mtctr r0 C FIXME: postpone
rldicl. r0, n, 0,63 C r0 = n & 3, set cr0
bne cr0, L(b1)
@@ -95,14 +95,14 @@ L(b1): ld r11, 0(rp)
L(top): ld r10, 24(rp)
ld r12, 0(up)
std r0, 0(rp)
- maddld( r8, r31, v0, r11) C W:0,2,4
adde r0, r5, r9
+ maddld( r8, r31, v0, r11) C W:0,2,4
maddhdu(r5, r31, v0, r11) C W:1,3,5
L(mid): ld r11, 32(rp)
ld r31, 8(up)
std r0, 8(rp)
- maddld( r9, r12, v0, r10) C W:1,3,5
adde r0, r7, r8
+ maddld( r9, r12, v0, r10) C W:1,3,5
maddhdu(r7, r12, v0, r10) C W:2,4,6
addi rp, rp, 16
addi up, up, 16