basic-block.h (basic_block): Add eh_beg, eh_end.
authorRichard Henderson <rth@cygnus.com>
Tue, 21 Sep 1999 21:15:37 +0000 (14:15 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Tue, 21 Sep 1999 21:15:37 +0000 (14:15 -0700)
commit336a6399a9ab84ac787c525ec2a2a469b8b488d5
tree5f84bcf24f6d398455afd08aec40a0b90bdab8c1
parent9f14fb64049bc3598da0624b59c74a89abdee09d
basic-block.h (basic_block): Add eh_beg, eh_end.

        * basic-block.h (basic_block): Add eh_beg, eh_end.
        * flow.c (entry_exit_blocks): Update.
        (find_basic_blocks): Don't allocate bb_eh_end, or pass it around.
        Call new functions.
        (find_basic_blocks_1): Don't record eh_list at each bb.  Use
        lists.c functions to allocate insn lists.
        (make_edges): Use eh_beg+eh_end, not the lists.  Split out EH
        edge creation ...
        (make_eh_edge): ... here.  New.
        (move_stray_eh_region_notes): New.
        (record_active_eh_regions): New.
        (delete_unreachable_blocks): Split out block merging ...
        (try_merge_blocks): ... here.  New.
        (merge_blocks_move_predecessor_nojumps): Remove edge arg.
        Dump debugging data.
        (merge_blocks_move_successor_nojumps): Likewise.
        (merge_blocks): Use eh_beg+eh_end to validate block movement.

From-SVN: r29565
gcc/ChangeLog
gcc/basic-block.h
gcc/flow.c