http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51856
Bug #: 51856 Summary: [4.7 Regression] ICE in reload_cse_simplify_operands Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: rtl-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: ja...@gcc.gnu.org Target: s390-linux struct B { int b1; long long b2, b3; int b4; }; struct C { char c1[40], c2, c3[96]; long long c4[5], c5; char c6[596]; }; void fn1 (long long), fn2 (char *, int), fn4 (void); int r, fn3 (int, const char *, int, char *, int, int); void foo (int t, int u, int v, int w, int x, int y, struct B *z) { char c[512], d[512], e; struct C g; long long f, h[255]; struct B j; __builtin_bzero (&j, sizeof j); if (y > w) fn4 (); __builtin_bzero (&g, sizeof g); g.c5 = h[0]; fn1 (z ? z->b3 : f); g.c2 = y; fn2 (d, 256); if (fn3 (r, "", e, c, 0, 16)) fn4 (); } ICEs with -O2 -m31 on the trunk with: rh773565.i: In function 'foo': rh773565.i:23:1: error: insn does not satisfy its constraints: (insn 51 136 120 8 (set (mem/s/c:QI (plus:SI (reg/f:SI 15 %r15) (const_int 1208 [0x4b8])) [0 g.c2+0 S1 A64]) (mem/c/i:QI (plus:SI (plus:SI (reg/f:SI 15 %r15) (reg:SI 1 %r1)) (const_int 3 [0x3])) [5 y+3 S1 A32])) rh773565.i:19 73 {*movqi} (nil)) rh773565.i:23:1: internal compiler error: in reload_cse_simplify_operands, at postreload.c:403 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.