8154739: AArch64: TemplateTable::fast_xaccess loads in wrong mode
Reviewed-by: roland
This commit is contained in:
parent
1832f0f0f1
commit
2b0d77befa
@ -2982,7 +2982,7 @@ void TemplateTable::fast_xaccess(TosState state)
|
|||||||
__ null_check(r0);
|
__ null_check(r0);
|
||||||
switch (state) {
|
switch (state) {
|
||||||
case itos:
|
case itos:
|
||||||
__ ldr(r0, Address(r0, r1, Address::lsl(0)));
|
__ ldrw(r0, Address(r0, r1, Address::lsl(0)));
|
||||||
break;
|
break;
|
||||||
case atos:
|
case atos:
|
||||||
__ load_heap_oop(r0, Address(r0, r1, Address::lsl(0)));
|
__ load_heap_oop(r0, Address(r0, r1, Address::lsl(0)));
|
||||||
@ -3000,7 +3000,7 @@ void TemplateTable::fast_xaccess(TosState state)
|
|||||||
__ ldrw(r3, Address(r2, in_bytes(ConstantPoolCache::base_offset() +
|
__ ldrw(r3, Address(r2, in_bytes(ConstantPoolCache::base_offset() +
|
||||||
ConstantPoolCacheEntry::flags_offset())));
|
ConstantPoolCacheEntry::flags_offset())));
|
||||||
__ tbz(r3, ConstantPoolCacheEntry::is_volatile_shift, notVolatile);
|
__ tbz(r3, ConstantPoolCacheEntry::is_volatile_shift, notVolatile);
|
||||||
__ membar(MacroAssembler::LoadLoad);
|
__ membar(MacroAssembler::LoadLoad | MacroAssembler::LoadStore);
|
||||||
__ bind(notVolatile);
|
__ bind(notVolatile);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user