public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/88575] gcc got confused by different comparison operators
       [not found] <bug-88575-4@http.gcc.gnu.org/bugzilla/>
@ 2021-07-24 10:18 ` pinskia at gcc dot gnu.org
  2023-06-09 22:24 ` pinskia at gcc dot gnu.org
  2023-06-09 22:28 ` pinskia at gcc dot gnu.org
  2 siblings, 0 replies; 3+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-07-24 10:18 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|middle-end                  |tree-optimization
           Severity|normal                      |enhancement

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug tree-optimization/88575] gcc got confused by different comparison operators
       [not found] <bug-88575-4@http.gcc.gnu.org/bugzilla/>
  2021-07-24 10:18 ` [Bug tree-optimization/88575] gcc got confused by different comparison operators pinskia at gcc dot gnu.org
@ 2023-06-09 22:24 ` pinskia at gcc dot gnu.org
  2023-06-09 22:28 ` pinskia at gcc dot gnu.org
  2 siblings, 0 replies; 3+ messages in thread
From: pinskia at gcc dot gnu.org @ 2023-06-09 22:24 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|2019-01-02 00:00:00         |2023-6-9

--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
So VRP handles floating point now but it still does not optimize it:
Folding statement: if (a_2(D) <= b_3(D))
 Registering value_relation (a_2(D) <= b_3(D)) on (2->3)

Visiting conditional with predicate: if (a_2(D) <= b_3(D))

With known ranges
        a_2(D): [frange] double VARYING b_3(D): [frange] double VARYING

Predicate evaluates to: DON'T KNOW
Not folded
Folding statement: _4 = MIN_EXPR <a_2(D), b_3(D)>;
Not folded


While the int does this:
Folding statement: _4 = MIN_EXPR <a_2(D), b_3(D)>;
 folding with relation a_2(D) <= b_3(D)
Global Exported: _4 = [irange] int [-INF, 2147483646]
Not folded

Which is a regression from GCC 12 ....

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug tree-optimization/88575] gcc got confused by different comparison operators
       [not found] <bug-88575-4@http.gcc.gnu.org/bugzilla/>
  2021-07-24 10:18 ` [Bug tree-optimization/88575] gcc got confused by different comparison operators pinskia at gcc dot gnu.org
  2023-06-09 22:24 ` pinskia at gcc dot gnu.org
@ 2023-06-09 22:28 ` pinskia at gcc dot gnu.org
  2 siblings, 0 replies; 3+ messages in thread
From: pinskia at gcc dot gnu.org @ 2023-06-09 22:28 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Depends on|                            |110199

--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #5)
> So VRP handles floating point now but it still does not optimize it:
> Folding statement: if (a_2(D) <= b_3(D))
>  Registering value_relation (a_2(D) <= b_3(D)) on (2->3)
> 
> Visiting conditional with predicate: if (a_2(D) <= b_3(D))
> 
> With known ranges
> 	a_2(D): [frange] double VARYING	b_3(D): [frange] double VARYING
> 
> Predicate evaluates to: DON'T KNOW
> Not folded
> Folding statement: _4 = MIN_EXPR <a_2(D), b_3(D)>;
> Not folded
> 
> 
> While the int does this:
> Folding statement: _4 = MIN_EXPR <a_2(D), b_3(D)>;
>  folding with relation a_2(D) <= b_3(D)
> Global Exported: _4 = [irange] int [-INF, 2147483646]
> Not folded
> 
> Which is a regression from GCC 12 ....

I filed PR 110199 for that.  Maybe once that is fixed the FP case will work
too.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110199
[Bug 110199] [12/13/14 Regression] Missing VRP transformation with MIN_EXPR and
known relation

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-06-09 22:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-88575-4@http.gcc.gnu.org/bugzilla/>
2021-07-24 10:18 ` [Bug tree-optimization/88575] gcc got confused by different comparison operators pinskia at gcc dot gnu.org
2023-06-09 22:24 ` pinskia at gcc dot gnu.org
2023-06-09 22:28 ` pinskia at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).