RFR: 8305635: Replace Parse Predicate IfNode with new ParsePredicateNode and route predicate queries through dedicated classes [v2]

Christian Hagedorn chagedorn at openjdk.org
Wed May 17 12:04:36 UTC 2023


> This is the second PR towards fixing the issues with Assertion Predicates ([JDK-8288981](https://bugs.openjdk.org/browse/JDK-8288981)). This patch still does not change anything in the way the old Assertion Predicates work. The only observable change in the IR is the introduction of a new `ParsePredicateNode` instead of using an `IfNode` to better distinguish these dedicated Parse Predicates added during parsing (they still use the same inputs with `Opaque1Nodes` as before).
> 
> Changes include:
> - New `ParsePredicateNode` as subclass of `IfNode` and related code updates to make this work.
> - Moving predicate access code (skipping, matching etc.), including the called predicate methods found in `PhaseIdealLoop`, to dedicated `Predicates/ParsePredicates` classes. This is only a first step and these classes are further updated in the next PR. They can therefore be seen as an intermediate state to make the entire update to predicate classes easier to follow. As a consequence, I've tried to not clean the code up too much in these classes.
>   - Cleanup of touched code (dead code, variable renaming, code style)
>   -  Added comments (e.g. for some special case in Loop Predication)
> 
> For more background, have a look at the first PR: #13864
> 
> Thanks,
> Christian

Christian Hagedorn has updated the pull request incrementally with one additional commit since the last revision:

  Tobias' review

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/14017/files
  - new: https://git.openjdk.org/jdk/pull/14017/files/262d6112..2b4244e4

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

  Stats: 4 lines in 4 files changed: 0 ins; 0 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/14017.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/14017/head:pull/14017

PR: https://git.openjdk.org/jdk/pull/14017


More information about the hotspot-compiler-dev mailing list