From: John Kessenich Date: Sun, 16 Oct 2016 18:22:20 +0000 (-0600) Subject: HLSL: Turn on tests for groupshared. X-Git-Tag: upstream/11.4.0~1441 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5d45eadedc37141d27100ce312af7125ec7058ab;p=platform%2Fupstream%2Fglslang.git HLSL: Turn on tests for groupshared. --- diff --git a/Test/baseResults/hlsl.basic.comp.out b/Test/baseResults/hlsl.basic.comp.out index 1948ec3..c6dc3e5 100755 --- a/Test/baseResults/hlsl.basic.comp.out +++ b/Test/baseResults/hlsl.basic.comp.out @@ -2,15 +2,14 @@ hlsl.basic.comp Shader version: 450 local_size = (1, 1, 1) 0:? Sequence -0:4 Function Definition: main( (temp void) +0:4 Function Definition: main(i1; (temp void) 0:4 Function Parameters: +0:4 'dti' (in int LocalInvocationID) 0:? Sequence -0:5 dti: direct index for structure (layout(offset=0 ) uniform int LocalInvocationID) -0:5 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int LocalInvocationID dti}) -0:5 Constant: -0:5 0 (const uint) +0:5 'dti' (in int LocalInvocationID) 0:? Linker Objects -0:? 'anon@0' (uniform block{layout(offset=0 ) uniform int LocalInvocationID dti}) +0:? 'a' (shared 100-element array of 4-component vector of float) +0:? 'dti' (in int LocalInvocationID) Linked compute stage: @@ -19,40 +18,40 @@ Linked compute stage: Shader version: 450 local_size = (1, 1, 1) 0:? Sequence -0:4 Function Definition: main( (temp void) +0:4 Function Definition: main(i1; (temp void) 0:4 Function Parameters: +0:4 'dti' (in int LocalInvocationID) 0:? Sequence -0:5 dti: direct index for structure (layout(offset=0 ) uniform int LocalInvocationID) -0:5 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int LocalInvocationID dti}) -0:5 Constant: -0:5 0 (const uint) +0:5 'dti' (in int LocalInvocationID) 0:? Linker Objects -0:? 'anon@0' (uniform block{layout(offset=0 ) uniform int LocalInvocationID dti}) +0:? 'a' (shared 100-element array of 4-component vector of float) +0:? 'dti' (in int LocalInvocationID) // Module Version 10000 // Generated by (magic number): 80001 -// Id's are bound by 11 +// Id's are bound by 16 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint GLCompute 4 "main" + EntryPoint GLCompute 4 "main" 8 ExecutionMode 4 LocalSize 1 1 1 Name 4 "main" - Name 7 "$Global" - MemberName 7($Global) 0 "dti" - Name 9 "" - MemberDecorate 7($Global) 0 Offset 0 - MemberDecorate 7($Global) 0 BuiltIn LocalInvocationId - Decorate 7($Global) Block - Decorate 9 DescriptorSet 0 + Name 8 "dti" + Name 15 "a" + Decorate 8(dti) BuiltIn LocalInvocationId 2: TypeVoid 3: TypeFunction 2 6: TypeInt 32 1 - 7($Global): TypeStruct 6(int) - 8: TypePointer Uniform 7($Global) - 9: 8(ptr) Variable Uniform - 10: 6(int) Constant 0 + 7: TypePointer Input 6(int) + 8(dti): 7(ptr) Variable Input + 9: TypeFloat 32 + 10: TypeVector 9(float) 4 + 11: TypeInt 32 0 + 12: 11(int) Constant 100 + 13: TypeArray 10(fvec4) 12 + 14: TypePointer Workgroup 13 + 15(a): 14(ptr) Variable Workgroup 4(main): 2 Function None 3 5: Label Return diff --git a/Test/baseResults/hlsl.intrinsics.comp.out b/Test/baseResults/hlsl.intrinsics.comp.out index f733975..cd366fc 100644 --- a/Test/baseResults/hlsl.intrinsics.comp.out +++ b/Test/baseResults/hlsl.intrinsics.comp.out @@ -13,64 +13,64 @@ local_size = (1, 1, 1) 0:21 all (global bool) 0:21 'inF0' (in float) 0:24 AtomicAdd (global void) -0:24 'gs_ua' (global uint) -0:24 'gs_ub' (global uint) +0:24 'gs_ua' (shared uint) +0:24 'gs_ub' (shared uint) 0:25 move second child to first child (temp uint) 0:25 'out_u1' (temp uint) 0:25 AtomicAdd (temp uint) -0:25 'gs_ua' (global uint) -0:25 'gs_ub' (global uint) +0:25 'gs_ua' (shared uint) +0:25 'gs_ub' (shared uint) 0:26 AtomicAnd (global void) -0:26 'gs_ua' (global uint) -0:26 'gs_ub' (global uint) +0:26 'gs_ua' (shared uint) +0:26 'gs_ub' (shared uint) 0:27 move second child to first child (temp uint) 0:27 'out_u1' (temp uint) 0:27 AtomicAnd (temp uint) -0:27 'gs_ua' (global uint) -0:27 'gs_ub' (global uint) +0:27 'gs_ua' (shared uint) +0:27 'gs_ub' (shared uint) 0:28 move second child to first child (temp uint) 0:28 'out_u1' (temp uint) 0:28 AtomicCompSwap (temp uint) -0:28 'gs_ua' (global uint) -0:28 'gs_ub' (global uint) -0:28 'gs_uc' (global uint) +0:28 'gs_ua' (shared uint) +0:28 'gs_ub' (shared uint) +0:28 'gs_uc' (shared uint) 0:29 move second child to first child (temp uint) 0:29 'out_u1' (temp uint) 0:29 AtomicExchange (temp uint) -0:29 'gs_ua' (global uint) -0:29 'gs_ub' (global uint) +0:29 'gs_ua' (shared uint) +0:29 'gs_ub' (shared uint) 0:30 AtomicMax (global void) -0:30 'gs_ua' (global uint) -0:30 'gs_ub' (global uint) +0:30 'gs_ua' (shared uint) +0:30 'gs_ub' (shared uint) 0:31 move second child to first child (temp uint) 0:31 'out_u1' (temp uint) 0:31 AtomicMax (temp uint) -0:31 'gs_ua' (global uint) -0:31 'gs_ub' (global uint) +0:31 'gs_ua' (shared uint) +0:31 'gs_ub' (shared uint) 0:32 AtomicMin (global void) -0:32 'gs_ua' (global uint) -0:32 'gs_ub' (global uint) +0:32 'gs_ua' (shared uint) +0:32 'gs_ub' (shared uint) 0:33 move second child to first child (temp uint) 0:33 'out_u1' (temp uint) 0:33 AtomicMin (temp uint) -0:33 'gs_ua' (global uint) -0:33 'gs_ub' (global uint) +0:33 'gs_ua' (shared uint) +0:33 'gs_ub' (shared uint) 0:34 AtomicOr (global void) -0:34 'gs_ua' (global uint) -0:34 'gs_ub' (global uint) +0:34 'gs_ua' (shared uint) +0:34 'gs_ub' (shared uint) 0:35 move second child to first child (temp uint) 0:35 'out_u1' (temp uint) 0:35 AtomicOr (temp uint) -0:35 'gs_ua' (global uint) -0:35 'gs_ub' (global uint) +0:35 'gs_ua' (shared uint) +0:35 'gs_ub' (shared uint) 0:36 AtomicXor (global void) -0:36 'gs_ua' (global uint) -0:36 'gs_ub' (global uint) +0:36 'gs_ua' (shared uint) +0:36 'gs_ub' (shared uint) 0:37 move second child to first child (temp uint) 0:37 'out_u1' (temp uint) 0:37 AtomicXor (temp uint) -0:37 'gs_ua' (global uint) -0:37 'gs_ub' (global uint) +0:37 'gs_ua' (shared uint) +0:37 'gs_ub' (shared uint) 0:41 Branch: Return with expression 0:41 Constant: 0:41 0.000000 @@ -94,64 +94,64 @@ local_size = (1, 1, 1) 0:55 all (global bool) 0:55 'inF0' (in 2-component vector of float) 0:58 AtomicAdd (global void) -0:58 'gs_ua2' (global 2-component vector of uint) -0:58 'gs_ub2' (global 2-component vector of uint) +0:58 'gs_ua2' (shared 2-component vector of uint) +0:58 'gs_ub2' (shared 2-component vector of uint) 0:59 move second child to first child (temp 2-component vector of uint) 0:59 'out_u2' (temp 2-component vector of uint) 0:59 AtomicAdd (temp 2-component vector of uint) -0:59 'gs_ua2' (global 2-component vector of uint) -0:59 'gs_ub2' (global 2-component vector of uint) +0:59 'gs_ua2' (shared 2-component vector of uint) +0:59 'gs_ub2' (shared 2-component vector of uint) 0:60 AtomicAnd (global void) -0:60 'gs_ua2' (global 2-component vector of uint) -0:60 'gs_ub2' (global 2-component vector of uint) +0:60 'gs_ua2' (shared 2-component vector of uint) +0:60 'gs_ub2' (shared 2-component vector of uint) 0:61 move second child to first child (temp 2-component vector of uint) 0:61 'out_u2' (temp 2-component vector of uint) 0:61 AtomicAnd (temp 2-component vector of uint) -0:61 'gs_ua2' (global 2-component vector of uint) -0:61 'gs_ub2' (global 2-component vector of uint) +0:61 'gs_ua2' (shared 2-component vector of uint) +0:61 'gs_ub2' (shared 2-component vector of uint) 0:62 move second child to first child (temp 2-component vector of uint) 0:62 'out_u2' (temp 2-component vector of uint) 0:62 AtomicCompSwap (temp 2-component vector of uint) -0:62 'gs_ua2' (global 2-component vector of uint) -0:62 'gs_ub2' (global 2-component vector of uint) -0:62 'gs_uc2' (global 2-component vector of uint) +0:62 'gs_ua2' (shared 2-component vector of uint) +0:62 'gs_ub2' (shared 2-component vector of uint) +0:62 'gs_uc2' (shared 2-component vector of uint) 0:63 move second child to first child (temp 2-component vector of uint) 0:63 'out_u2' (temp 2-component vector of uint) 0:63 AtomicExchange (temp 2-component vector of uint) -0:63 'gs_ua2' (global 2-component vector of uint) -0:63 'gs_ub2' (global 2-component vector of uint) +0:63 'gs_ua2' (shared 2-component vector of uint) +0:63 'gs_ub2' (shared 2-component vector of uint) 0:64 AtomicMax (global void) -0:64 'gs_ua2' (global 2-component vector of uint) -0:64 'gs_ub2' (global 2-component vector of uint) +0:64 'gs_ua2' (shared 2-component vector of uint) +0:64 'gs_ub2' (shared 2-component vector of uint) 0:65 move second child to first child (temp 2-component vector of uint) 0:65 'out_u2' (temp 2-component vector of uint) 0:65 AtomicMax (temp 2-component vector of uint) -0:65 'gs_ua2' (global 2-component vector of uint) -0:65 'gs_ub2' (global 2-component vector of uint) +0:65 'gs_ua2' (shared 2-component vector of uint) +0:65 'gs_ub2' (shared 2-component vector of uint) 0:66 AtomicMin (global void) -0:66 'gs_ua2' (global 2-component vector of uint) -0:66 'gs_ub2' (global 2-component vector of uint) +0:66 'gs_ua2' (shared 2-component vector of uint) +0:66 'gs_ub2' (shared 2-component vector of uint) 0:67 move second child to first child (temp 2-component vector of uint) 0:67 'out_u2' (temp 2-component vector of uint) 0:67 AtomicMin (temp 2-component vector of uint) -0:67 'gs_ua2' (global 2-component vector of uint) -0:67 'gs_ub2' (global 2-component vector of uint) +0:67 'gs_ua2' (shared 2-component vector of uint) +0:67 'gs_ub2' (shared 2-component vector of uint) 0:68 AtomicOr (global void) -0:68 'gs_ua2' (global 2-component vector of uint) -0:68 'gs_ub2' (global 2-component vector of uint) +0:68 'gs_ua2' (shared 2-component vector of uint) +0:68 'gs_ub2' (shared 2-component vector of uint) 0:69 move second child to first child (temp 2-component vector of uint) 0:69 'out_u2' (temp 2-component vector of uint) 0:69 AtomicOr (temp 2-component vector of uint) -0:69 'gs_ua2' (global 2-component vector of uint) -0:69 'gs_ub2' (global 2-component vector of uint) +0:69 'gs_ua2' (shared 2-component vector of uint) +0:69 'gs_ub2' (shared 2-component vector of uint) 0:70 AtomicXor (global void) -0:70 'gs_ua2' (global 2-component vector of uint) -0:70 'gs_ub2' (global 2-component vector of uint) +0:70 'gs_ua2' (shared 2-component vector of uint) +0:70 'gs_ub2' (shared 2-component vector of uint) 0:71 move second child to first child (temp 2-component vector of uint) 0:71 'out_u2' (temp 2-component vector of uint) 0:71 AtomicXor (temp 2-component vector of uint) -0:71 'gs_ua2' (global 2-component vector of uint) -0:71 'gs_ub2' (global 2-component vector of uint) +0:71 'gs_ua2' (shared 2-component vector of uint) +0:71 'gs_ub2' (shared 2-component vector of uint) 0:74 Branch: Return with expression 0:? Constant: 0:? 1.000000 @@ -167,64 +167,64 @@ local_size = (1, 1, 1) 0:82 all (global bool) 0:82 'inF0' (in 3-component vector of float) 0:85 AtomicAdd (global void) -0:85 'gs_ua3' (global 3-component vector of uint) -0:85 'gs_ub3' (global 3-component vector of uint) +0:85 'gs_ua3' (shared 3-component vector of uint) +0:85 'gs_ub3' (shared 3-component vector of uint) 0:86 move second child to first child (temp 3-component vector of uint) 0:86 'out_u3' (temp 3-component vector of uint) 0:86 AtomicAdd (temp 3-component vector of uint) -0:86 'gs_ua3' (global 3-component vector of uint) -0:86 'gs_ub3' (global 3-component vector of uint) +0:86 'gs_ua3' (shared 3-component vector of uint) +0:86 'gs_ub3' (shared 3-component vector of uint) 0:87 AtomicAnd (global void) -0:87 'gs_ua3' (global 3-component vector of uint) -0:87 'gs_ub3' (global 3-component vector of uint) +0:87 'gs_ua3' (shared 3-component vector of uint) +0:87 'gs_ub3' (shared 3-component vector of uint) 0:88 move second child to first child (temp 3-component vector of uint) 0:88 'out_u3' (temp 3-component vector of uint) 0:88 AtomicAnd (temp 3-component vector of uint) -0:88 'gs_ua3' (global 3-component vector of uint) -0:88 'gs_ub3' (global 3-component vector of uint) +0:88 'gs_ua3' (shared 3-component vector of uint) +0:88 'gs_ub3' (shared 3-component vector of uint) 0:89 move second child to first child (temp 3-component vector of uint) 0:89 'out_u3' (temp 3-component vector of uint) 0:89 AtomicCompSwap (temp 3-component vector of uint) -0:89 'gs_ua3' (global 3-component vector of uint) -0:89 'gs_ub3' (global 3-component vector of uint) -0:89 'gs_uc3' (global 3-component vector of uint) +0:89 'gs_ua3' (shared 3-component vector of uint) +0:89 'gs_ub3' (shared 3-component vector of uint) +0:89 'gs_uc3' (shared 3-component vector of uint) 0:90 move second child to first child (temp 3-component vector of uint) 0:90 'out_u3' (temp 3-component vector of uint) 0:90 AtomicExchange (temp 3-component vector of uint) -0:90 'gs_ua3' (global 3-component vector of uint) -0:90 'gs_ub3' (global 3-component vector of uint) +0:90 'gs_ua3' (shared 3-component vector of uint) +0:90 'gs_ub3' (shared 3-component vector of uint) 0:91 AtomicMax (global void) -0:91 'gs_ua3' (global 3-component vector of uint) -0:91 'gs_ub3' (global 3-component vector of uint) +0:91 'gs_ua3' (shared 3-component vector of uint) +0:91 'gs_ub3' (shared 3-component vector of uint) 0:92 move second child to first child (temp 3-component vector of uint) 0:92 'out_u3' (temp 3-component vector of uint) 0:92 AtomicMax (temp 3-component vector of uint) -0:92 'gs_ua3' (global 3-component vector of uint) -0:92 'gs_ub3' (global 3-component vector of uint) +0:92 'gs_ua3' (shared 3-component vector of uint) +0:92 'gs_ub3' (shared 3-component vector of uint) 0:93 AtomicMin (global void) -0:93 'gs_ua3' (global 3-component vector of uint) -0:93 'gs_ub3' (global 3-component vector of uint) +0:93 'gs_ua3' (shared 3-component vector of uint) +0:93 'gs_ub3' (shared 3-component vector of uint) 0:94 move second child to first child (temp 3-component vector of uint) 0:94 'out_u3' (temp 3-component vector of uint) 0:94 AtomicMin (temp 3-component vector of uint) -0:94 'gs_ua3' (global 3-component vector of uint) -0:94 'gs_ub3' (global 3-component vector of uint) +0:94 'gs_ua3' (shared 3-component vector of uint) +0:94 'gs_ub3' (shared 3-component vector of uint) 0:95 AtomicOr (global void) -0:95 'gs_ua3' (global 3-component vector of uint) -0:95 'gs_ub3' (global 3-component vector of uint) +0:95 'gs_ua3' (shared 3-component vector of uint) +0:95 'gs_ub3' (shared 3-component vector of uint) 0:96 move second child to first child (temp 3-component vector of uint) 0:96 'out_u3' (temp 3-component vector of uint) 0:96 AtomicOr (temp 3-component vector of uint) -0:96 'gs_ua3' (global 3-component vector of uint) -0:96 'gs_ub3' (global 3-component vector of uint) +0:96 'gs_ua3' (shared 3-component vector of uint) +0:96 'gs_ub3' (shared 3-component vector of uint) 0:97 AtomicXor (global void) -0:97 'gs_ua3' (global 3-component vector of uint) -0:97 'gs_ub3' (global 3-component vector of uint) +0:97 'gs_ua3' (shared 3-component vector of uint) +0:97 'gs_ub3' (shared 3-component vector of uint) 0:98 move second child to first child (temp 3-component vector of uint) 0:98 'out_u3' (temp 3-component vector of uint) 0:98 AtomicXor (temp 3-component vector of uint) -0:98 'gs_ua3' (global 3-component vector of uint) -0:98 'gs_ub3' (global 3-component vector of uint) +0:98 'gs_ua3' (shared 3-component vector of uint) +0:98 'gs_ub3' (shared 3-component vector of uint) 0:101 Branch: Return with expression 0:? Constant: 0:? 1.000000 @@ -241,64 +241,64 @@ local_size = (1, 1, 1) 0:109 all (global bool) 0:109 'inF0' (layout(location=0 ) in 4-component vector of float) 0:112 AtomicAdd (global void) -0:112 'gs_ua4' (global 4-component vector of uint) -0:112 'gs_ub4' (global 4-component vector of uint) +0:112 'gs_ua4' (shared 4-component vector of uint) +0:112 'gs_ub4' (shared 4-component vector of uint) 0:113 move second child to first child (temp 4-component vector of uint) 0:113 'out_u4' (temp 4-component vector of uint) 0:113 AtomicAdd (temp 4-component vector of uint) -0:113 'gs_ua4' (global 4-component vector of uint) -0:113 'gs_ub4' (global 4-component vector of uint) +0:113 'gs_ua4' (shared 4-component vector of uint) +0:113 'gs_ub4' (shared 4-component vector of uint) 0:114 AtomicAnd (global void) -0:114 'gs_ua4' (global 4-component vector of uint) -0:114 'gs_ub4' (global 4-component vector of uint) +0:114 'gs_ua4' (shared 4-component vector of uint) +0:114 'gs_ub4' (shared 4-component vector of uint) 0:115 move second child to first child (temp 4-component vector of uint) 0:115 'out_u4' (temp 4-component vector of uint) 0:115 AtomicAnd (temp 4-component vector of uint) -0:115 'gs_ua4' (global 4-component vector of uint) -0:115 'gs_ub4' (global 4-component vector of uint) +0:115 'gs_ua4' (shared 4-component vector of uint) +0:115 'gs_ub4' (shared 4-component vector of uint) 0:116 move second child to first child (temp 4-component vector of uint) 0:116 'out_u4' (temp 4-component vector of uint) 0:116 AtomicCompSwap (temp 4-component vector of uint) -0:116 'gs_ua4' (global 4-component vector of uint) -0:116 'gs_ub4' (global 4-component vector of uint) -0:116 'gs_uc4' (global 4-component vector of uint) +0:116 'gs_ua4' (shared 4-component vector of uint) +0:116 'gs_ub4' (shared 4-component vector of uint) +0:116 'gs_uc4' (shared 4-component vector of uint) 0:117 move second child to first child (temp 4-component vector of uint) 0:117 'out_u4' (temp 4-component vector of uint) 0:117 AtomicExchange (temp 4-component vector of uint) -0:117 'gs_ua4' (global 4-component vector of uint) -0:117 'gs_ub4' (global 4-component vector of uint) +0:117 'gs_ua4' (shared 4-component vector of uint) +0:117 'gs_ub4' (shared 4-component vector of uint) 0:118 AtomicMax (global void) -0:118 'gs_ua4' (global 4-component vector of uint) -0:118 'gs_ub4' (global 4-component vector of uint) +0:118 'gs_ua4' (shared 4-component vector of uint) +0:118 'gs_ub4' (shared 4-component vector of uint) 0:119 move second child to first child (temp 4-component vector of uint) 0:119 'out_u4' (temp 4-component vector of uint) 0:119 AtomicMax (temp 4-component vector of uint) -0:119 'gs_ua4' (global 4-component vector of uint) -0:119 'gs_ub4' (global 4-component vector of uint) +0:119 'gs_ua4' (shared 4-component vector of uint) +0:119 'gs_ub4' (shared 4-component vector of uint) 0:120 AtomicMin (global void) -0:120 'gs_ua4' (global 4-component vector of uint) -0:120 'gs_ub4' (global 4-component vector of uint) +0:120 'gs_ua4' (shared 4-component vector of uint) +0:120 'gs_ub4' (shared 4-component vector of uint) 0:121 move second child to first child (temp 4-component vector of uint) 0:121 'out_u4' (temp 4-component vector of uint) 0:121 AtomicMin (temp 4-component vector of uint) -0:121 'gs_ua4' (global 4-component vector of uint) -0:121 'gs_ub4' (global 4-component vector of uint) +0:121 'gs_ua4' (shared 4-component vector of uint) +0:121 'gs_ub4' (shared 4-component vector of uint) 0:122 AtomicOr (global void) -0:122 'gs_ua4' (global 4-component vector of uint) -0:122 'gs_ub4' (global 4-component vector of uint) +0:122 'gs_ua4' (shared 4-component vector of uint) +0:122 'gs_ub4' (shared 4-component vector of uint) 0:123 move second child to first child (temp 4-component vector of uint) 0:123 'out_u4' (temp 4-component vector of uint) 0:123 AtomicOr (temp 4-component vector of uint) -0:123 'gs_ua4' (global 4-component vector of uint) -0:123 'gs_ub4' (global 4-component vector of uint) +0:123 'gs_ua4' (shared 4-component vector of uint) +0:123 'gs_ub4' (shared 4-component vector of uint) 0:124 AtomicXor (global void) -0:124 'gs_ua4' (global 4-component vector of uint) -0:124 'gs_ub4' (global 4-component vector of uint) +0:124 'gs_ua4' (shared 4-component vector of uint) +0:124 'gs_ub4' (shared 4-component vector of uint) 0:125 move second child to first child (temp 4-component vector of uint) 0:125 'out_u4' (temp 4-component vector of uint) 0:125 AtomicXor (temp 4-component vector of uint) -0:125 'gs_ua4' (global 4-component vector of uint) -0:125 'gs_ub4' (global 4-component vector of uint) +0:125 'gs_ua4' (shared 4-component vector of uint) +0:125 'gs_ub4' (shared 4-component vector of uint) 0:128 Sequence 0:128 move second child to first child (temp 4-component vector of float) 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) @@ -309,18 +309,18 @@ local_size = (1, 1, 1) 0:? 4.000000 0:128 Branch: Return 0:? Linker Objects -0:? 'gs_ua' (global uint) -0:? 'gs_ub' (global uint) -0:? 'gs_uc' (global uint) -0:? 'gs_ua2' (global 2-component vector of uint) -0:? 'gs_ub2' (global 2-component vector of uint) -0:? 'gs_uc2' (global 2-component vector of uint) -0:? 'gs_ua3' (global 3-component vector of uint) -0:? 'gs_ub3' (global 3-component vector of uint) -0:? 'gs_uc3' (global 3-component vector of uint) -0:? 'gs_ua4' (global 4-component vector of uint) -0:? 'gs_ub4' (global 4-component vector of uint) -0:? 'gs_uc4' (global 4-component vector of uint) +0:? 'gs_ua' (shared uint) +0:? 'gs_ub' (shared uint) +0:? 'gs_uc' (shared uint) +0:? 'gs_ua2' (shared 2-component vector of uint) +0:? 'gs_ub2' (shared 2-component vector of uint) +0:? 'gs_uc2' (shared 2-component vector of uint) +0:? 'gs_ua3' (shared 3-component vector of uint) +0:? 'gs_ub3' (shared 3-component vector of uint) +0:? 'gs_uc3' (shared 3-component vector of uint) +0:? 'gs_ua4' (shared 4-component vector of uint) +0:? 'gs_ub4' (shared 4-component vector of uint) +0:? 'gs_uc4' (shared 4-component vector of uint) 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) 0:? 'inF0' (layout(location=0 ) in 4-component vector of float) 0:? 'inF1' (layout(location=1 ) in 4-component vector of float) @@ -346,64 +346,64 @@ local_size = (1, 1, 1) 0:21 all (global bool) 0:21 'inF0' (in float) 0:24 AtomicAdd (global void) -0:24 'gs_ua' (global uint) -0:24 'gs_ub' (global uint) +0:24 'gs_ua' (shared uint) +0:24 'gs_ub' (shared uint) 0:25 move second child to first child (temp uint) 0:25 'out_u1' (temp uint) 0:25 AtomicAdd (temp uint) -0:25 'gs_ua' (global uint) -0:25 'gs_ub' (global uint) +0:25 'gs_ua' (shared uint) +0:25 'gs_ub' (shared uint) 0:26 AtomicAnd (global void) -0:26 'gs_ua' (global uint) -0:26 'gs_ub' (global uint) +0:26 'gs_ua' (shared uint) +0:26 'gs_ub' (shared uint) 0:27 move second child to first child (temp uint) 0:27 'out_u1' (temp uint) 0:27 AtomicAnd (temp uint) -0:27 'gs_ua' (global uint) -0:27 'gs_ub' (global uint) +0:27 'gs_ua' (shared uint) +0:27 'gs_ub' (shared uint) 0:28 move second child to first child (temp uint) 0:28 'out_u1' (temp uint) 0:28 AtomicCompSwap (temp uint) -0:28 'gs_ua' (global uint) -0:28 'gs_ub' (global uint) -0:28 'gs_uc' (global uint) +0:28 'gs_ua' (shared uint) +0:28 'gs_ub' (shared uint) +0:28 'gs_uc' (shared uint) 0:29 move second child to first child (temp uint) 0:29 'out_u1' (temp uint) 0:29 AtomicExchange (temp uint) -0:29 'gs_ua' (global uint) -0:29 'gs_ub' (global uint) +0:29 'gs_ua' (shared uint) +0:29 'gs_ub' (shared uint) 0:30 AtomicMax (global void) -0:30 'gs_ua' (global uint) -0:30 'gs_ub' (global uint) +0:30 'gs_ua' (shared uint) +0:30 'gs_ub' (shared uint) 0:31 move second child to first child (temp uint) 0:31 'out_u1' (temp uint) 0:31 AtomicMax (temp uint) -0:31 'gs_ua' (global uint) -0:31 'gs_ub' (global uint) +0:31 'gs_ua' (shared uint) +0:31 'gs_ub' (shared uint) 0:32 AtomicMin (global void) -0:32 'gs_ua' (global uint) -0:32 'gs_ub' (global uint) +0:32 'gs_ua' (shared uint) +0:32 'gs_ub' (shared uint) 0:33 move second child to first child (temp uint) 0:33 'out_u1' (temp uint) 0:33 AtomicMin (temp uint) -0:33 'gs_ua' (global uint) -0:33 'gs_ub' (global uint) +0:33 'gs_ua' (shared uint) +0:33 'gs_ub' (shared uint) 0:34 AtomicOr (global void) -0:34 'gs_ua' (global uint) -0:34 'gs_ub' (global uint) +0:34 'gs_ua' (shared uint) +0:34 'gs_ub' (shared uint) 0:35 move second child to first child (temp uint) 0:35 'out_u1' (temp uint) 0:35 AtomicOr (temp uint) -0:35 'gs_ua' (global uint) -0:35 'gs_ub' (global uint) +0:35 'gs_ua' (shared uint) +0:35 'gs_ub' (shared uint) 0:36 AtomicXor (global void) -0:36 'gs_ua' (global uint) -0:36 'gs_ub' (global uint) +0:36 'gs_ua' (shared uint) +0:36 'gs_ub' (shared uint) 0:37 move second child to first child (temp uint) 0:37 'out_u1' (temp uint) 0:37 AtomicXor (temp uint) -0:37 'gs_ua' (global uint) -0:37 'gs_ub' (global uint) +0:37 'gs_ua' (shared uint) +0:37 'gs_ub' (shared uint) 0:41 Branch: Return with expression 0:41 Constant: 0:41 0.000000 @@ -427,64 +427,64 @@ local_size = (1, 1, 1) 0:55 all (global bool) 0:55 'inF0' (in 2-component vector of float) 0:58 AtomicAdd (global void) -0:58 'gs_ua2' (global 2-component vector of uint) -0:58 'gs_ub2' (global 2-component vector of uint) +0:58 'gs_ua2' (shared 2-component vector of uint) +0:58 'gs_ub2' (shared 2-component vector of uint) 0:59 move second child to first child (temp 2-component vector of uint) 0:59 'out_u2' (temp 2-component vector of uint) 0:59 AtomicAdd (temp 2-component vector of uint) -0:59 'gs_ua2' (global 2-component vector of uint) -0:59 'gs_ub2' (global 2-component vector of uint) +0:59 'gs_ua2' (shared 2-component vector of uint) +0:59 'gs_ub2' (shared 2-component vector of uint) 0:60 AtomicAnd (global void) -0:60 'gs_ua2' (global 2-component vector of uint) -0:60 'gs_ub2' (global 2-component vector of uint) +0:60 'gs_ua2' (shared 2-component vector of uint) +0:60 'gs_ub2' (shared 2-component vector of uint) 0:61 move second child to first child (temp 2-component vector of uint) 0:61 'out_u2' (temp 2-component vector of uint) 0:61 AtomicAnd (temp 2-component vector of uint) -0:61 'gs_ua2' (global 2-component vector of uint) -0:61 'gs_ub2' (global 2-component vector of uint) +0:61 'gs_ua2' (shared 2-component vector of uint) +0:61 'gs_ub2' (shared 2-component vector of uint) 0:62 move second child to first child (temp 2-component vector of uint) 0:62 'out_u2' (temp 2-component vector of uint) 0:62 AtomicCompSwap (temp 2-component vector of uint) -0:62 'gs_ua2' (global 2-component vector of uint) -0:62 'gs_ub2' (global 2-component vector of uint) -0:62 'gs_uc2' (global 2-component vector of uint) +0:62 'gs_ua2' (shared 2-component vector of uint) +0:62 'gs_ub2' (shared 2-component vector of uint) +0:62 'gs_uc2' (shared 2-component vector of uint) 0:63 move second child to first child (temp 2-component vector of uint) 0:63 'out_u2' (temp 2-component vector of uint) 0:63 AtomicExchange (temp 2-component vector of uint) -0:63 'gs_ua2' (global 2-component vector of uint) -0:63 'gs_ub2' (global 2-component vector of uint) +0:63 'gs_ua2' (shared 2-component vector of uint) +0:63 'gs_ub2' (shared 2-component vector of uint) 0:64 AtomicMax (global void) -0:64 'gs_ua2' (global 2-component vector of uint) -0:64 'gs_ub2' (global 2-component vector of uint) +0:64 'gs_ua2' (shared 2-component vector of uint) +0:64 'gs_ub2' (shared 2-component vector of uint) 0:65 move second child to first child (temp 2-component vector of uint) 0:65 'out_u2' (temp 2-component vector of uint) 0:65 AtomicMax (temp 2-component vector of uint) -0:65 'gs_ua2' (global 2-component vector of uint) -0:65 'gs_ub2' (global 2-component vector of uint) +0:65 'gs_ua2' (shared 2-component vector of uint) +0:65 'gs_ub2' (shared 2-component vector of uint) 0:66 AtomicMin (global void) -0:66 'gs_ua2' (global 2-component vector of uint) -0:66 'gs_ub2' (global 2-component vector of uint) +0:66 'gs_ua2' (shared 2-component vector of uint) +0:66 'gs_ub2' (shared 2-component vector of uint) 0:67 move second child to first child (temp 2-component vector of uint) 0:67 'out_u2' (temp 2-component vector of uint) 0:67 AtomicMin (temp 2-component vector of uint) -0:67 'gs_ua2' (global 2-component vector of uint) -0:67 'gs_ub2' (global 2-component vector of uint) +0:67 'gs_ua2' (shared 2-component vector of uint) +0:67 'gs_ub2' (shared 2-component vector of uint) 0:68 AtomicOr (global void) -0:68 'gs_ua2' (global 2-component vector of uint) -0:68 'gs_ub2' (global 2-component vector of uint) +0:68 'gs_ua2' (shared 2-component vector of uint) +0:68 'gs_ub2' (shared 2-component vector of uint) 0:69 move second child to first child (temp 2-component vector of uint) 0:69 'out_u2' (temp 2-component vector of uint) 0:69 AtomicOr (temp 2-component vector of uint) -0:69 'gs_ua2' (global 2-component vector of uint) -0:69 'gs_ub2' (global 2-component vector of uint) +0:69 'gs_ua2' (shared 2-component vector of uint) +0:69 'gs_ub2' (shared 2-component vector of uint) 0:70 AtomicXor (global void) -0:70 'gs_ua2' (global 2-component vector of uint) -0:70 'gs_ub2' (global 2-component vector of uint) +0:70 'gs_ua2' (shared 2-component vector of uint) +0:70 'gs_ub2' (shared 2-component vector of uint) 0:71 move second child to first child (temp 2-component vector of uint) 0:71 'out_u2' (temp 2-component vector of uint) 0:71 AtomicXor (temp 2-component vector of uint) -0:71 'gs_ua2' (global 2-component vector of uint) -0:71 'gs_ub2' (global 2-component vector of uint) +0:71 'gs_ua2' (shared 2-component vector of uint) +0:71 'gs_ub2' (shared 2-component vector of uint) 0:74 Branch: Return with expression 0:? Constant: 0:? 1.000000 @@ -500,64 +500,64 @@ local_size = (1, 1, 1) 0:82 all (global bool) 0:82 'inF0' (in 3-component vector of float) 0:85 AtomicAdd (global void) -0:85 'gs_ua3' (global 3-component vector of uint) -0:85 'gs_ub3' (global 3-component vector of uint) +0:85 'gs_ua3' (shared 3-component vector of uint) +0:85 'gs_ub3' (shared 3-component vector of uint) 0:86 move second child to first child (temp 3-component vector of uint) 0:86 'out_u3' (temp 3-component vector of uint) 0:86 AtomicAdd (temp 3-component vector of uint) -0:86 'gs_ua3' (global 3-component vector of uint) -0:86 'gs_ub3' (global 3-component vector of uint) +0:86 'gs_ua3' (shared 3-component vector of uint) +0:86 'gs_ub3' (shared 3-component vector of uint) 0:87 AtomicAnd (global void) -0:87 'gs_ua3' (global 3-component vector of uint) -0:87 'gs_ub3' (global 3-component vector of uint) +0:87 'gs_ua3' (shared 3-component vector of uint) +0:87 'gs_ub3' (shared 3-component vector of uint) 0:88 move second child to first child (temp 3-component vector of uint) 0:88 'out_u3' (temp 3-component vector of uint) 0:88 AtomicAnd (temp 3-component vector of uint) -0:88 'gs_ua3' (global 3-component vector of uint) -0:88 'gs_ub3' (global 3-component vector of uint) +0:88 'gs_ua3' (shared 3-component vector of uint) +0:88 'gs_ub3' (shared 3-component vector of uint) 0:89 move second child to first child (temp 3-component vector of uint) 0:89 'out_u3' (temp 3-component vector of uint) 0:89 AtomicCompSwap (temp 3-component vector of uint) -0:89 'gs_ua3' (global 3-component vector of uint) -0:89 'gs_ub3' (global 3-component vector of uint) -0:89 'gs_uc3' (global 3-component vector of uint) +0:89 'gs_ua3' (shared 3-component vector of uint) +0:89 'gs_ub3' (shared 3-component vector of uint) +0:89 'gs_uc3' (shared 3-component vector of uint) 0:90 move second child to first child (temp 3-component vector of uint) 0:90 'out_u3' (temp 3-component vector of uint) 0:90 AtomicExchange (temp 3-component vector of uint) -0:90 'gs_ua3' (global 3-component vector of uint) -0:90 'gs_ub3' (global 3-component vector of uint) +0:90 'gs_ua3' (shared 3-component vector of uint) +0:90 'gs_ub3' (shared 3-component vector of uint) 0:91 AtomicMax (global void) -0:91 'gs_ua3' (global 3-component vector of uint) -0:91 'gs_ub3' (global 3-component vector of uint) +0:91 'gs_ua3' (shared 3-component vector of uint) +0:91 'gs_ub3' (shared 3-component vector of uint) 0:92 move second child to first child (temp 3-component vector of uint) 0:92 'out_u3' (temp 3-component vector of uint) 0:92 AtomicMax (temp 3-component vector of uint) -0:92 'gs_ua3' (global 3-component vector of uint) -0:92 'gs_ub3' (global 3-component vector of uint) +0:92 'gs_ua3' (shared 3-component vector of uint) +0:92 'gs_ub3' (shared 3-component vector of uint) 0:93 AtomicMin (global void) -0:93 'gs_ua3' (global 3-component vector of uint) -0:93 'gs_ub3' (global 3-component vector of uint) +0:93 'gs_ua3' (shared 3-component vector of uint) +0:93 'gs_ub3' (shared 3-component vector of uint) 0:94 move second child to first child (temp 3-component vector of uint) 0:94 'out_u3' (temp 3-component vector of uint) 0:94 AtomicMin (temp 3-component vector of uint) -0:94 'gs_ua3' (global 3-component vector of uint) -0:94 'gs_ub3' (global 3-component vector of uint) +0:94 'gs_ua3' (shared 3-component vector of uint) +0:94 'gs_ub3' (shared 3-component vector of uint) 0:95 AtomicOr (global void) -0:95 'gs_ua3' (global 3-component vector of uint) -0:95 'gs_ub3' (global 3-component vector of uint) +0:95 'gs_ua3' (shared 3-component vector of uint) +0:95 'gs_ub3' (shared 3-component vector of uint) 0:96 move second child to first child (temp 3-component vector of uint) 0:96 'out_u3' (temp 3-component vector of uint) 0:96 AtomicOr (temp 3-component vector of uint) -0:96 'gs_ua3' (global 3-component vector of uint) -0:96 'gs_ub3' (global 3-component vector of uint) +0:96 'gs_ua3' (shared 3-component vector of uint) +0:96 'gs_ub3' (shared 3-component vector of uint) 0:97 AtomicXor (global void) -0:97 'gs_ua3' (global 3-component vector of uint) -0:97 'gs_ub3' (global 3-component vector of uint) +0:97 'gs_ua3' (shared 3-component vector of uint) +0:97 'gs_ub3' (shared 3-component vector of uint) 0:98 move second child to first child (temp 3-component vector of uint) 0:98 'out_u3' (temp 3-component vector of uint) 0:98 AtomicXor (temp 3-component vector of uint) -0:98 'gs_ua3' (global 3-component vector of uint) -0:98 'gs_ub3' (global 3-component vector of uint) +0:98 'gs_ua3' (shared 3-component vector of uint) +0:98 'gs_ub3' (shared 3-component vector of uint) 0:101 Branch: Return with expression 0:? Constant: 0:? 1.000000 @@ -574,64 +574,64 @@ local_size = (1, 1, 1) 0:109 all (global bool) 0:109 'inF0' (layout(location=0 ) in 4-component vector of float) 0:112 AtomicAdd (global void) -0:112 'gs_ua4' (global 4-component vector of uint) -0:112 'gs_ub4' (global 4-component vector of uint) +0:112 'gs_ua4' (shared 4-component vector of uint) +0:112 'gs_ub4' (shared 4-component vector of uint) 0:113 move second child to first child (temp 4-component vector of uint) 0:113 'out_u4' (temp 4-component vector of uint) 0:113 AtomicAdd (temp 4-component vector of uint) -0:113 'gs_ua4' (global 4-component vector of uint) -0:113 'gs_ub4' (global 4-component vector of uint) +0:113 'gs_ua4' (shared 4-component vector of uint) +0:113 'gs_ub4' (shared 4-component vector of uint) 0:114 AtomicAnd (global void) -0:114 'gs_ua4' (global 4-component vector of uint) -0:114 'gs_ub4' (global 4-component vector of uint) +0:114 'gs_ua4' (shared 4-component vector of uint) +0:114 'gs_ub4' (shared 4-component vector of uint) 0:115 move second child to first child (temp 4-component vector of uint) 0:115 'out_u4' (temp 4-component vector of uint) 0:115 AtomicAnd (temp 4-component vector of uint) -0:115 'gs_ua4' (global 4-component vector of uint) -0:115 'gs_ub4' (global 4-component vector of uint) +0:115 'gs_ua4' (shared 4-component vector of uint) +0:115 'gs_ub4' (shared 4-component vector of uint) 0:116 move second child to first child (temp 4-component vector of uint) 0:116 'out_u4' (temp 4-component vector of uint) 0:116 AtomicCompSwap (temp 4-component vector of uint) -0:116 'gs_ua4' (global 4-component vector of uint) -0:116 'gs_ub4' (global 4-component vector of uint) -0:116 'gs_uc4' (global 4-component vector of uint) +0:116 'gs_ua4' (shared 4-component vector of uint) +0:116 'gs_ub4' (shared 4-component vector of uint) +0:116 'gs_uc4' (shared 4-component vector of uint) 0:117 move second child to first child (temp 4-component vector of uint) 0:117 'out_u4' (temp 4-component vector of uint) 0:117 AtomicExchange (temp 4-component vector of uint) -0:117 'gs_ua4' (global 4-component vector of uint) -0:117 'gs_ub4' (global 4-component vector of uint) +0:117 'gs_ua4' (shared 4-component vector of uint) +0:117 'gs_ub4' (shared 4-component vector of uint) 0:118 AtomicMax (global void) -0:118 'gs_ua4' (global 4-component vector of uint) -0:118 'gs_ub4' (global 4-component vector of uint) +0:118 'gs_ua4' (shared 4-component vector of uint) +0:118 'gs_ub4' (shared 4-component vector of uint) 0:119 move second child to first child (temp 4-component vector of uint) 0:119 'out_u4' (temp 4-component vector of uint) 0:119 AtomicMax (temp 4-component vector of uint) -0:119 'gs_ua4' (global 4-component vector of uint) -0:119 'gs_ub4' (global 4-component vector of uint) +0:119 'gs_ua4' (shared 4-component vector of uint) +0:119 'gs_ub4' (shared 4-component vector of uint) 0:120 AtomicMin (global void) -0:120 'gs_ua4' (global 4-component vector of uint) -0:120 'gs_ub4' (global 4-component vector of uint) +0:120 'gs_ua4' (shared 4-component vector of uint) +0:120 'gs_ub4' (shared 4-component vector of uint) 0:121 move second child to first child (temp 4-component vector of uint) 0:121 'out_u4' (temp 4-component vector of uint) 0:121 AtomicMin (temp 4-component vector of uint) -0:121 'gs_ua4' (global 4-component vector of uint) -0:121 'gs_ub4' (global 4-component vector of uint) +0:121 'gs_ua4' (shared 4-component vector of uint) +0:121 'gs_ub4' (shared 4-component vector of uint) 0:122 AtomicOr (global void) -0:122 'gs_ua4' (global 4-component vector of uint) -0:122 'gs_ub4' (global 4-component vector of uint) +0:122 'gs_ua4' (shared 4-component vector of uint) +0:122 'gs_ub4' (shared 4-component vector of uint) 0:123 move second child to first child (temp 4-component vector of uint) 0:123 'out_u4' (temp 4-component vector of uint) 0:123 AtomicOr (temp 4-component vector of uint) -0:123 'gs_ua4' (global 4-component vector of uint) -0:123 'gs_ub4' (global 4-component vector of uint) +0:123 'gs_ua4' (shared 4-component vector of uint) +0:123 'gs_ub4' (shared 4-component vector of uint) 0:124 AtomicXor (global void) -0:124 'gs_ua4' (global 4-component vector of uint) -0:124 'gs_ub4' (global 4-component vector of uint) +0:124 'gs_ua4' (shared 4-component vector of uint) +0:124 'gs_ub4' (shared 4-component vector of uint) 0:125 move second child to first child (temp 4-component vector of uint) 0:125 'out_u4' (temp 4-component vector of uint) 0:125 AtomicXor (temp 4-component vector of uint) -0:125 'gs_ua4' (global 4-component vector of uint) -0:125 'gs_ub4' (global 4-component vector of uint) +0:125 'gs_ua4' (shared 4-component vector of uint) +0:125 'gs_ub4' (shared 4-component vector of uint) 0:128 Sequence 0:128 move second child to first child (temp 4-component vector of float) 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) @@ -642,18 +642,18 @@ local_size = (1, 1, 1) 0:? 4.000000 0:128 Branch: Return 0:? Linker Objects -0:? 'gs_ua' (global uint) -0:? 'gs_ub' (global uint) -0:? 'gs_uc' (global uint) -0:? 'gs_ua2' (global 2-component vector of uint) -0:? 'gs_ub2' (global 2-component vector of uint) -0:? 'gs_uc2' (global 2-component vector of uint) -0:? 'gs_ua3' (global 3-component vector of uint) -0:? 'gs_ub3' (global 3-component vector of uint) -0:? 'gs_uc3' (global 3-component vector of uint) -0:? 'gs_ua4' (global 4-component vector of uint) -0:? 'gs_ub4' (global 4-component vector of uint) -0:? 'gs_uc4' (global 4-component vector of uint) +0:? 'gs_ua' (shared uint) +0:? 'gs_ub' (shared uint) +0:? 'gs_uc' (shared uint) +0:? 'gs_ua2' (shared 2-component vector of uint) +0:? 'gs_ub2' (shared 2-component vector of uint) +0:? 'gs_uc2' (shared 2-component vector of uint) +0:? 'gs_ua3' (shared 3-component vector of uint) +0:? 'gs_ub3' (shared 3-component vector of uint) +0:? 'gs_uc3' (shared 3-component vector of uint) +0:? 'gs_ua4' (shared 4-component vector of uint) +0:? 'gs_ub4' (shared 4-component vector of uint) +0:? 'gs_uc4' (shared 4-component vector of uint) 0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float) 0:? 'inF0' (layout(location=0 ) in 4-component vector of float) 0:? 'inF1' (layout(location=1 ) in 4-component vector of float) @@ -740,35 +740,35 @@ local_size = (1, 1, 1) 39: TypePointer Function 38(ivec3) 40: TypeFunction 36(fvec3) 37(ptr) 37(ptr) 37(ptr) 39(ptr) 39(ptr) 49: TypeBool - 51: TypePointer Private 8(int) - 52(gs_ua): 51(ptr) Variable Private - 53(gs_ub): 51(ptr) Variable Private + 51: TypePointer Workgroup 8(int) + 52(gs_ua): 51(ptr) Variable Workgroup + 53(gs_ub): 51(ptr) Variable Workgroup 55: 8(int) Constant 1 56: 8(int) Constant 0 - 66(gs_uc): 51(ptr) Variable Private + 66(gs_uc): 51(ptr) Variable Workgroup 87: 6(float) Constant 0 - 94: TypePointer Private 26(ivec2) - 95(gs_ua2): 94(ptr) Variable Private - 96(gs_ub2): 94(ptr) Variable Private - 107(gs_uc2): 94(ptr) Variable Private + 94: TypePointer Workgroup 26(ivec2) + 95(gs_ua2): 94(ptr) Variable Workgroup + 96(gs_ub2): 94(ptr) Variable Workgroup + 107(gs_uc2): 94(ptr) Variable Workgroup 128: 6(float) Constant 1065353216 129: 6(float) Constant 1073741824 130: 24(fvec2) ConstantComposite 128 129 - 135: TypePointer Private 38(ivec3) - 136(gs_ua3): 135(ptr) Variable Private - 137(gs_ub3): 135(ptr) Variable Private - 148(gs_uc3): 135(ptr) Variable Private + 135: TypePointer Workgroup 38(ivec3) + 136(gs_ua3): 135(ptr) Variable Workgroup + 137(gs_ub3): 135(ptr) Variable Workgroup + 148(gs_uc3): 135(ptr) Variable Workgroup 169: 6(float) Constant 1077936128 170: 36(fvec3) ConstantComposite 128 129 169 173: TypeVector 6(float) 4 174: TypePointer Input 173(fvec4) 175(inF0): 174(ptr) Variable Input 178: TypeVector 8(int) 4 - 179: TypePointer Private 178(ivec4) - 180(gs_ua4): 179(ptr) Variable Private - 181(gs_ub4): 179(ptr) Variable Private + 179: TypePointer Workgroup 178(ivec4) + 180(gs_ua4): 179(ptr) Variable Workgroup + 181(gs_ub4): 179(ptr) Variable Workgroup 184: TypePointer Function 178(ivec4) - 193(gs_uc4): 179(ptr) Variable Private + 193(gs_uc4): 179(ptr) Variable Workgroup 214: TypePointer Output 173(fvec4) 215(@entryPointOutput): 214(ptr) Variable Output 216: 6(float) Constant 1082130432 diff --git a/Test/baseResults/hlsl.intrinsics.frag.out b/Test/baseResults/hlsl.intrinsics.frag.out index 4009d8d..d5a0f99 100644 --- a/Test/baseResults/hlsl.intrinsics.frag.out +++ b/Test/baseResults/hlsl.intrinsics.frag.out @@ -2782,18 +2782,18 @@ gl_FragCoord origin is upper left 0:492 0 (const int) 0:492 Branch: Return 0:? Linker Objects -0:? 'gs_ua' (global uint) -0:? 'gs_ub' (global uint) -0:? 'gs_uc' (global uint) -0:? 'gs_ua2' (global 2-component vector of uint) -0:? 'gs_ub2' (global 2-component vector of uint) -0:? 'gs_uc2' (global 2-component vector of uint) -0:? 'gs_ua3' (global 3-component vector of uint) -0:? 'gs_ub3' (global 3-component vector of uint) -0:? 'gs_uc3' (global 3-component vector of uint) -0:? 'gs_ua4' (global 4-component vector of uint) -0:? 'gs_ub4' (global 4-component vector of uint) -0:? 'gs_uc4' (global 4-component vector of uint) +0:? 'gs_ua' (shared uint) +0:? 'gs_ub' (shared uint) +0:? 'gs_uc' (shared uint) +0:? 'gs_ua2' (shared 2-component vector of uint) +0:? 'gs_ub2' (shared 2-component vector of uint) +0:? 'gs_uc2' (shared 2-component vector of uint) +0:? 'gs_ua3' (shared 3-component vector of uint) +0:? 'gs_ub3' (shared 3-component vector of uint) +0:? 'gs_uc3' (shared 3-component vector of uint) +0:? 'gs_ua4' (shared 4-component vector of uint) +0:? 'gs_ub4' (shared 4-component vector of uint) +0:? 'gs_uc4' (shared 4-component vector of uint) 0:? 'color' (layout(location=0 ) out 4-component vector of float) @@ -5583,18 +5583,18 @@ gl_FragCoord origin is upper left 0:492 0 (const int) 0:492 Branch: Return 0:? Linker Objects -0:? 'gs_ua' (global uint) -0:? 'gs_ub' (global uint) -0:? 'gs_uc' (global uint) -0:? 'gs_ua2' (global 2-component vector of uint) -0:? 'gs_ub2' (global 2-component vector of uint) -0:? 'gs_uc2' (global 2-component vector of uint) -0:? 'gs_ua3' (global 3-component vector of uint) -0:? 'gs_ub3' (global 3-component vector of uint) -0:? 'gs_uc3' (global 3-component vector of uint) -0:? 'gs_ua4' (global 4-component vector of uint) -0:? 'gs_ub4' (global 4-component vector of uint) -0:? 'gs_uc4' (global 4-component vector of uint) +0:? 'gs_ua' (shared uint) +0:? 'gs_ub' (shared uint) +0:? 'gs_uc' (shared uint) +0:? 'gs_ua2' (shared 2-component vector of uint) +0:? 'gs_ub2' (shared 2-component vector of uint) +0:? 'gs_uc2' (shared 2-component vector of uint) +0:? 'gs_ua3' (shared 3-component vector of uint) +0:? 'gs_ub3' (shared 3-component vector of uint) +0:? 'gs_uc3' (shared 3-component vector of uint) +0:? 'gs_ua4' (shared 4-component vector of uint) +0:? 'gs_ub4' (shared 4-component vector of uint) +0:? 'gs_uc4' (shared 4-component vector of uint) 0:? 'color' (layout(location=0 ) out 4-component vector of float) // Module Version 10000 @@ -6250,22 +6250,22 @@ gl_FragCoord origin is upper left 1802: 48(fvec4) ConstantComposite 284 284 284 284 1804: TypePointer Output 48(fvec4) 1805(color): 1804(ptr) Variable Output - 1809: TypePointer Private 8(int) - 1810(gs_ua): 1809(ptr) Variable Private - 1811(gs_ub): 1809(ptr) Variable Private - 1812(gs_uc): 1809(ptr) Variable Private - 1813: TypePointer Private 26(ivec2) - 1814(gs_ua2): 1813(ptr) Variable Private - 1815(gs_ub2): 1813(ptr) Variable Private - 1816(gs_uc2): 1813(ptr) Variable Private - 1817: TypePointer Private 38(ivec3) - 1818(gs_ua3): 1817(ptr) Variable Private - 1819(gs_ub3): 1817(ptr) Variable Private - 1820(gs_uc3): 1817(ptr) Variable Private - 1821: TypePointer Private 50(ivec4) - 1822(gs_ua4): 1821(ptr) Variable Private - 1823(gs_ub4): 1821(ptr) Variable Private - 1824(gs_uc4): 1821(ptr) Variable Private + 1809: TypePointer Workgroup 8(int) + 1810(gs_ua): 1809(ptr) Variable Workgroup + 1811(gs_ub): 1809(ptr) Variable Workgroup + 1812(gs_uc): 1809(ptr) Variable Workgroup + 1813: TypePointer Workgroup 26(ivec2) + 1814(gs_ua2): 1813(ptr) Variable Workgroup + 1815(gs_ub2): 1813(ptr) Variable Workgroup + 1816(gs_uc2): 1813(ptr) Variable Workgroup + 1817: TypePointer Workgroup 38(ivec3) + 1818(gs_ua3): 1817(ptr) Variable Workgroup + 1819(gs_ub3): 1817(ptr) Variable Workgroup + 1820(gs_uc3): 1817(ptr) Variable Workgroup + 1821: TypePointer Workgroup 50(ivec4) + 1822(gs_ua4): 1821(ptr) Variable Workgroup + 1823(gs_ub4): 1821(ptr) Variable Workgroup + 1824(gs_uc4): 1821(ptr) Variable Workgroup 4(main): 2 Function None 3 5: Label 1800(ps_output): 1799(ptr) Variable Function diff --git a/Test/hlsl.basic.comp b/Test/hlsl.basic.comp index 5e43510..8a65a59 100644 --- a/Test/hlsl.basic.comp +++ b/Test/hlsl.basic.comp @@ -1,6 +1,6 @@ -int dti : SV_DispatchThreadID; +groupshared float4 a[100]; -void main() +void main(int dti : SV_DispatchThreadID) { dti; } diff --git a/Test/hlsl.intrinsics.comp b/Test/hlsl.intrinsics.comp index 12b7caa..bce2d27 100644 --- a/Test/hlsl.intrinsics.comp +++ b/Test/hlsl.intrinsics.comp @@ -1,17 +1,17 @@ -#define gs static // TODO: define as groupshared when available in the grammar -gs uint gs_ua; -gs uint gs_ub; -gs uint gs_uc; -gs uint2 gs_ua2; -gs uint2 gs_ub2; -gs uint2 gs_uc2; -gs uint3 gs_ua3; -gs uint3 gs_ub3; -gs uint3 gs_uc3; -gs uint4 gs_ua4; -gs uint4 gs_ub4; -gs uint4 gs_uc4; + +groupshared uint gs_ua; +groupshared uint gs_ub; +groupshared uint gs_uc; +groupshared uint2 gs_ua2; +groupshared uint2 gs_ub2; +groupshared uint2 gs_uc2; +groupshared uint3 gs_ua3; +groupshared uint3 gs_ub3; +groupshared uint3 gs_uc3; +groupshared uint4 gs_ua4; +groupshared uint4 gs_ub4; +groupshared uint4 gs_uc4; float ComputeShaderFunctionS(float inF0, float inF1, float inF2, uint inU0, uint inU1) { diff --git a/Test/hlsl.intrinsics.frag b/Test/hlsl.intrinsics.frag index 90387cc..03e7ed3 100644 --- a/Test/hlsl.intrinsics.frag +++ b/Test/hlsl.intrinsics.frag @@ -1,17 +1,17 @@ -#define gs static // TODO: define as groupshared when available in the grammar -gs uint gs_ua; -gs uint gs_ub; -gs uint gs_uc; -gs uint2 gs_ua2; -gs uint2 gs_ub2; -gs uint2 gs_uc2; -gs uint3 gs_ua3; -gs uint3 gs_ub3; -gs uint3 gs_uc3; -gs uint4 gs_ua4; -gs uint4 gs_ub4; -gs uint4 gs_uc4; + +groupshared uint gs_ua; +groupshared uint gs_ub; +groupshared uint gs_uc; +groupshared uint2 gs_ua2; +groupshared uint2 gs_ub2; +groupshared uint2 gs_uc2; +groupshared uint3 gs_ua3; +groupshared uint3 gs_ub3; +groupshared uint3 gs_uc3; +groupshared uint4 gs_ua4; +groupshared uint4 gs_ub4; +groupshared uint4 gs_uc4; float PixelShaderFunctionS(float inF0, float inF1, float inF2, uint inU0, uint inU1) { diff --git a/glslang/Include/revision.h b/glslang/Include/revision.h index 882a2d0..c8b1b10 100644 --- a/glslang/Include/revision.h +++ b/glslang/Include/revision.h @@ -2,5 +2,5 @@ // For the version, it uses the latest git tag followed by the number of commits. // For the date, it uses the current date (when then script is run). -#define GLSLANG_REVISION "Overload400-PrecQual.1602" +#define GLSLANG_REVISION "Overload400-PrecQual.1603" #define GLSLANG_DATE "16-Oct-2016"