This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
gcc/gcc df.c df.h flow.c global.c passes.c reg ...
- From: zadeck at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: 19 Oct 2005 13:44:36 -0000
- Subject: gcc/gcc df.c df.h flow.c global.c passes.c reg ...
CVSROOT: /cvs/gcc
Module name: gcc
Branch: dataflow-branch
Changes by: zadeck@gcc.gnu.org 2005-10-19 13:44:36
Modified files:
gcc : df.c df.h flow.c global.c passes.c reg-stack.c
sched-rgn.c web.c
Added files:
gcc : ChangeLog.dataflow
Log message:
2005-10-19 Kenneth Zadeck <zadeck@naturalbridge.com>
* df.c (df_bitmap_ior_edge, df_lr_confluence_0
df_lr_confluence_n, df_ur_confluence_n, df_ur_set_bitmaps): New functions.
* df.c (df_exit_lr_local_compute, dataflow_set_a_op_b): Removed functions.
* df.c (df_ur_set_bitmaps, mark_reg_change, df_ur_local_finalize,
mark_reg_use_for_earlyclobber, df_ur_local_compute,
df_bb_reg_live_start, df_bb_reg_live_end, df_bb_reg_live_start_p,
df_bb_reg_live_end_p):
Renamed "reaching registers"
problem (rr) to "uninitialized registers" problem.
* df.c (df_free): Changed variables freed.
* df.c (df_ref_record): Added more sophisticated hard register scan.
* df.c (df_insn_refs_record): Changed way invalidated_by_call is processed.
* df.c (df_bb_refs_record, df_exit_lr_local_compute,
df_bb_lr_local_compute): Removed bad way to simulate edge functions.
There are now real confluence functions.
* df.c (notice_stack_pointer_modification): Sisabled.
* df.c (df_bb_lr_local_compute) Disabled call to
notice_stack_pointer_modification. Added code to properly handle hard
regs at call site.
* df.c (df_lr_local_compute): Added more hard reg processing.
Changed order exit block is processed.
*df.c (df_init): Added some invariant hard regs initialization.
*df.c (df_refs_process): Removed artifical special case.
*df.c (df_print_bb_index, df_dump): Removed parameter to df_dump.
*df.c (hybrid_search_forward, hybrid_search_backward): Added confluence
function calls
*df.c (iterative_dataflow): Added hack to initialize in and out sets with
hard registers
*df.h: Removed DF_ARTIFICIAL_DEFS. Renamed "reaching registers"
problem (rr) to "uninitialized registers" problem. Changed confluence
operator to general confluence functions.
*flow.c (verify_wide_reg, verify_local_live_at_start): Removed parameter
to df_dump.
*reg_stack.c (reg_to_stack): Ditto.
*sched_rgn.c (init_regions, schedule_insns): Ditto.
*web.c (web_main): Ditto.
*flow.c: (update_life_info): Removed DF_ARTIFICIAL_DEFS.
*global.c (global_alloc): Ditto.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.dataflow.diff?cvsroot=gcc&only_with_tag=dataflow-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/df.c.diff?cvsroot=gcc&only_with_tag=dataflow-branch&r1=1.87.6.2&r2=1.87.6.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/df.h.diff?cvsroot=gcc&only_with_tag=dataflow-branch&r1=1.34.8.1&r2=1.34.8.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/flow.c.diff?cvsroot=gcc&only_with_tag=dataflow-branch&r1=1.635.2.1&r2=1.635.2.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/global.c.diff?cvsroot=gcc&only_with_tag=dataflow-branch&r1=1.132.2.1&r2=1.132.2.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/passes.c.diff?cvsroot=gcc&only_with_tag=dataflow-branch&r1=2.115.2.1&r2=2.115.2.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/reg-stack.c.diff?cvsroot=gcc&only_with_tag=dataflow-branch&r1=1.190.4.1&r2=1.190.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/sched-rgn.c.diff?cvsroot=gcc&only_with_tag=dataflow-branch&r1=1.101.2.1&r2=1.101.2.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/web.c.diff?cvsroot=gcc&only_with_tag=dataflow-branch&r1=2.16&r2=2.16.8.1