This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/60525] New: [4.9 Regression] ICE: in final_scan_insn, at final.c:2952


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60525

            Bug ID: 60525
           Summary: [4.9 Regression]  ICE: in final_scan_insn, at
                    final.c:2952
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: trippels at gcc dot gnu.org

markus@x4 libgcc % cat test.i
typedef struct
{
  long w[2];
} UINT128;
extern UINT128 a[];
int b, c, f, g, h, i, l, m, o, p, q;
double d;
UINT128 j, k, t;
long n, r;
unsigned long s;
fn1 (UINT128 *p1, UINT128 p2, UINT128 p3)
{
  int e;
  if (p2.w[1])
    p1->w[0] = p3.w[0];
  e = d + p2.w[0];
  if (p3.w[1])
    c = e;
  p1->w[1] = b;
}

fn2 ()
{
  UINT128 u;
  fn1 (&t, j, k);
  u = a[l];
  int v, w;
  o = t.w[0] >> 1;
  w = u.w[1] >> 32;
  n = t.w[0] * u.w[0];
  q = r;
  r = r + s + (n >> 32);
  v = q + r >> 1;
  r = o * u.w[0];
  q = o * w;
  r = r + s + (n >> 32);
  m = q + r;
  p = u.w[1] >> 32;
  r = u.w[1];
  s = 0;
  r = r + t.w[1] + n;
  i = v;
  o = t.w[0];
  h = k.w[1] * k.w[0];
  g = j.w[1];
  f = j.w[0];
}

markus@x4 libgcc % gcc -march=amdfam10 -O2 -c test.i
test.i: In function âfn2â:
test.i:47:1: error: could not split insn
 }
 ^
(insn:TI 31 30 32 5 (parallel [
            (set (reg:DF 22 xmm1 [orig:142 D.1904 ] [142])
                (float:DF (mem/c:DI (plus:DI (reg/f:DI 7 sp)
                            (const_int -16 [0xfffffffffffffff0])) [7 %sfp+-16
S8 A64])))
            (clobber (mem/c:DI (plus:DI (reg/f:DI 7 sp)
                        (const_int -8 [0xfffffffffffffff8])) [0  S8 A64]))
        ]) test.i:16 219 {*floatdidf2_sse_with_temp}
     (nil))
test.i:47:1: internal compiler error: in final_scan_insn, at final.c:2952
0x82e4c8 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        ../../gcc/gcc/rtl-error.c:109
0x6a9d5a final_scan_insn(rtx_def*, _IO_FILE*, int, int, int*)
        ../../gcc/gcc/final.c:2952
0x6a9fb6 final(rtx_def*, _IO_FILE*, int)
        ../../gcc/gcc/final.c:2023
0x6aa1e5 rest_of_handle_final
        ../../gcc/gcc/final.c:4427
0x6aa1e5 execute
        ../../gcc/gcc/final.c:4502
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
{standard input}: Assembler messages:
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc
directive

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]