-
Sub-task
-
Resolution: Fixed
-
P4
-
25
-
b15
The current Template Assertion Predicate elimination code could be refactored to use the new Predicate Visitors/Iterator. We can reuse existing ParsePredicateUsefulMarker and extend it.
Moreover, there is a bug: When removing Parse Predicates, we are also removing Template Assertion Predicates. But we could apply more loop optimizations afterwards which include loop splitting. In this case, we also need to establish Assertion Predicates which we fail to do because we've already (wrongly) removed them. We should keep the Template Assertion Predicates until loop opts are over. This patch is a required preparation step in order to fix that withJDK-8350577.
Moreover, there is a bug: When removing Parse Predicates, we are also removing Template Assertion Predicates. But we could apply more loop optimizations afterwards which include loop splitting. In this case, we also need to establish Assertion Predicates which we fail to do because we've already (wrongly) removed them. We should keep the Template Assertion Predicates until loop opts are over. This patch is a required preparation step in order to fix that with
- blocks
-
JDK-8350579 Remove Template Assertion Predicates belonging to a loop once it is folded away
-
- Resolved
-
- links to
-
Commit(master) openjdk/jdk/e57b2725
-
Review(master) openjdk/jdk/24013