[lworld] RFR: 8336778: [lworld] C2 compilation hits "invalid node class" assert when merging object field values [v2]

Tobias Hartmann thartmann at openjdk.org
Tue Aug 13 11:26:28 UTC 2024


> When preparing to merge field values, `InlineTypeNode::clone_with_phis` incorrectly looks at the field value instead of the field type to determine if Phis should be created. This leads to asserts or even incorrect execution, for example, in the case when the field type is Object, the field value in one branch is an InlineTypeNode but the field value in the other branch is not an InlineTypeNode. I added corresponding tests and also additional asserts that would catch the incorrect execution cases.
> 
> Best regards,
> Tobias

Tobias Hartmann has updated the pull request incrementally with one additional commit since the last revision:

  Removed assert

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

Changes:
  - all: https://git.openjdk.org/valhalla/pull/1205/files
  - new: https://git.openjdk.org/valhalla/pull/1205/files/b41fa631..f2f395ee

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=valhalla&pr=1205&range=01
 - incr: https://webrevs.openjdk.org/?repo=valhalla&pr=1205&range=00-01

  Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod
  Patch: https://git.openjdk.org/valhalla/pull/1205.diff
  Fetch: git fetch https://git.openjdk.org/valhalla.git pull/1205/head:pull/1205

PR: https://git.openjdk.org/valhalla/pull/1205


More information about the valhalla-dev mailing list