https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93806
--- Comment #28 from Vincent Lefèvre <vincent-gcc at vinc17 dot net> ---
A slightly modified version of the example, showing the issue with GCC 5 to 7
(as the noipa attribute directive has been added in GCC 8):
#include <stdio.h>
int main (void)
{
volatile double d = 5000000000.0;
double x = d;
int i = x;
printf ("%d\n", i);
if (x == 5000000000.0)
printf ("%d\n", i);
return 0;
}
The -O1 optimization level is sufficient to make the bug appear.
