libjava bootstrap failure: URL.java segfault in integrate

Bryce McKinlay bryce@waitaki.otago.ac.nz
Sun Oct 21 22:48:00 GMT 2001


I am seeing an x86 bootstrap failure in libjava:

/home/bryce/cvs/gcc/build/gcc/gcj 
-B/home/bryce/cvs/gcc/build/i686-pc-linux-gnu/libjava/ 
-B/home/bryce/cvs/gcc/build/gcc/ --encoding=UTF-8 -fassume-compiled 
-fclasspath=/home/bryce/cvs/gcc/build/i686-pc-linux-gnu/libjava 
-L/home/bryce/cvs/gcc/build/i686-pc-linux-gnu/libjava -ffloat-store -g 
-O2 -MD -MT java/net/URL.lo -MF java/net/URL.d -c 
../../../libjava/java/net/URL.java -fPIC -o java/net/.libs/URL.o
../../../libjava/java/net/URL.java: In class `java.net.URL':
../../../libjava/java/net/URL.java: In method 
`java.net.URL.readObject(java.io.ObjectInputStream)':
../../../libjava/java/net/URL.java:406: Internal error: Segmentation fault
Please submit a full bug report,

(gdb) r ../../../libjava/java/net/URL.java -fhash-synchronization 
-fno-use-divide-subroutine -fuse-boehm-gc -fnon-call-exceptions 
-fkeep-inline-functions -quiet -dumpbase URL.java -g -O2 -version 
-fencoding=UTF-8 -fassume-compiled 
-fclasspath=/home/bryce/cvs/gcc/build/i686-pc-linux-gnu/libjava 
-ffloat-store -fPIC -MD -MT java/net/URL.lo -MF java/net/URL.d -o 
/tmp/ccjK1yZf.s
GNU Java version 3.1 20011020 (experimental) (i686-pc-linux-gnu)
        compiled by GNU C version 3.1 20011016 (experimental).
Class path starts here:
    /home/bryce/cvs/gcc/build/i686-pc-linux-gnu/libjava/

Program received signal SIGSEGV, Segmentation fault.
0x0822260d in copy_insn_notes (insns=0x40384ac0, map=0x8b46070,
    eh_region_offset=0) at ../../gcc/integrate.c:1689
1689                    XEXP (note, 0) = GEN_INT (INTVAL (XEXP (note, 0))


It appears to have been caused by something in this patch, since rolling 
back to immediatly before it fixes things:

Sat Oct 20 12:01:07 CEST 2001  Jan Hubicka  <jh@suse.cz < mailto:jh@suse.cz >>

	* basic-block.h (find_sub_basic_blocks): Use sbitmap parameter.
	* cfgbuild.c (find_bb_boundaries, compute_outgoing_frequencies):
	Break out from ...
	(find_sub_basic_blocks): ... here;
	(find_many_sub_basic_blocks): New.
	* recog.c (split_all_insns): Update find_sub_basic_blocks call.

	* i386.h (ASM_PREFERRED_EH_DATA_FORMAT): Define sdata4.

	* i386.c (ix86_va_arg): Kill indirect_p handling; fix aliasing issues.:

	* i386.c (split_di, split_ti): Revamp to use simplify_subreg.

	* timevar.def (TV_LIFE, TV_LIFE_UPDATE, TV_MODE_SWITCH): new.
	* flow.c (update_life_info): Measure time.
	* c-decl.c: Include timevar.h
	(c_expand_body): Measure time.
	* toplev.c (rest_of_compilation): Measure time of mode switching
	separately.
	* Makefile.in (c-decl.o, cfgcleanup.o): Add dependancy.

	* toplev.c (flag_asynchronous_unwind_tables): New global variable.
	(lang_independent_options): Add asynchronous-unwind-tables
	(toplev_main): flag_asynchronous_unwind_tables implies
	flag_unwind_tables.
	* flags.h (flag_asynchronous_unwind_tables): Declare.
	* dwarf2out.c (dwarf2out_stack_adjust): Take into account
	flag_asynchronous_unwind_tables.
	(output_call_frame_info): Likewise.
	* invoke.texi (-fasynchronous-unwind-tables): Document.
	* i386.c (optimization_options): Enable
	flag_asynchronous_unwind_tables.

	* i386.c (ix86_expand_setcc):  Always expect target to be QImode.
	* i386.md (s* expanders): Destination is QImode.

	* toplev.c (rest_of_compilation): Do not call clear_log_links.
	* rtl.h (clear_log_links): Kill.
	* flow.c (clear_log_links): Make static; accept blocks parameter;
	do no clear life info.
	(update_life_info): Call clear_log_links.

	* cfganal.c (forwarder_block_p): Avoid active_insn_p calls.

regards

Bryce.




More information about the Gcc-bugs mailing list