------- Additional Comments From belyshev at lubercy dot com 2004-12-12 19:20 ------- testcase for 4.0.0, use "-O2" to reproduce: ---------------------------------------------------------------------------------------- char m[2]; char o[2]; short i[2]; int t[2];
void foo () { int c; for (c = 0; c < 2; c++) { if (i[c & 0xff] & 4) o[0] = 0; else if (i[c & 0xff] & 128) { m[c] = t[c & 0xff]; o[c] = c; } if ((i[c & 0xff] & 136) || (i[c & 0xff] & 4)) o[0] = 0; } } ---------------------------------------------------------------------------------------- /usr/local/libexec/gcc/i686-pc-linux-gnu/4.0.0/cc1 -quiet tc-i386.c -O2 tc-i386.c: In function ‘foo’: tc-i386.c:25: error: insn does not satisfy its constraints: (insn 166 96 98 5 (parallel [ (set (reg:CCNO 17 flags) (compare:CCNO (and:QI (reg:QI 4 si [orig:107 D.1127 ] [107]) (const_int -120 [0xffffff88])) (const_int 0 [0x0]))) (set (reg:QI 4 si [orig:107 D.1127 ] [107]) (and:QI (reg:QI 4 si [orig:107 D.1127 ] [107]) (const_int -120 [0xffffff88]))) ]) 207 {*andqi_2} (nil) (expr_list:REG_UNUSED (reg:QI 4 si [orig:107 D.1127 ] [107]) (nil))) tc-i386.c:25: internal compiler error: in copyprop_hardreg_forward_1, at regrename.c:1567 -- What |Removed |Added ---------------------------------------------------------------------------- Known to fail|3.4.4 |3.4.4 4.0.0 Last reconfirmed|2004-12-10 21:06:02 |2004-12-12 19:20:28 date| | Summary|[3.4 regression] - |[3.4/4.0 regression] ICE in |march=pentium4 -O2 causes |copyprop_hardreg_forward_1, |ICE |at regrename.c http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18932