1 /* { dg-do compile { target powerpc*-*-linux* } } */
2 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
3 /* { dg-require-effective-target powerpc_p8vector_ok } */
4 /* { dg-options "-mdejagnu-cpu=power8 -O2" } */
5 /* { dg-final { scan-assembler {\mmtvsrd\M} { target { lp64 } } } } */
6 /* { dg-final { scan-assembler {\mxscvspdpn\M} { target { lp64 } } } } */
7
8 /* Verify that we do not ICE and that we generate a direct move
9 for float types when compiling for 64-bit. */
10
11 struct a {
12 unsigned ui;
13 float f;
14 };
15
16 void
17 foo (void)
18 {
19 float e;
20 struct a s;
21 e = s.f;
22 __asm__("" : : "d" (e));
23 }