reduce instructions

This commit is contained in:
Emman 2021-12-28 08:30:33 +08:00
parent ec02d6afc6
commit 98b70a5cfd

View File

@ -10,17 +10,6 @@
#define hlp0 R7 #define hlp0 R7
#define hlp1 R9 #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 // Wt+4 = Mt+4; for 0 <= t <= 11
#define MSGSCHEDULE01(index) \ #define MSGSCHEDULE01(index) \
MOVW ((index+4)*4)(SI), AX; \ MOVW ((index+4)*4)(SI), AX; \
@ -183,7 +172,16 @@ loop:
MOVW R25, R16 MOVW R25, R16
MOVW R26, R17 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(0, 0x79cc4519, R19, R20, R21, R22, R23, R24, R25, R26)
SM3ROUND0(1, 0xf3988a32, R26, R19, R20, R21, R22, R23, R24, R25) SM3ROUND0(1, 0xf3988a32, R26, R19, R20, R21, R22, R23, R24, R25)