From 00952e9784e41f1ee7a1e4384904a5fd42f610a6 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Fri, 8 May 2009 12:22:30 +0000 Subject: re PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused by r118475) 2009-05-08 Paolo Bonzini PR rtl-optimization/33928 PR 26854 * fwprop.c (use_def_ref, get_def_for_use, bitmap_only_bit_bitween, process_uses, build_single_def_use_links): New. (update_df): Update use_def_ref. (forward_propagate_into): Use get_def_for_use instead of use-def chains. (fwprop_init): Call build_single_def_use_links and let it initialize dataflow. (fwprop_done): Free use_def_ref. (fwprop_addr): Eliminate duplicate call to df_set_flags. * df-problems.c (df_rd_simulate_artificial_defs_at_top, df_rd_simulate_one_insn): New. (df_rd_bb_local_compute_process_def): Update head comment. (df_chain_create_bb): Use the new RD simulation functions. * df.h (df_rd_simulate_artificial_defs_at_top, df_rd_simulate_one_insn): New. * opts.c (decode_options): Enable fwprop at -O1. * doc/invoke.texi (-fforward-propagate): Document this. From-SVN: r147282 --- gcc/opts.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc/opts.c') diff --git a/gcc/opts.c b/gcc/opts.c index aab540c..818acdf 100644 --- a/gcc/opts.c +++ b/gcc/opts.c @@ -848,6 +848,7 @@ decode_options (unsigned int argc, const char **argv) #endif flag_guess_branch_prob = opt1; flag_cprop_registers = opt1; + flag_forward_propagate = opt1; flag_if_conversion = opt1; flag_if_conversion2 = opt1; flag_ipa_pure_const = opt1; @@ -873,7 +874,6 @@ decode_options (unsigned int argc, const char **argv) flag_thread_jumps = opt2; flag_crossjumping = opt2; flag_optimize_sibling_calls = opt2; - flag_forward_propagate = opt2; flag_cse_follow_jumps = opt2; flag_gcse = opt2; flag_expensive_optimizations = opt2; -- cgit v1.1