1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
6 /* For each of these intrinsics, we map directly to an unspec in RTL.
7 We're just using the argument directly and returning the result, so we
8 can precisely specify the exact instruction pattern and register
9 allocations we expect. */
12 test_vmaxnm_f64 (float64x1_t a
, float64x1_t b
)
14 /* { dg-final { scan-assembler-times "fmaxnm\td0, d0, d1" 1 } } */
15 return vmaxnm_f64 (a
, b
);
19 test_vminnm_f64 (float64x1_t a
, float64x1_t b
)
21 /* { dg-final { scan-assembler-times "fminnm\td0, d0, d1" 1 } } */
22 return vminnm_f64 (a
, b
);
26 test_vmax_f64 (float64x1_t a
, float64x1_t b
)
28 /* { dg-final { scan-assembler-times "fmax\td0, d0, d1" 1 } } */
29 return vmax_f64 (a
, b
);
33 test_vmin_f64 (float64x1_t a
, float64x1_t b
)
35 /* { dg-final { scan-assembler-times "fmin\td0, d0, d1" 1 } } */
36 return vmin_f64 (a
, b
);