diff --git a/sm4/asm_ppc64x.s b/sm4/asm_ppc64x.s index 840ba77..b6da60c 100644 --- a/sm4/asm_ppc64x.s +++ b/sm4/asm_ppc64x.s @@ -165,7 +165,7 @@ TEXT ·expandKeyAsm(SB),NOSPLIT,$0 MOVD $96, R3 LXVD2X (R4)(R3), M2H VSPLTISB $0, ZERO // VZERO ZERO - MOVD $·rcon+0x50(SB), R4 + MOVD $·rcon+0x40(SB), R4 LXVD2X (R4)(R0), M3 MOVD key+0(FP), R3 @@ -186,7 +186,8 @@ TEXT ·expandKeyAsm(SB),NOSPLIT,$0 VSLDOI $4, V2, V2, V3 VOR M3, M3, V5 - AFFINE_TRANSFORM(M1L, M1H, V_FOUR, V5, V6, V7) + VPERM V5, V5, INVERSE_SHIFT_ROWS, V5 + VCIPHERLAST V5, ZERO, V5 STXVW4X V5, (R5) /*