You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
249 lines
12 KiB
249 lines
12 KiB
4 months ago
|
hlsl.structbuffer.fn2.comp
|
||
|
Shader version: 500
|
||
|
local_size = (256, 1, 1)
|
||
|
0:? Sequence
|
||
|
0:5 Function Definition: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
|
||
|
0:5 Function Parameters:
|
||
|
0:5 'loc' ( in uint)
|
||
|
0:5 'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:? Sequence
|
||
|
0:6 Sequence
|
||
|
0:6 move second child to first child ( temp 2-component vector of uint)
|
||
|
0:6 'result' ( temp 2-component vector of uint)
|
||
|
0:? Sequence
|
||
|
0:6 move second child to first child ( temp int)
|
||
|
0:6 'byteAddrTemp' ( temp int)
|
||
|
0:6 right-shift ( temp int)
|
||
|
0:6 'loc' ( in uint)
|
||
|
0:6 Constant:
|
||
|
0:6 2 (const int)
|
||
|
0:? Construct vec2 ( temp 2-component vector of uint)
|
||
|
0:6 indirect index ( temp uint)
|
||
|
0:6 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
|
||
|
0:6 'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:6 Constant:
|
||
|
0:6 0 (const uint)
|
||
|
0:6 'byteAddrTemp' ( temp int)
|
||
|
0:6 indirect index ( temp uint)
|
||
|
0:6 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
|
||
|
0:6 'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:6 Constant:
|
||
|
0:6 0 (const uint)
|
||
|
0:6 add ( temp int)
|
||
|
0:6 'byteAddrTemp' ( temp int)
|
||
|
0:6 Constant:
|
||
|
0:6 1 (const int)
|
||
|
0:7 Branch: Return with expression
|
||
|
0:7 'result' ( temp 2-component vector of uint)
|
||
|
0:12 Function Definition: @main(u1; ( temp void)
|
||
|
0:12 Function Parameters:
|
||
|
0:12 'dispatchId' ( in uint)
|
||
|
0:? Sequence
|
||
|
0:13 Sequence
|
||
|
0:13 move second child to first child ( temp 2-component vector of uint)
|
||
|
0:13 'result' ( temp 2-component vector of uint)
|
||
|
0:13 Function Call: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
|
||
|
0:13 'dispatchId' ( in uint)
|
||
|
0:13 'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:14 Sequence
|
||
|
0:14 imageStore ( temp void)
|
||
|
0:14 'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
|
||
|
0:14 'dispatchId' ( in uint)
|
||
|
0:14 'result' ( temp 2-component vector of uint)
|
||
|
0:14 'result' ( temp 2-component vector of uint)
|
||
|
0:12 Function Definition: main( ( temp void)
|
||
|
0:12 Function Parameters:
|
||
|
0:? Sequence
|
||
|
0:12 move second child to first child ( temp uint)
|
||
|
0:? 'dispatchId' ( temp uint)
|
||
|
0:? Construct uint ( temp uint)
|
||
|
0:? 'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
|
||
|
0:12 Function Call: @main(u1; ( temp void)
|
||
|
0:? 'dispatchId' ( temp uint)
|
||
|
0:? Linker Objects
|
||
|
0:? 'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:? 'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
|
||
|
0:? 'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
|
||
|
|
||
|
|
||
|
Linked compute stage:
|
||
|
|
||
|
|
||
|
Shader version: 500
|
||
|
local_size = (256, 1, 1)
|
||
|
0:? Sequence
|
||
|
0:5 Function Definition: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
|
||
|
0:5 Function Parameters:
|
||
|
0:5 'loc' ( in uint)
|
||
|
0:5 'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:? Sequence
|
||
|
0:6 Sequence
|
||
|
0:6 move second child to first child ( temp 2-component vector of uint)
|
||
|
0:6 'result' ( temp 2-component vector of uint)
|
||
|
0:? Sequence
|
||
|
0:6 move second child to first child ( temp int)
|
||
|
0:6 'byteAddrTemp' ( temp int)
|
||
|
0:6 right-shift ( temp int)
|
||
|
0:6 'loc' ( in uint)
|
||
|
0:6 Constant:
|
||
|
0:6 2 (const int)
|
||
|
0:? Construct vec2 ( temp 2-component vector of uint)
|
||
|
0:6 indirect index ( temp uint)
|
||
|
0:6 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
|
||
|
0:6 'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:6 Constant:
|
||
|
0:6 0 (const uint)
|
||
|
0:6 'byteAddrTemp' ( temp int)
|
||
|
0:6 indirect index ( temp uint)
|
||
|
0:6 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint)
|
||
|
0:6 'buffer' (layout( row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:6 Constant:
|
||
|
0:6 0 (const uint)
|
||
|
0:6 add ( temp int)
|
||
|
0:6 'byteAddrTemp' ( temp int)
|
||
|
0:6 Constant:
|
||
|
0:6 1 (const int)
|
||
|
0:7 Branch: Return with expression
|
||
|
0:7 'result' ( temp 2-component vector of uint)
|
||
|
0:12 Function Definition: @main(u1; ( temp void)
|
||
|
0:12 Function Parameters:
|
||
|
0:12 'dispatchId' ( in uint)
|
||
|
0:? Sequence
|
||
|
0:13 Sequence
|
||
|
0:13 move second child to first child ( temp 2-component vector of uint)
|
||
|
0:13 'result' ( temp 2-component vector of uint)
|
||
|
0:13 Function Call: testLoad(u1;block--u1[0]1; ( temp 2-component vector of uint)
|
||
|
0:13 'dispatchId' ( in uint)
|
||
|
0:13 'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:14 Sequence
|
||
|
0:14 imageStore ( temp void)
|
||
|
0:14 'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
|
||
|
0:14 'dispatchId' ( in uint)
|
||
|
0:14 'result' ( temp 2-component vector of uint)
|
||
|
0:14 'result' ( temp 2-component vector of uint)
|
||
|
0:12 Function Definition: main( ( temp void)
|
||
|
0:12 Function Parameters:
|
||
|
0:? Sequence
|
||
|
0:12 move second child to first child ( temp uint)
|
||
|
0:? 'dispatchId' ( temp uint)
|
||
|
0:? Construct uint ( temp uint)
|
||
|
0:? 'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
|
||
|
0:12 Function Call: @main(u1; ( temp void)
|
||
|
0:? 'dispatchId' ( temp uint)
|
||
|
0:? Linker Objects
|
||
|
0:? 'g_input' (layout( binding=0 row_major std430) readonly buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data})
|
||
|
0:? 'g_output' (layout( binding=1 rg32ui) uniform uimageBuffer)
|
||
|
0:? 'dispatchId' ( in 3-component vector of uint GlobalInvocationID)
|
||
|
|
||
|
// Module Version 10000
|
||
|
// Generated by (magic number): 8000a
|
||
|
// Id's are bound by 63
|
||
|
|
||
|
Capability Shader
|
||
|
Capability ImageBuffer
|
||
|
Capability StorageImageExtendedFormats
|
||
|
1: ExtInstImport "GLSL.std.450"
|
||
|
MemoryModel Logical GLSL450
|
||
|
EntryPoint GLCompute 4 "main" 57
|
||
|
ExecutionMode 4 LocalSize 256 1 1
|
||
|
Source HLSL 500
|
||
|
Name 4 "main"
|
||
|
Name 9 ""
|
||
|
MemberName 9 0 "@data"
|
||
|
Name 15 "testLoad(u1;block--u1[0]1;"
|
||
|
Name 13 "loc"
|
||
|
Name 14 "buffer"
|
||
|
Name 19 "@main(u1;"
|
||
|
Name 18 "dispatchId"
|
||
|
Name 22 "result"
|
||
|
Name 25 "byteAddrTemp"
|
||
|
Name 43 "result"
|
||
|
Name 44 "g_input"
|
||
|
Name 45 "param"
|
||
|
Name 50 "g_output"
|
||
|
Name 54 "dispatchId"
|
||
|
Name 57 "dispatchId"
|
||
|
Name 60 "param"
|
||
|
Decorate 8 ArrayStride 4
|
||
|
MemberDecorate 9 0 NonWritable
|
||
|
MemberDecorate 9 0 Offset 0
|
||
|
Decorate 9 BufferBlock
|
||
|
Decorate 14(buffer) NonWritable
|
||
|
Decorate 44(g_input) DescriptorSet 0
|
||
|
Decorate 44(g_input) Binding 0
|
||
|
Decorate 50(g_output) DescriptorSet 0
|
||
|
Decorate 50(g_output) Binding 1
|
||
|
Decorate 57(dispatchId) BuiltIn GlobalInvocationId
|
||
|
2: TypeVoid
|
||
|
3: TypeFunction 2
|
||
|
6: TypeInt 32 0
|
||
|
7: TypePointer Function 6(int)
|
||
|
8: TypeRuntimeArray 6(int)
|
||
|
9: TypeStruct 8
|
||
|
10: TypePointer Uniform 9(struct)
|
||
|
11: TypeVector 6(int) 2
|
||
|
12: TypeFunction 11(ivec2) 7(ptr) 10(ptr)
|
||
|
17: TypeFunction 2 7(ptr)
|
||
|
21: TypePointer Function 11(ivec2)
|
||
|
23: TypeInt 32 1
|
||
|
24: TypePointer Function 23(int)
|
||
|
27: 23(int) Constant 2
|
||
|
29: 23(int) Constant 0
|
||
|
31: TypePointer Uniform 6(int)
|
||
|
35: 23(int) Constant 1
|
||
|
44(g_input): 10(ptr) Variable Uniform
|
||
|
48: TypeImage 6(int) Buffer nonsampled format:Rg32ui
|
||
|
49: TypePointer UniformConstant 48
|
||
|
50(g_output): 49(ptr) Variable UniformConstant
|
||
|
55: TypeVector 6(int) 3
|
||
|
56: TypePointer Input 55(ivec3)
|
||
|
57(dispatchId): 56(ptr) Variable Input
|
||
|
4(main): 2 Function None 3
|
||
|
5: Label
|
||
|
54(dispatchId): 7(ptr) Variable Function
|
||
|
60(param): 7(ptr) Variable Function
|
||
|
58: 55(ivec3) Load 57(dispatchId)
|
||
|
59: 6(int) CompositeExtract 58 0
|
||
|
Store 54(dispatchId) 59
|
||
|
61: 6(int) Load 54(dispatchId)
|
||
|
Store 60(param) 61
|
||
|
62: 2 FunctionCall 19(@main(u1;) 60(param)
|
||
|
Return
|
||
|
FunctionEnd
|
||
|
15(testLoad(u1;block--u1[0]1;): 11(ivec2) Function None 12
|
||
|
13(loc): 7(ptr) FunctionParameter
|
||
|
14(buffer): 10(ptr) FunctionParameter
|
||
|
16: Label
|
||
|
22(result): 21(ptr) Variable Function
|
||
|
25(byteAddrTemp): 24(ptr) Variable Function
|
||
|
26: 6(int) Load 13(loc)
|
||
|
28: 23(int) ShiftRightLogical 26 27
|
||
|
Store 25(byteAddrTemp) 28
|
||
|
30: 23(int) Load 25(byteAddrTemp)
|
||
|
32: 31(ptr) AccessChain 14(buffer) 29 30
|
||
|
33: 6(int) Load 32
|
||
|
34: 23(int) Load 25(byteAddrTemp)
|
||
|
36: 23(int) IAdd 34 35
|
||
|
37: 31(ptr) AccessChain 14(buffer) 29 36
|
||
|
38: 6(int) Load 37
|
||
|
39: 11(ivec2) CompositeConstruct 33 38
|
||
|
Store 22(result) 39
|
||
|
40: 11(ivec2) Load 22(result)
|
||
|
ReturnValue 40
|
||
|
FunctionEnd
|
||
|
19(@main(u1;): 2 Function None 17
|
||
|
18(dispatchId): 7(ptr) FunctionParameter
|
||
|
20: Label
|
||
|
43(result): 21(ptr) Variable Function
|
||
|
45(param): 7(ptr) Variable Function
|
||
|
46: 6(int) Load 18(dispatchId)
|
||
|
Store 45(param) 46
|
||
|
47: 11(ivec2) FunctionCall 15(testLoad(u1;block--u1[0]1;) 45(param) 44(g_input)
|
||
|
Store 43(result) 47
|
||
|
51: 48 Load 50(g_output)
|
||
|
52: 6(int) Load 18(dispatchId)
|
||
|
53: 11(ivec2) Load 43(result)
|
||
|
ImageWrite 51 52 53
|
||
|
Return
|
||
|
FunctionEnd
|