-
Bug
-
Resolution: Fixed
-
P4
-
8-aarch64, 11, 13
-
b10
-
aarch64
-
generic
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8248572 | 11.0.9-oracle | Fei Yang | P4 | Resolved | Fixed | b01 |
JDK-8226664 | 11.0.5 | Fei Yang | P4 | Resolved | Fixed | b01 |
JDK-8260834 | openjdk8u292 | Andrew Hughes | P4 | Resolved | Fixed | b01 |
Reported by: patrick@os.amperecomputing.com
https://mail.openjdk.java.net/pipermail/aarch64-port-dev/2019-February/006942.html
===================
Perhaps TemplateTable::fast_storefield needs the additional " | MacroAssembler::LoadStore" as well, please double check, thanks.
http://hg.openjdk.java.net/jdk/jdk/file/f41793b5b83f/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp#l2984
===================
Proposed fix: https://mail.openjdk.java.net/pipermail/aarch64-port-dev/2019-February/006947.html
diff -r 2a78b2963793 src/hotspot/cpu/aarch64/templateTable_aarch64.cpp
--- a/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp Wed Feb 13 13:27:17 2019 +0100
+++ b/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp Fri Feb 22 17:18:20 2019 +0800
@@ -2981,7 +2981,7 @@
{
Label notVolatile;
__ tbz(r3, ConstantPoolCacheEntry::is_volatile_shift, notVolatile);
- __ membar(MacroAssembler::StoreStore);
+ __ membar(MacroAssembler::StoreStore | MacroAssembler::LoadStore);
__ bind(notVolatile);
}
https://mail.openjdk.java.net/pipermail/aarch64-port-dev/2019-February/006942.html
===================
Perhaps TemplateTable::fast_storefield needs the additional " | MacroAssembler::LoadStore" as well, please double check, thanks.
http://hg.openjdk.java.net/jdk/jdk/file/f41793b5b83f/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp#l2984
===================
Proposed fix: https://mail.openjdk.java.net/pipermail/aarch64-port-dev/2019-February/006947.html
diff -r 2a78b2963793 src/hotspot/cpu/aarch64/templateTable_aarch64.cpp
--- a/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp Wed Feb 13 13:27:17 2019 +0100
+++ b/src/hotspot/cpu/aarch64/templateTable_aarch64.cpp Fri Feb 22 17:18:20 2019 +0800
@@ -2981,7 +2981,7 @@
{
Label notVolatile;
__ tbz(r3, ConstantPoolCacheEntry::is_volatile_shift, notVolatile);
- __ membar(MacroAssembler::StoreStore);
+ __ membar(MacroAssembler::StoreStore | MacroAssembler::LoadStore);
__ bind(notVolatile);
}
- backported by
-
JDK-8226664 aarch64: missing LoadStore barrier in TemplateTable::fast_storefield
- Resolved
-
JDK-8248572 aarch64: missing LoadStore barrier in TemplateTable::fast_storefield
- Resolved
-
JDK-8260834 aarch64: missing LoadStore barrier in TemplateTable::fast_storefield
- Resolved
- relates to
-
JDK-8221220 AArch64: Add StoreStore membar explicitly for Volatile Writes in TemplateTable
- Resolved
-
JDK-8257192 Integrate AArch64 JIT port into 8u
- Resolved