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

--- Comment #3 from Martin Liška <marxin at gcc dot gnu.org> ---
The revision causes the following diff in GENERIC:

@@ -10,8 +10,8 @@
     static atomic volatile double a;
     static atomic volatile double b = 0.0;
   # DEBUG BEGIN STMT;
-  if (TARGET_EXPR <D.1886, TARGET_EXPR <D.1885, (void) (D.1885 =
VIEW_CONVERT_EXPR<double>(__atomic_load_8 ((const volatile void *) &b, 5)))>>;
-  __atomic_store_8 ((volatile void *) &a, VIEW_CONVERT_EXPR<long long unsigned
int>(D.1886), 5);, D.1886 != 0.0;)
+  if (TARGET_EXPR <D.1885, (double) b>;
+  __atomic_store_8 ((volatile void *) &a, VIEW_CONVERT_EXPR<long long unsigned
int>(D.1885), 5);, D.1885 != 0.0;)
     {
       # DEBUG BEGIN STMT;
       __builtin_abort ();

Reply via email to