
Rationalizes the entire tracking of the linker object nodes, effecting GLSL, HLSL, and SPIR-V, to allow tracked objects to be fully edited before their type snapshot for linker objects. Should only effect things when the rest of the AST contained no reference to the symbol, because normal AST nodes were not stale. Also will only effect such objects when their types were edited.
291 lines
17 KiB
Plaintext
291 lines
17 KiB
Plaintext
hlsl.load.buffer.float.dx10.frag
|
|
Shader version: 450
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:24 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:24 Function Parameters:
|
|
0:? Sequence
|
|
0:28 Sequence
|
|
0:28 move second child to first child (temp float)
|
|
0:28 'r00' (temp float)
|
|
0:28 Construct float (temp float)
|
|
0:? textureFetch (temp 4-component vector of float)
|
|
0:28 'g_tTexbfs' (layout(r32f ) uniform samplerBuffer)
|
|
0:28 c1: direct index for structure (layout(offset=0 ) uniform int)
|
|
0:28 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
|
|
0:28 Constant:
|
|
0:28 0 (const uint)
|
|
0:29 Sequence
|
|
0:29 move second child to first child (temp int)
|
|
0:29 'r01' (temp int)
|
|
0:29 Construct int (temp int)
|
|
0:? textureFetch (temp 4-component vector of int)
|
|
0:29 'g_tTexbis' (layout(r32i ) uniform isamplerBuffer)
|
|
0:29 c1: direct index for structure (layout(offset=0 ) uniform int)
|
|
0:29 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
|
|
0:29 Constant:
|
|
0:29 0 (const uint)
|
|
0:30 Sequence
|
|
0:30 move second child to first child (temp uint)
|
|
0:30 'r02' (temp uint)
|
|
0:30 Construct uint (temp uint)
|
|
0:? textureFetch (temp 4-component vector of uint)
|
|
0:30 'g_tTexbus' (layout(r32ui ) uniform usamplerBuffer)
|
|
0:30 c1: direct index for structure (layout(offset=0 ) uniform int)
|
|
0:30 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
|
|
0:30 Constant:
|
|
0:30 0 (const uint)
|
|
0:34 move second child to first child (temp 4-component vector of float)
|
|
0:34 Color: direct index for structure (temp 4-component vector of float)
|
|
0:34 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:34 Constant:
|
|
0:34 0 (const int)
|
|
0:34 Constant:
|
|
0:34 1.000000
|
|
0:34 1.000000
|
|
0:34 1.000000
|
|
0:34 1.000000
|
|
0:35 move second child to first child (temp float)
|
|
0:35 Depth: direct index for structure (temp float)
|
|
0:35 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:35 Constant:
|
|
0:35 1 (const int)
|
|
0:35 Constant:
|
|
0:35 1.000000
|
|
0:37 Sequence
|
|
0:37 Sequence
|
|
0:37 move second child to first child (temp 4-component vector of float)
|
|
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
|
0:37 Color: direct index for structure (temp 4-component vector of float)
|
|
0:37 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:37 Constant:
|
|
0:37 0 (const int)
|
|
0:37 move second child to first child (temp float)
|
|
0:? 'Depth' (out float FragDepth)
|
|
0:37 Depth: direct index for structure (temp float)
|
|
0:37 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:37 Constant:
|
|
0:37 1 (const int)
|
|
0:37 Branch: Return
|
|
0:? Linker Objects
|
|
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
|
0:? 'Depth' (out float FragDepth)
|
|
0:? 'g_tTexbfs_test' (layout(binding=0 r32f ) uniform samplerBuffer)
|
|
0:? 'g_tTexbfs' (layout(r32f ) uniform samplerBuffer)
|
|
0:? 'g_tTexbis' (layout(r32i ) uniform isamplerBuffer)
|
|
0:? 'g_tTexbus' (layout(r32ui ) uniform usamplerBuffer)
|
|
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
Shader version: 450
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:24 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:24 Function Parameters:
|
|
0:? Sequence
|
|
0:28 Sequence
|
|
0:28 move second child to first child (temp float)
|
|
0:28 'r00' (temp float)
|
|
0:28 Construct float (temp float)
|
|
0:? textureFetch (temp 4-component vector of float)
|
|
0:28 'g_tTexbfs' (layout(r32f ) uniform samplerBuffer)
|
|
0:28 c1: direct index for structure (layout(offset=0 ) uniform int)
|
|
0:28 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
|
|
0:28 Constant:
|
|
0:28 0 (const uint)
|
|
0:29 Sequence
|
|
0:29 move second child to first child (temp int)
|
|
0:29 'r01' (temp int)
|
|
0:29 Construct int (temp int)
|
|
0:? textureFetch (temp 4-component vector of int)
|
|
0:29 'g_tTexbis' (layout(r32i ) uniform isamplerBuffer)
|
|
0:29 c1: direct index for structure (layout(offset=0 ) uniform int)
|
|
0:29 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
|
|
0:29 Constant:
|
|
0:29 0 (const uint)
|
|
0:30 Sequence
|
|
0:30 move second child to first child (temp uint)
|
|
0:30 'r02' (temp uint)
|
|
0:30 Construct uint (temp uint)
|
|
0:? textureFetch (temp 4-component vector of uint)
|
|
0:30 'g_tTexbus' (layout(r32ui ) uniform usamplerBuffer)
|
|
0:30 c1: direct index for structure (layout(offset=0 ) uniform int)
|
|
0:30 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
|
|
0:30 Constant:
|
|
0:30 0 (const uint)
|
|
0:34 move second child to first child (temp 4-component vector of float)
|
|
0:34 Color: direct index for structure (temp 4-component vector of float)
|
|
0:34 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:34 Constant:
|
|
0:34 0 (const int)
|
|
0:34 Constant:
|
|
0:34 1.000000
|
|
0:34 1.000000
|
|
0:34 1.000000
|
|
0:34 1.000000
|
|
0:35 move second child to first child (temp float)
|
|
0:35 Depth: direct index for structure (temp float)
|
|
0:35 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:35 Constant:
|
|
0:35 1 (const int)
|
|
0:35 Constant:
|
|
0:35 1.000000
|
|
0:37 Sequence
|
|
0:37 Sequence
|
|
0:37 move second child to first child (temp 4-component vector of float)
|
|
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
|
0:37 Color: direct index for structure (temp 4-component vector of float)
|
|
0:37 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:37 Constant:
|
|
0:37 0 (const int)
|
|
0:37 move second child to first child (temp float)
|
|
0:? 'Depth' (out float FragDepth)
|
|
0:37 Depth: direct index for structure (temp float)
|
|
0:37 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
|
|
0:37 Constant:
|
|
0:37 1 (const int)
|
|
0:37 Branch: Return
|
|
0:? Linker Objects
|
|
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
|
|
0:? 'Depth' (out float FragDepth)
|
|
0:? 'g_tTexbfs_test' (layout(binding=0 r32f ) uniform samplerBuffer)
|
|
0:? 'g_tTexbfs' (layout(r32f ) uniform samplerBuffer)
|
|
0:? 'g_tTexbis' (layout(r32i ) uniform isamplerBuffer)
|
|
0:? 'g_tTexbus' (layout(r32ui ) uniform usamplerBuffer)
|
|
0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4})
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 74
|
|
|
|
Capability Shader
|
|
Capability SampledBuffer
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 65 69
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Name 4 "main"
|
|
Name 8 "r00"
|
|
Name 12 "g_tTexbfs"
|
|
Name 18 "$Global"
|
|
MemberName 18($Global) 0 "c1"
|
|
MemberName 18($Global) 1 "c2"
|
|
MemberName 18($Global) 2 "c3"
|
|
MemberName 18($Global) 3 "c4"
|
|
MemberName 18($Global) 4 "o1"
|
|
MemberName 18($Global) 5 "o2"
|
|
MemberName 18($Global) 6 "o3"
|
|
MemberName 18($Global) 7 "o4"
|
|
Name 20 ""
|
|
Name 30 "r01"
|
|
Name 34 "g_tTexbis"
|
|
Name 43 "r02"
|
|
Name 47 "g_tTexbus"
|
|
Name 55 "PS_OUTPUT"
|
|
MemberName 55(PS_OUTPUT) 0 "Color"
|
|
MemberName 55(PS_OUTPUT) 1 "Depth"
|
|
Name 57 "psout"
|
|
Name 65 "Color"
|
|
Name 69 "Depth"
|
|
Name 73 "g_tTexbfs_test"
|
|
Decorate 12(g_tTexbfs) DescriptorSet 0
|
|
MemberDecorate 18($Global) 0 Offset 0
|
|
MemberDecorate 18($Global) 1 Offset 8
|
|
MemberDecorate 18($Global) 2 Offset 16
|
|
MemberDecorate 18($Global) 3 Offset 32
|
|
MemberDecorate 18($Global) 4 Offset 48
|
|
MemberDecorate 18($Global) 5 Offset 56
|
|
MemberDecorate 18($Global) 6 Offset 64
|
|
MemberDecorate 18($Global) 7 Offset 80
|
|
Decorate 18($Global) Block
|
|
Decorate 20 DescriptorSet 0
|
|
Decorate 34(g_tTexbis) DescriptorSet 0
|
|
Decorate 47(g_tTexbus) DescriptorSet 0
|
|
Decorate 65(Color) Location 0
|
|
Decorate 69(Depth) BuiltIn FragDepth
|
|
Decorate 73(g_tTexbfs_test) DescriptorSet 0
|
|
Decorate 73(g_tTexbfs_test) Binding 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypePointer Function 6(float)
|
|
9: TypeImage 6(float) Buffer sampled format:R32f
|
|
10: TypeSampledImage 9
|
|
11: TypePointer UniformConstant 10
|
|
12(g_tTexbfs): 11(ptr) Variable UniformConstant
|
|
14: TypeInt 32 1
|
|
15: TypeVector 14(int) 2
|
|
16: TypeVector 14(int) 3
|
|
17: TypeVector 14(int) 4
|
|
18($Global): TypeStruct 14(int) 15(ivec2) 16(ivec3) 17(ivec4) 14(int) 15(ivec2) 16(ivec3) 17(ivec4)
|
|
19: TypePointer Uniform 18($Global)
|
|
20: 19(ptr) Variable Uniform
|
|
21: 14(int) Constant 0
|
|
22: TypePointer Uniform 14(int)
|
|
26: TypeVector 6(float) 4
|
|
29: TypePointer Function 14(int)
|
|
31: TypeImage 14(int) Buffer sampled format:R32i
|
|
32: TypeSampledImage 31
|
|
33: TypePointer UniformConstant 32
|
|
34(g_tTexbis): 33(ptr) Variable UniformConstant
|
|
41: TypeInt 32 0
|
|
42: TypePointer Function 41(int)
|
|
44: TypeImage 41(int) Buffer sampled format:R32ui
|
|
45: TypeSampledImage 44
|
|
46: TypePointer UniformConstant 45
|
|
47(g_tTexbus): 46(ptr) Variable UniformConstant
|
|
52: TypeVector 41(int) 4
|
|
55(PS_OUTPUT): TypeStruct 26(fvec4) 6(float)
|
|
56: TypePointer Function 55(PS_OUTPUT)
|
|
58: 6(float) Constant 1065353216
|
|
59: 26(fvec4) ConstantComposite 58 58 58 58
|
|
60: TypePointer Function 26(fvec4)
|
|
62: 14(int) Constant 1
|
|
64: TypePointer Output 26(fvec4)
|
|
65(Color): 64(ptr) Variable Output
|
|
68: TypePointer Output 6(float)
|
|
69(Depth): 68(ptr) Variable Output
|
|
73(g_tTexbfs_test): 11(ptr) Variable UniformConstant
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
8(r00): 7(ptr) Variable Function
|
|
30(r01): 29(ptr) Variable Function
|
|
43(r02): 42(ptr) Variable Function
|
|
57(psout): 56(ptr) Variable Function
|
|
13: 10 Load 12(g_tTexbfs)
|
|
23: 22(ptr) AccessChain 20 21
|
|
24: 14(int) Load 23
|
|
25: 9 Image 13
|
|
27: 26(fvec4) ImageFetch 25 24
|
|
28: 6(float) CompositeExtract 27 0
|
|
Store 8(r00) 28
|
|
35: 32 Load 34(g_tTexbis)
|
|
36: 22(ptr) AccessChain 20 21
|
|
37: 14(int) Load 36
|
|
38: 31 Image 35
|
|
39: 17(ivec4) ImageFetch 38 37
|
|
40: 14(int) CompositeExtract 39 0
|
|
Store 30(r01) 40
|
|
48: 45 Load 47(g_tTexbus)
|
|
49: 22(ptr) AccessChain 20 21
|
|
50: 14(int) Load 49
|
|
51: 44 Image 48
|
|
53: 52(ivec4) ImageFetch 51 50
|
|
54: 41(int) CompositeExtract 53 0
|
|
Store 43(r02) 54
|
|
61: 60(ptr) AccessChain 57(psout) 21
|
|
Store 61 59
|
|
63: 7(ptr) AccessChain 57(psout) 62
|
|
Store 63 58
|
|
66: 60(ptr) AccessChain 57(psout) 21
|
|
67: 26(fvec4) Load 66
|
|
Store 65(Color) 67
|
|
70: 7(ptr) AccessChain 57(psout) 62
|
|
71: 6(float) Load 70
|
|
Store 69(Depth) 71
|
|
Return
|
|
FunctionEnd
|