8204084: Remove the G1RSBarrierRegionFilter develop flag
Reviewed-by: sjohanss, shade
This commit is contained in:
parent
2466623e45
commit
7f8874a93b
src/hotspot
cpu
ppc/gc/g1
s390/gc/g1
sparc/gc/g1
share/gc/g1
@ -214,11 +214,9 @@ void G1BarrierSetAssembler::g1_write_barrier_post(MacroAssembler* masm, Decorato
|
||||
assert(sizeof(*ct->card_table()->byte_map_base()) == sizeof(jbyte), "adjust this code");
|
||||
|
||||
// Does store cross heap regions?
|
||||
if (G1RSBarrierRegionFilter) {
|
||||
__ xorr(tmp1, store_addr, new_val);
|
||||
__ srdi_(tmp1, tmp1, HeapRegion::LogOfHRGrainBytes);
|
||||
__ beq(CCR0, filtered);
|
||||
}
|
||||
__ xorr(tmp1, store_addr, new_val);
|
||||
__ srdi_(tmp1, tmp1, HeapRegion::LogOfHRGrainBytes);
|
||||
__ beq(CCR0, filtered);
|
||||
|
||||
// Crosses regions, storing NULL?
|
||||
if (not_null) {
|
||||
|
@ -273,16 +273,14 @@ void G1BarrierSetAssembler::g1_write_barrier_post(MacroAssembler* masm, Decorato
|
||||
|
||||
// Does store cross heap regions?
|
||||
// It does if the two addresses specify different grain addresses.
|
||||
if (G1RSBarrierRegionFilter) {
|
||||
if (VM_Version::has_DistinctOpnds()) {
|
||||
__ z_xgrk(Rtmp1, Rstore_addr, Rnew_val);
|
||||
} else {
|
||||
__ z_lgr(Rtmp1, Rstore_addr);
|
||||
__ z_xgr(Rtmp1, Rnew_val);
|
||||
}
|
||||
__ z_srag(Rtmp1, Rtmp1, HeapRegion::LogOfHRGrainBytes);
|
||||
__ z_bre(filtered);
|
||||
if (VM_Version::has_DistinctOpnds()) {
|
||||
__ z_xgrk(Rtmp1, Rstore_addr, Rnew_val);
|
||||
} else {
|
||||
__ z_lgr(Rtmp1, Rstore_addr);
|
||||
__ z_xgr(Rtmp1, Rnew_val);
|
||||
}
|
||||
__ z_srag(Rtmp1, Rtmp1, HeapRegion::LogOfHRGrainBytes);
|
||||
__ z_bre(filtered);
|
||||
|
||||
// Crosses regions, storing NULL?
|
||||
if (not_null) {
|
||||
|
@ -369,12 +369,10 @@ void G1BarrierSetAssembler::g1_write_barrier_post(MacroAssembler* masm, Register
|
||||
|
||||
G1BarrierSet* bs = barrier_set_cast<G1BarrierSet>(BarrierSet::barrier_set());
|
||||
|
||||
if (G1RSBarrierRegionFilter) {
|
||||
__ xor3(store_addr, new_val, tmp);
|
||||
__ srlx(tmp, HeapRegion::LogOfHRGrainBytes, tmp);
|
||||
__ xor3(store_addr, new_val, tmp);
|
||||
__ srlx(tmp, HeapRegion::LogOfHRGrainBytes, tmp);
|
||||
|
||||
__ cmp_and_brx_short(tmp, G0, Assembler::equal, Assembler::pt, filtered);
|
||||
}
|
||||
__ cmp_and_brx_short(tmp, G0, Assembler::equal, Assembler::pt, filtered);
|
||||
|
||||
// If the "store_addr" register is an "in" or "local" register, move it to
|
||||
// a scratch reg so we can pass it as an argument.
|
||||
|
@ -108,9 +108,6 @@
|
||||
"When expanding, % of uncommitted space to claim.") \
|
||||
range(0, 100) \
|
||||
\
|
||||
develop(bool, G1RSBarrierRegionFilter, true, \
|
||||
"If true, generate region filtering code in RS barrier") \
|
||||
\
|
||||
product(size_t, G1UpdateBufferSize, 256, \
|
||||
"Size of an update buffer") \
|
||||
range(1, NOT_LP64(32*M) LP64_ONLY(1*G)) \
|
||||
|
Loading…
x
Reference in New Issue
Block a user