[Piglit] [PATCH 07/10] cl: Add test for negative index + small offset for private
arsenm2 at gmail.com
arsenm2 at gmail.com
Mon Dec 5 17:48:20 UTC 2016
From: Matt Arsenault <arsenm2 at gmail.com>
---
.../execute/negative-private-base-pointer.cl | 120 +++++++++++++++++++++
1 file changed, 120 insertions(+)
create mode 100644 tests/cl/program/execute/negative-private-base-pointer.cl
diff --git a/tests/cl/program/execute/negative-private-base-pointer.cl b/tests/cl/program/execute/negative-private-base-pointer.cl
new file mode 100644
index 0000000..7ee528b
--- /dev/null
+++ b/tests/cl/program/execute/negative-private-base-pointer.cl
@@ -0,0 +1,120 @@
+/*!
+[config]
+name: negative private buffer base index
+clc_version_min: 10
+dimensions: 1
+
+[test]
+kernel_name: read_write_private_base_plus_offset
+name: negative base private index
+global_size: 1 0 0
+
+arg_out: 0 buffer int[16] \
+ 0xab \
+ 0xbc \
+ 0xabcd \
+ 0xdead \
+ \
+ 0xcafe \
+ 0xf00d \
+ 0xababfeed \
+ 0xca00fe \
+ \
+ 0xb00feed \
+ 0xca00fe \
+ 0xfeedbeef \
+ 0xfe \
+ \
+ 0xbe00fe \
+ 0xabcdef \
+ 0xbeef \
+ 0xde
+
+
+arg_in: 1 buffer int[16] \
+ -1 \
+ -1 \
+ -4 \
+ -4 \
+ \
+ -3 \
+ -4 \
+ -2 \
+ -115 \
+ \
+ -109 \
+ -1015 \
+ -1011 \
+ -1020 \
+ \
+ -1014 \
+ -137 \
+ -151 \
+ -40
+
+!*/
+
+#if 0
+ 0xab \
+ 0xbc \
+ 0xf00d \
+ 0xdead \
+ 0xcafe \
+ 0xabcd \
+ 0xababfeed \
+ 0xca00fe \
+ 0xb00feed \
+ 0xca00fe \
+ 0xfeedbeef \
+ 0xfe \
+ 0xbe00fe \
+ 0xabcdef \
+ 0xbeef \
+ 0xde
+#endif
+
+kernel void read_write_private_base_plus_offset(global int* out, global int* in)
+{
+ volatile int alloca[16];
+
+ alloca[0] = 0xab;
+ alloca[1] = 0xbc;
+ alloca[2] = 0xde;
+ alloca[3] = 0xfe;
+
+ alloca[4] = 0xabcd;
+ alloca[5] = 0xdead;
+ alloca[6] = 0xbeef;
+ alloca[7] = 0xcafe;
+
+ alloca[8] = 0xca00fe;
+ alloca[9] = 0xbe00fe;
+ alloca[10] = 0xabdead;
+ alloca[11] = 0xf00d;
+
+ alloca[12] = 0xfeedbeef;
+ alloca[13] = 0xababfeed;
+ alloca[14] = 0xb00feed;
+ alloca[15] = 0xabcdef;
+
+
+ out[0] = alloca[in[0] + 1];
+ out[1] = alloca[in[1] + 2];
+ out[2] = alloca[in[2] + 8];
+ out[3] = alloca[in[3] + 9];
+
+ out[4] = alloca[in[4] + 10];
+ out[5] = alloca[in[5] + 15];
+ out[6] = alloca[in[6] + 15];
+ out[7] = alloca[in[7] + 123];
+
+ out[8] = alloca[in[8] + 123];
+ out[9] = alloca[in[9] + 1023];
+ out[10] = alloca[in[10] + 1023];
+ out[11] = alloca[in[11] + 1023];
+
+ out[12] = alloca[in[12] + 1023];
+ out[13] = alloca[in[13] + 152];
+ out[14] = alloca[in[14] + 157];
+ out[15] = alloca[in[15] + 42];
+}
--
2.10.2
More information about the Piglit
mailing list