From c305795f55fb0fd89061cc37f7837a23f9889b09 Mon Sep 17 00:00:00 2001 From: Sun Yimin Date: Mon, 23 Sep 2024 14:10:37 +0800 Subject: [PATCH] sm4: ppc64x, use VSBOX #249 --- sm4/aesni_macros_ppc64x.s | 7 ++----- sm4/asm_ppc64x.s | 4 ---- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/sm4/aesni_macros_ppc64x.s b/sm4/aesni_macros_ppc64x.s index b4cf64b..9d6c64f 100644 --- a/sm4/aesni_macros_ppc64x.s +++ b/sm4/aesni_macros_ppc64x.s @@ -10,8 +10,6 @@ LXVD2X (baseAddrReg)(offsetReg), REVERSE_WORDS; \ MOVD $0x50, offsetReg; \ LXVD2X (baseAddrReg)(offsetReg), NIBBLE_MASK; \ - MOVD $0x60, offsetReg; \ - LXVD2X (baseAddrReg)(offsetReg), INVERSE_SHIFT_ROWS; \ MOVD $0x70, offsetReg; \ LXVD2X (baseAddrReg)(offsetReg), M1L; \ MOVD $0x80, offsetReg; \ @@ -124,9 +122,8 @@ // - z: 128 bits temp register #define SM4_SBOX(x, y, z) \ AFFINE_TRANSFORM(M1L, M1H, V_FOUR, x, y, z); \ - VPERM x, x, INVERSE_SHIFT_ROWS, x; \ - VCIPHERLAST x, NIBBLE_MASK, x; \ - AFFINE_TRANSFORM_NOTX(M2L, M2H, V_FOUR, x, y, z) + VSBOX x, x; \ + AFFINE_TRANSFORM(M2L, M2H, V_FOUR, x, y, z) // SM4 TAO L1 function // parameters: diff --git a/sm4/asm_ppc64x.s b/sm4/asm_ppc64x.s index 55e97f6..4b97bf7 100644 --- a/sm4/asm_ppc64x.s +++ b/sm4/asm_ppc64x.s @@ -84,8 +84,6 @@ TEXT ·expandKeyAsm(SB),NOSPLIT,$0 LXVD2X (R4)(R0), REVERSE_WORDS MOVD $16, R3 LXVD2X (R4)(R3), NIBBLE_MASK - MOVD $32, R3 - LXVD2X (R4)(R3), INVERSE_SHIFT_ROWS MOVD $48, R3 LXVD2X (R4)(R3), M1L MOVD $64, R3 @@ -151,8 +149,6 @@ TEXT ·encryptBlockAsm(SB),NOSPLIT,$0 LXVD2X (R4)(R0), REVERSE_WORDS MOVD $16, R3 LXVD2X (R4)(R3), NIBBLE_MASK - MOVD $32, R3 - LXVD2X (R4)(R3), INVERSE_SHIFT_ROWS MOVD $48, R3 LXVD2X (R4)(R3), M1L MOVD $64, R3