1 /* This testcase ICEd because a SFmode variable was given a MMX register
2 for which there is no movsf exists. */
3 /* { dg-do compile } */
4 /* { dg-require-effective-target ilp32 } */
5 /* { dg-options "-O2 -march=i686 -mmmx -fno-strict-aliasing" } */
7 struct A { unsigned int a, b; };
9 void foo (struct A *x, int y, int z)
12 float e = (float) y + z;
14 x->a = *(unsigned int *) &d;
15 x->b = *(unsigned int *) &e;