1 /* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
2 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
3 /* { dg-require-effective-target powerpc_p8vector_ok } */
4 /* { dg-options "-mdejagnu-cpu=power8 -O2" } */
5 
load_asm_d_constraint(int * p)6 double load_asm_d_constraint (int *p)
7 {
8   double ret;
9   __asm__ ("xxlor %x0,%x1,%x1\t# load d constraint" : "=d" (ret) : "d" (*p));
10   return ret;
11 }
12 
store_asm_d_constraint(int * p,double x)13 void store_asm_d_constraint (int *p, double x)
14 {
15   int i;
16   __asm__ ("xxlor %x0,%x1,%x1\t# store d constraint" : "=d" (i) : "d" (x));
17   *p = i;
18 }
19 
20 /* { dg-final { scan-assembler "lfiwzx" } } */
21 /* { dg-final { scan-assembler "stfiwx" } } */
22