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

--- Comment #2 from Vegard Nossum <vegard.nossum at gmail dot com> ---
I'm also seeing a different crash with this (using -O3):

int a;
void b() {
  float c;
  for (int d; d;)
    ;
  a = c;
  asm("" : : "pIr"(c));
}

Output:

$ xgcc -x c++ -S -Wall -fpermissive -O3 -
<stdin>: In function 'void b()':
<stdin>:4:15: warning: 'd' is used uninitialized in this function
[-Wuninitialized]
<stdin>:6:5: warning: 'c' is used uninitialized in this function
[-Wuninitialized]
during RTL pass: reload
<stdin>:8:1: internal compiler error: in emit_move_insn, at expr.c:3717
0x1e906d7 emit_move_insn(rtx_def*, rtx_def*)
        /home/vegard/git/gcc/gcc/expr.c:3716
0x280edaa lra_emit_move(rtx_def*, rtx_def*)
        /home/vegard/git/gcc/gcc/lra.c:497
0x28a3871 process_address_1
        /home/vegard/git/gcc/gcc/lra-constraints.c:3368
0x28a7ba3 process_address
        /home/vegard/git/gcc/gcc/lra-constraints.c:3521
0x28a7ba3 curr_insn_transform
        /home/vegard/git/gcc/gcc/lra-constraints.c:3836
0x28bbf56 lra_constraints(bool)
        /home/vegard/git/gcc/gcc/lra-constraints.c:4877
0x282c524 lra(_IO_FILE*)
        /home/vegard/git/gcc/gcc/lra.c:2419
0x260b334 do_reload
        /home/vegard/git/gcc/gcc/ira.c:5465
0x260b334 execute
        /home/vegard/git/gcc/gcc/ira.c:5649

I'm not opening a new bug because the stack trace is quite similar and also it
seems that making very small changes to this test case makes it crash in the
original way, so I figure it's probably related.

Reply via email to