mirror of https://github.com/golang/go.git
math: use new mnemonics for 'rotate then insert' on s390x
Mnemonics for these instructions were added to the assembler in CL 159357. Change-Id: Ie11c45ecc9cead9a8850fcc929b0211cfd980fe5 Reviewed-on: https://go-review.googlesource.com/c/go/+/160157 Run-TryBot: Michael Munday <mike.munday@ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
parent
c4953a62f9
commit
64dc4ba73f
|
|
@ -90,17 +90,11 @@ L2:
|
|||
MOVH $0x0, R1
|
||||
SUBW R5, R3
|
||||
FMOVD $0, F10
|
||||
WORD $0xEC4320AF //risbg %r4,%r3,32,128+47,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
WORD $0xEC3339BC //risbg %r3,%r3,57,128+60,64-13
|
||||
BYTE $0x33
|
||||
BYTE $0x55
|
||||
RISBGZ $32, $47, $0, R3, R4
|
||||
RISBGZ $57, $60, $51, R3, R3
|
||||
BYTE $0x18 //lr %r2,%r4
|
||||
BYTE $0x24
|
||||
WORD $0xEC14001F //risbgn %r1,%r4,64-64+0,64-64+0+32-1,64-0-32
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $31, $32, R4, R1
|
||||
SUBW $0x100000, R2
|
||||
SRAW $8, R2, R2
|
||||
ORW $0x45000000, R2
|
||||
|
|
@ -119,9 +113,7 @@ L5:
|
|||
FMOVD 64(R9), F2
|
||||
WFMADB V6, V4, V1, V6
|
||||
FMOVD 56(R9), F1
|
||||
WORD $0xEC3339BC //risbg %r3,%r3,57,128+60,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $0, R3, R3
|
||||
WFMADB V0, V2, V1, V2
|
||||
FMOVD 48(R9), F1
|
||||
WFMADB V4, V6, V2, V6
|
||||
|
|
@ -158,15 +150,9 @@ L4:
|
|||
MOVH $0x0, R1
|
||||
SUBW R5, R3
|
||||
SRAW $8, R3, R2
|
||||
WORD $0xEC4320AF //risbg %r4,%r3,32,128+47,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
RISBGZ $32, $47, $0, R3, R4
|
||||
ANDW $0xFFFFFF00, R2
|
||||
WORD $0xEC3339BC //risbg %r3,%r3,57,128+60,64-13
|
||||
BYTE $0x33
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $51, R3, R3
|
||||
ORW $0x45000000, R2
|
||||
WORD $0xEC14001F //risbgn %r1,%r4,64-64+0,64-64+0+32-1,64-0-32
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $31, $32, R4, R1
|
||||
BR L5
|
||||
|
|
|
|||
|
|
@ -98,14 +98,10 @@ L9:
|
|||
MOVH $0x0, R2
|
||||
SUBW R5, R3
|
||||
FMOVD $0, F8
|
||||
WORD $0xEC4320AF //risbg %r4,%r3,32,128+47,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
RISBGZ $32, $47, $0, R3, R4
|
||||
BYTE $0x18 //lr %r1,%r4
|
||||
BYTE $0x14
|
||||
WORD $0xEC24001F //risbgn %r2,%r4,64-64+0,64-64+0+32-1,64-0-32
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $31, $32, R4, R2
|
||||
SUBW $0x100000, R1
|
||||
SRAW $8, R1, R1
|
||||
ORW $0x45000000, R1
|
||||
|
|
@ -137,13 +133,9 @@ L5:
|
|||
SRAD $32, R5
|
||||
MOVH $0x0, R2
|
||||
SUBW R5, R3
|
||||
WORD $0xEC4320AF //risbg %r4,%r3,32,128+47,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
RISBGZ $32, $47, $0, R3, R4
|
||||
SRAW $8, R4, R1
|
||||
WORD $0xEC24001F //risbgn %r2,%r4,64-64+0,64-64+0+32-1,64-0-32
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $31, $32, R4, R2
|
||||
ORW $0x45000000, R1
|
||||
L6:
|
||||
LDGR R2, F2
|
||||
|
|
@ -160,9 +152,7 @@ L6:
|
|||
FMOVD 144(R9), F0
|
||||
WFMADB V6, V4, V1, V6
|
||||
FMOVD 136(R9), F1
|
||||
WORD $0xEC3339BC //risbg %r3,%r3,57,128+60,64-13
|
||||
BYTE $0x33
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $51, R3, R3
|
||||
WFMADB V2, V0, V1, V0
|
||||
FMOVD 128(R9), F1
|
||||
WFMADB V4, V6, V0, V6
|
||||
|
|
|
|||
|
|
@ -144,16 +144,10 @@ Normal:
|
|||
MOVD $·atan2rodataL25<>+0(SB), R9
|
||||
LGDR F0, R2
|
||||
LGDR F2, R1
|
||||
WORD $0xEC2220BF //risbgn %r2,%r2,64-32,128+63,64+0+32
|
||||
BYTE $0x60
|
||||
BYTE $0x59
|
||||
WORD $0xEC1120BF //risbgn %r1,%r1,64-32,128+63,64+0+32
|
||||
BYTE $0x60
|
||||
BYTE $0x59
|
||||
RISBGNZ $32, $63, $32, R2, R2
|
||||
RISBGNZ $32, $63, $32, R1, R1
|
||||
WORD $0xB9170032 //llgtr %r3,%r2
|
||||
WORD $0xEC523FBF //risbg %r5,%r2,64-1,128+63,64+32+1
|
||||
BYTE $0x61
|
||||
BYTE $0x55
|
||||
RISBGZ $63, $63, $33, R2, R5
|
||||
WORD $0xB9170041 //llgtr %r4,%r1
|
||||
WFLCDB V0, V20
|
||||
MOVW R4, R6
|
||||
|
|
@ -224,9 +218,7 @@ L7:
|
|||
MOVW R1, R6
|
||||
CMPBGE R6, $0, L1
|
||||
L18:
|
||||
WORD $0xEC223ABC //risbg %r2,%r2,58,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $58, $60, $3, R2, R2
|
||||
MOVD $·atan2xpi2h<>+0(SB), R1
|
||||
MOVD ·atan2xpim<>+0(SB), R3
|
||||
LDGR R3, F0
|
||||
|
|
|
|||
|
|
@ -55,9 +55,7 @@ TEXT ·atanAsm(SB), NOSPLIT, $0-16
|
|||
MOVD $·atanrodataL8<>+0(SB), R5
|
||||
MOVH $0x3FE0, R3
|
||||
LGDR F0, R1
|
||||
WORD $0xEC1120BF //risbgn %r1,%r1,64-32,128+63,64+0+32
|
||||
BYTE $0x60
|
||||
BYTE $0x59
|
||||
RISBGNZ $32, $63, $32, R1, R1
|
||||
RLL $16, R1, R2
|
||||
ANDW $0x7FF0, R2
|
||||
MOVW R2, R6
|
||||
|
|
@ -66,9 +64,7 @@ TEXT ·atanAsm(SB), NOSPLIT, $0-16
|
|||
MOVD $·atanxmone<>+0(SB), R3
|
||||
FMOVD 0(R3), F2
|
||||
WFDDB V0, V2, V0
|
||||
WORD $0xEC113FBF //risbg %r1,%r1,64-1,128+63,64+32+1
|
||||
BYTE $0x61
|
||||
BYTE $0x55
|
||||
RISBGZ $63, $63, $33, R1, R1
|
||||
MOVD $·atanxpi2h<>+0(SB), R3
|
||||
MOVWZ R1, R1
|
||||
SLD $3, R1, R1
|
||||
|
|
|
|||
|
|
@ -136,9 +136,7 @@ L9:
|
|||
BYTE $0x1B
|
||||
SUBW R4, R2
|
||||
WFSDB V3, V2, V3
|
||||
WORD $0xEC1220AF //risbg %r1,%r2,32,128+47,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
RISBGZ $32, $47, $0, R2, R1
|
||||
SLD $32, R1, R1
|
||||
LDGR R1, F2
|
||||
WFMADB V4, V2, V16, V4
|
||||
|
|
@ -162,9 +160,7 @@ L9:
|
|||
WFMADB V2, V6, V3, V6
|
||||
VLVGF $0, R1, V4
|
||||
LDEBR F4, F4
|
||||
WORD $0xEC2239BC //risbg %r2,%r2,57,128+60,64-13
|
||||
BYTE $0x33
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $51, R2, R2
|
||||
MOVD $·atanhtab2076<>+0(SB), R1
|
||||
FMOVD 16(R5), F3
|
||||
WORD $0x68521000 //ld %f5,0(%r2,%r1)
|
||||
|
|
|
|||
|
|
@ -106,18 +106,12 @@ L2:
|
|||
LGDR F2, R2
|
||||
SRAD $32, R2
|
||||
L4:
|
||||
WORD $0xEC3239BE //risbg %r3,%r2,57,128+62,64-25
|
||||
BYTE $0x27
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $62, $39, R2, R3
|
||||
MOVD $·cbrttab12067<>+0(SB), R1
|
||||
WORD $0x48131000 //lh %r1,0(%r3,%r1)
|
||||
WORD $0xEC3239BE //risbg %r3,%r2,57,128+62,64-19
|
||||
BYTE $0x2D
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $62, $45, R2, R3
|
||||
MOVD $·cbrttab22068<>+0(SB), R5
|
||||
WORD $0xEC223CBF //risbgn %r2,%r2,64-4,128+63,64+44+4
|
||||
BYTE $0x70
|
||||
BYTE $0x59
|
||||
RISBGNZ $60, $63, $48, R2, R2
|
||||
WORD $0x4A135000 //ah %r1,0(%r3,%r5)
|
||||
BYTE $0x18 //lr %r3,%r1
|
||||
BYTE $0x31
|
||||
|
|
|
|||
|
|
@ -116,14 +116,10 @@ L14:
|
|||
MOVD $coshe1<>+0(SB), R3
|
||||
WFMADB V1, V6, V5, V6
|
||||
FMOVD 0(R3), F5
|
||||
WORD $0xEC21000F //risbgn %r2,%r1,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R1, R2
|
||||
WFMADB V1, V7, V5, V1
|
||||
BVS L22
|
||||
WORD $0xEC4139BC //risbg %r4,%r1,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R1, R4
|
||||
MOVD $coshtab<>+0(SB), R3
|
||||
WFMADB V3, V6, V1, V6
|
||||
WORD $0x68043000 //ld %f0,0(%r4,%r3)
|
||||
|
|
@ -131,9 +127,7 @@ L14:
|
|||
WORD $0xA71AF000 //ahi %r1,-4096
|
||||
WFMADB V2, V6, V0, V6
|
||||
L17:
|
||||
WORD $0xEC21000F //risbgn %r2,%r1,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R1, R2
|
||||
LDGR R2, F2
|
||||
FMADD F2, F6, F2
|
||||
MOVD $coshx4ff<>+0(SB), R1
|
||||
|
|
@ -176,27 +170,19 @@ L20:
|
|||
LGDR F3, R1
|
||||
MOVD $coshtab<>+0(SB), R5
|
||||
WFMADB V4, V6, V1, V3
|
||||
WORD $0xEC4139BC //risbg %r4,%r1,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R1, R4
|
||||
WFMSDB V4, V6, V1, V6
|
||||
WORD $0x68145000 //ld %f1,0(%r4,%r5)
|
||||
WFMSDB V4, V1, V0, V2
|
||||
WORD $0xA7487FBE //lhi %r4,32702
|
||||
FMADD F3, F2, F1
|
||||
SUBW R1, R4
|
||||
WORD $0xECC439BC //risbg %r12,%r4,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R4, R12
|
||||
WORD $0x682C5000 //ld %f2,0(%r12,%r5)
|
||||
FMSUB F2, F4, F0
|
||||
WORD $0xEC21000F //risbgn %r2,%r1,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R1, R2
|
||||
WFMADB V0, V6, V2, V6
|
||||
WORD $0xEC34000F //risbgn %r3,%r4,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R4, R3
|
||||
LDGR R2, F2
|
||||
LDGR R3, F0
|
||||
FMADD F2, F1, F2
|
||||
|
|
@ -210,9 +196,7 @@ L22:
|
|||
MOVD $coshtab<>+0(SB), R4
|
||||
SUBW R1, R3
|
||||
WFMSDB V3, V6, V1, V6
|
||||
WORD $0xEC3339BC //risbg %r3,%r3,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R3, R3
|
||||
WORD $0x68034000 //ld %f0,0(%r3,%r4)
|
||||
FMSUB F0, F3, F2
|
||||
WORD $0xA7386FBE //lhi %r3,28606
|
||||
|
|
|
|||
|
|
@ -104,9 +104,7 @@ TEXT ·erfAsm(SB), NOSPLIT, $0-16
|
|||
FMOVD F0, F6
|
||||
SRAD $48, R1
|
||||
MOVH $16383, R3
|
||||
WORD $0xEC2131BF //risbg %r2,%r1,49,128+63,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
RISBGZ $49, $63, $0, R1, R2
|
||||
MOVW R2, R6
|
||||
MOVW R3, R7
|
||||
CMPBGT R6, R7, L2
|
||||
|
|
@ -221,13 +219,9 @@ L9:
|
|||
FMOVD 200(R5), F3
|
||||
MOVH R1,R1
|
||||
WFMADB V4, V3, V5, V3
|
||||
WORD $0xEC2139BC //risbg %r2,%r1,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R1, R2
|
||||
WFMADB V1, V6, V3, V6
|
||||
WORD $0xEC31000F //risbgn %r3,%r1,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R1, R3
|
||||
MOVD $·erftab2066<>+0(SB), R1
|
||||
FMOVD 192(R5), F1
|
||||
LDGR R3, F3
|
||||
|
|
|
|||
|
|
@ -242,16 +242,12 @@ L11:
|
|||
WFMADB V0, V2, V3, V0
|
||||
FMOVD 584(R9), F3
|
||||
WFMADB V4, V6, V3, V6
|
||||
WORD $0xECC339BC //risbg %r12,%r3,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R3, R12
|
||||
WFMADB V2, V0, V6, V0
|
||||
MOVD $·erfctab2069<>+0(SB), R5
|
||||
WORD $0x682C5000 //ld %f2,0(%r12,%r5)
|
||||
FMADD F2, F4, F4
|
||||
WORD $0xEC43000F //risbgn %r4,%r3,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R3, R4
|
||||
WFMADB V4, V0, V2, V4
|
||||
LDGR R4, F2
|
||||
FMADD F4, F2, F2
|
||||
|
|
|
|||
|
|
@ -91,9 +91,7 @@ L2:
|
|||
WFMADB V0, V4, V3, V4
|
||||
FMOVD 8(R5), F3
|
||||
WFMADB V2, V1, V3, V1
|
||||
WORD $0xEC3139BC //risbg %r3,%r1,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R1, R3
|
||||
WFMADB V0, V4, V1, V0
|
||||
MOVD $·exptexp<>+0(SB), R2
|
||||
WORD $0x68432000 //ld %f4,0(%r3,%r2)
|
||||
|
|
@ -142,9 +140,7 @@ L6:
|
|||
WFMADB V6, V1, V7, V1
|
||||
FMOVD 8(R5), F7
|
||||
WFMADB V4, V5, V7, V5
|
||||
WORD $0xEC3139BC //risbg %r3,%r1,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R1, R3
|
||||
WFMADB V6, V1, V5, V6
|
||||
MOVD $·exptexp<>+0(SB), R2
|
||||
WFCHDBS V2, V0, V0
|
||||
|
|
@ -154,9 +150,7 @@ L6:
|
|||
WFMADB V4, V6, V1, V4
|
||||
BEQ L21
|
||||
ADDW $0xF000, R1
|
||||
WORD $0xEC21000F //risbgn %r2,%r1,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R1, R2
|
||||
LDGR R2, F0
|
||||
FMADD F0, F4, F0
|
||||
MOVD $·expx4ff<>+0(SB), R3
|
||||
|
|
@ -170,9 +164,7 @@ L13:
|
|||
RET
|
||||
L21:
|
||||
ADDW $0x1000, R1
|
||||
WORD $0xEC21000F //risbgn %r2,%r1,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R1, R2
|
||||
LDGR R2, F0
|
||||
FMADD F0, F4, F0
|
||||
MOVD $·expx2ff<>+0(SB), R3
|
||||
|
|
|
|||
|
|
@ -99,9 +99,7 @@ L2:
|
|||
FMADD F5, F4, F0
|
||||
FMOVD 16(R5), F6
|
||||
WFMADB V0, V2, V6, V2
|
||||
WORD $0xEC3139BC //risbg %r3,%r1,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R1, R3
|
||||
WORD $0xB3130022 //lcdbr %f2,%f2
|
||||
MOVD $·expm1tab<>+0(SB), R2
|
||||
WORD $0x68432000 //ld %f4,0(%r3,%r2)
|
||||
|
|
@ -157,9 +155,7 @@ L6:
|
|||
FMADD F4, F1, F6
|
||||
LGDR F5, R1
|
||||
WORD $0xB3130066 //lcdbr %f6,%f6
|
||||
WORD $0xEC3139BC //risbg %r3,%r1,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R1, R3
|
||||
WORD $0x68432000 //ld %f4,0(%r3,%r2)
|
||||
FMADD F4, F1, F1
|
||||
MOVD $0x4086000000000000, R2
|
||||
|
|
@ -168,9 +164,7 @@ L6:
|
|||
WFCHDBS V2, V0, V0
|
||||
BEQ L21
|
||||
ADDW $0xF000, R1
|
||||
WORD $0xEC21000F //risbgn %r2,%r1,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R1, R2
|
||||
LDGR R2, F0
|
||||
FMADD F0, F4, F0
|
||||
MOVD $·expm1x4ff<>+0(SB), R3
|
||||
|
|
@ -186,9 +180,7 @@ L7:
|
|||
RET
|
||||
L21:
|
||||
ADDW $0x1000, R1
|
||||
WORD $0xEC21000F //risbgn %r2,%r1,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R1, R2
|
||||
LDGR R2, F0
|
||||
FMADD F0, F4, F0
|
||||
MOVD $·expm1x2ff<>+0(SB), R3
|
||||
|
|
|
|||
|
|
@ -62,13 +62,9 @@ TEXT ·log10Asm(SB),NOSPLIT,$8-16
|
|||
BYTE $0xFF
|
||||
WORD $0x5840F008 //l %r4, 8(%r15)
|
||||
SUBW R4, R2, R3
|
||||
WORD $0xEC5320AF //risbg %r5,%r3,32,128+47,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
RISBGZ $32, $47, $0, R3, R5
|
||||
MOVH $0x0, R1
|
||||
WORD $0xEC15001F //risbgn %r1,%r5,64-64+0,64-64+0+32-1,64-0-32
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $31, $32, R5, R1
|
||||
WORD $0xC0590016 //iilf %r5,1507327
|
||||
BYTE $0xFF
|
||||
BYTE $0xFF
|
||||
|
|
@ -94,13 +90,9 @@ L2:
|
|||
BYTE $0x1C
|
||||
FMOVD F0, x-8(SP)
|
||||
WORD $0x5B20F008 //s %r2, 8(%r15)
|
||||
WORD $0xEC3239BC //risbg %r3,%r2,57,128+60,64-13
|
||||
BYTE $0x33
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $51, R2, R3
|
||||
ANDW $0xFFFF0000, R2
|
||||
WORD $0xEC12001F //risbgn %r1,%r2,64-64+0,64-64+0+32-1,64-0-32
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $31, $32, R2, R1
|
||||
ADDW $0x4000000, R2
|
||||
BLEU L17
|
||||
L8:
|
||||
|
|
@ -122,9 +114,7 @@ L4:
|
|||
FMOVD log10rodataL19<>+72(SB), F1
|
||||
WFMADB V0, V2, V1, V2
|
||||
FMOVD log10rodataL19<>+64(SB), F1
|
||||
WORD $0xEC3339BC //risbg %r3,%r3,57,128+60,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $0, R3, R3
|
||||
WFMADB V4, V6, V2, V6
|
||||
FMOVD log10rodataL19<>+56(SB), F2
|
||||
WFMADB V0, V1, V2, V1
|
||||
|
|
@ -145,12 +135,8 @@ L4:
|
|||
RET
|
||||
|
||||
L16:
|
||||
WORD $0xEC2328B7 //risbg %r2,%r3,40,128+55,64-8
|
||||
BYTE $0x38
|
||||
BYTE $0x55
|
||||
WORD $0xEC3339BC //risbg %r3,%r3,57,128+60,64-13
|
||||
BYTE $0x33
|
||||
BYTE $0x55
|
||||
RISBGZ $40, $55, $56, R3, R2
|
||||
RISBGZ $57, $60, $51, R3, R3
|
||||
ORW $0x45000000, R2
|
||||
BR L4
|
||||
L13:
|
||||
|
|
|
|||
|
|
@ -105,12 +105,8 @@ TEXT ·log1pAsm(SB), NOSPLIT, $0-16
|
|||
SRW $16, R1, R1
|
||||
BYTE $0x18 //lr %r4,%r1
|
||||
BYTE $0x41
|
||||
WORD $0xEC24000F //risbgn %r2,%r4,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
WORD $0xEC54101F //risbgn %r5,%r4,64-64+16,64-64+16+16-1,64-16-16
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R4, R2
|
||||
RISBGN $16, $31, $32, R4, R5
|
||||
MOVW R0, R6
|
||||
MOVW R3, R7
|
||||
CMPBGT R6, R7, L8
|
||||
|
|
@ -155,9 +151,7 @@ L8:
|
|||
WFMADB V6, V5, V2, V6
|
||||
FMOVD 0(R2), F4
|
||||
WFMADB V0, V6, V4, V6
|
||||
WORD $0xEC1139BC //risbg %r1,%r1,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R1, R1
|
||||
MOVD $·log1ptab<>+0(SB), R2
|
||||
MOVD $·log1pxl1<>+0(SB), R3
|
||||
WORD $0x68112000 //ld %f1,0(%r1,%r2)
|
||||
|
|
|
|||
|
|
@ -68,15 +68,9 @@ TEXT ·logAsm(SB), NOSPLIT, $0-16
|
|||
SRAD $48, R1, R1
|
||||
MOVD $0x40F03E8000000000, R8
|
||||
SUBW R1, R4
|
||||
WORD $0xEC2420BB //risbg %r2,%r4,32,128+59,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
WORD $0xEC62000F //risbgn %r6,%r2,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
WORD $0xEC82101F //risbgn %r8,%r2,64-64+16,64-64+16+16-1,64-16-16
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGZ $32, $59, $0, R4, R2
|
||||
RISBGN $0, $15, $48, R2, R6
|
||||
RISBGN $16, $31, $32, R2, R8
|
||||
MOVW R1, R7
|
||||
CMPBGT R7, $22, L17
|
||||
LTDBR F0, F0
|
||||
|
|
@ -103,12 +97,8 @@ L15:
|
|||
BYTE $0x51
|
||||
MOVW R1, R7
|
||||
CMPBLE R7, $22, L7
|
||||
WORD $0xEC63000F //risbgn %r6,%r3,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
WORD $0xEC82101F //risbgn %r8,%r2,64-64+16,64-64+16+16-1,64-16-16
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R3, R6
|
||||
RISBGN $16, $31, $32, R2, R8
|
||||
L2:
|
||||
MOVH R5, R5
|
||||
MOVH $0x7FEF, R1
|
||||
|
|
@ -116,9 +106,7 @@ L2:
|
|||
BGT L1
|
||||
LDGR R6, F2
|
||||
FMUL F2, F0
|
||||
WORD $0xEC4439BB //risbg %r4,%r4,57,128+59,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $59, $3, R4, R4
|
||||
FMOVD 80(R9), F2
|
||||
MOVD $·logxm<>+0(SB), R7
|
||||
ADD R7, R4
|
||||
|
|
|
|||
|
|
@ -301,13 +301,9 @@ Normal:
|
|||
WORD $0xC0298009 //iilf %r2,2148095317
|
||||
BYTE $0x55
|
||||
BYTE $0x55
|
||||
WORD $0xEC1320BF //risbgn %r1,%r3,64-32,128+63,64+0+32
|
||||
BYTE $0x60
|
||||
BYTE $0x59
|
||||
RISBGNZ $32, $63, $32, R3, R1
|
||||
SUBW R1, R2
|
||||
WORD $0xEC323ABF //risbgn %r3,%r2,64-6,128+63,64+44+6
|
||||
BYTE $0x72
|
||||
BYTE $0x59
|
||||
RISBGNZ $58, $63, $50, R2, R3
|
||||
BYTE $0x18 //lr %r5,%r1
|
||||
BYTE $0x51
|
||||
MOVD $·powtabi<>+0(SB), R12
|
||||
|
|
@ -322,12 +318,8 @@ Normal:
|
|||
ORW R5, R1
|
||||
WORD $0x5A234000 //a %r2,0(%r3,%r4)
|
||||
MOVD $0x3FF0000000000000, R5
|
||||
WORD $0xEC3228BF //risbg %r3,%r2,64-24,128+63,64+32+24
|
||||
BYTE $0x78
|
||||
BYTE $0x55
|
||||
WORD $0xEC82001F //risbgn %r8,%r2,64-64+0,64-64+0+32-1,64-0-32
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGZ $40, $63, $56, R2, R3
|
||||
RISBGN $0, $31, $32, R2, R8
|
||||
ORW $0x45000000, R3
|
||||
MOVW R1, R6
|
||||
CMPBLT R6, $0, L42
|
||||
|
|
@ -399,16 +391,12 @@ L2:
|
|||
WFMADB V1, V3, V7, V1
|
||||
FMOVD 16(R9), F5
|
||||
WFMADB V4, V5, V16, V5
|
||||
WORD $0xEC4239BC //risbg %r4,%r2,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R2, R4
|
||||
WFMADB V3, V1, V5, V1
|
||||
MOVD $·powtexp<>+0(SB), R3
|
||||
WORD $0x68343000 //ld %f3,0(%r4,%r3)
|
||||
FMADD F3, F4, F4
|
||||
WORD $0xEC52000F //risbgn %r5,%r2,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R2, R5
|
||||
WFMADB V4, V1, V3, V4
|
||||
LGDR F6, R2
|
||||
LDGR R5, F1
|
||||
|
|
@ -449,18 +437,12 @@ L11:
|
|||
MOVW R2, R7
|
||||
MOVW R1, R6
|
||||
CMPBLE R7, R6, L34
|
||||
WORD $0xEC1520BF //risbgn %r1,%r5,64-32,128+63,64+0+32
|
||||
BYTE $0x60
|
||||
BYTE $0x59
|
||||
RISBGNZ $32, $63, $32, R5, R1
|
||||
LGDR F6, R2
|
||||
MOVD $powiadd<>+0(SB), R3
|
||||
WORD $0xEC223CBC //risbg %r2,%r2,60,128+60,64-60
|
||||
BYTE $0x04
|
||||
BYTE $0x55
|
||||
RISBGZ $60, $60, $4, R2, R2
|
||||
WORD $0x5A123000 //a %r1,0(%r2,%r3)
|
||||
WORD $0xEC51001F //risbgn %r5,%r1,64-64+0,64-64+0+32-1,64-0-32
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $31, $32, R1, R5
|
||||
LDGR R5, F1
|
||||
FMADD F1, F4, F1
|
||||
MOVD $powxscale<>+0(SB), R1
|
||||
|
|
@ -487,16 +469,10 @@ L3:
|
|||
BYTE $0x55
|
||||
BYTE $0x55
|
||||
LGDR F4, R3
|
||||
WORD $0xEC3320BF //risbgn %r3,%r3,64-32,128+63,64+0+32
|
||||
BYTE $0x60
|
||||
BYTE $0x59
|
||||
RISBGNZ $32, $63, $32, R3, R3
|
||||
SUBW R3, R2, R3
|
||||
WORD $0xEC2321AB //risbg %r2,%r3,33,128+43,0
|
||||
BYTE $0x00
|
||||
BYTE $0x55
|
||||
WORD $0xEC333ABF //risbgn %r3,%r3,64-6,128+63,64+44+6
|
||||
BYTE $0x72
|
||||
BYTE $0x59
|
||||
RISBGZ $33, $43, $0, R3, R2
|
||||
RISBGNZ $58, $63, $50, R3, R3
|
||||
WORD $0xE303C000 //llgc %r0,0(%r3,%r12)
|
||||
BYTE $0x00
|
||||
BYTE $0x90
|
||||
|
|
@ -504,14 +480,10 @@ L3:
|
|||
WORD $0x5A234000 //a %r2,0(%r3,%r4)
|
||||
BYTE $0x18 //lr %r3,%r2
|
||||
BYTE $0x32
|
||||
WORD $0xEC83001F //risbgn %r8,%r3,64-64+0,64-64+0+32-1,64-0-32
|
||||
BYTE $0x20
|
||||
BYTE $0x59
|
||||
RISBGN $0, $31, $32, R3, R8
|
||||
ADDW $0x4000000, R3
|
||||
BLEU L5
|
||||
WORD $0xEC3328BF //risbg %r3,%r3,64-24,128+63,64+32+24
|
||||
BYTE $0x78
|
||||
BYTE $0x55
|
||||
RISBGZ $40, $63, $56, R3, R3
|
||||
ORW $0x45000000, R3
|
||||
BR L2
|
||||
L9:
|
||||
|
|
@ -540,9 +512,7 @@ L18:
|
|||
WFMDB V4, V5, V1
|
||||
BR L1
|
||||
L5:
|
||||
WORD $0xEC3321B2 //risbg %r3,%r3,33,128+50,64-1
|
||||
BYTE $0x3F
|
||||
BYTE $0x55
|
||||
RISBGZ $33, $50, $63, R3, R3
|
||||
WORD $0xC23B4000 //alfi %r3,1073741824
|
||||
BYTE $0x00
|
||||
BYTE $0x00
|
||||
|
|
@ -571,9 +541,7 @@ L16:
|
|||
BR L1
|
||||
L48:
|
||||
LGDR F0, R3
|
||||
WORD $0xEC1320BF //risbgn %r1,%r3,64-32,128+63,64+0+32
|
||||
BYTE $0x60
|
||||
BYTE $0x59
|
||||
RISBGNZ $32, $63, $32, R3, R1
|
||||
MOVW R1, R6
|
||||
CMPBEQ R6, $0, L29
|
||||
LTDBR F2, F2
|
||||
|
|
|
|||
|
|
@ -153,9 +153,7 @@ L6:
|
|||
VLGVG $0, V16, R2
|
||||
WFMADB V6, V3, V5, V6
|
||||
RLL $3, R2, R2
|
||||
WORD $0xEC12000F //risbgn %r1,%r2,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R2, R1
|
||||
BEQ L9
|
||||
WFMSDB V0, V1, V6, V0
|
||||
MOVD $sinhx4ff<>+0(SB), R3
|
||||
|
|
@ -165,9 +163,7 @@ L6:
|
|||
ANDW $0xFFFF, R2
|
||||
WORD $0xA53FEFB6 //llill %r3,61366
|
||||
SUBW R2, R3, R2
|
||||
WORD $0xEC12000F //risbgn %r1,%r2,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R2, R1
|
||||
LDGR R1, F2
|
||||
FMUL F2, F0
|
||||
FMOVD F0, ret+8(FP)
|
||||
|
|
@ -195,9 +191,7 @@ L20:
|
|||
FMOVD 0(R2), F5
|
||||
LGDR F6, R2
|
||||
RLL $3, R2, R2
|
||||
WORD $0xEC12000F //risbgn %r1,%r2,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R2, R1
|
||||
WFMADB V2, V1, V0, V1
|
||||
LDGR R1, F0
|
||||
MOVD $sinhe5<>+0(SB), R1
|
||||
|
|
@ -211,9 +205,7 @@ L20:
|
|||
FNEG F4, F4
|
||||
ANDW $0xFFFF, R2
|
||||
SUBW R2, R4, R2
|
||||
WORD $0xEC32000F //risbgn %r3,%r2,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R2, R3
|
||||
LDGR R3, F6
|
||||
WFADB V0, V6, V16
|
||||
MOVD $sinhe4<>+0(SB), R1
|
||||
|
|
@ -242,9 +234,7 @@ L9:
|
|||
FMOVD 0(R3), F2
|
||||
FMUL F2, F0
|
||||
WORD $0xA72AF000 //ahi %r2,-4096
|
||||
WORD $0xEC12000F //risbgn %r1,%r2,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R2, R1
|
||||
LDGR R1, F2
|
||||
FMUL F2, F0
|
||||
FMOVD F0, ret+8(FP)
|
||||
|
|
|
|||
|
|
@ -76,15 +76,11 @@ L2:
|
|||
WFMSDB V0, V4, V2, V4
|
||||
MOVD $tanhtab<>+0(SB), R3
|
||||
LGDR F4, R2
|
||||
WORD $0xEC4239BC //risbg %r4,%r2,57,128+60,3
|
||||
BYTE $0x03
|
||||
BYTE $0x55
|
||||
RISBGZ $57, $60, $3, R2, R4
|
||||
WORD $0xED105058 //cdb %f1,.L19-.L18(%r5)
|
||||
BYTE $0x00
|
||||
BYTE $0x19
|
||||
WORD $0xEC12000F //risbgn %r1,%r2,64-64+0,64-64+0+16-1,64-0-16
|
||||
BYTE $0x30
|
||||
BYTE $0x59
|
||||
RISBGN $0, $15, $48, R2, R1
|
||||
WORD $0x68543000 //ld %f5,0(%r4,%r3)
|
||||
LDGR R1, F6
|
||||
BLT L3
|
||||
|
|
|
|||
Loading…
Reference in New Issue