[committed] rewrite of last cfgrtl.c patch

James E Wilson wilson@specifix.com
Mon Oct 31 23:48:00 GMT 2005


My fix for PR 17356 was bothering me, as I didn't fully understand the
code before I changed it.  So I went back and took another closer look,
and figured out that my first patch wasn't completely correct.  This
removes my previous patch, and just adds two new lines
!             && (! (e->flags & EDGE_ABNORMAL_CALL)
!                 || CALL_P (BB_END (bb))))
This fixes the original problem where we weren't removing abnormal call
EH edges for blocks that needed an EH edge, but did not end with a
CALL_INSN.  I also added comments, to explain the part I didn't not
understand the first time I looked at this code.

This was tested with an ia64-linux bootstrap and make check for all
default languages plus Ada.  There were no regressions.
-- 
Jim Wilson, GNU Tools Support, http://www.specifix.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.purge.edge.2
Type: text/x-troff-man
Size: 2209 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20051031/4d24a906/attachment.bin>


More information about the Gcc-patches mailing list