during RTL pass: expand
pr106966.c: In function ‘do_console’:
pr106966.c:4:10: internal compiler error: in emit_move_insn, at expr.cc:4052
4 | vga[0] = 'H';
| ~~~~~~~^~~~~
0x5ed664 emit_move_insn(rtx_def*, rtx_def*) ../../git/gcc/gcc/expr.cc:4052
0x113a708 alpha_emit_set_long_const ../../git/gcc/gcc/config/alpha/alpha.cc:2090
0x113abfc alpha_split_const_mov(machine_mode, rtx_def**) ../../git/gcc/gcc/config/alpha/alpha.cc:2204
0x113ade7 alpha_expand_mov(machine_mode, rtx_def**) ../../git/gcc/gcc/config/alpha/alpha.cc:2250
0x15510a8 gen_movv4hi(rtx_def*, rtx_def*) ../../git/gcc/gcc/config/alpha/alpha.md:4463
...
(gdb) bt
#0 internal_error (gmsgid=gmsgid@entry=0x1a9cf85 "in %s, at %s:%d") at ../../git/gcc/gcc/diagnostic.cc:2107
#1 0x00000000007918d6 in fancy_abort (file=file@entry=0x1910cf9 "../../git/gcc/gcc/expr.cc", line=line@entry=4052,
function=function@entry=0x1a23a78 "emit_move_insn") at ../../git/gcc/gcc/diagnostic.cc:2211
#2 0x00000000005ed665 in emit_move_insn (x=<optimized out>, y=<optimized out>) at ../../git/gcc/gcc/expr.cc:4052
#3 0x000000000113a709 in alpha_emit_set_long_const (target=0x7fffea2ef9f0, c1=7077888) at ../../git/gcc/gcc/config/alpha/alpha.cc:2090
#4 0x000000000113abfd in alpha_split_const_mov (mode=E_V4HImode, operands=0x7fffffffd5a0) at ../../git/gcc/gcc/config/alpha/alpha.cc:2204
#5 0x000000000113ade8 in alpha_expand_mov (mode=E_V4HImode, operands=0x7fffffffd5a0) at ../../git/gcc/gcc/config/alpha/alpha.cc:2250
#6 0x00000000015510a9 in gen_movv4hi (operand0=0x7fffea2ef9f0, operand1=0x7fffea29ebc0) at ../../git/gcc/gcc/config/alpha/alpha.md:4463
(gdb) f 3
#3 0x000000000113a709 in alpha_emit_set_long_const (target=0x7fffea2ef9f0, c1=7077888) at ../../git/gcc/gcc/config/alpha/alpha.cc:2090
2090 emit_move_insn (target, gen_rtx_PLUS (DImode, target, GEN_INT (d3)));
(gdb) p debug_rtx (target)
(reg:V4HI 71)
$1 = void
Testcase:
void
do_console (unsigned short *vga)
{
vga[0] = 'H';
vga[1] = 'e';
vga[2] = 'l';
vga[3] = 'l';
vga[4] = 'o';
}
cc1 -O2 -mbuild-constants:
during RTL pass: expand insn(rtx_ def*, rtx_def*)
../../ git/gcc/ gcc/expr. cc:4052 set_long_ const
../../ git/gcc/ gcc/config/ alpha/alpha. cc:2090 const_mov( machine_ mode, rtx_def**)
../../ git/gcc/ gcc/config/ alpha/alpha. cc:2204 mov(machine_ mode, rtx_def**)
../../ git/gcc/ gcc/config/ alpha/alpha. cc:2250 rtx_def* , rtx_def*)
../../ git/gcc/ gcc/config/ alpha/alpha. md:4463
pr106966.c: In function ‘do_console’:
pr106966.c:4:10: internal compiler error: in emit_move_insn, at expr.cc:4052
4 | vga[0] = 'H';
| ~~~~~~~^~~~~
0x5ed664 emit_move_
0x113a708 alpha_emit_
0x113abfc alpha_split_
0x113ade7 alpha_expand_
0x15510a8 gen_movv4hi(
...
(gdb) bt gmsgid@ entry=0x1a9cf85 "in %s, at %s:%d") at ../../git/ gcc/gcc/ diagnostic. cc:2107 entry=0x1910cf9 "../../ git/gcc/ gcc/expr. cc", line=line@ entry=4052, function@ entry=0x1a23a78 "emit_move_insn") at ../../git/ gcc/gcc/ diagnostic. cc:2211 gcc/gcc/ expr.cc: 4052 set_long_ const (target= 0x7fffea2ef9f0, c1=7077888) at ../../git/ gcc/gcc/ config/ alpha/alpha. cc:2090 const_mov (mode=E_V4HImode, operands= 0x7fffffffd5a0) at ../../git/ gcc/gcc/ config/ alpha/alpha. cc:2204 0x7fffffffd5a0) at ../../git/ gcc/gcc/ config/ alpha/alpha. cc:2250 0x7fffea2ef9f0, operand1= 0x7fffea29ebc0) at ../../git/ gcc/gcc/ config/ alpha/alpha. md:4463
#0 internal_error (gmsgid=
#1 0x00000000007918d6 in fancy_abort (file=file@
function=
#2 0x00000000005ed665 in emit_move_insn (x=<optimized out>, y=<optimized out>) at ../../git/
#3 0x000000000113a709 in alpha_emit_
#4 0x000000000113abfd in alpha_split_
#5 0x000000000113ade8 in alpha_expand_mov (mode=E_V4HImode, operands=
#6 0x00000000015510a9 in gen_movv4hi (operand0=
(gdb) f 3 set_long_ const (target= 0x7fffea2ef9f0, c1=7077888) at ../../git/ gcc/gcc/ config/ alpha/alpha. cc:2090
#3 0x000000000113a709 in alpha_emit_
2090 emit_move_insn (target, gen_rtx_PLUS (DImode, target, GEN_INT (d3)));
(gdb) p debug_rtx (target)
(reg:V4HI 71)
$1 = void