RFR: 8334647: C2: CastII added by PhaseIdealLoop::add_template_assertion_predicate() should have control [v2]
Roland Westrelin
roland at openjdk.org
Mon Jun 24 09:52:24 UTC 2024
> `PhaseIdealLoop::add_template_assertion_predicate()` creates a new
> `CastII` but doesn't set its control. I think it's good practice to
> always set the control of a `CastII` when it narrows the type of its
> input (it has to be control dependent on some condition that makes the
> narrowing possible). This is also motivated by
> https://bugs.openjdk.org/browse/JDK-8275202 where a node that becomes
> top is used as an indication that control flow where the node changes
> type can constant fold. This only works if control is set correctly.
Roland Westrelin has updated the pull request incrementally with one additional commit since the last revision:
review
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/19808/files
- new: https://git.openjdk.org/jdk/pull/19808/files/b05cf955..b22ba3f7
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=19808&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=19808&range=00-01
Stats: 11 lines in 3 files changed: 2 ins; 6 del; 3 mod
Patch: https://git.openjdk.org/jdk/pull/19808.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/19808/head:pull/19808
PR: https://git.openjdk.org/jdk/pull/19808
More information about the hotspot-compiler-dev
mailing list