This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
new patch for dataflow branch
- From: Kenneth Zadeck <zadeck at naturalbridge dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>,"Berlin, Daniel" <dberlin at dberlin dot org>, Jan Hubicka <hubicka at ucw dot cz>,"Zadeck, Kenneth" <zadeck at naturalbridge dot com>,Peter Bergner <bergner at vnet dot ibm dot com>
- Date: Sun, 23 Oct 2005 14:10:36 -0400
- Subject: new patch for dataflow branch
This patch fixes all of the regression on the x86-64 and about half of
the regressions on the x86-32 and many of the regressions on power-pc
darwin (there are still two left).
I also clean up my changelog entry from my previous commit.
Kenny
2005-10-23 Daniel Berlin <dberlin@dberlin.org>
Kenneth Zadeck <zadeck@naturalbridge.com>
* df.c (df_bitmaps_alloc, df_lr_local_compute, df_compute_all_blocks):
Removed df->all_blocks.
* df.c (df_lr_local_compute): Added flag to indicate that
blocks was really the whole function.
* df.c (df_ref_record): Fixed missing case for memory refs.
* df.c (df_insn_refs_record): Fixed regs ever live processing.
* df.c (df_bb_refs_record): Removed debugging code.
* df.c (df_bb_lr_local_compute, notice_stack_pointer_modification,
df_bb_lr_local_compute): Moved stack pointer modification
detection code back to flow.c.
* df.c (df_bb_lr_local_compute, hybrid_search_forward,
hybrid_search_backward): Formatting cleanup.
* df.c (df_compute_all_blocks, notice_stack_pointer_modification):
Removed.
* df.c (df_analyze): Changed the definition of whole program to be all
reachable blocks rather than all blocks.
* df.c (df_analyze_subcfg, df_analyze_simple_change_some_blocks): Added
parameter to df_lr_local_compute.
* df.c (df_rtx_reg_replace): Fixed way it decided it was processing
entire function.
* df.h: Removed all_blocks from struct df definition.
* flow.c (notice_stack_pointer_modification_1,
notice_stack_pointer_modification): Added back.
* flow.c (life_analysis): Added back call to
notice_stack_pointer_modification.
* flow.c (struct tree_opt_pass pass_life, rest_of_handle_flow2):
Added debugging.
* gcse.c (gcse_main, bypass_jumps): Additional places where we had
missed
in renumbering entry and exit blocks.
* global.c (global_alloc): Additional debugging code.