This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
segmentation violation with cvs build (make_edges)
- From: Sean McNeil <sean at mcneil dot com>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 21 Feb 2003 13:41:15 -0800
- Subject: segmentation violation with cvs build (make_edges)
- Organization: Sean McNeil Consulting
I get the following error for a cross build from FreeBSD to
mips-wrs-vxworks:
/usr/home/sean/gnu/windriver/x86-freebsd/mips-wrs-vxworks/gcc/xgcc
-B/usr/home/sean/gnu/windriver/x86-freebsd/mips-wrs-vxworks/gcc/
-B/usr/wind/host/x86-freebsd/mips-wrs-vxworks/bin/
-B/usr/wind/host/x86-freebsd/mips-wrs-vxworks/lib/ -isystem
/usr/wind/host/x86-freebsd/mips-wrs-vxworks/include
-L/usr/home/sean/gnu/windriver/x86-freebsd/mips-wrs-vxworks/ld -O2
-I/usr/home/sean/gnu/windriver/include -I/usr/wind/target/h -DIN_GCC
-DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -isystem ./include -DHAVE_GTHR_DEFAULT
-DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I.
-I/usr/home/sean/gnu/sources/gcc -I/usr/home/sean/gnu/sources/gcc/.
-I/usr/home/sean/gnu/sources/gcc/config
-I/usr/home/sean/gnu/sources/gcc/../include -DCPU=MIPS32 -DMIPSEB -EB
-mips32 -G0 -mno-branch-likely -DL_divdi3 -c
/usr/home/sean/gnu/sources/gcc/libgcc2.c -fexceptions
-fnon-call-exceptions -o libgcc/MIPS32gnu/_divdi3.o
/usr/home/sean/gnu/sources/gcc/libgcc2.c: In function `__divdi3':
/usr/home/sean/gnu/sources/gcc/libgcc2.c:956: internal compiler error:
Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
I've traced the problem to a basic block with a head of 0:
(gdb) p *bb
$4 = {head = 0x0, end = 0x0, head_tree = 0x0, end_tree = 0x0,
pred = 0x8495cd8, succ = 0x0, local_set = 0x0, cond_local_set = 0x0,
global_live_at_start = 0x0, global_live_at_end = 0x0, aux = 0x0, index
= -2,
prev_bb = 0x8491d78, next_bb = 0x0, loop_depth = 0, loop_father = 0x0,
count = 0, frequency = 0, flags = 4}
The trace is:
(gdb) bt
#0 0x825e6b1 in make_edges (label_value_list=0x0, min=0x8350bd0,
max=0x8350bd0, update_p=1) at
/usr/home/sean/gnu/sources/gcc/cfgbuild.c:321
#1 0x825f0f2 in find_many_sub_basic_blocks (blocks=0x848b1e0)
at /usr/home/sean/gnu/sources/gcc/cfgbuild.c:800
#2 0x80c8b78 in commit_edge_insertions ()
at /usr/home/sean/gnu/sources/gcc/cfgrtl.c:1492
#3 0x815a602 in bypass_conditional_jumps ()
at /usr/home/sean/gnu/sources/gcc/gcse.c:4909
#4 0x815a164 in one_cprop_pass (pass=1, cprop_jumps=1, bypass_jumps=1)
at /usr/home/sean/gnu/sources/gcc/gcse.c:4677
#5 0x815e088 in bypass_jumps (file=0x0)
at /usr/home/sean/gnu/sources/gcc/gcse.c:7645
#6 0x82228bb in rest_of_compilation (decl=0x2848e244)
at /usr/home/sean/gnu/sources/gcc/toplev.c:2985
#7 0x8072ddd in c_expand_body_1 (fndecl=0x2848e244, nested_p=0)
at /usr/home/sean/gnu/sources/gcc/c-decl.c:6568
#8 0x8073183 in c_expand_body (fndecl=0x2848e244)
at /usr/home/sean/gnu/sources/gcc/c-decl.c:6652
#9 0x8072b4f in finish_function (nested=0, can_defer_p=1)
at /usr/home/sean/gnu/sources/gcc/c-decl.c:6464
#10 0x804a3ae in yyparse () at c-parse.y:406
#11 0x80638ea in c_common_parse_file (set_yydebug=0)
at /usr/home/sean/gnu/sources/gcc/c-lex.c:165
---Type <return> to continue, or q <return> to quit---
#12 0x822124f in compile_file ()
at /usr/home/sean/gnu/sources/gcc/toplev.c:2166
#13 0x822626b in do_compile () at
/usr/home/sean/gnu/sources/gcc/toplev.c:5476
#14 0x82262c3 in toplev_main (argc=56, argv=0xbfbff4f8)
at /usr/home/sean/gnu/sources/gcc/toplev.c:5506
#15 0x80b01cc in main (argc=56, argv=0xbfbff4f8)
at /usr/home/sean/gnu/sources/gcc/main.c:37
#16 0x804978a in _start ()