# HG changeset patch # User aph # Date 1461150850 0 # Node ID 5db1fc97432337a96bd649fdb5b7ee82188cc35e # Parent 9a5433ffaa8a7aa73028d673b698a08dd3df5805 8154739: AArch64: TemplateTable::fast_xaccess loads in wrong mode Reviewed-by: roland diff -r 9a5433ffaa8a -r 5db1fc974323 hotspot/src/cpu/aarch64/vm/templateTable_aarch64.cpp --- a/hotspot/src/cpu/aarch64/vm/templateTable_aarch64.cpp Wed Apr 20 11:11:56 2016 +0000 +++ b/hotspot/src/cpu/aarch64/vm/templateTable_aarch64.cpp Wed Apr 20 11:14:10 2016 +0000 @@ -2982,7 +2982,7 @@ __ null_check(r0); switch (state) { case itos: - __ ldr(r0, Address(r0, r1, Address::lsl(0))); + __ ldrw(r0, Address(r0, r1, Address::lsl(0))); break; case atos: __ load_heap_oop(r0, Address(r0, r1, Address::lsl(0))); @@ -3000,7 +3000,7 @@ __ ldrw(r3, Address(r2, in_bytes(ConstantPoolCache::base_offset() + ConstantPoolCacheEntry::flags_offset()))); __ tbz(r3, ConstantPoolCacheEntry::is_volatile_shift, notVolatile); - __ membar(MacroAssembler::LoadLoad); + __ membar(MacroAssembler::LoadLoad | MacroAssembler::LoadStore); __ bind(notVolatile); }