public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/80641] missed optimization with with std::vector resize in loop
       [not found] <bug-80641-4@http.gcc.gnu.org/bugzilla/>
@ 2022-01-28 23:53 ` pinskia at gcc dot gnu.org
  2023-08-09 23:15 ` pinskia at gcc dot gnu.org
  1 sibling, 0 replies; 2+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-01-28 23:53 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #15 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
This is interesting:
  _48 = _149 + 18446744073709551612; // _149 - 4
  _63 = _55 + _48;
  _18 = _63 - _55;
  _19 = _18 /[ex] 4;
  _20 = (long unsigned int) _19;
  if (_55 != _63)

_18 should be the same as _48
and the if statement should be if (_48 != 0)

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

* [Bug tree-optimization/80641] missed optimization with with std::vector resize in loop
       [not found] <bug-80641-4@http.gcc.gnu.org/bugzilla/>
  2022-01-28 23:53 ` [Bug tree-optimization/80641] missed optimization with with std::vector resize in loop pinskia at gcc dot gnu.org
@ 2023-08-09 23:15 ` pinskia at gcc dot gnu.org
  1 sibling, 0 replies; 2+ messages in thread
From: pinskia at gcc dot gnu.org @ 2023-08-09 23:15 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #16 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Note starting in GCC 13 at -O3, we are able to optimize this all the way to:
```
int f ()
{
  int * _54;

  <bb 2> [local count: 114863531]:
  _54 = operator new (16);
  MEM <uint128_t> [(char * {ref-all})_54] = 0x30000000200000001;
  operator delete (_54, 16);
  return 0;

}
```
If we change the name of the function to f rather than main. In GCC 14 we able
to optimize even without the name change (there has been some inlining heurstic
changes there).

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

end of thread, other threads:[~2023-08-09 23:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-80641-4@http.gcc.gnu.org/bugzilla/>
2022-01-28 23:53 ` [Bug tree-optimization/80641] missed optimization with with std::vector resize in loop pinskia at gcc dot gnu.org
2023-08-09 23:15 ` 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).