A _different_ bootstrap failure in CVS sources

Chip Salzenberg chip@valinux.com
Sun Feb 27 14:36:00 GMT 2000


This time it's a SEGV in regmove.  Compiling with -O works, at least
for the specific source file that is causing the SEGV.

Script started on Sun Feb 27 14:33:06 2000
$ gdb stage1/cc1
GNU gdb 19990928
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
Breakpoint 1 at 0x8049138
Breakpoint 2 at 0x80a302a: file ../SRC/gcc/rtl.c, line 1249.
.gdbinit:5: Error in sourced command file:
../SRC/gcc/.gdbinit:102: Error in sourced command file:
Function "abort" not defined.
(gdb) run -g -O2 dwarfout.i
Starting program: /u/build/gcc/egcs/gcc/stage1/cc1 -g -O2 dwarfout.i
Breakpoint 1 at 0x147d25
 vprintf getchar getc_unlocked getchar_unlocked putchar fputc_unlocked putc_unlocked putchar_unlocked feof_unlocked ferror_unlocked tolower toupper __strcpy_small __strcspn_c1 __strcspn_c2 __strcspn_c3 __strspn_c1 __strspn_c2 __strspn_c3 __strpbrk_c2 __strpbrk_c3 __strtok_r_1c __strsep_1c __strsep_2c __strsep_3c __strsep_g strtod strtol strtoul strtoq strtouq strtoll strtoull atof atoi atol atoll stat lstat fstat mknod is_pseudo_reg type_main_variant is_tagged_type dwarf_tag_name dwarf_attr_name dwarf_stack_op_name dwarf_typemod_name dwarf_fmt_byte_name dwarf_fund_type_name decl_ultimate_origin block_ultimate_origin decl_class_context is_body_block fundamental_type_code root_type_1 root_type write_modifier_bytes_1 write_modifier_bytes type_is_fundamental equate_decl_number_to_die_number equate_type_number_to_die_number output_reg_number {GC 5329k -> 1298k in 0.020} output_mem_loc_descriptor output_loc_descriptor output_bound_representation output_enumeral_list ceiling field_type simple_type_align_in_bits simple_type_size_in_bits field_byte_offset sibling_attribute location_attribute data_member_location_attribute const_value_attribute location_or_const_value_attribute name_attribute fund_type_attribute mod_fund_type_attribute user_def_type_attribute mod_u_d_type_attribute subscript_data_attribute byte_size_attribute bit_offset_attribute bit_size_attribute element_list_attribute stmt_list_attribute low_pc_attribute high_pc_attribute body_begin_attribute body_end_attribute language_attribute member_attribute comp_dir_attribute sf_names_attribute src_info_attribute mac_info_attribute prototyped_attribute producer_attribute inline_attribute containing_type_attribute abstract_origin_attribute pure_or_virtual_attribute name_and_src_coords_attributes type_attribute type_tag dienum_push dienum_pop member_declared_type function_start_label output_array_type_die output_set_type_die output_inlined_enumeration_type_die output_inlined_structure_type_die output_inlined_union_type_die output_enumeration_type_die output_formal_parameter_die output_global_subroutine_die {GC 5367k -> 1907k in 0.040} output_global_variable_die output_label_die output_lexical_block_die output_inlined_subroutine_die output_local_variable_die output_member_die output_ptr_to_mbr_type_die output_compile_unit_die
Program received signal SIGSEGV, Segmentation fault.
mark_flags_life_zones (flags=0x6e26c0) at ../SRC/gcc/regmove.c:288
288		  if (GET_RTX_CLASS (GET_CODE (insn)) == 'i')
(gdb) print insn
$1 = 0x0
(gdb) where
#0  mark_flags_life_zones (flags=0x6e26c0) at ../SRC/gcc/regmove.c:288
#1  0x8118168 in regmove_optimize (f=0x454420, nregs=933, 
    regmove_dump_file=0x0) at ../SRC/gcc/regmove.c:1064
#2  0x804ce8c in rest_of_compilation (decl=0x543c80)
    at ../SRC/gcc/toplev.c:3350
#3  0x81d75cf in finish_function (nested=0) at ../SRC/gcc/c-decl.c:6465
#4  0x81c946a in yyparse () at c-parse.y:311
#5  0x804b7fd in compile_file (name=0x214170 "\003")
    at ../SRC/gcc/toplev.c:2432
#6  0x804efeb in main (argc=4, argv=0xbffffbd4) at ../SRC/gcc/toplev.c:4864
(gdb) print block
$2 = 0
(gdb) print n_basic_blocks 
$3 = 296
(gdb) The program is running.  Exit anyway? (y or n) y
$ 

Script done on Sun Feb 27 14:33:37 2000

Configuration: 'SRC/configure --with-gcc-version-trigger=/u/build/gcc/egcs/SRC/gcc/version.c --host=i686-pc-linux-gnu --prefix=/usr/local/egcs --enable-languages=objc,c++ --enable-threads=posix --enable-shared --enable-version-specific-runtime-libs --enable-namespaces --enable-long-long --norecursion '


-- 
Chip Salzenberg              - a.k.a. -              <chip@valinux.com>
"I wanted to play hopscotch with the impenetrable mystery of existence,
    but he stepped in a wormhole and had to go in early."  // MST3K
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dwarfout.i.gz
Type: application/x-gzip
Size: 62544 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-bugs/attachments/20000227/152a5ae8/attachment.bin>


More information about the Gcc-bugs mailing list