[lworld] RFR: 8353180: [lworld] C2: Meeting two constant TypeAryPtr with different nullness is wrongly treated as exact

Christian Hagedorn chagedorn at openjdk.org
Fri Jun 6 14:41:03 UTC 2025


On Thu, 5 Jun 2025 12:47:50 GMT, Christian Hagedorn <chagedorn at openjdk.org> wrote:

> We are wrongly setting the result of the meet of two constant `TypeAryPtr` with different nullness as exact:
> https://github.com/openjdk/valhalla/blob/aacff31a86a3fc8cbc44a7e993d83c4bf9677055/test/hotspot/jtreg/compiler/valhalla/inlinetypes/TestMeetingAryPtr.java#L66-L71
> 
> This causes an assertion failure during CCP to not be monotonic. This is now fixed.
> 
> There have been other occurrences where we wrongly set exactness even though nullness were different. Most of them have now been fixed with https://github.com/openjdk/valhalla/pull/1470 which corrected some of the wrong handling explicitely. 
> 
> Thanks,
> Christian

Thanks Tobias for your review and the offline discussions!

-------------

PR Comment: https://git.openjdk.org/valhalla/pull/1481#issuecomment-2949468215


More information about the valhalla-dev mailing list