RFR: Don't check store value in Shenandoah C2 verifier
Roman Kennke
rkennke at redhat.com
Mon Feb 18 16:40:54 UTC 2019
>> Since LRB, we don't need any store-value barriers anymore (except for
>> the enqueue-barriers in traversal, but I don't think we even check
>> that). The C2 verifier pass shouldn't check and complain about missing
>> barriers.
>>
>> http://cr.openjdk.java.net/~rkennke/fixoptoverifier/webrev.00/
>
> Looks okay to me.
>
> There is a block right below the removed one, does it matter still as well?
>
> if (!verify_helper(n->in(MemNode::Address), phis, visited, ShenandoahStore, trace, barriers_used)) {
> report_verify_failure("Shenandoah verification: Store (address) should have barriers", n);
> }
>
Here comes the real fix: CreateEx nodes don't require a barrier (the
exception is either new, or one of the pre-generated exceptions that we
keep guaranteed in to-space), and the verifier needs to be extended for
this:
http://cr.openjdk.java.net/~rkennke/fixoptoverifier/webrev.01/
Testing: makes ctw tests pass, hotspot_gc_shenandoah still good
Good?
Roman
More information about the shenandoah-dev
mailing list