https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108447

--- Comment #6 from Andrew Macleod <amacleod at redhat dot com> ---
(In reply to Jakub Jelinek from comment #4)
> I see fold_using_range::relation_fold_and_or
> which sees relation1 VREL_LE and relation2 VREL_GE and !is_and, and because
> of
> relation_union (relation1, relation2) == VREL_VARYING fold it to 1.
> But for floating point comparisons, LE | GE is not always true, it is true if
> neither operand is NAN, otherwise false.

right.. we're sorting out whether these relations should be created or not, and
if so, how to then verify the result of a union/intersection before committing
to it.  That validate_relation routine was created for a reason that we are
trying to track down why we arent using it, and if this is an appropriate use,
or if we need something else.

Reply via email to