https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67344
Bug ID: 67344 Summary: PowerPC unrecognizable insn Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: anton at samba dot org Target Milestone: --- The following testcase: # cat testcase.c int a, b, c; void fn2(void); int fn1(char p1) { short d; for (;;) for (; c <= 3;) { fn2(); d = p1 / 2; b = d & 11 && a; } } hits an ICE: # gcc -O1 -c testcase.i testcase2.i: In function ‘fn1’: testcase2.i:13:1: error: unrecognizable insn: } ^ (insn 74 4 75 2 (set (reg:DI 9 9) (and:DI (lshiftrt:DI (reg:DI 3 3 [ p1 ]) (const_int 1 [0x1])) (const_int 11 [0xb]))) testcase2.i:11 -1 (nil)) testcase2.i:13:1: internal compiler error: in extract_insn, at recog.c:2297 0x107923e3 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) ../../gcc/gcc/rtl-error.c:109 0x1079245f _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) ../../gcc/gcc/rtl-error.c:117 0x10755a87 extract_insn(rtx_insn*) ../../gcc/gcc/recog.c:2297 0x10755b4f extract_insn_cached(rtx_insn*) ../../gcc/gcc/recog.c:2188 0x1049f37b cleanup_subreg_operands(rtx_insn*) ../../gcc/gcc/final.c:3112 0x10751dd7 split_insn ../../gcc/gcc/recog.c:2910 0x10758d77 split_all_insns() ../../gcc/gcc/recog.c:2964 0x10758eab rest_of_handle_split_after_reload ../../gcc/gcc/recog.c:3904 0x10758eab execute ../../gcc/gcc/recog.c:3933