On Thu, 18 Dec 2025 10:21:09 GMT, Christian Hagedorn <[email protected]> wrote:
>> Tobias Hartmann has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 21 commits: >> >> - Merge branch 'lworld' into JDK-8228361 >> - More refactoring, better comments >> - More comments, removing workaround >> - Merge >> - v5 >> - Refactoring v4 >> - Refactoring v3 >> - Refactoring, more checks, new test >> - Merge branch 'lworld' into JDK-8228362 >> - All tests pass >> - ... and 11 more: >> https://git.openjdk.org/valhalla/compare/3c41c2aa...4f8556c7 > > src/hotspot/share/opto/inlinetypenode.cpp line 673: > >> 671: >> 672: // Check if a substitutability check between 'this' and 'other' can be >> implemented in IR >> 673: bool InlineTypeNode::can_emit_substitutability_check(Node* other) { > > Can be made `const`. Same for `check_substitutability()`. Good catch, I'll update accordingly. > src/hotspot/share/opto/inlinetypenode.cpp line 722: > >> 720: assert(base != nullptr, "lost base"); >> 721: field_ptr = igvn->register_new_node_with_optimizer(new >> AddPNode(base, ptr, igvn->MakeConX(field_off))); >> 722: if (!field_is_flat(i)) { > > How about adding a `InlineTypeNode::field()` method and then directly calling > `is_flat()`, `is_null_free()` on the field instead of reloading it each time > over the index? I think that's a good idea but out of scope of this PR because these methods are used all over the place. I filed [JDK-8374006](https://bugs.openjdk.org/browse/JDK-8374006) for this. > src/hotspot/share/opto/subnode.cpp line 932: > >> 930: // CmpL(OrL(CastP2X(..), CastP2X(..)), 0L) >> 931: // that are used by acmp to implement a "both operands are null" >> check. >> 932: // See also the corresponding code in CmpPNode::Ideal. > > I suggest to move it above as a method comment. But there's other code in that method that does different optimizations, right? ------------- PR Review Comment: https://git.openjdk.org/valhalla/pull/1823#discussion_r2631116850 PR Review Comment: https://git.openjdk.org/valhalla/pull/1823#discussion_r2631115930 PR Review Comment: https://git.openjdk.org/valhalla/pull/1823#discussion_r2631119989
