[test-suite] r219138 - [PATCH][Power] Test vec_lvsl and vec_lvsr

Bill Schmidt wschmidt at linux.vnet.ibm.com
Mon Oct 6 12:02:48 PDT 2014


Author: wschmidt
Date: Mon Oct  6 14:02:48 2014
New Revision: 219138

URL: http://llvm.org/viewvc/llvm-project?rev=219138&view=rev
Log:
[PATCH][Power] Test vec_lvsl and vec_lvsr

This patch adds tests for vec_lvsl and vec_lvsr for all supported
data types.  This tests related changes to altivec.h that support
little endian code generation for these interfaces.


Added:
    test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsl.c
    test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsr.c

Added: test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsl.c
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsl.c?rev=219138&view=auto
==============================================================================
--- test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsl.c (added)
+++ test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsl.c Mon Oct  6 14:02:48 2014
@@ -0,0 +1,20 @@
+#include "harness.h"
+
+__attribute__((__aligned__(16))) signed char sc[64];
+__attribute__((__aligned__(16))) unsigned char uc[64];
+__attribute__((__aligned__(16))) signed short ss[32];
+__attribute__((__aligned__(16))) unsigned short us[32];
+__attribute__((__aligned__(16))) signed int si[16];
+__attribute__((__aligned__(16))) unsigned int ui[16];
+__attribute__((__aligned__(16))) float f[16];
+
+static void test() {
+  vector unsigned char expected = {4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19};
+  check (vec_lvsl(0, &sc[4]) == expected);
+  check (vec_lvsl(0, &uc[4]) == expected);
+  check (vec_lvsl(0, &ss[2]) == expected);
+  check (vec_lvsl(0, &us[2]) == expected);
+  check (vec_lvsl(0, &si[1]) == expected);
+  check (vec_lvsl(0, &ui[1]) == expected);
+  check (vec_lvsl(0, & f[1]) == expected);
+}

Added: test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsr.c
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsr.c?rev=219138&view=auto
==============================================================================
--- test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsr.c (added)
+++ test-suite/trunk/SingleSource/UnitTests/Vector/Altivec/lvsr.c Mon Oct  6 14:02:48 2014
@@ -0,0 +1,21 @@
+#include "harness.h"
+
+__attribute__((__aligned__(16))) signed char sc[64];
+__attribute__((__aligned__(16))) unsigned char uc[64];
+__attribute__((__aligned__(16))) signed short ss[32];
+__attribute__((__aligned__(16))) unsigned short us[32];
+__attribute__((__aligned__(16))) signed int si[16];
+__attribute__((__aligned__(16))) unsigned int ui[16];
+__attribute__((__aligned__(16))) float f[16];
+
+static void test() {
+  vector unsigned char expected = {12,13,14,15,16,17,18,19,
+                                   20,21,22,23,24,25,26,27};
+  check (vec_lvsr(0, &sc[4]) == expected);
+  check (vec_lvsr(0, &uc[4]) == expected);
+  check (vec_lvsr(0, &ss[2]) == expected);
+  check (vec_lvsr(0, &us[2]) == expected);
+  check (vec_lvsr(0, &si[1]) == expected);
+  check (vec_lvsr(0, &ui[1]) == expected);
+  check (vec_lvsr(0, & f[1]) == expected);
+}





More information about the llvm-commits mailing list