mirror of
https://github.com/emmansun/gmsm.git
synced 2025-04-26 12:16:20 +08:00
reduce instructions
This commit is contained in:
parent
ec02d6afc6
commit
98b70a5cfd
@ -10,17 +10,6 @@
|
||||
#define hlp0 R7
|
||||
#define hlp1 R9
|
||||
|
||||
// Wt = Mt; for 0 <= t <= 3
|
||||
#define MSGSCHEDULE0() \
|
||||
LDPW (0*8)(SI), (AX, BX); \
|
||||
LDPW (1*8)(SI), (CX, DX); \
|
||||
REVW AX, AX; \
|
||||
REVW BX, BX; \
|
||||
REVW CX, CX; \
|
||||
REVW DX, DX; \
|
||||
STPW (AX, BX), (0*8)(BP); \
|
||||
STPW (CX, DX), (1*8)(BP)
|
||||
|
||||
// Wt+4 = Mt+4; for 0 <= t <= 11
|
||||
#define MSGSCHEDULE01(index) \
|
||||
MOVW ((index+4)*4)(SI), AX; \
|
||||
@ -183,7 +172,16 @@ loop:
|
||||
MOVW R25, R16
|
||||
MOVW R26, R17
|
||||
|
||||
MSGSCHEDULE0()
|
||||
// Wt = Mt; for 0 <= t <= 3
|
||||
LDPW (0*8)(SI), (AX, BX)
|
||||
REVW AX, AX
|
||||
REVW BX, BX
|
||||
STPW (AX, BX), (0*8)(BP)
|
||||
|
||||
LDPW (1*8)(SI), (CX, DX)
|
||||
REVW CX, CX
|
||||
REVW DX, DX
|
||||
STPW (CX, DX), (1*8)(BP)
|
||||
|
||||
SM3ROUND0(0, 0x79cc4519, R19, R20, R21, R22, R23, R24, R25, R26)
|
||||
SM3ROUND0(1, 0xf3988a32, R26, R19, R20, R21, R22, R23, R24, R25)
|
||||
|
Loading…
x
Reference in New Issue
Block a user