[lworld] RFR: 8262128: [lworld] C1's ValueNumbering optimization does not correctly handle delayed accesses

Tobias Hartmann thartmann at openjdk.java.net
Mon Feb 22 15:41:12 UTC 2021

On Mon, 22 Feb 2021 15:05:43 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

>> Hi Tobias,
>> Thank you for fixing this.
>> However, the fix seems to have an issue. The hash_inline_access() method encapsulates the additional offset from the delayed access into a hash value, this encapsulation prevents the is_equal(Value v) method (from the the HASHING macro) to see all individual arguments of the hash function and could cause the method return an incorrect result.
>> Fred
> Hi Fred,
> thanks for looking at this, you are right.
> Best regards,
> Tobias

As we've discussed offline, I've disabled ValueNumbering for delayed accesses for now and filed [https://bugs.openjdk.java.net/browse/JDK-8262136](JDK-8262136]) to re-enable it later.


PR: https://git.openjdk.java.net/valhalla/pull/345

More information about the valhalla-dev mailing list