[Bug c++/70761] New: C++ ICE on ppc64le and ppc64 with -m64
markos at freevec dot org
gcc-bugzilla@gcc.gnu.org
Fri Apr 22 10:10:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70761
Bug ID: 70761
Summary: C++ ICE on ppc64le and ppc64 with -m64
Product: gcc
Version: 5.3.1
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: markos at freevec dot org
Target Milestone: ---
Target: ppc64le, ppc64
Created attachment 38326
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38326&action=edit
Reduced testcase for ICE on ppc64/ppc64le
On ppc64le (Debian testing, g++ 5.3.1-14)
$ g++-5 -O2 testcase.cpp
testcase.cpp: In function ‘void x36()’:
testcase.cpp:150:1: error: unable to generate reloads for:
}
^
(jump_insn 10 5 11 2 (parallel [
(set (pc)
(if_then_else (eq (reg:DI 3 3)
(const_int 1 [0x1]))
(label_ref:DI 20)
(pc)))
(set (reg:DI 63 31 [orig:157 D.3107 ] [157])
(plus:DI (reg:DI 3 3)
(const_int -1 [0xffffffffffffffff])))
(clobber (scratch:CC))
(clobber (scratch:DI))
]) testcase.cpp:132 794 {*ctrdi_internal5}
(expr_list:REG_DEAD (reg:DI 3 3)
(int_list:REG_BR_PROB 4877 (nil)))
-> 20)
testcase.cpp:150:1: internal compiler error: in find_reloads, at reload.c:3862
0x102c425b _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
../../src/gcc/rtl-error.c:110
0x109dcd8f find_reloads(rtx_insn*, int, int, int, short*)
../../src/gcc/reload.c:3862
0x109f03a3 calculate_needs_all_insns
../../src/gcc/reload1.c:1540
0x109f03a3 reload(rtx_insn*, int)
../../src/gcc/reload1.c:1028
0x10903027 do_reload
../../src/gcc/ira.c:5454
0x10903027 execute
../../src/gcc/ira.c:5613
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
On powerpc32 (Debian testing, g++ 5.3.1-14, only when -m64 is added)
$ g++-5 -m64 -O2 testcase.cpp
testcase.cpp: In function ‘void x36()’:
testcase.cpp:150:1: error: unable to generate reloads for:
}
^
(jump_insn 10 5 11 2 (parallel [
(set (pc)
(if_then_else (eq (reg:DI 3 3)
(const_int 1 [0x1]))
(label_ref:DI 20)
(pc)))
(set (reg:DI 63 31 [orig:157 D.3085 ] [157])
(plus:DI (reg:DI 3 3)
(const_int -1 [0xffffffffffffffff])))
(clobber (scratch:CC))
(clobber (scratch:DI))
]) testcase.cpp:132 794 {*ctrdi_internal5}
(expr_list:REG_DEAD (reg:DI 3 3)
(int_list:REG_BR_PROB 4877 (nil)))
-> 20)
testcase.cpp:150:1: internal compiler error: in find_reloads, at reload.c:3862
0x1027c933 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
../../src/gcc/rtl-error.c:110
0x108ecbf7 find_reloads(rtx_insn*, int, int, int, short*)
../../src/gcc/reload.c:3862
0x108feefb calculate_needs_all_insns
../../src/gcc/reload1.c:1540
0x108feefb reload(rtx_insn*, int)
../../src/gcc/reload1.c:1028
0x1082d9db do_reload
../../src/gcc/ira.c:5454
0x1082d9db execute
../../src/gcc/ira.c:5613
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <file:///usr/share/doc/gcc-5/README.Bugs> for instructions.
Reduced testcase attached, same for both architectures
More information about the Gcc-bugs
mailing list