On Fri, 28 Apr 2023, Andre Vieira (lists) wrote:

> This is a rebase of Joel's previous patch.
> 
> This patch removes the old widen plus/minus tree codes which have been
> replaced by internal functions.

I guess that's obvious then.  I wonder what we do to internal
fns in debug stmts?  Looks like we throw those away and do not
generate debug stmts from calls.

Given you remove handling of the scalar WIDEN_PLUS/MINUS_EXPR
codes everywhere do we want to add checking code the scalar
IFNs do not appear in the IL?  For at least some cases there
are corresponding functions handling internal functions that
you could have amended otherwise.

Richard.

> gcc/ChangeLog:
> 
> 2023-04-28  Andre Vieira  <andre.simoesdiasvie...@arm.com>
>             Joel Hutton  <joel.hut...@arm.com>
> 
>       * doc/generic.texi: Remove old tree codes.
>       * expr.cc (expand_expr_real_2): Remove old tree code cases.
>       * gimple-pretty-print.cc (dump_binary_rhs): Likewise.
>       * optabs-tree.cc (optab_for_tree_code): Likewise.
>       (supportable_half_widening_operation): Likewise.
>       * tree-cfg.cc (verify_gimple_assign_binary): Likewise.
>       * tree-inline.cc (estimate_operator_cost): Likewise.
>       (op_symbol_code): Likewise.
>       * tree-vect-data-refs.cc (vect_get_smallest_scalar_type): Likewise.
>       (vect_analyze_data_ref_accesses): Likewise.
>       * tree-vect-generic.cc (expand_vector_operations_1): Likewise.
>       * cfgexpand.cc (expand_debug_expr): Likewise.
>       * tree-vect-stmts.cc (vectorizable_conversion): Likewise.
>       (supportable_widening_operation): Likewise.
>       * gimple-range-op.cc (gimple_range_op_handler::maybe_non_standard):
>       Likewise.
>       * tree-vect-patterns.cc (vect_widened_op_tree): Refactor to replace
>       usage in vect_recog_sad_pattern.
>       (vect_recog_sad_pattern): Replace tree code widening pattern with
>       internal function.
>       (vect_recog_average_pattern): Likewise.
>       * tree-pretty-print.cc (dump_generic_node): Remove tree code
>       definition.
>       * tree.def (WIDEN_PLUS_EXPR, WIDEN_MINUS_EXPR, VEC_WIDEN_PLUS_HI_EXPR,
>       VEC_WIDEN_PLUS_LO_EXPR, VEC_WIDEN_MINUS_HI_EXPR,
>       VEC_WIDEN_MINUS_LO_EXPR): Likewise
> 

-- 
Richard Biener <rguent...@suse.de>
SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg,
Germany; GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman;
HRB 36809 (AG Nuernberg)

Reply via email to