aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.8/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c')
-rw-r--r--gcc-4.8/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc-4.8/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c b/gcc-4.8/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c
new file mode 100644
index 000000000..0981cc1d5
--- /dev/null
+++ b/gcc-4.8/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c
@@ -0,0 +1,19 @@
+/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+
+#include "harness.h"
+
+static void test()
+{
+ vector signed int vsia = {-10,1,2,3};
+ vector signed int vsib = {100,101,102,-103};
+ vector signed int vsir;
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
+ vector signed int vsier = {91,0,107,0};
+#else
+ vector signed int vsier = {0,92,0,-98};
+#endif
+
+ vsir = vec_sum2s (vsia, vsib);
+
+ check (vec_all_eq (vsir, vsier), "vsir");
+}