-
Bug
-
Resolution: Fixed
-
P3
-
8-shenandoah, 11-shenandoah, 14, 15
-
b05
-
generic
-
generic
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8237444 | 14.0.1 | Unassigned | P3 | Resolved | Fixed | b01 |
JDK-8236820 | 14 | Roman Kennke | P3 | Resolved | Fixed | b32 |
In cfgnode.cpp, in is_x2logic() that converts a diamond-shape if/else to simple bool patterns, we have a step_over_gc_barrier() at the end. This has been introduced by Shenandoah. I believe the intention was to convert obj vs null check to a simple boolean expression and eliminate the barrier on the unneeded path. However, it is not needed because Shenandoah we already eliminate barriers when the only user is a null-check, and it might actually be counter-productive if the barrier is needed on other paths, because it keeps the input of the barrier alive. This is probably a left-over from pre-LRB.
- backported by
-
JDK-8236820 C2: Remove useless step_over_gc_barrier() in int->bool conversion
- Resolved
-
JDK-8237444 C2: Remove useless step_over_gc_barrier() in int->bool conversion
- Resolved
- relates to
-
JDK-8212611 Small collection of simple changes from shenandoah
- Resolved