RFR: 8281429: PhiNode::Value() is too conservative for tripcount of CountedLoop [v2]
Roland Westrelin
roland at openjdk.java.net
Tue Mar 22 12:57:13 UTC 2022
> The type for the iv phi of a counted loop is computed from the types
> of the phi on loop entry and the type of the limit from the exit
> test. Because the exit test is applied to the iv after increment, the
> type of the iv phi is at least one less than the limit (for a positive
> stride, one more for a negative stride).
>
> Also, for a stride whose absolute value is not 1 and constant init and
> limit values, it's possible to compute accurately the iv phi type.
>
> This change caused a few failures and I had to make a few adjustments
> to loop opts code as well.
Roland Westrelin has updated the pull request incrementally with four additional commits since the last revision:
- Update src/hotspot/share/opto/cfgnode.cpp
Co-authored-by: Tobias Hartmann <tobias.hartmann at oracle.com>
- Update src/hotspot/share/opto/cfgnode.cpp
Co-authored-by: Tobias Hartmann <tobias.hartmann at oracle.com>
- Update src/hotspot/share/opto/loopnode.cpp
Co-authored-by: Tobias Hartmann <tobias.hartmann at oracle.com>
- Update src/hotspot/share/opto/loopnode.cpp
Co-authored-by: Tobias Hartmann <tobias.hartmann at oracle.com>
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/7823/files
- new: https://git.openjdk.java.net/jdk/pull/7823/files/a8722dba..1532675c
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=7823&range=01
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=7823&range=00-01
Stats: 4 lines in 2 files changed: 0 ins; 1 del; 3 mod
Patch: https://git.openjdk.java.net/jdk/pull/7823.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/7823/head:pull/7823
PR: https://git.openjdk.java.net/jdk/pull/7823
More information about the hotspot-compiler-dev
mailing list