On Thu, 6 Feb 2025, Tamar Christina wrote: > Hi All, > > It seems that after my IVopts patches the function contain_complex_addr_expr > became unused and clang is rightfully complaining about it. > > This removes the unused internal function. > > Bootstrapped Regtested on aarch64-none-linux-gnu and no issues. > > Ok for master?
OK. > Thanks, > Tamar > > gcc/ChangeLog: > > PR tree-optimization/19202 > * tree-ssa-loop-ivopts.cc (contain_complex_addr_expr): Remove. > > --- > diff --git a/gcc/tree-ssa-loop-ivopts.cc b/gcc/tree-ssa-loop-ivopts.cc > index > 989321137df93349f8395a9f746f73eda52fd74f..e37b24062f730e490ae86bd9248e61102ad1a0f0 > 100644 > --- a/gcc/tree-ssa-loop-ivopts.cc > +++ b/gcc/tree-ssa-loop-ivopts.cc > @@ -1149,34 +1149,6 @@ determine_base_object (struct ivopts_data *data, tree > expr) > return obj; > } > > -/* Return true if address expression with non-DECL_P operand appears > - in EXPR. */ > - > -static bool > -contain_complex_addr_expr (tree expr) > -{ > - bool res = false; > - > - STRIP_NOPS (expr); > - switch (TREE_CODE (expr)) > - { > - case POINTER_PLUS_EXPR: > - case PLUS_EXPR: > - case MINUS_EXPR: > - res |= contain_complex_addr_expr (TREE_OPERAND (expr, 0)); > - res |= contain_complex_addr_expr (TREE_OPERAND (expr, 1)); > - break; > - > - case ADDR_EXPR: > - return (!DECL_P (TREE_OPERAND (expr, 0))); > - > - default: > - return false; > - } > - > - return res; > -} > - > /* Allocates an induction variable with given initial value BASE and step > STEP > for loop LOOP. NO_OVERFLOW implies the iv doesn't overflow. */ > > > > > > -- Richard Biener <rguent...@suse.de> SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg, Germany; GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)