On Mon, Aug 03, 2026 at 08:41:35AM -0700, Konstantinos Eleftheriou wrote:
> + (with {
> + tree op_type = TREE_TYPE (@op); }
Why not on a single line?
(with { tree op_type = TREE_TYPE (@op); }
is what is normally used in match.pd.
> + (if (INTEGRAL_TYPE_P (op_type)
> + && TYPE_UNSIGNED (op_type)
> + && TYPE_PRECISION (op_type) % 2 == 0
> + && tree_fits_uhwi_p (@0)
> + && tree_to_uhwi (@0) == wi::mask (
> + TYPE_PRECISION (op_type) / 2,
> + false,
> + TYPE_PRECISION (op_type))))))
This is ugly. Can't you use instead:
&& (tree_to_uhwi (@0)
== wi::mask (TYPE_PRECISION (op_type) / 2, false,
TYPE_PRECISION (op_type)))))))
?
Jakub