mirror of
https://github.com/emmansun/gmsm.git
synced 2025-04-26 12:16:20 +08:00
sm4: ppc64x expand key debug 1
This commit is contained in:
parent
742bdcc1aa
commit
c21ab2d9c8
@ -151,7 +151,7 @@ TEXT ·expandKeyAsm(SB),NOSPLIT,$0
|
|||||||
LVX (R4), ESPERMW
|
LVX (R4), ESPERMW
|
||||||
#endif
|
#endif
|
||||||
MOVD $·rcon+0x50(SB), R4
|
MOVD $·rcon+0x50(SB), R4
|
||||||
LXVD2X (R4)(R0), REVERSE_WORDS
|
LXVD2X (R4)(R0), REVERSE_WORDS
|
||||||
MOVD $16, R3
|
MOVD $16, R3
|
||||||
LXVD2X (R4)(R3), NIBBLE_MASK
|
LXVD2X (R4)(R3), NIBBLE_MASK
|
||||||
MOVD $32, R3
|
MOVD $32, R3
|
||||||
@ -173,32 +173,36 @@ TEXT ·expandKeyAsm(SB),NOSPLIT,$0
|
|||||||
ADD $112, R6
|
ADD $112, R6
|
||||||
|
|
||||||
// prepare counter
|
// prepare counter
|
||||||
MOVD $8, R7
|
// MOVD $8, R7
|
||||||
MOVD R7, CTR
|
// MOVD R7, CTR
|
||||||
|
|
||||||
|
VSPLTISB $0, V6 // VZERO V6
|
||||||
|
|
||||||
// load key
|
// load key
|
||||||
PPC64X_LXVW4X(R3, R0, V0)
|
PPC64X_LXVW4X(R3, R0, V0)
|
||||||
VSLDOI $4, V0, V0, V1
|
VSLDOI $4, V0, V6, V1
|
||||||
VSLDOI $4, V1, V1, V2
|
VSLDOI $4, V1, V6, V2
|
||||||
VSLDOI $4, V2, V2, V3
|
VSLDOI $4, V2, V6, V3
|
||||||
|
|
||||||
ksLoop:
|
ksLoop:
|
||||||
|
VSPLTISB $0, V5 // VZERO V5
|
||||||
LXVW4X (R4), V4
|
LXVW4X (R4), V4
|
||||||
SM4_EXPANDKEY_ROUND(V4, V7, V8, V9, V0, V1, V2, V3, V5)
|
SM4_EXPANDKEY_ROUND(V4, V7, V8, V9, V0, V1, V2, V3, V5)
|
||||||
VSLDOI $4, V4, V4, V4
|
VSLDOI $4, V4, V6, V4
|
||||||
SM4_EXPANDKEY_ROUND(V4, V7, V8, V9, V1, V2, V3, V0, V5)
|
SM4_EXPANDKEY_ROUND(V4, V7, V8, V9, V1, V2, V3, V0, V5)
|
||||||
VSLDOI $4, V4, V4, V4
|
VSLDOI $4, V4, V6, V4
|
||||||
SM4_EXPANDKEY_ROUND(V4, V7, V8, V9, V2, V3, V0, V1, V5)
|
SM4_EXPANDKEY_ROUND(V4, V7, V8, V9, V2, V3, V0, V1, V5)
|
||||||
VSLDOI $4, V4, V4, V4
|
VSLDOI $4, V4, V6, V4
|
||||||
SM4_EXPANDKEY_ROUND(V4, V7, V8, V9, V3, V0, V1, V2, V5)
|
SM4_EXPANDKEY_ROUND(V4, V7, V8, V9, V3, V0, V1, V2, V5)
|
||||||
STXVW4X V5, (R5)
|
STXVW4X V5, (R5)
|
||||||
VPERM V5, V5, REVERSE_WORDS, V5
|
VPERM V5, V6, REVERSE_WORDS, V5
|
||||||
STXVW4X V5, (R6)
|
STXVW4X V5, (R6)
|
||||||
|
/*
|
||||||
ADD $16, R5
|
ADD $16, R5
|
||||||
ADD $16, R4
|
ADD $16, R4
|
||||||
ADD $-16, R6
|
ADD $-16, R6
|
||||||
BDNZ ksLoop
|
BDNZ ksLoop
|
||||||
|
*/
|
||||||
RET
|
RET
|
||||||
|
|
||||||
// func encryptBlocksAsm(xk *uint32, dst, src []byte, inst int)
|
// func encryptBlocksAsm(xk *uint32, dst, src []byte, inst int)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user