JDK 25 |
---|
25 b16Fixed |
Blocks :
|
|
Blocks :
|
|
Blocks :
|
|
Causes :
|
|
Duplicate :
|
|
Relates :
|
Once a loop is folded, we are currently not removing the Template Assertion Predicates above it. They could end up at a different loop which does not have any predicates. When then splitting this loop, we wrongly pick the completely unrelated Template Assertion Predicates with different values and create Initialized Assertion Predicates from them which then crash with performing a halt instruction at runtime. We should fold Template Assertion Predicates away once a loop dies. Doing it during IGVN is problematic as we need to handle all kinds of different dying graph shapes. We've decided to do it during normal Predicate elimination before applying loop opts. We can extend on the preparation done with JDK-8350578. The fixes the report of JDK-8305428 and linked duplicates.
|