This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/37716] [4.4 Regression] ice for legal C++ code with -O2 on 20080926
- From: "janis at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 5 Dec 2008 00:23:56 -0000
- Subject: [Bug tree-optimization/37716] [4.4 Regression] ice for legal C++ code with -O2 on 20080926
- References: <bug-37716-9596@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #10 from janis at gcc dot gnu dot org 2008-12-05 00:23 -------
The fix causes two tests to get an internal compiler error for powerpc*-*-*:
g++.dg/init/copy5.C
gcc.c-torture/execute/930718-1.c
Here's a smaller version of 930718-1.c:
typedef struct rtx_def
{
int f2 :1;
} *rtx;
static rtx
f (rtx orig)
{
if (orig->f2)
return orig;
orig->f2 = 1;
return orig;
}
int
main ()
{
struct rtx_def foo = { 0 };
rtx bar;
bar = f (&foo);
return (bar->f2 != 0);
}
It fails with an ICE in gimplify_expr at gimplify.c:6959 with code=COND_EXPR.
--
janis at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |luisgpm at linux dot vnet
| |dot ibm dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37716