[Bug rtl-optimization/67346] New: PowerPC: could not split insn

anton at samba dot org gcc-bugzilla@gcc.gnu.org
Mon Aug 24 23:16:00 GMT 2015


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67346

            Bug ID: 67346
           Summary: PowerPC: could not split 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.i

struct {
        long f1;
} c;
int a, d, e;
volatile int b;

void fn2()
{
        a = 3;
        for (; a <= 8; a++) {
                unsigned long *f = &c.f1;
                e = 5 + 1;
                *f |= d &= e;
                b ? : b;
        }
}

void fn1()
{
        c.f1 = -2;
        fn2();
}

hits an ICE:

# gcc -O3 testcase.i
testcase.i: In function ‘fn1’:
testcase.i:22:1: error: could not split insn
 }
 ^
(insn 24 23 28 (set (reg:DI 6 6 [168])
        (ior:DI (reg:DI 6 6 [196])
            (const_int -2 [0xfffffffffffffffe]))) testcase.i:13 243
{*iordi_mask}
     (nil))
testcase.i:22:1: internal compiler error: in final_scan_insn, at final.c:2995
0x107923e3 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        ../../gcc/gcc/rtl-error.c:109
0x104a3d6b final_scan_insn(rtx_insn*, _IO_FILE*, int, int, int*)
        ../../gcc/gcc/final.c:2995
0x104a4267 final(rtx_insn*, _IO_FILE*, int)
        ../../gcc/gcc/final.c:2058
0x104a46d7 rest_of_handle_final
        ../../gcc/gcc/final.c:4449
0x104a46d7 execute
        ../../gcc/gcc/final.c:4524


More information about the Gcc-bugs mailing list