[Bug middle-end/55263] [4.8 Regression] ICE: pre_and_rev_post_order_compute, at cfganal.c:875 with -O -fgcse-after-reload -fnon-call-exceptions

2012-11-11 Thread steven at gcc dot gnu.org


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



--- Comment #3 from Steven Bosscher steven at gcc dot gnu.org 2012-11-11 
20:29:15 UTC ---

Author: steven

Date: Sun Nov 11 20:29:11 2012

New Revision: 193412



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=193412

Log:

gcc/

PR middle-end/55263

* postreload.c (rest_of_handle_postreload): With non-call exceptions,

if edges are purged call cleanup_cfg to remove unreachable blocks.



testsuite/

PR middle-end/55263

* g++.dg/pr55263.C: New test.





Added:

trunk/gcc/testsuite/g++.dg/pr55263.C

Modified:

trunk/gcc/ChangeLog

trunk/gcc/postreload.c

trunk/gcc/testsuite/ChangeLog


[Bug middle-end/55263] [4.8 Regression] ICE: pre_and_rev_post_order_compute, at cfganal.c:875 with -O -fgcse-after-reload -fnon-call-exceptions

2012-11-11 Thread steven at gcc dot gnu.org


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



Steven Bosscher steven at gcc dot gnu.org changed:



   What|Removed |Added



 Status|ASSIGNED|RESOLVED

 Resolution||FIXED



--- Comment #4 from Steven Bosscher steven at gcc dot gnu.org 2012-11-11 
20:33:26 UTC ---

.


[Bug middle-end/55263] [4.8 Regression] ICE: pre_and_rev_post_order_compute, at cfganal.c:875 with -O -fgcse-after-reload -fnon-call-exceptions

2012-11-10 Thread mpolacek at gcc dot gnu.org


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



Marek Polacek mpolacek at gcc dot gnu.org changed:



   What|Removed |Added



 Status|UNCONFIRMED |NEW

   Last reconfirmed||2012-11-10

 CC||mpolacek at gcc dot

   ||gnu.org, steven at gcc dot

   ||gnu.org

   Target Milestone|--- |4.8.0

 Ever Confirmed|0   |1



--- Comment #1 from Marek Polacek mpolacek at gcc dot gnu.org 2012-11-10 
18:24:15 UTC ---

Started with http://gcc.gnu.org/viewcvs?view=revisionrevision=190602


[Bug middle-end/55263] [4.8 Regression] ICE: pre_and_rev_post_order_compute, at cfganal.c:875 with -O -fgcse-after-reload -fnon-call-exceptions

2012-11-10 Thread steven at gcc dot gnu.org


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



Steven Bosscher steven at gcc dot gnu.org changed:



   What|Removed |Added



 Status|NEW |ASSIGNED

 CC|steven at gcc dot gnu.org   |

 AssignedTo|unassigned at gcc dot   |steven at gcc dot gnu.org

   |gnu.org |



--- Comment #2 from Steven Bosscher steven at gcc dot gnu.org 2012-11-10 
23:59:39 UTC ---

Index: postreload.c

===

--- postreload.c(revision 193396)

+++ postreload.c(working copy)

@@ -2289,8 +2289,9 @@ rest_of_handle_postreload (void)

   reload_cse_regs (get_insns ());

   /* Reload_cse_regs can eliminate potentially-trapping MEMs.

  Remove any EH edges associated with them.  */

-  if (cfun-can_throw_non_call_exceptions)

-purge_all_dead_edges ();

+  if (cfun-can_throw_non_call_exceptions

+   purge_all_dead_edges ())

+cleanup_cfg (0);



   return 0;

 }