RFR(S): 8210389: C2: assert(n->outcnt() != 0 || C->top() == n || n->is_Proj()) failed: No dead instructions after post-alloc
Vladimir Kozlov
vladimir.kozlov at oracle.com
Tue Oct 2 16:58:35 UTC 2018
On 10/2/18 9:01 AM, Roland Westrelin wrote:
>
> Hi Vladimir,
>
>> subsume_by() + disconnect_inputs() are used by other code in final_graph_reshaping_impl(). If it
>> does not work in your case it may not work for other cases to and should be solved in general.
>>
>> May be we can modify final_graph_reshaping_walk() and final_graph_reshaping_impl() to remove dead
>> code. Or do separate path over graph like PhaseRemoveUseless. One thing to point is that
>> verify_graph_edges() call after Optimize() should have no_dead_code = true to catch all cases we
>> missing.
>
> Ok. But it sounds like it could be quite a bit more work than this bug
> fix and could have a long bug tail (if verification code was enabled by
> default). Can this be done as a separate change?
Yes. Please file a bug. Current change is fine.
Vladimir
>
> Roland.
>
More information about the hotspot-compiler-dev
mailing list