]> git.ipfire.org Git - thirdparty/gcc.git/commit
basic-block.h (pre_edge_lcm, [...]): Prototype for exported functions.
authorAndrew MacLeod <amacleod@cygnus.com>
Sun, 17 Oct 1999 09:21:25 +0000 (09:21 +0000)
committerJeff Law <law@gcc.gnu.org>
Sun, 17 Oct 1999 09:21:25 +0000 (03:21 -0600)
commita42cd965521407872308f03bea01f1bb5bd8303d
treea9c88cfc54dee85d6e21ed00bc01acd4ac483f1b
parent3cce638b2b10ea1657b9d15f911dc4ff71ce64a8
basic-block.h (pre_edge_lcm, [...]): Prototype for exported functions.

        * basic-block.h (pre_edge_lcm, pre_edge_rev_lcm, compute_available):
        Prototype for exported functions.
        (pre_lcm, pre_rev_lcm): Remove prototypes.
        * gcse.c (compute_ae_kill): Add ae_gen and ae_kill as parameters.
        (compute_available): Move to lcm.c, and change parameter order.
        (one_classic_gcse_pass): Call compute_ae_kill with parameters.
        (pre_insert, s_preds, s_succs, num_preds, num_succs): Delete.
        (gcse_main): No longer call compute_preds_succs.  Rebuild the
        set table after reach pre pass.
        (pre_insert_map, pre_delete_map, edge_list): New.
        (alloc_pre_mem): Allocate edge vectors.
        (free_pre_mem): Delete edge vectors.
        (compute_pre_data): Call new edge based lcm routines.
        (process_insert_insn): New function.
        (insert_insn_end_bb): Use it.
        (pre_edge_insert): New function.
        (pre_insert_copy_insn): Formatting fixes.  Update BLOCK_END as
        needed.
        (pre_insert_copies): Revamp using new edge based lcm outputs.
        (pre_delete): Likewise.
        (one_pre_gcse_pass): Insert & remove fake edges to the exit
        block.
        (compute_code_hoist_vbeinout): New new edge based routines.
        * lcm.c: Remove all the old LCM functions.  Replace with new ones
        that work with the new cfg datastructures and work with edges
        instead of blocks.

From-SVN: r30055
gcc/ChangeLog
gcc/basic-block.h
gcc/gcse.c
gcc/lcm.c