Subject: Re: [Boost-bugs] [Boost C++ Libraries] #12411: Boost coroutines 1.61 do not preserve fpu registers with O2 optimizations in Visual Studio
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2016-08-26 20:16:16
#12411: Boost coroutines 1.61 do not preserve fpu registers with O2 optimizations
in Visual Studio
-------------------------------+---------------------------
Reporter: martin_haas@⦠| Owner: olli
Type: Bugs | Status: new
Milestone: To Be Determined | Component: coroutine
Version: Boost 1.61.0 | Severity: Showstopper
Resolution: | Keywords: fpu registers
-------------------------------+---------------------------
Comment (by martin_haas@â¦):
Please see the attached file. When compiled with Visual Studio 2015, the
Debug versions work correctly. The release version works correctly if
optimization is disabled. If optimization is specified as O2 or Ox, it
appears the fpu registers are being cleared. In the working versions, the
final job completes at time 54. In the nonworking versions, the final job
appears to take zero time, so it completes at time 44.
if the "hold" function is changed to return an int instead of a double,
the optimized programs work correctly.
The program works correctly with boost 1.60, but not 1.61.
Thanks for all your hard work. The performance of the coroutines are MUCH
better than my current solution. Hope this is an easy fix.
Thanks
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/12411#comment:2> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:20 UTC