diff --git a/sm9/bn256/gfp2_g1_arm64.s b/sm9/bn256/gfp2_g1_arm64.s index cb6a067..222ce1e 100644 --- a/sm9/bn256/gfp2_g1_arm64.s +++ b/sm9/bn256/gfp2_g1_arm64.s @@ -3,7 +3,7 @@ #include "textflag.h" -#define res_ptr R0 +#define res_ptr R27 #define a_ptr R1 #define b_ptr R2 @@ -24,7 +24,7 @@ #define const3 R16 #define hlp0 R17 -#define hlp1 res_ptr +#define hlp1 R0 #define x0 R19 #define x1 R20 @@ -505,6 +505,7 @@ TEXT gfpSqrInternal(SB),NOSPLIT,$0 // func gfp2Mul(c, a, b *gfP2) TEXT ·gfp2Mul(SB),NOSPLIT,$104-24 + MOVD res+0(FP), res_ptr MOVD in1+8(FP), a_ptr MOVD in2+16(FP), b_ptr @@ -515,7 +516,7 @@ TEXT ·gfp2Mul(SB),NOSPLIT,$104-24 LDx (y1in) LDy (y2in) CALL gfpMulInternal(SB) - MOVD res+0(FP), res_ptr + STy (tmp0) STy (x3out) /*