------- Comment #2 from abel at gcc dot gnu dot org  2010-07-13 14:07 -------
Confirmed on the 4.4 branch.  The problem is latent on trunk.  

When we have added support for moving insns through mutually exclusive insns, 
it was made possible to move conditional jumps across block boundaries.  But we
didn't fix move_cond_jump accordingly, as it assumes that the jump can be moved
only through insns in the same block.

Fixed by the below patch that seems to work on the test case.  Could you check
whether it works for your full program?


-- 

abel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |abel at gcc dot gnu dot org,
                   |                            |amonakov at gcc dot gnu dot
                   |                            |org
         AssignedTo|unassigned at gcc dot gnu   |abel at gcc dot gnu dot org
                   |dot org                     |
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2010-07-13 14:07:55
               date|                            |


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

Reply via email to