For a non escaping allocation, the logic that eliminates a clone's ArrayCopy node, adds loads for each field of the eliminated allocation at safepoints. The load's controls are set so the loads are after the memory barrier that always precedes the ArrayCopy node but the memory edges are set to the memory state before the memory barrier. Anti dependency edges are added to the load nodes resulting in a graph that can't be scheduled and a compilation that always fail.
-
Roland Westrelin
-
Roland Westrelin
- Votes:
-
0 Vote for this issue
- Watchers:
-
3 Start watching this issue
- Created:
- Updated:
- Resolved: