microsoft/clc: Add a test with an unused kernel arg
authorJesse Natalie <jenatali@microsoft.com>
Fri, 19 Feb 2021 16:09:08 +0000 (08:09 -0800)
committerMarge Bot <eric+marge@anholt.net>
Fri, 19 Feb 2021 16:36:46 +0000 (16:36 +0000)
Reviewed-by: Bill Kristiansen <billkris@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9160>

src/microsoft/clc/clc_compiler_test.cpp

index c2cd762..2063e5e 100644 (file)
@@ -2204,3 +2204,19 @@ TEST_F(ComputeTest, inline_function)
    run_shader(kernel_source, 1, 1, 1, dest, src);
    EXPECT_EQ(dest[0], 2.0f);
 }
+
+TEST_F(ComputeTest, unused_arg)
+{
+   const char *kernel_source = R"(
+   __kernel void main_test(__global int *dst, __global int *unused, __global int *src)
+   {
+      int i = get_global_id(0);
+      dst[i] = src[i];
+   })";
+   auto dest = ShaderArg<int>({ -1, -1, -1, -1 }, SHADER_ARG_OUTPUT);
+   auto src = ShaderArg<int>({ 1, 2, 3, 4 }, SHADER_ARG_INPUT);
+   auto unused = ShaderArg<int>({ -1, -1, -1, -1 }, SHADER_ARG_INPUT);
+   run_shader(kernel_source, 4, 1, 1, dest, unused, src);
+   for (int i = 0; i < 4; ++i)
+      EXPECT_EQ(dest[i], i + 1);
+}