This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/71009] g++: ICE on modified gdb/valarith.c with -Ofast
- From: "egall at gwmail dot gwu.edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 08 Jul 2016 03:41:32 +0000
- Subject: [Bug target/71009] g++: ICE on modified gdb/valarith.c with -Ofast
- Auto-submitted: auto-generated
- References: <bug-71009-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71009
--- Comment #5 from Eric Gallager <egall at gwmail dot gwu.edu> ---
I rebuilt with debugging info and got a better backtrace:
Breakpoint 1, internal_error (gmsgid=0x15ee807 "in %s, at %s:%d") at
../../gcc/diagnostic.c:1337
1337 va_start (ap, gmsgid);
(gdb) bt
#0 internal_error (gmsgid=0x15ee807 "in %s, at %s:%d") at
../../gcc/diagnostic.c:1337
#1 0x01266866 in fancy_abort (file=0x157ccd5 "../../gcc/emit-rtl.c",
line=1025, function=0x190cd98 "gen_reg_rtx") at ../../gcc/diagnostic.c:1405
#2 0x00945479 in gen_reg_rtx (mode=V2DImode) at ../../gcc/emit-rtl.c:1025
#3 0x00579f86 in gen_split_349 (curr_insn=0x325acf0, operands=0x1ff95c0) at
../../gcc/config/i386/sse.md:1129
#4 0x0076bb58 in split_8 (x1=0x3255ce4, insn=0x325acf0) at
../../gcc/config/i386/sse.md:1115
#5 0x00778c75 in split_insns (x1=0x3255ce4, insn=0x325acf0) at
../../gcc/config/i386/sse.md:13387
#6 0x0094b3e4 in try_split (pat=0x3255ce4, trial=0x325acf0, last=1) at
../../gcc/emit-rtl.c:3658
#7 0x00d4a502 in split_insn (insn=0x325acf0) at ../../gcc/recog.c:2887
#8 0x00d4a7c5 in split_all_insns () at ../../gcc/recog.c:2977
#9 0x00d4c34b in rest_of_handle_split_after_reload () at
../../gcc/recog.c:3913
#10 0x00d4c389 in (anonymous namespace)::pass_split_after_reload::execute
(this=0x50d0e190) at ../../gcc/recog.c:3942
#11 0x00d12144 in execute_one_pass (pass=0x50d0e190) at ../../gcc/passes.c:2344
#12 0x00d12495 in execute_pass_list_1 (pass=0x50d0e190) at
../../gcc/passes.c:2428
#13 0x00d124c5 in execute_pass_list_1 (pass=0x50d0e0d0) at
../../gcc/passes.c:2429
#14 0x00d124c5 in execute_pass_list_1 (pass=0x50d0d590) at
../../gcc/passes.c:2429
#15 0x00d12515 in execute_pass_list (fn=0x2b35bb8, pass=0x50d0b190) at
../../gcc/passes.c:2439
#16 0x008539ee in cgraph_node::expand (this=0x2d4b424) at
../../gcc/cgraphunit.c:1983
#17 0x00853fff in expand_all_functions () at ../../gcc/cgraphunit.c:2119
#18 0x00854c8b in symbol_table::compile (this=0x50e0b000) at
../../gcc/cgraphunit.c:2475
#19 0x00854ed1 in symbol_table::finalize_compilation_unit (this=0x50e0b000) at
../../gcc/cgraphunit.c:2565
#20 0x00e246cd in compile_file () at ../../gcc/toplev.c:490
#21 0x00e26f70 in do_compile () at ../../gcc/toplev.c:1998
#22 0x00e27332 in toplev::main (this=0xbfff94de, argc=140, argv=0xbfff9510) at
../../gcc/toplev.c:2132
#23 0x0124f80f in main (argc=140, argv=0xbfff9510) at ../../gcc/main.c:39
Current language: auto; currently c++
(gdb) bt full
#0 internal_error (gmsgid=0x15ee807 "in %s, at %s:%d") at
../../gcc/diagnostic.c:1337
ap = 0x0
richloc = {
static MAX_RANGES = <optimized out>,
static MAX_FIXIT_HINTS = <optimized out>,
m_num_ranges = 0,
m_ranges = {{
m_loc = 33527040,
m_show_caret_p = 204
}, {
m_loc = 0,
m_show_caret_p = false
}, {
m_loc = 0,
m_show_caret_p = true
}},
m_column_override = 0,
m_have_expanded_location = 104,
m_expanded_location = {
file = 0xd47953 "??\020\017????U???\030?x?\001\002??u2?E\b\017?",
line = 18,
column = 1356874188,
data = 0x0,
sysp = false
},
m_num_fixit_hints = 18,
m_fixit_hints = {0x50e041cc, 0x0}
}
__FUNCTION__ = "internal_error"
#1 0x01266866 in fancy_abort (file=0x157ccd5 "../../gcc/emit-rtl.c",
line=1025, function=0x190cd98 "gen_reg_rtx") at ../../gcc/diagnostic.c:1405
No locals.
#2 0x00945479 in gen_reg_rtx (mode=V2DImode) at ../../gcc/emit-rtl.c:1025
val = (rtx) 0xd479ef
align = 128
__FUNCTION__ = "gen_reg_rtx"
#3 0x00579f86 in gen_split_349 (curr_insn=0x325acf0, operands=0x1ff95c0) at
../../gcc/config/i386/sse.md:1129
tmp = (rtx) 0x50e0e430
_val = (rtx_insn *) 0x0
__FUNCTION__ = "gen_split_349"
#4 0x0076bb58 in split_8 (x1=0x3255ce4, insn=0x325acf0) at
../../gcc/config/i386/sse.md:1115
operands = (rtx * const) 0x1ff95c0
x2 = (rtx) 0x3259dd0
x3 = (rtx) 0x3259dc0
x4 = (rtx) 0x32c22f0
x5 = (rtx) 0x27c6018
x6 = (rtx) 0x0
x7 = (rtx) 0x3255ccc
x8 = (rtx) 0x3254eb0
x9 = (rtx) 0x32797e0
x10 = (rtx) 0x0
#5 0x00778c75 in split_insns (x1=0x3255ce4, insn=0x325acf0) at
../../gcc/config/i386/sse.md:13387
operands = (rtx * const) 0x1ff95c0
x2 = (rtx) 0xbfff91d8
x3 = (rtx) 0xbfff922b
x4 = (rtx) 0x2d4b424
x5 = (rtx) 0x3251a28
x6 = (rtx) 0xbfff91c8
x7 = (rtx) 0x27c0cdc
x8 = (rtx) 0x325acf0
x9 = (rtx) 0xc07a4e
x10 = (rtx) 0xbfff91c8
x11 = (rtx) 0x0
x12 = (rtx) 0x3251a28
x13 = (rtx) 0x95215c
x14 = (rtx) 0xbfff91b8
x15 = (rtx) 0x27c0cdc
x16 = (rtx) 0x325ad14
x17 = (rtx) 0x9521eb
#6 0x0094b3e4 in try_split (pat=0x3255ce4, trial=0x325acf0, last=1) at
../../gcc/emit-rtl.c:3658
before = (rtx_insn *) 0x325aca8
after = (rtx_insn *) 0x325ad14
note = (rtx) 0x325aca8
seq = (rtx_insn *) 0x0
tem = (rtx_insn *) 0xbfff9248
probability = -1
insn_last = (rtx_insn *) 0x0
insn = (rtx_insn *) 0x0
njumps = 0
call_insn = (rtx_insn *) 0x0
__FUNCTION__ = "try_split"
#7 0x00d4a502 in split_insn (insn=0x325acf0) at ../../gcc/recog.c:2887
first = (rtx_insn *) 0x325aca8
last = (rtx_insn *) 0x3254eb0
insn_set = (rtx) 0x3255ce4
last_set = (rtx) 0x325acf0
note = (rtx) 0x796dc3
#8 0x00d4a7c5 in split_all_insns () at ../../gcc/recog.c:2977
set = (rtx) 0x3259dd0
insn = (rtx_insn *) 0x325acf0
next = (rtx_insn *) 0x325ad14
finish = false
blocks = (sbitmap) 0x3012620
changed = true
bb = (basic_block) 0x2dc79c0
#9 0x00d4c34b in rest_of_handle_split_after_reload () at
../../gcc/recog.c:3913
No locals.
#10 0x00d4c389 in (anonymous namespace)::pass_split_after_reload::execute
(this=0x50d0e190) at ../../gcc/recog.c:3942
No locals.
#11 0x00d12144 in execute_one_pass (pass=0x50d0e190) at ../../gcc/passes.c:2344
todo_after = 0
gate_status = true
__FUNCTION__ = "execute_one_pass"
#12 0x00d12495 in execute_pass_list_1 (pass=0x50d0e190) at
../../gcc/passes.c:2428
__FUNCTION__ = "execute_pass_list_1"
#13 0x00d124c5 in execute_pass_list_1 (pass=0x50d0e0d0) at
../../gcc/passes.c:2429
__FUNCTION__ = "execute_pass_list_1"
#14 0x00d124c5 in execute_pass_list_1 (pass=0x50d0d590) at
../../gcc/passes.c:2429
__FUNCTION__ = "execute_pass_list_1"
#15 0x00d12515 in execute_pass_list (fn=0x2b35bb8, pass=0x50d0b190) at
../../gcc/passes.c:2439
__FUNCTION__ = "execute_pass_list"
#16 0x008539ee in cgraph_node::expand (this=0x2d4b424) at
../../gcc/cgraphunit.c:1983
saved_loc = 217398336
__FUNCTION__ = "expand"
#17 0x00853fff in expand_all_functions () at ../../gcc/cgraphunit.c:2119
node = (cgraph_node *) 0x2d4b424
order = (cgraph_node **) 0x50dd81c0
expanded_func_count = 9
profiled_func_count = 0
order_pos = 84
new_order_pos = 20
i = 11
__FUNCTION__ = "expand_all_functions"
#18 0x00854c8b in symbol_table::compile (this=0x50e0b000) at
../../gcc/cgraphunit.c:2475
node = (symtab_node *) 0x0
__FUNCTION__ = "compile"
#19 0x00854ed1 in symbol_table::finalize_compilation_unit (this=0x50e0b000) at
../../gcc/cgraphunit.c:2565
cnode = (cgraph_node *) 0x0
#20 0x00e246cd in compile_file () at ../../gcc/toplev.c:490
pkg_version = 0xe26f68
"??\020?????\r??\fj\002蘳????\020??\fj\n???????\020\017?\005G\033?\001\017????\fP??????\020??\fj\n?h?????\020???U???\004?E\020?E??}\f"
ident_str = 0xbfff94a8 "????2s?"
#21 0x00e26f70 in do_compile () at ../../gcc/toplev.c:1998
i = 1
#22 0x00e27332 in toplev::main (this=0xbfff94de, argc=140, argv=0xbfff9510) at
../../gcc/toplev.c:2132
No locals.
#23 0x0124f80f in main (argc=140, argv=0xbfff9510) at ../../gcc/main.c:39
toplev = {
m_use_TV_TOTAL = true,
m_init_signals = true
}
(gdb) call debug_rtx((rtx)0xd479ef)
(??? bad code 50307
)
Let me know if there's any other debugging commands I should try.
Latest version info:
$ ./xg++ -v
Using built-in specs.
COLLECT_GCC=./xg++
Target: i386-apple-darwin9.8.0
Configured with: ../configure --enable-languages=c,objc,c++,obj-c++
CC=/usr/local/bin/gcc CXX=/usr/local/bin/g++ OBJC=/usr/local/bin/gcc
OBJCXX=/usr/local/bin/g++
Thread model: posix
gcc version 7.0.0 20160627 (experimental) (GCC)