diff options
author | Martin Liska <mliska@suse.cz> | 2021-10-12 16:05:49 +0200 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2021-10-13 15:02:43 +0200 |
commit | e415bc4c035b1b655cf2cafcbe515382d1cefc93 (patch) | |
tree | 03fb7965fb001d52d8a39fe0955c79ba6b6092b5 /gcc | |
parent | 3c0194d7ff21d61c02f3c6b111c83ef24a69e1f0 (diff) | |
download | gcc-e415bc4c035b1b655cf2cafcbe515382d1cefc93.zip gcc-e415bc4c035b1b655cf2cafcbe515382d1cefc93.tar.gz gcc-e415bc4c035b1b655cf2cafcbe515382d1cefc93.tar.bz2 |
Fix handling of flag_rename_registers by a target.
PR target/102688
gcc/ChangeLog:
* common.opt: Use EnabledBy instead of detection in
finish_options and process_options.
* opts.c (finish_options): Remove handling of
x_flag_unroll_all_loops.
* toplev.c (process_options): Likewise for flag_web and
flag_rename_registers.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/common.opt | 6 | ||||
-rw-r--r-- | gcc/opts.c | 5 | ||||
-rw-r--r-- | gcc/toplev.c | 7 |
3 files changed, 3 insertions, 15 deletions
diff --git a/gcc/common.opt b/gcc/common.opt index 4099eff..1eedfea 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -2399,7 +2399,7 @@ Common Var(flag_live_range_shrinkage) Init(0) Optimization Relief of register pressure through live range shrinkage. frename-registers -Common Var(flag_rename_registers) Optimization +Common Var(flag_rename_registers) Optimization EnabledBy(funroll-loops) Perform a register renaming optimization pass. fschedule-fusion @@ -2935,7 +2935,7 @@ Common Var(flag_unit_at_a_time) Init(1) Compile whole compilation unit at a time. funroll-loops -Common Var(flag_unroll_loops) Optimization +Common Var(flag_unroll_loops) Optimization EnabledBy(funroll-all-loops) Perform loop unrolling when iteration count is known. funroll-all-loops @@ -3158,7 +3158,7 @@ Common Var(flag_value_profile_transformations) Optimization Use expression value profiles in optimizations. fweb -Common Var(flag_web) Optimization +Common Var(flag_web) Optimization EnabledBy(funroll-loops) Construct webs and split unrelated uses of single variable. ftree-builtin-call-dce @@ -1321,11 +1321,6 @@ finish_options (struct gcc_options *opts, struct gcc_options *opts_set, opts->x_flag_live_patching, loc); - /* Unrolling all loops implies that standard loop unrolling must also - be done. */ - if (opts->x_flag_unroll_all_loops) - opts->x_flag_unroll_loops = 1; - /* Allow cunroll to grow size accordingly. */ if (!opts_set->x_flag_cunroll_grow_size) opts->x_flag_cunroll_grow_size diff --git a/gcc/toplev.c b/gcc/toplev.c index 167feac..81546b1 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1331,13 +1331,6 @@ process_options (bool no_backend) flag_abi_version = 2; } - /* web and rename-registers help when run after loop unrolling. */ - if (!OPTION_SET_P (flag_web)) - flag_web = flag_unroll_loops; - - if (!OPTION_SET_P (flag_rename_registers)) - flag_rename_registers = flag_unroll_loops; - if (flag_non_call_exceptions) flag_asynchronous_unwind_tables = 1; if (flag_asynchronous_unwind_tables) |