Преглед изворни кода

p751: fix asm, in Go registers are caller-saved

trials/PERF
Ko- пре 6 година
родитељ
комит
036e180db1
1 измењених фајлова са 1 додато и 15 уклоњено
  1. +1
    -15
      p751toolbox/field_amd64.s

+ 1
- 15
p751toolbox/field_amd64.s Прегледај датотеку

@@ -1630,7 +1630,7 @@ TEXT ·fp751Mul(SB), $96-24
ADCQ DX, T2 \
ADCQ AX, T4

TEXT ·fp751MontgomeryReduce(SB), $48-16
TEXT ·fp751MontgomeryReduce(SB), $0-16

MOVQ z+0(FP), REG_P2
MOVQ x+8(FP), REG_P1
@@ -1641,13 +1641,6 @@ TEXT ·fp751MontgomeryReduce(SB), $48-16
CMPB ·hasBMI2(SB), $0
JE noBMI2

MOVQ BX, 0(SP)
MOVQ BP, 8(SP)
MOVQ R12, 16(SP)
MOVQ R13, 24(SP)
MOVQ R14, 32(SP)
MOVQ R15, 40(SP)

// a[0-3] x p751p1_nz --> result: [reg_p2+48], [reg_p2+56], [reg_p2+64], and rbp, r8:r14
CMPB ·hasADX(SB), $0
JE noADX1
@@ -1791,13 +1784,6 @@ continue3:
MOVQ R13, 80(REG_P2)
MOVQ R14, 88(REG_P2)

MOVQ 0(SP), BX
MOVQ 8(SP), BP
MOVQ 16(SP), R12
MOVQ 24(SP), R13
MOVQ 32(SP), R14
MOVQ 40(SP), R15

RET

noBMI2:


Loading…
Откажи
Сачувај