[Bug c/58256] gcc for h8300 internal compiler error: in maybe_record_trace_start
gang.chen at asianux dot com
gcc-bugzilla@gcc.gnu.org
Sun Sep 15 12:27:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58256
--- Comment #8 from Chen Gang <gang.chen at asianux dot com> ---
For gcc-4.9.0, I got summary trace for it (call stack for cc1, how many the
related loopings during calling flow), hope it may be a little useful. (I will
do the same thing for gcc-4.8.0, and compare them).
And it seems: gdb can not print the variables' value when "g++ -g -Wall
-static-libstdc++ -static-libgcc" which is effect with cc1 and xgcc.
If can let gdb print the vaiables' value, life will be a little easier (don't
need dump the related variables' values mannually).
Welcome any additional suggestions or completions.
(gdb) bt
#0 maybe_record_trace_start(rtx_def*, rtx_def*) () at
../../gcc-4.9.0/gcc/dwarf2cfi.c:2184
#1 0x00000000006da82b in scan_trace(dw_trace_info*) () at
../../gcc-4.9.0/gcc/dwarf2cfi.c:2399
#2 0x00000000006dadeb in create_cfi_notes() () at
../../gcc-4.9.0/gcc/dwarf2cfi.c:2557
#3 0x00000000006db8e5 in execute_dwarf2_frame() () at
../../gcc-4.9.0/gcc/dwarf2cfi.c:2912
#4 0x00000000006dc5e3 in (anonymous namespace)::pass_dwarf2_frame::execute()
() at ../../gcc-4.9.0/gcc/dwarf2cfi.c:3408
#5 0x0000000000989d20 in execute_one_pass(opt_pass*) () at
../../gcc-4.9.0/gcc/passes.c:2201
#6 0x0000000000989f41 in execute_pass_list(opt_pass*) () at
../../gcc-4.9.0/gcc/passes.c:2257
#7 0x0000000000989f72 in execute_pass_list(opt_pass*) () at
../../gcc-4.9.0/gcc/passes.c:2258
#8 0x0000000000989f72 in execute_pass_list(opt_pass*) () at
../../gcc-4.9.0/gcc/passes.c:2258
#9 0x000000000068cbbd in expand_function(cgraph_node*) () at
../../gcc-4.9.0/gcc/cgraphunit.c:1723
#10 0x000000000068d085 in expand_all_functions() () at
../../gcc-4.9.0/gcc/cgraphunit.c:1828
#11 0x000000000068d9e9 in compile() () at ../../gcc-4.9.0/gcc/cgraphunit.c:2165
#12 0x000000000068db62 in finalize_compilation_unit() () at
../../gcc-4.9.0/gcc/cgraphunit.c:2242
#13 0x00000000005225ac in c_write_global_declarations() () at
../../gcc-4.9.0/gcc/c/c-decl.c:10125
#14 0x0000000000a4c25b in compile_file() () at ../../gcc-4.9.0/gcc/toplev.c:560
#15 0x0000000000a4e22e in do_compile() () at ../../gcc-4.9.0/gcc/toplev.c:1891
#16 0x0000000000a4e3a3 in toplev_main(int, char**) () at
../../gcc-4.9.0/gcc/toplev.c:1969
#17 0x0000000000e5b390 in main ()
(gdb) r -Os -mint32 -mh -fomit-frame-pointer -g /tmp/ana/namei/namei.c
Starting program: /android/src/build-gcc-h8300g/gcc/xgcc -Os -mint32 -mh
-fomit-frame-pointer -g /tmp/ana/namei/namei.c
gchen_tag: progname: xgcc, string: cc1
Detaching after fork from child process 8965.
gchen_tag: execute_pass_list: level: 1, count: 0.
gchen_tag: execute_pass_list: level: 1, count: 1.
gchen_tag: execute_pass_list: level: 1, count: 2.
gchen_tag: execute_pass_list: level: 1, count: 3.
gchen_tag: execute_pass_list: level: 1, count: 4.
gchen_tag: execute_pass_list: level: 1, count: 5.
gchen_tag: execute_pass_list: level: 1, count: 6.
gchen_tag: execute_pass_list: level: 1, count: 7.
gchen_tag: execute_pass_list: level: 1, count: 8.
gchen_tag: execute_pass_list: level: 1, count: 9.
gchen_tag: execute_pass_list: level: 1, count: 10.
gchen_tag: execute_pass_list: level: 1, count: 11.
gchen_tag: execute_pass_list: level: 1, count: 12.
gchen_tag: execute_pass_list: level: 1, count: 0.
gchen_tag: execute_pass_list: level: 1, count: 1.
gchen_tag: execute_pass_list: level: 1, count: 2.
gchen_tag: execute_pass_list: level: 1, count: 3.
gchen_tag: execute_pass_list: level: 1, count: 4.
gchen_tag: execute_pass_list: level: 1, count: 5.
gchen_tag: execute_pass_list: level: 1, count: 6.
gchen_tag: execute_pass_list: level: 2, count: 0.
gchen_tag: execute_pass_list: level: 2, count: 1.
gchen_tag: execute_pass_list: level: 2, count: 2.
gchen_tag: execute_pass_list: level: 2, count: 3.
gchen_tag: execute_pass_list: level: 2, count: 4.
gchen_tag: execute_pass_list: level: 2, count: 5.
gchen_tag: execute_pass_list: level: 2, count: 6.
gchen_tag: execute_pass_list: level: 2, count: 7.
gchen_tag: execute_pass_list: level: 2, count: 8.
gchen_tag: execute_pass_list: level: 2, count: 9.
gchen_tag: execute_pass_list: level: 2, count: 10.
gchen_tag: execute_pass_list: level: 2, count: 11.
gchen_tag: execute_pass_list: level: 2, count: 12.
gchen_tag: execute_pass_list: level: 2, count: 13.
gchen_tag: execute_pass_list: level: 2, count: 14.
gchen_tag: execute_pass_list: level: 2, count: 15.
gchen_tag: execute_pass_list: level: 2, count: 16.
gchen_tag: execute_pass_list: level: 1, count: 7.
gchen_tag: execute_pass_list: level: 1, count: 8.
gchen_tag: execute_pass_list: level: 1, count: 9.
gchen_tag: execute_pass_list: level: 1, count: 10.
gchen_tag: execute_pass_list: level: 1, count: 0.
gchen_tag: execute_pass_list: level: 2, count: 0.
gchen_tag: execute_pass_list: level: 2, count: 1.
gchen_tag: execute_pass_list: level: 2, count: 2.
gchen_tag: execute_pass_list: level: 2, count: 3.
gchen_tag: execute_pass_list: level: 2, count: 4.
gchen_tag: execute_pass_list: level: 2, count: 5.
gchen_tag: execute_pass_list: level: 2, count: 6.
gchen_tag: execute_pass_list: level: 2, count: 7.
gchen_tag: execute_pass_list: level: 2, count: 8.
gchen_tag: execute_pass_list: level: 2, count: 9.
gchen_tag: execute_pass_list: level: 2, count: 10.
gchen_tag: execute_pass_list: level: 2, count: 11.
gchen_tag: execute_pass_list: level: 2, count: 12.
gchen_tag: execute_pass_list: level: 2, count: 13.
gchen_tag: execute_pass_list: level: 2, count: 14.
gchen_tag: execute_pass_list: level: 2, count: 15.
gchen_tag: execute_pass_list: level: 2, count: 16.
gchen_tag: execute_pass_list: level: 2, count: 17.
gchen_tag: execute_pass_list: level: 2, count: 18.
gchen_tag: execute_pass_list: level: 2, count: 19.
gchen_tag: execute_pass_list: level: 2, count: 20.
gchen_tag: execute_pass_list: level: 2, count: 21.
gchen_tag: execute_pass_list: level: 2, count: 22.
gchen_tag: execute_pass_list: level: 2, count: 23.
gchen_tag: execute_pass_list: level: 2, count: 24.
gchen_tag: execute_pass_list: level: 2, count: 25.
gchen_tag: execute_pass_list: level: 2, count: 26.
gchen_tag: execute_pass_list: level: 2, count: 27.
gchen_tag: execute_pass_list: level: 2, count: 28.
gchen_tag: execute_pass_list: level: 2, count: 29.
gchen_tag: execute_pass_list: level: 2, count: 30.
gchen_tag: execute_pass_list: level: 2, count: 31.
gchen_tag: execute_pass_list: level: 2, count: 32.
gchen_tag: execute_pass_list: level: 2, count: 33.
gchen_tag: execute_pass_list: level: 2, count: 34.
gchen_tag: execute_pass_list: level: 2, count: 35.
gchen_tag: execute_pass_list: level: 2, count: 36.
gchen_tag: execute_pass_list: level: 2, count: 37.
gchen_tag: execute_pass_list: level: 2, count: 38.
gchen_tag: execute_pass_list: level: 2, count: 39.
gchen_tag: execute_pass_list: level: 2, count: 40.
gchen_tag: execute_pass_list: level: 2, count: 41.
gchen_tag: execute_pass_list: level: 2, count: 42.
gchen_tag: execute_pass_list: level: 3, count: 0.
gchen_tag: execute_pass_list: level: 3, count: 1.
gchen_tag: execute_pass_list: level: 3, count: 2.
gchen_tag: execute_pass_list: level: 3, count: 3.
gchen_tag: execute_pass_list: level: 3, count: 4.
gchen_tag: execute_pass_list: level: 3, count: 5.
gchen_tag: execute_pass_list: level: 3, count: 6.
gchen_tag: execute_pass_list: level: 3, count: 7.
gchen_tag: execute_pass_list: level: 3, count: 8.
gchen_tag: execute_pass_list: level: 3, count: 9.
gchen_tag: execute_pass_list: level: 3, count: 10.
gchen_tag: execute_pass_list: level: 3, count: 11.
gchen_tag: execute_pass_list: level: 3, count: 12.
gchen_tag: execute_pass_list: level: 3, count: 13.
gchen_tag: execute_pass_list: level: 3, count: 14.
gchen_tag: execute_pass_list: level: 3, count: 15.
gchen_tag: execute_pass_list: level: 3, count: 16.
gchen_tag: execute_pass_list: level: 3, count: 17.
gchen_tag: execute_pass_list: level: 3, count: 18.
gchen_tag: execute_pass_list: level: 3, count: 19.
gchen_tag: execute_pass_list: level: 3, count: 20.
gchen_tag: execute_pass_list: level: 3, count: 21.
gchen_tag: execute_pass_list: level: 2, count: 43.
gchen_tag: execute_pass_list: level: 2, count: 44.
gchen_tag: execute_pass_list: level: 2, count: 45.
gchen_tag: execute_pass_list: level: 2, count: 46.
gchen_tag: execute_pass_list: level: 2, count: 47.
gchen_tag: execute_pass_list: level: 2, count: 48.
gchen_tag: execute_pass_list: level: 2, count: 49.
gchen_tag: execute_pass_list: level: 2, count: 50.
gchen_tag: execute_pass_list: level: 2, count: 51.
gchen_tag: execute_pass_list: level: 2, count: 52.
gchen_tag: execute_pass_list: level: 2, count: 53.
gchen_tag: execute_pass_list: level: 2, count: 54.
gchen_tag: execute_pass_list: level: 2, count: 55.
gchen_tag: execute_pass_list: level: 2, count: 56.
gchen_tag: execute_pass_list: level: 2, count: 57.
gchen_tag: execute_pass_list: level: 2, count: 58.
gchen_tag: execute_pass_list: level: 2, count: 59.
gchen_tag: execute_pass_list: level: 2, count: 60.
gchen_tag: execute_pass_list: level: 2, count: 61.
gchen_tag: execute_pass_list: level: 2, count: 62.
gchen_tag: execute_pass_list: level: 2, count: 63.
gchen_tag: execute_pass_list: level: 1, count: 1.
gchen_tag: execute_pass_list: level: 1, count: 2.
gchen_tag: execute_pass_list: level: 1, count: 3.
gchen_tag: execute_pass_list: level: 1, count: 4.
gchen_tag: execute_pass_list: level: 1, count: 5.
gchen_tag: execute_pass_list: level: 1, count: 6.
gchen_tag: execute_pass_list: level: 1, count: 7.
gchen_tag: execute_pass_list: level: 1, count: 8.
gchen_tag: execute_pass_list: level: 1, count: 9.
gchen_tag: execute_pass_list: level: 1, count: 10.
gchen_tag: execute_pass_list: level: 1, count: 11.
gchen_tag: execute_pass_list: level: 1, count: 12.
gchen_tag: execute_pass_list: level: 1, count: 13.
gchen_tag: execute_pass_list: level: 1, count: 14.
gchen_tag: execute_pass_list: level: 1, count: 15.
gchen_tag: execute_pass_list: level: 2, count: 0.
gchen_tag: execute_pass_list: level: 2, count: 1.
gchen_tag: execute_pass_list: level: 2, count: 2.
gchen_tag: execute_pass_list: level: 2, count: 3.
gchen_tag: execute_pass_list: level: 2, count: 4.
gchen_tag: execute_pass_list: level: 2, count: 5.
gchen_tag: execute_pass_list: level: 2, count: 6.
gchen_tag: execute_pass_list: level: 2, count: 7.
gchen_tag: execute_pass_list: level: 2, count: 8.
gchen_tag: execute_pass_list: level: 2, count: 9.
gchen_tag: execute_pass_list: level: 2, count: 10.
gchen_tag: execute_pass_list: level: 2, count: 11.
gchen_tag: execute_pass_list: level: 2, count: 12.
gchen_tag: execute_pass_list: level: 2, count: 13.
gchen_tag: execute_pass_list: level: 2, count: 14.
gchen_tag: execute_pass_list: level: 3, count: 0.
gchen_tag: execute_pass_list: level: 3, count: 1.
gchen_tag: execute_pass_list: level: 3, count: 2.
gchen_tag: execute_pass_list: level: 3, count: 3.
gchen_tag: execute_pass_list: level: 3, count: 4.
gchen_tag: execute_pass_list: level: 3, count: 5.
gchen_tag: execute_pass_list: level: 2, count: 15.
gchen_tag: execute_pass_list: level: 2, count: 16.
gchen_tag: execute_pass_list: level: 2, count: 17.
gchen_tag: execute_pass_list: level: 2, count: 18.
gchen_tag: execute_pass_list: level: 2, count: 19.
gchen_tag: execute_pass_list: level: 2, count: 20.
gchen_tag: execute_pass_list: level: 2, count: 21.
gchen_tag: execute_pass_list: level: 2, count: 22.
gchen_tag: execute_pass_list: level: 2, count: 23.
gchen_tag: execute_pass_list: level: 2, count: 24.
gchen_tag: execute_pass_list: level: 2, count: 25.
gchen_tag: execute_pass_list: level: 2, count: 26.
gchen_tag: execute_pass_list: level: 2, count: 27.
gchen_tag: execute_pass_list: level: 2, count: 28.
gchen_tag: execute_pass_list: level: 2, count: 29.
gchen_tag: execute_pass_list: level: 2, count: 30.
gchen_tag: execute_pass_list: level: 2, count: 31.
gchen_tag: execute_pass_list: level: 2, count: 32.
gchen_tag: execute_pass_list: level: 2, count: 33.
gchen_tag: execute_pass_list: level: 2, count: 34.
gchen_tag: execute_pass_list: level: 2, count: 35.
gchen_tag: execute_pass_list: level: 2, count: 36.
gchen_tag: execute_pass_list: level: 2, count: 37.
gchen_tag: execute_pass_list: level: 2, count: 38.
gchen_tag: execute_pass_list: level: 3, count: 0.
gchen_tag: execute_pass_list: level: 3, count: 1.
gchen_tag: execute_pass_list: level: 3, count: 2.
gchen_tag: execute_pass_list: level: 3, count: 3.
gchen_tag: execute_pass_list: level: 3, count: 4.
gchen_tag: execute_pass_list: level: 3, count: 5.
gchen_tag: execute_pass_list: level: 3, count: 6.
gchen_tag: execute_pass_list: level: 3, count: 7.
gchen_tag: execute_pass_list: level: 3, count: 8.
gchen_tag: execute_pass_list: level: 3, count: 9.
gchen_tag: execute_pass_list: level: 3, count: 10.
gchen_tag: execute_pass_list: level: 3, count: 11.
gchen_tag: execute_pass_list: level: 3, count: 12.
gchen_tag: execute_pass_list: level: 3, count: 13.
gchen_tag: execute_pass_list: level: 3, count: 14.
gchen_tag: execute_pass_list: level: 3, count: 15.
gchen_tag: execute_pass_list: level: 3, count: 16.
gchen_tag: execute_pass_list: level: 3, count: 17.
gchen_tag: execute_pass_list: level: 3, count: 18.
gchen_tag: execute_pass_list: level: 3, count: 19.
gchen_tag: execute_pass_list: level: 3, count: 20.
gchen_tag: execute_pass_list: level: 3, count: 21.
gchen_tag: execute_pass_list: level: 3, count: 22.
gchen_tag: execute_pass_list: level: 3, count: 23.
gchen_tag: execute_pass_list: level: 3, count: 24.
gchen_tag: execute_pass_list: level: 3, count: 25.
gchen_tag: execute_pass_list: level: 3, count: 26.
gchen_tag: execute_pass_list: level: 3, count: 27.
gchen_tag: execute_pass_list: level: 3, count: 28.
gchen_tag: execute_pass_list: level: 3, count: 29.
gchen_tag: execute_pass_list: level: 3, count: 30.
gchen_tag: execute_pass_list: level: 3, count: 31.
gchen_tag: can brreak in execute_pass_list.
gchen_tag: call maybe_record_trace_start: idx = 7
gchen_tag: scan_trace in create_cfi_notes count = 0
gchen_tag: scan_trace in create_cfi_notes count = 1
gchen_tag: call maybe_record_trace_start: idx = 3
gchen_tag: scan_trace in create_cfi_notes count = 2
gchen_tag: scan_trace in create_cfi_notes count = 3
gchen_tag: scan_trace in create_cfi_notes count = 4
gchen_tag: call maybe_record_trace_start: idx = 2
gchen_tag: scan_trace in create_cfi_notes count = 5
gchen_tag: scan_trace break.
gchen_tag: call maybe_record_trace_start: idx = 6
gchen_tag: scan_trace in create_cfi_notes count = 6
gchen_tag: call maybe_record_trace_start: idx = 18
gchen_tag: call maybe_record_trace_start need break.
/tmp/ana/namei/namei.c: In function 'SYSC_mknodat':
/tmp/ana/namei/namei.c:40:1: internal compiler error: in
maybe_record_trace_start, at dwarf2cfi.c:2218
}
^
0x6da1a4 maybe_record_trace_start
../../gcc-4.9.0/gcc/dwarf2cfi.c:2218
0x6da82a scan_trace
../../gcc-4.9.0/gcc/dwarf2cfi.c:2399
0x6dadea create_cfi_notes
../../gcc-4.9.0/gcc/dwarf2cfi.c:2557
0x6db8e4 execute_dwarf2_frame
../../gcc-4.9.0/gcc/dwarf2cfi.c:2912
0x6dc5e2 execute
../../gcc-4.9.0/gcc/dwarf2cfi.c:3408
Please submit a full bug report,
More information about the Gcc-bugs
mailing list