From d03dd1665faed84bea072e63852e2f89923d3731 Mon Sep 17 00:00:00 2001 From: Sun Yimin Date: Wed, 10 Mar 2021 17:22:08 +0800 Subject: [PATCH] =?UTF-8?q?Updated=20SM3=E6=80=A7=E8=83=BD=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20(markdown)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SM3性能优化.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/SM3性能优化.md b/SM3性能优化.md index 0962212..4f25079 100644 --- a/SM3性能优化.md +++ b/SM3性能优化.md @@ -150,7 +150,14 @@ SM3可以对Wt XOR Wt+4进行并行计算, 这是循环右移,SM3使用循环左移,没看到有ROLXL这样的指令,应该能传入负数来实现, - + Operation + IF (OperandSize = 32) + y ← imm8 AND 1FH; + DEST ← (SRC >> y) | (SRC << (32-y)); + ELSEIF (OperandSize = 64 ) + y ← imm8 AND 3FH; + DEST ← (SRC >> y) | (SRC << (64-y)); + ENDIF 实在不行只能用MOVL + ROLL来处理,但性能就没啥提高了。