gcse.c: Include df.h for use as a dataflow analyzer.
authorDaniel Berlin <dan@cgsoftware.com>
Fri, 3 Aug 2001 16:52:01 +0000 (16:52 +0000)
committerDaniel Berlin <dberlin@gcc.gnu.org>
Fri, 3 Aug 2001 16:52:01 +0000 (16:52 +0000)
commitadfcce6198effc2aaeb4961ab7a8ec05723d6573
treea59239bd456400b3c2358c1d1d7db15e2eba19d4
parent667ccf73ebde1d2340f3e1ff41e4471724bb7126
gcse.c: Include df.h for use as a dataflow analyzer.

2001-07-16  Daniel Berlin  <dan@cgsoftware.com>

        * gcse.c: Include df.h for use as a dataflow analyzer.
        Remove regvec.
        Declaration of reg_set_info: gone.
        New df_analyzer variable used by store motion.
        (reg_set_info): Deleted.
        (mark_mem_regs): New function, analyze regs used by a mem.
        (store_ops_ok): Use dataflow analyzer results to determine if
        necessary regs are changed in the block.
        (find_moveable_store): Remove check for symbol ref, we can handle
        much more complex expressions now.
        (compute_store_table): Remove most of the code, it's unnecessary
        now that the dataflow analyzer records the info for us.
        (store_killed_after): Add parameter to say whether to do the
        store_ops_okay test, used to speed up testing when we already know
        the answer, and just want to know if the store itself was killed.
        (build_store_vector): Largely rewritten to calculate the various
        vectors properly, and somewhat optimized.
        (store_motion): Init the df_analyzer, get REG_DEF chains.
        Also handle trapping expressions (since mems almost always trap)
        (simple_mem): Redefine what a simple mem is.

From-SVN: r44603
gcc/ChangeLog
gcc/gcse.c