2 /* { dg-require-effective-target ultrasparc_hw } */
3 /* { dg-options "-mcpu=ultrasparc -mvis -O1" } */
5 typedef long long int64_t;
6 typedef unsigned char vec8
__attribute__((vector_size(8)));
9 extern void exit (int);
11 #define _(A) (unsigned char)A
13 int64_t foo (vec8 a
, vec8 b
) {
15 d
= __builtin_vis_pdist (a
, b
, d
);
21 vec8 a
= { _(1), _(2), _(3), _(4), _(5), _(6), _(7), _(255) };
22 vec8 b
= { _(2), _(4), _(8), _(16), _(32), _(64), _(128), _(8) };
23 d
= __builtin_vis_pdist (a
, b
, d
);
28 static vec8 a
= { 1, 2, 3, 4, 5, 6, 7, 255 };
29 static vec8 b
= { 2, 4, 8, 16, 32, 64, 128, 8 };
31 int main (int argc
, char *argv
[]) {
33 if (foo (a
, b
) != bar ())