On Mon, Mar 22, 2021 at 07:16:01PM +0100, Aldy Hernandez wrote:
> +void
> +irange::irange_set_1bit_anti_range (tree min, tree max)
> +{
> + tree type = TREE_TYPE (min);
> + gcc_checking_assert (TYPE_PRECISION (type) == 1);
> +
> + if (operand_equal_p (min, max))
> + {
> + // Since these are 1-bit quantities, they can only be [MIN,MIN]
> + // or [MAX,MAX].
> + if (vrp_val_is_min (min))
> + min = max = vrp_val_max (type);
> + else
> + min = max = vrp_val_min (type);
> + set (min, max);
> + }
> + else
> + {
> + // The only alternative is [MIN,MAX], which is the empty range.
> + set_undefined ();
> + }
I would drop the {}s around single set_undefined (); statement,
otherwise LGTM.
Thanks.
Jakub