http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59538

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Arsham Skrenes from comment #2)
> The result of the loop is implicitly used though (benchmarking how long it
> takes to find nth prime number; I also use this code to create an artificial
> workload for a graduate-level project). This is new behaviour by this
> version of GCC. This is NOT a valid optimization as it clearly is having
> unintended side-effects which I am showcasing.

No you need an explicit use to avoid removing empty finite loops.  Changing the
time is not a side effect of a loop which is defined by the C/C++ standards. 
Many benchmarks can be optimized away if you are not careful; this is true of
any code and most programming languages.

Reply via email to