On Thu, Aug 27, 2026 at 01:03:28PM +0200, Richard Biener wrote:
> * common.opt (ftree-loop-if-convert): Mark as ignored.
> * doc/invoke.texi (ftree-loop-if-convert): Remove.
> * tree-ssa-phiopt.cc (cond_if_else_store_replacement):
> Do not check !flag_tree_loop_if_convert.
> * tree-if-conv.cc (pass_if_conversion::gate): Only
> run when loop vectorization is enabled on any loop.
> (pass_if_conversion::execute): Adjust.
> (tree_if_conversion): Likewise. Simplify as we now
> always version.
>
> * gcc.dg/vect/bb-slp-pattern-2.c: Adjust.
> * gcc.target/i386/pr45685.c: Likewise.
LGGTM, except a nit.
> --- a/gcc/common.opt
> +++ b/gcc/common.opt
> @@ -2038,8 +2038,8 @@ EnumValue
> Enum(stack_reuse_level) String(none) Value(SR_NONE)
>
> ftree-loop-if-convert
> -Common Var(flag_tree_loop_if_convert) Init(-1) Optimization
> -Convert conditional jumps in innermost loops to branchless equivalents.
> +Common Ignore
> +Does nothing. Preserved for backward compatibility.
I think there should be 2 spaces before P, but we aren't consistent:
grep 'nothing.*Preserved for' *.opt */*.opt | sort | uniq -c | sort -n
1 fortran/lang.opt:Does nothing. Preserved for backward compatibility.
2 analyzer/analyzer.opt:Does nothing. Preserved for backward
compatibility.
2 c-family/c.opt:Does nothing. Preserved for backward compatibility.
2 fortran/lang.opt:Does nothing. Preserved for backward compatibility.
4 c-family/c.opt:Does nothing. Preserved for backward compatibility.
13 common.opt:Does nothing. Preserved for backward compatibility.
35 common.opt:Does nothing. Preserved for backward compatibility.
Jakub