This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: CFG problems on alpha


On Wed, Oct 24, 2001 at 09:42:02PM -0400, Richard Kenner wrote:
> ../../egcs/gcc/cp/decl2.c:4397: Internal compiler error in
> alloc_aux_for_edge, at cfg.c:649

I suspect 

Tue Oct 23 15:30:23 CEST 2001  Jan Hubicka  <jh@suse.cz>

        * toplev.c (rest_of_compilation): Use CLEANUP_UPDATE_LIFE
        to avoid update_life_info call.
        * basic-block.h (CLEANUP_UPATE_LIFE): Define.
        * cfgcleanup.c (bb_flags): New enum.
        (BB_FLAGS, BB_SET_FLAG, BB_CLEAR_FLAG, FORWARDER_BLOCK_P): New macros.
        (notice_new_block, update_forwarder_flag): New functions.
        (try_simplify_condjump): Use FORWARDER_BLOCK_P.
        (try_forward_edges): Likewise; update flags.
        (merge_blocks): Likewise.
        (outgoing_edges_match): Likewise.
        (try_crossjump_to_edge): Likewise.
        (try_optimize_cfg): Likewise; initialize and clear the flags;
        recompute life info if needed.
        (cleanup_cfg): No need to clear aux pointers.

in that it probably left the aux field non-zero.  Which 
trips the later sanity check.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]