From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by sourceware.org (Postfix) with ESMTPS id 604893858282 for ; Wed, 21 Sep 2022 09:36:46 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 604893858282 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-ed1-x52e.google.com with SMTP id x21so680306edd.11 for ; Wed, 21 Sep 2022 02:36:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=CsNZckpN/79UrmFEAwQ03H9VgI/SX0jFoy6Df97UR8k=; b=jSzVPFd3U1sMXQl9wckXSD1UXuAzeTv8b/gY4ykaPPc2Y/DxDBfLYfYRzwgcEQUrzt 1kakRf9h9qdy5ygSa4QFFhW9+9/lMH0RFhVouPw0UaYW5HHpUAh3kCATAPfoPMqCRCyd rqFNIFppLZ1Cpal2G+AFzSg7WWaExXTm1YZj/gCegUZEIYhIidQ7DmvQ5luvzInMMzk6 s70DSYLnDHjpNY9xKA8YqYO7wwfHSi/N0DR83YCdb9Gl03qlytA7q0yEiT1a1IAMGIoU lTpN71AomOC878Y2EXnoLIL78aDfNvo5c5HxLz30MyhYP7L8ULfURgOYp4bMTz4IPOCj vArA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=CsNZckpN/79UrmFEAwQ03H9VgI/SX0jFoy6Df97UR8k=; b=od4FCKhQLkj6KjxTHg3IV8OuR1+GRNXD/c+HL3YJbkhC6STPBk97mQ1GBPe+CPBWLo kVXyhRGlus9EcaIyEeIOlhI6zRV8FTRXpSyapR76bsaVMNaBfkjFjYL81UKnd21aQMtB P1luFQ/2ypmJCuo7kXMbm/qOjchQ0+amwWbkPBul3L6KsK4AI13LRm4pYeJ4RqSC8mpd ApY4mlPmS/fj1yQtKgWIKWSRy/WgrUyX2RPFKfFVb/f6L1UsmGwD8EEk48ua6TkknZgN xGUiM28E5+y3HFI7Xr4NLj05RLxNRJWqOEnRmVh+SEgbkRGfdlsPjVe/JdMyNAhFzWKd 9tJQ== X-Gm-Message-State: ACrzQf1mKwRpY+g7jHfHFBvSLnlapayC58sdcfyFq1lrc2XPIowkkaVy J0C4XL4yakVLtwh+DgBptSxjeDLzM5WDFeS0bsjc+ElB X-Google-Smtp-Source: AMsMyM6YpPoGemI50P9Orbfd6OZb7lwYpXjBqe+ojMTZBolXxYyfqNfLBuxfR4FYHW2gCsDHbI3b7XtDGN9CjNnlqJ0= X-Received: by 2002:a05:6402:1849:b0:453:ba03:9e41 with SMTP id v9-20020a056402184900b00453ba039e41mr16713224edy.202.1663753004083; Wed, 21 Sep 2022 02:36:44 -0700 (PDT) MIME-Version: 1.0 References: <20220920182223.2019637-1-aldyh@redhat.com> In-Reply-To: From: Richard Biener Date: Wed, 21 Sep 2022 11:36:31 +0200 Message-ID: Subject: Re: [COMMITTED] frange::maybe_isnan() should return FALSE for undefined ranges. To: Aldy Hernandez Cc: GCC patches Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-7.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Wed, Sep 21, 2022 at 9:52 AM Aldy Hernandez wrote: > > The reason the flags were uninitialized was because they were unused, > similarly for m_type. But you're right, it is icky and prone to bugs. > I just thought it was cheap to set_undefined by just flipping > m_kind=VR_UNDEFINED, but it smells like premature optimization. > > How about this? LGTM > > Aldy > > On Wed, Sep 21, 2022 at 9:39 AM Richard Biener > wrote: > > > > On Tue, Sep 20, 2022 at 8:23 PM Aldy Hernandez via Gcc-patches > > wrote: > > > > > > Undefined ranges have undefined NAN bits. We can't depend on them, > > > as they may contain garbage. > > > > Ick ;) Can you add a comment at least? > > > > > This patch returns false from > > > maybe_isnan() for undefined ranges (the empty set). > > > > > > gcc/ChangeLog: > > > > > > * value-range.h (frange::maybe_isnan): Return false for > > > undefined ranges. > > > --- > > > gcc/value-range.h | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > > > diff --git a/gcc/value-range.h b/gcc/value-range.h > > > index 7d5584a9294..325ed08f290 100644 > > > --- a/gcc/value-range.h > > > +++ b/gcc/value-range.h > > > @@ -1210,6 +1210,8 @@ frange::known_isinf () const > > > inline bool > > > frange::maybe_isnan () const > > > { > > > + if (undefined_p ()) > > > + return false; > > > return m_pos_nan || m_neg_nan; > > > } > > > > > > -- > > > 2.37.1 > > > > >