RFR: remove obsolete code
Aleksey Shipilev
shade at redhat.com
Wed Aug 15 09:41:21 UTC 2018
On 08/15/2018 10:28 AM, Aleksey Shipilev wrote:
> On 08/10/2018 05:57 PM, Roland Westrelin wrote:
>>
>> http://cr.openjdk.java.net/~roland/shenandoah/cleanup-nobarrieronconst-nowbinasm/webrev.00/
>>
>> This removes some code that's obsolete now that:
>>
>> - barriers are never added on constant oops
>> - write barriers are always expanded to IR
>>
>> + some other trivial cleanup.
>>
>> I haven't run testing with this. What what would be the recommended
>> testing?
>
> This patch seems to foobar XmlTransform like this:
>
> # A fatal error has been detected by the Java Runtime Environment:
> #
> # Internal Error
> (/home/shade/trunks/shenandoah-jdk/src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp:919),
> pid=16443, tid=16487
> # assert(wb->Opcode() == Op_ShenandoahWriteBarrier) failed: expect write barrier
And that thing is actually ConP:
# assert(wb->Opcode() == Op_ShenandoahWriteBarrier) failed: expect write barrier: ConP
Applying this partial reversal helps to avoid the assert:
http://cr.openjdk.java.net/~shade/shenandoah/revert-c2-const.patch
Although we probably need to follow up if we want to accept ConP in
ShenandoahWBMemProjNode::Identity? Although I cannot see right away how it slipped through constructor:
ShenandoahWBMemProjNode(Node *src) : ProjNode( src, SWBMEMPROJCON) {
assert(UseShenandoahGC && ShenandoahWriteBarrier, "should be enabled");
assert(src->Opcode() == Op_ShenandoahWriteBarrier || src->is_Mach(), "epxect wb");
}
-Aleksey
More information about the shenandoah-dev
mailing list