1 /* { dg-do compile { target { powerpc*-*-* && lp64 } } } */
2 /* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
3 /* { dg-require-effective-target powerpc_p9vector_ok } */
4 /* { dg-options "-mcpu=power9 -O2" } */
6 /* This file tests the extraction of 64-bit values. On Power 9, the direct
7 move is prefered for the 64-bit extract as it is either lower latency or
8 the same latency as the extract instruction depending on the Endianess of
9 the system. Furthermore, there can be up to four move instructions in
10 flight at a time versus only two extract intructions at a time. */
15 extract_bool_long_long_0 (vector
bool long long a
)
18 unsigned long long b
= vec_extract (a
, c
);
22 unsigned long long int
23 extract_long_long_0 (vector
unsigned long long int a
)
26 unsigned long long int b
= vec_extract (a
, c
);
30 /* { dg-final { scan-assembler-times "m\[ft\]vsr" 2 } } */