summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/altivec-4.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gcc.dg/altivec-4.c')
-rw-r--r--gcc/testsuite/gcc.dg/altivec-4.c29
1 files changed, 24 insertions, 5 deletions
diff --git a/gcc/testsuite/gcc.dg/altivec-4.c b/gcc/testsuite/gcc.dg/altivec-4.c
index 21fb8f6e073..4994f7dc5ac 100644
--- a/gcc/testsuite/gcc.dg/altivec-4.c
+++ b/gcc/testsuite/gcc.dg/altivec-4.c
@@ -3,12 +3,18 @@
#define vector __attribute__((vector_size(16)))
-int __attribute__((mode(V4SI))) x, y;
+static int __attribute__((mode(V4SI))) x, y;
-vector int i,j,k;
-vector short s,t,u;
-vector signed char c,d,e;
-vector float f,g,h;
+static vector signed int i,j,k;
+static vector signed short s,t;
+static vector signed char c,d;
+static vector float f,g;
+
+static vector unsigned char uc;
+
+static vector signed int *pi;
+
+static int int1, int2;
void
b()
@@ -30,4 +36,17 @@ b()
k = __builtin_altivec_vcmpgtub_p (c, d);
k = __builtin_altivec_vcmpgtuh_p (s, t);
k = __builtin_altivec_vcmpgtuw_p (i, j);
+
+ __builtin_altivec_mtvscr (i);
+ __builtin_altivec_dssall ();
+ s = __builtin_altivec_mfvscr ();
+ __builtin_altivec_dss (3);
+
+ __builtin_altivec_dst (pi, int1 + int2, 3);
+ __builtin_altivec_dstst (pi, int1 + int2, 3);
+ __builtin_altivec_dststt (pi, int1 + int2, 3);
+ __builtin_altivec_dstt (pi, int1 + int2, 3);
+
+ uc = (vector unsigned char) __builtin_altivec_lvsl (int1 + 69, pi);
+ uc = (vector unsigned char) __builtin_altivec_lvsr (int1 + 69, pi);
}