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

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
> Btw, on trunk I see it optimized, maybe some recent CTOR "fixing" fixed it
> again?  Can you double-check?
> 
> If it's fixed again I suggest to add the testcase (ck should be elided
> in the assembly?)

I can confirm it's not an issue:

gcc-bisect.py bisect 'g++ pr93258.cc -O3 -Wno-return-type -c
-fdump-tree-optimized=/dev/stdout | grep ", 6)"'
Releases
  7.1.0 (303f81ad7e9f278d)(02 May 2017 12:42): [took: 2.503s] result: OK
  D.2542 = bw::ci::cj (0B, 6); [return slot optimization]
  7.2.0 (586a0829dc38626c)(14 Aug 2017 07:59): [took: 2.480s] result: OK
  D.2542 = bw::ci::cj (0B, 6); [return slot optimization]
  7.3.0 (6184085fc664265d)(25 Jan 2018 08:17): [took: 2.520s] result: OK
  D.2542 = bw::ci::cj (0B, 6); [return slot optimization]
  7.4.0 (adafdb1e7212d53a)(06 Dec 2018 10:00): [took: 2.439s] result: OK
  D.2542 = bw::ci::cj (0B, 6); [return slot optimization]
  7.5.0 (b2d961e7342b5ba4)(14 Nov 2019 07:40): [took: 2.347s] result: OK
  D.2542 = bw::ci::cj (0B, 6); [return slot optimization]
  8.1.0 (406c2abec3f998e9)(02 May 2018 10:13): [took: 2.623s] result: OK
  D.2637 = bw::ci::cj (0B, 6); [return slot optimization]
  8.2.0 (ddeb81e76461fc00)(26 Jul 2018 09:47): [took: 2.563s] result: OK
  D.2637 = bw::ci::cj (0B, 6); [return slot optimization]
  8.3.0 (4c44b708f11eec6f)(22 Feb 2019 14:20): [took: 2.659s] result: OK
  D.2641 = bw::ci::cj (0B, 6); [return slot optimization]
  9.1.0 (c8913260b0756f97)(03 May 2019 07:59): [took: 2.714s] result: OK
  D.2585 = bw::ci::cj (0B, 6); [return slot optimization]
  9.2.0 (a0c06cc27d2146b7)(12 Aug 2019 09:38): [took: 2.714s] result: OK
  D.2585 = bw::ci::cj (0B, 6); [return slot optimization]

  3d77686d2eddf76d(13 Jan 2020 16:39)(jos...@codesourcery.com): [took: 3.305s]
result: OK
  D.2606 = bw::ci::cj (0B, 6); [return slot optimization]

Reply via email to