Loading... (original) (raw)
- Type:
Enhancement
- Resolution: Fixed
- Priority:
P3
- Fix Version/s: 9
- Affects Version/s: 9
In
, the pre loop is optimized out but the main/post loops are not. If the pre loop’s limit is still an opaque node, then the compiler has not been able to optimize the pre loop based on its limited number of iterations yet. I don’t see what optimization would remove stuff from the pre loop that wouldn’t have removed the same stuff from the initial loop, had it not been cloned. So it should be safe to remove the main and post loops.
backported by
JDK-8135487 Optimize main and post loop out when pre loop is found empty
- Resolved
relates to
JDK-8078866 compiler/eliminateAutobox/6934604/TestIntBoxing.java assert(p_f->Opcode() == Op_IfFalse) failed
- Resolved
JDK-8327423 C2 remove_main_post_loops: check if main-loop belongs to pre-loop, not just assert
- Resolved
JDK-8233529 loopTransform.cpp:2984: Error: assert(p_f->Opcode() == Op_IfFalse) failed
- Closed