< prev index next >
src/hotspot/cpu/sparc/c1_LIRGenerator_sparc.cpp
Print this page
@@ -661,11 +661,11 @@
val.load_item();
__ add(obj.result(), offset.result(), addr);
if (type == objectType) { // Write-barrier needed for Object fields.
- if (UseLoadBarrier) {
+ if (UseZGC) {
// Load barrier to make sure that cas_obj() sees a correct oop.
LIR_Opr pre_val = new_register(T_OBJECT);
__ load(new LIR_Address(addr, as_BasicType(type)), pre_val);
load_barrier(pre_val, addr);
}
@@ -1388,11 +1388,11 @@
void LIRGenerator::get_Object_unsafe(LIR_Opr dst, LIR_Opr src, LIR_Opr offset,
BasicType type, bool is_volatile) {
{
LIR_Address* addr = new LIR_Address(src, offset, type);
__ load(addr, dst);
- if (type == T_OBJECT && UseLoadBarrier) {
+ if (type == T_OBJECT && UseZGC) {
load_barrier(dst, LIR_OprFact::address(addr));
}
}
}
@@ -1438,11 +1438,11 @@
pre_barrier(ptr, LIR_OprFact::illegalOpr /* pre_val */,
true /* do_load */, false /* patch */, NULL);
}
__ xchg(LIR_OprFact::address(addr), dst, dst, tmp);
if (is_obj) {
- if (UseLoadBarrier) {
+ if (UseZGC) {
load_barrier(dst);
}
// Seems to be a precise address
post_barrier(ptr, data);
< prev index next >