This caused:

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

The assembler sequence on ia32 was a bit different.

H.J. Can you try this on your end? If it fixes the problem, I will commit as obvious.

Aldy
        PR middle-end/49875
        * c-c++-common/cxxbitfields-4.c: Check for smaller than long
        moves.

Index: c-c++-common/cxxbitfields-4.c
===================================================================
--- c-c++-common/cxxbitfields-4.c       (revision 176824)
+++ c-c++-common/cxxbitfields-4.c       (working copy)
@@ -15,4 +15,4 @@ void update_c(struct bits *p, int val) 
     p -> c = val;
 }
 
-/* { dg-final { scan-assembler-not "movl" } } */
+/* { dg-final { scan-assembler "mov\[bw\]" } } */

Reply via email to