May delete_trivially_dead_insns delete trapping insns?
Michael Matz
matz@suse.de
Fri Nov 22 11:02:00 GMT 2002
Hi,
See $SUBJECT for the question. The issue is, that if cleanup_cfg() is
called _without_ the CLEANUP_UPDATE_LIFE flag it calls
delete_trivially_dead_insns(). The latter might currently remove insns
even if they trap (e.g. memory accesses when flag_non_call_exceptions),
and by that could lead to exception edges which aren't correct anymore.
Is this the expected behaviour (i.e. if one wants to have the CFG correct,
one needs to use CLEANUP_UPDATE_LIVE and refrain from using d_t_d_i()
directly)? Or would a patch to make delete_trivially_dead_insns() not
delete trapping insns make sense (needs also a change in
count_reg_usage())?
Ciao,
Michael.
More information about the Gcc
mailing list