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

--- Comment #28 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Would:
--- gcc/testsuite/gcc.c-torture/execute/20181120-1.c.jj 2018-11-20
21:39:05.230507352 +0100
+++ gcc/testsuite/gcc.c-torture/execute/20181120-1.c    2018-11-21
11:49:29.919488909 +0100
@@ -9,6 +9,7 @@ union U1 {
   unsigned f0;
   unsigned f1 : 15;
 };
+volatile union U1 u = { 0x10101 };

 int main (void)
 {
@@ -19,7 +20,7 @@ int main (void)
     *e = f.f1;
   }

-  if (d != 0x101)
+  if (d != u.f1)
     __builtin_abort ();

   return 0;

fix this?  Don't have easy access to arm32 right now to verify if even with
that change it still FAILs with the combine.c and rtlanal.c change reverted and
passes with it and if it PASSes on big-endian targets.

Reply via email to