RFR: Don't check store value in Shenandoah C2 verifier
Roman Kennke
rkennke at redhat.com
Mon Feb 18 13:06:56 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);
> }
Yes.
In-fact, I believe my fix is wrong. The value *does* need to be
protected by an LRB higher up, or be a safe value (i.e. comes through
allocation, method argument, null or constant, etc).
Need to re-check it.
Roman
More information about the shenandoah-dev
mailing list