]>
git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c
1 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
2 /* { dg-require-effective-target powerpc_vsx_ok } */
3 /* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
7 static int vec_long_long_eq (vector
long long x
, vector
long long y
)
9 return (x
[0] == y
[0] && x
[1] == y
[1]);
12 static int vec_dbl_eq (vector
double x
, vector
double y
)
14 return (x
[0] == y
[0] && x
[1] == y
[1]);
19 vector
long long vl
= {0, 1};
20 vector
double vd
= {0.0, 1.0};
21 vector
long long vlr
= vec_insert (2, vl
, 0);
22 vector
double vdr
= vec_insert (2.0, vd
, 1);
24 #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
25 vector
long long vler
= {0, 2};
26 vector
double vder
= {2.0, 1.0};
28 vector
long long vler
= {2, 1};
29 vector
double vder
= {0.0, 2.0};
32 check (vec_long_long_eq (vlr
, vler
), "vl");
33 check (vec_dbl_eq (vdr
, vder
), "vd");