Patch to solve PR42169.

Submitted by Vladimir Makarov on Oct. 20, 2010, 3:16 a.m.

Details

Message ID 4CBE5F03.4080801@redhat.com
State New
Headers show

Commit Message

Vladimir Makarov Oct. 20, 2010, 3:16 a.m.
The following patch solves the problem.  The details of the PR can be 
found on
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42169

I checked that the patch fixes the problem on gcc4.5 (it is not 
reproducible on the trunk any more).

Is it OK to commit to gcc4.4, gcc4.5 branches and the trunk?

2010-10-19  Vladimir Makarov <vmakarov@redhat.com>

         PR fortran/42169
         * ira-emit.c (store_can_be_removed_p): Return false instead of
         gcc_unreachable.

Comments

Richard Guenther Oct. 20, 2010, 9:05 a.m.
On Wed, Oct 20, 2010 at 5:16 AM, Vladimir Makarov <vmakarov@redhat.com> wrote:
>  The following patch solves the problem.  The details of the PR can be found
> on
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42169
>
> I checked that the patch fixes the problem on gcc4.5 (it is not reproducible
> on the trunk any more).
>
> Is it OK to commit to gcc4.4, gcc4.5 branches and the trunk?

Ok.

Thanks,
Richard.

> 2010-10-19  Vladimir Makarov <vmakarov@redhat.com>
>
>        PR fortran/42169
>        * ira-emit.c (store_can_be_removed_p): Return false instead of
>        gcc_unreachable.
>
>

Patch hide | download patch | download mbox

Index: ira-emit.c
===================================================================
--- ira-emit.c  (revision 165712)
+++ ira-emit.c  (working copy)
@@ -367,7 +367,8 @@  store_can_be_removed_p (ira_allocno_t sr
           prohibit removal of the store in such complicated case.  */
        return false;
     }
-  gcc_unreachable ();
+  /* It is actually a loop entry -- do not remove the store.  */
+  return false;
 }

 /* Generate and attach moves to the edge E.  This looks at the final