59 lines
2.7 KiB
Diff
59 lines
2.7 KiB
Diff
Date: Fri, 9 Jun 2023 09:04:38 +0800
|
|
Subject: 8299158: Improve MD5 intrinsic on AArch64
|
|
|
|
Bug url: https://bugs.openjdk.org/browse/JDK-8299158
|
|
---
|
|
.../src/cpu/aarch64/vm/stubGenerator_aarch64.cpp | 14 +++++++-------
|
|
1 file changed, 7 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/hotspot/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp b/hotspot/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp
|
|
index a3f93204e..565fe559c 100644
|
|
--- a/hotspot/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp
|
|
+++ b/hotspot/src/cpu/aarch64/vm/stubGenerator_aarch64.cpp
|
|
@@ -3218,19 +3218,19 @@ class StubGenerator: public StubCodeGenerator {
|
|
__ addw(rscratch4, r1, rscratch2); \
|
|
__ ldrw(rscratch1, Address(buf, k*4)); \
|
|
__ eorw(rscratch3, rscratch3, r4); \
|
|
- __ addw(rscratch3, rscratch3, rscratch1); \
|
|
+ __ addw(rscratch4, rscratch4, rscratch1); \
|
|
__ addw(rscratch3, rscratch3, rscratch4); \
|
|
__ rorw(rscratch2, rscratch3, 32 - s); \
|
|
__ addw(r1, rscratch2, r2);
|
|
|
|
#define GG(r1, r2, r3, r4, k, s, t) \
|
|
- __ eorw(rscratch2, r2, r3); \
|
|
+ __ andw(rscratch3, r2, r4); \
|
|
+ __ bicw(rscratch4, r3, r4); \
|
|
__ ldrw(rscratch1, Address(buf, k*4)); \
|
|
- __ andw(rscratch3, rscratch2, r4); \
|
|
__ movw(rscratch2, t); \
|
|
- __ eorw(rscratch3, rscratch3, r3); \
|
|
+ __ orrw(rscratch3, rscratch3, rscratch4); \
|
|
__ addw(rscratch4, r1, rscratch2); \
|
|
- __ addw(rscratch3, rscratch3, rscratch1); \
|
|
+ __ addw(rscratch4, rscratch4, rscratch1); \
|
|
__ addw(rscratch3, rscratch3, rscratch4); \
|
|
__ rorw(rscratch2, rscratch3, 32 - s); \
|
|
__ addw(r1, rscratch2, r2);
|
|
@@ -3241,7 +3241,7 @@ class StubGenerator: public StubCodeGenerator {
|
|
__ addw(rscratch4, r1, rscratch2); \
|
|
__ ldrw(rscratch1, Address(buf, k*4)); \
|
|
__ eorw(rscratch3, rscratch3, r2); \
|
|
- __ addw(rscratch3, rscratch3, rscratch1); \
|
|
+ __ addw(rscratch4, rscratch4, rscratch1); \
|
|
__ addw(rscratch3, rscratch3, rscratch4); \
|
|
__ rorw(rscratch2, rscratch3, 32 - s); \
|
|
__ addw(r1, rscratch2, r2);
|
|
@@ -3252,7 +3252,7 @@ class StubGenerator: public StubCodeGenerator {
|
|
__ addw(rscratch4, r1, rscratch3); \
|
|
__ ldrw(rscratch1, Address(buf, k*4)); \
|
|
__ eorw(rscratch3, rscratch2, r3); \
|
|
- __ addw(rscratch3, rscratch3, rscratch1); \
|
|
+ __ addw(rscratch4, rscratch4, rscratch1); \
|
|
__ addw(rscratch3, rscratch3, rscratch4); \
|
|
__ rorw(rscratch2, rscratch3, 32 - s); \
|
|
__ addw(r1, rscratch2, r2);
|
|
--
|
|
2.22.0
|
|
|