8301371: Interpreter store barriers on x86_64 don't have disjoint temp registers

Reviewed-by: kvn, tschatzl
This commit is contained in:
Erik Österlund 2023-02-07 09:33:40 +00:00
parent 77dbcd8569
commit f5f38a82cc

@ -152,7 +152,10 @@ static void do_oop_store(InterpreterMacroAssembler* _masm,
Register val,
DecoratorSet decorators = 0) {
assert(val == noreg || val == rax, "parameter is just for looks");
__ store_heap_oop(dst, val, rdx, rbx, LP64_ONLY(r8) NOT_LP64(rsi), decorators);
__ store_heap_oop(dst, val,
NOT_LP64(rdx) LP64_ONLY(rscratch2),
NOT_LP64(rbx) LP64_ONLY(r9),
NOT_LP64(rsi) LP64_ONLY(r8), decorators);
}
static void do_oop_load(InterpreterMacroAssembler* _masm,