[Piglit] [PATCH 2/3] cl: Add 3-arg TTS kernel type
Aaron Watry
awatry at gmail.com
Wed Jun 11 15:12:30 PDT 2014
For built-ins with (vec, vec, scalar) arguments (such as mix)
Signed-off-by: Aaron Watry <awatry at gmail.com>
---
generated_tests/genclbuiltins.py | 20 +++++++++-----------
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/generated_tests/genclbuiltins.py b/generated_tests/genclbuiltins.py
index 2a35375..2d2b322 100644
--- a/generated_tests/genclbuiltins.py
+++ b/generated_tests/genclbuiltins.py
@@ -168,20 +168,16 @@ def gen_kernel_3_arg_same_type(f, fnName, inType, outType):
[vecSize, vecSize, vecSize], ''
)
-
-def gen_kernel_3_arg_mixed_size_vector(f, fnName, inType, outType, vecSize):
- f.write('kernel void test_tss_' + vecSize + '_' + fnName + '_' + inType +
- '(global ' + outType + '* out, global ' + inType + '* in1, global '
- + inType+'* in2, global '+inType+'* in3){\n' + ' vstore' + vecSize
- + '(' + fnName + '(vload' + vecSize +
- '(0, in1), *in2, *in3), 0, out);\n' + '}\n\n')
-
-
-def gen_kernel_3_arg_mixed_size(f, fnName, inType, outType):
+def gen_kernel_3_arg_mixed_size_tss(f, fnName, inType, outType):
for vecSize in VEC_WIDTHS:
gen_kernel(f, fnName, [inType, inType, inType], outType,
[vecSize, 1, 1], 'tss_')
+def gen_kernel_3_arg_mixed_size_tts(f, fnName, inType, outType):
+ for vecSize in VEC_WIDTHS:
+ gen_kernel(f, fnName, [inType, inType, inType], outType,
+ [vecSize, vecSize, 1], 'tts_')
+
def generate_kernels(f, dataType, fnName, fnDef):
argTypes = getArgTypes(dataType, fnDef['arg_types'])
@@ -200,7 +196,9 @@ def generate_kernels(f, dataType, fnName, fnDef):
if (len(argTypes) == 4):
gen_kernel_3_arg_same_type(f, fnName, argTypes[1], argTypes[0])
if (fnDef['function_type'] is 'tss'):
- gen_kernel_3_arg_mixed_size(f, fnName, argTypes[1], argTypes[0])
+ gen_kernel_3_arg_mixed_size_tss(f, fnName, argTypes[1], argTypes[0])
+ if (fnDef['function_type'] is 'tts'):
+ gen_kernel_3_arg_mixed_size_tts(f, fnName, argTypes[1], argTypes[0])
return
if (fnName is 'upsample'):
--
1.9.1
More information about the Piglit
mailing list