RFR: 8281429: PhiNode::Value() is too conservative for tripcount of CountedLoop [v4]
Roland Westrelin
roland at openjdk.java.net
Mon Mar 28 07:29:20 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 with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 13 additional commits since the last revision:
- test fix
- more test
- test & fix
- other fix
- Merge branch 'master' into JDK-8281429
- exp
- review
- Merge branch 'master' into JDK-8281429
- 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>
- ... and 3 more: https://git.openjdk.java.net/jdk/compare/98710e7d...3a087b2c
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/7823/files
- new: https://git.openjdk.java.net/jdk/pull/7823/files/ed91dd8e..3a087b2c
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=7823&range=03
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=7823&range=02-03
Stats: 823 lines in 41 files changed: 669 ins; 67 del; 87 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