Use atomic compare exchange in stdcx/stwcx (still under the global lock)
This commit is contained in:
@@ -511,6 +511,15 @@ void PPCHIRBuilder::StoreVR(uint32_t reg, Value* value) {
|
||||
trace_reg.value = value;
|
||||
}
|
||||
|
||||
void PPCHIRBuilder::StoreReserved(Value* val) {
|
||||
assert_true(val->type == INT64_TYPE);
|
||||
StoreContext(offsetof(PPCContext, reserved_val), val);
|
||||
}
|
||||
|
||||
Value* PPCHIRBuilder::LoadReserved() {
|
||||
return LoadContext(offsetof(PPCContext, reserved_val), INT64_TYPE);
|
||||
}
|
||||
|
||||
} // namespace ppc
|
||||
} // namespace cpu
|
||||
} // namespace xe
|
||||
|
||||
Reference in New Issue
Block a user