8218767: ZGC: Do not assume that r12 is a special register in C2
Reviewed-by: eosterlund, rkennke
This commit is contained in:
parent
3df5e4fabb
commit
865c33112c
@ -359,7 +359,7 @@ void ZBarrierSetAssembler::generate_c1_load_barrier_runtime_stub(StubAssembler*
|
||||
// ZBarrierSetRuntime::load_barrier_on_weak_oop_field_preloaded().
|
||||
static address generate_load_barrier_stub(StubCodeGenerator* cgen, Register raddr, DecoratorSet decorators) {
|
||||
// Don't generate stub for invalid registers
|
||||
if (raddr == rsp || raddr == r12 || raddr == r15) {
|
||||
if (raddr == rsp || raddr == r15) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -26,9 +26,8 @@ source %{
|
||||
#include "gc/z/zBarrierSetAssembler.hpp"
|
||||
|
||||
static void z_load_barrier_slow_reg(MacroAssembler& _masm, Register dst, Address src, bool weak) {
|
||||
assert(dst != r12, "Invalid register");
|
||||
assert(dst != r15, "Invalid register");
|
||||
assert(dst != rsp, "Invalid register");
|
||||
assert(dst != r15, "Invalid register");
|
||||
|
||||
const address stub = weak ? ZBarrierSet::assembler()->load_barrier_weak_slow_stub(dst)
|
||||
: ZBarrierSet::assembler()->load_barrier_slow_stub(dst);
|
||||
|
@ -354,7 +354,7 @@ RegMask _STACK_OR_LONG_REG_mask;
|
||||
RegMask _STACK_OR_INT_REG_mask;
|
||||
|
||||
static bool need_r12_heapbase() {
|
||||
return UseCompressedOops || UseCompressedClassPointers || UseZGC;
|
||||
return UseCompressedOops || UseCompressedClassPointers;
|
||||
}
|
||||
|
||||
void reg_mask_init() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user