This is the mail archive of the
gcc-regression@gcc.gnu.org
mailing list for the GCC project.
Re: 5 GCC regressions, 1 new, with your patch on 2003-06-08T21:39:04Z.
- From: Jan Hubicka <jh at suse dot cz>
- To: Andrew Pinski <pinskia at physics dot uc dot edu>
- Cc: gcc-regression at gcc dot gnu dot org, gcc at gcc dot gnu dot org, aj at suse dot de,green at redhat dot com, jh at suse dot cz, kazu at cs dot umass dot edu,mark at codesourcery dot com, roger at eyesopen dot com, tromey at redhat dot com
- Date: Mon, 9 Jun 2003 14:20:27 +0200
- Subject: Re: 5 GCC regressions, 1 new, with your patch on 2003-06-08T21:39:04Z.
- References: <200306090223.h592NBCW027798@gcc-regress.apple.com> <186316C0-9A23-11D7-957D-000393A6D2F2@physics.uc.edu>
>
> On Sunday, Jun 8, 2003, at 22:23 US/Eastern, GCC regression checker
> wrote:
> >The new failures are:
> >native g++.sum g++.dg/conversion/to-virtual-base-1.C
>
>
> This one is most likely caused by:
> +Sun Jun 8 21:27:41 CEST 2003 Jan Hubicka <jh@suse.cz>
> +
> + * cfglayout.c (insn_scope): New static function
> + (block_locators_*, line_locators*, file_locators*): New static
> varrays.
> + (scope_to_insns_initialize): Use them.
> + (insn_line, insn_file): New functions.
> + (scope_to_insns_finalize): Use insn_scope.
> + (prologue_locator, epilogue_locator): New global variables.
> + * emit-rt.c (try_split, make_insn_raw, make_jump_insn_raw,
> + make_call_insn_raw, emit_copy_of_insn_after): Use locators.
> + (emit_insn_after_scope, emit_insn_before_scope
> + emit_jump_insn_after_scope, emit_jump_insn_before_scope
> + emit_call_insn_after_scope, emit_call_insn_before_scope): Rename
> to...
> + (emit_insn_after_setloc, emit_insn_before_setloc
> + emit_jump_insn_after_setloc, emit_jump_insn_before_setloc
> + emit_call_insn_after_setloc, emit_call_insn_before_setloc): ...
> these;
> + use locators.
> + * final.c (notice_source_line): Use locators.
> + (final_start_function): Set initial source file and line.
> + (final_scan_insn): Use locators.
> + * ifcvt.c (noce_try_store_flag, noce_try_store_flag_constants,
> + noce_try_addcc, noce_try_store_flag_mask, noce_try_cmove,
> + noce_try_cmove_arith, noce_try_minmax, noce_try_abs,
> + noce_process_if_block, find_cond_trap): Likewise.
> + * integrate.c (copy_insn_list): Likewise.
> + * jump.c (duplicate_loop_exit_test): LIkewise.
> + * print-rtl.c (print_rtx): Print locators.
> + * recog.c (peephole2_optimize): Likewise.
> + * rtl.h (INSN_SCOPE): Remove.
> + (emit_insn_after_scope, emit_insn_before_scope
> + emit_jump_insn_after_scope, emit_jump_insn_before_scope
> + emit_call_insn_after_scope, emit_call_insn_before_scope): Rename
> to...
> + (emit_insn_after_setloc, emit_insn_before_setloc
> + emit_jump_insn_after_setloc, emit_jump_insn_before_setloc
> + emit_call_insn_after_setloc, emit_call_insn_before_setloc): ...
> these;
> + (insn_file, insn_line, prologue_locator, epilogue_locator): Declare.
> + * unroll.c (copy_loop_body): Use locators.
> + * function.c (set_insn_locators): New function.
> + (thread_prologue_and_epilogue_insns): Set the locators accordingly.
>
> gdb log:
>
> src/gcc/testsuite/g++.dg/conversion/to-virtual-base-1.C: In member
> function `virtual void B::f(const A*)':
> src/gcc/testsuite/g++.dg/conversion/to-virtual-base-1.C:14: error:
> cannot convert from base `A' to derived type `B' via virtual base `A'
>
> Program received signal EXC_BAD_ACCESS, Could not access memory.
> insn_file (insn=0x10ad2a0) at
> /Volumes/UFS_Partition/pinskia/src/fsf/gcc-clean/src/gcc/cfglayout.c:464
> 464 int max = VARRAY_ACTIVE_SIZE (file_locators_locs);
Hmm, so file_locators_locs are not initialized at all? That looks
strange, I will try to debug this soon.
Honza