From 1eb64a13e1e884ea9a90d29e2116799501e1c2cf Mon Sep 17 00:00:00 2001 From: Aaron Gutierrez Date: Fri, 12 May 2017 12:33:51 -0400 Subject: [PATCH] A an array of tests --- tests_ispcpp/array.ispc | 13 +++++++++++++ tests_ispcpp/error_5.ispc | 17 +++++++++++++++++ tests_ispcpp/error_6.ispc | 14 ++++++++++++++ tests_ispcpp/error_7.ispc | 13 +++++++++++++ tests_ispcpp/function.ispc | 12 ++++++------ 5 files changed, 63 insertions(+), 6 deletions(-) create mode 100644 tests_ispcpp/array.ispc create mode 100644 tests_ispcpp/error_5.ispc create mode 100644 tests_ispcpp/error_6.ispc create mode 100644 tests_ispcpp/error_7.ispc diff --git a/tests_ispcpp/array.ispc b/tests_ispcpp/array.ispc new file mode 100644 index 00000000..36bdb261 --- /dev/null +++ b/tests_ispcpp/array.ispc @@ -0,0 +1,13 @@ +export void array(uniform int N, uniform integer * uniform X) { + integer *A = new integer[N/2]; + + foreach (i = 0 ... N/2) { + A[i] = X[i] + X[N/2 + i]; + } + + foreach (i = 0 ... N) { + X[i] = A[i/2]; + } + + delete[] A; +} diff --git a/tests_ispcpp/error_5.ispc b/tests_ispcpp/error_5.ispc new file mode 100644 index 00000000..31b21721 --- /dev/null +++ b/tests_ispcpp/error_5.ispc @@ -0,0 +1,17 @@ +//@error + +floating$0 mult(floating$0 x, floating$1 y) { + return x * y; +} + +export void saxpy(uniform int N, + uniform floating$0 scale, + uniform floating$1 X[], + uniform floating$1 Y[], + uniform floating$2 result[]) +{ + foreach (i = 0 ... N) { + floating$ tmp = mult(scale, X[i]) + Y[i]; + result[i] = tmp; + } +} diff --git a/tests_ispcpp/error_6.ispc b/tests_ispcpp/error_6.ispc new file mode 100644 index 00000000..5b2edcbc --- /dev/null +++ b/tests_ispcpp/error_6.ispc @@ -0,0 +1,14 @@ +number pow(number b, int a) { + number out = b; + for (int i = 1; i x, - floating<0> y) { + floating$3 x, + floating$3 y) { return scale * x + y; } export void saxpy(uniform int N, - uniform floating<0> scale, - uniform floating<1> X[], - uniform floating<1> Y[], - uniform floating<2> result[]) + uniform floating$0 scale, + uniform floating$1 X[], + uniform floating$1 Y[], + uniform floating$2 result[]) { foreach (i = 0 ... N) { result[i] = saxpy_helper(scale, X[i], Y[i]);