This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/42739] [4.5 Regression] ICE with computed goto, destructors, and optimization



------- Comment #3 from rguenth at gcc dot gnu dot org  2010-01-14 11:56 -------
The issue is we have an invalid CFG:

{
  int D.2137;

Invalid sum of incoming frequencies 10000, should be 5000
M:

<bb 3>:
  [LP 2] f ();

<bb 4>:
  [LP 3] f ();
  goto <bb 6>;

L:
<L10>: [LP 3]
  goto <bb 10> (<L7>);


note the block with two labels - we'll end up looking up the EH landing
pad nr on L instead of <L10>.

It is cfg-cleanup that when removing a forwarder block moves the label
in it to that block via remove_bb ().


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2010-01-14 10:04:13         |2010-01-14 11:56:54
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42739


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]