From 66bae403827a37bdc587f3356cc58fde166d04a1 Mon Sep 17 00:00:00 2001 From: Tim Foley Date: Fri, 14 Jul 2017 14:38:13 -0700 Subject: Add reflection support for GLSL thread-group-size modifier Fixes #15 These are the modifiers like: layout(local_size_x = 16) in; Unlike the HLSL case, these don't get attache to the entry point function itself, so there is a bit more work involed in looking them up. Just to make sure I didn't mess up the HLSL case, I went ahead and added two tests for this capability: one for GLSL and one for HLSL. --- tests/reflection/thread-group-size.comp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 tests/reflection/thread-group-size.comp (limited to 'tests/reflection/thread-group-size.comp') diff --git a/tests/reflection/thread-group-size.comp b/tests/reflection/thread-group-size.comp new file mode 100644 index 000000000..2edf2c2df --- /dev/null +++ b/tests/reflection/thread-group-size.comp @@ -0,0 +1,18 @@ +//TEST:SIMPLE:-no-checking -target reflection-json + +// Confirm that we provide reflection data for the `local_size_*` attributes + +layout(local_size_x = 3) in; + +layout(local_size_y = 5, local_size_z = 7) in; + +buffer B +{ + float b[]; +}; + +void main() +{ + uint tid = gl_GlobalInvocationID.x; + b[tid] = b[tid + 1] + 1.0f; +} \ No newline at end of file -- cgit v1.2.3