Also, remove assumption that if something is opaque that it must be in the UniformConstant storage class. This allows function declarations to know all parameters will be in the Function storage class.
593 lines
30 KiB
Plaintext
593 lines
30 KiB
Plaintext
hlsl.array.flatten.frag
|
|
WARNING: AST will form illegal SPIR-V; need to transform to legalize
|
|
Shader version: 500
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:17 Function Definition: TestFn1( ( temp 4-component vector of float)
|
|
0:17 Function Parameters:
|
|
0:? Sequence
|
|
0:18 Branch: Return with expression
|
|
0:18 texture ( temp 4-component vector of float)
|
|
0:18 Construct combined texture-sampler ( temp sampler1D)
|
|
0:? 'g_tex[1]' ( uniform texture1D)
|
|
0:? 'g_samp[1]' ( uniform sampler)
|
|
0:18 Constant:
|
|
0:18 0.200000
|
|
0:22 Function Definition: TestFn2(t11[3];p1[3]; ( temp 4-component vector of float)
|
|
0:22 Function Parameters:
|
|
0:22 'l_tex' ( in 3-element array of texture1D)
|
|
0:22 'l_samp' ( in 3-element array of sampler)
|
|
0:? Sequence
|
|
0:23 Branch: Return with expression
|
|
0:23 texture ( temp 4-component vector of float)
|
|
0:23 Construct combined texture-sampler ( temp sampler1D)
|
|
0:23 direct index ( temp texture1D)
|
|
0:23 'l_tex' ( in 3-element array of texture1D)
|
|
0:23 Constant:
|
|
0:23 2 (const int)
|
|
0:23 direct index ( temp sampler)
|
|
0:23 'l_samp' ( in 3-element array of sampler)
|
|
0:23 Constant:
|
|
0:23 2 (const int)
|
|
0:23 Constant:
|
|
0:23 0.200000
|
|
0:26 Sequence
|
|
0:26 move second child to first child ( temp 5-element array of int)
|
|
0:26 'not_flattened_a' ( global 5-element array of int)
|
|
0:26 Constant:
|
|
0:26 1 (const int)
|
|
0:26 2 (const int)
|
|
0:26 3 (const int)
|
|
0:26 4 (const int)
|
|
0:26 5 (const int)
|
|
0:31 Function Definition: @main(struct-PS_OUTPUT-vf41; ( temp void)
|
|
0:31 Function Parameters:
|
|
0:31 'ps_output' ( out structure{ temp 4-component vector of float color})
|
|
0:? Sequence
|
|
0:33 Sequence
|
|
0:33 Sequence
|
|
0:33 move second child to first child ( temp sampler)
|
|
0:33 direct index ( temp sampler)
|
|
0:33 'local_sampler_array' ( temp 3-element array of sampler)
|
|
0:33 Constant:
|
|
0:33 0 (const int)
|
|
0:? 'g_samp[0]' ( uniform sampler)
|
|
0:33 move second child to first child ( temp sampler)
|
|
0:33 direct index ( temp sampler)
|
|
0:33 'local_sampler_array' ( temp 3-element array of sampler)
|
|
0:33 Constant:
|
|
0:33 1 (const int)
|
|
0:? 'g_samp[1]' ( uniform sampler)
|
|
0:33 move second child to first child ( temp sampler)
|
|
0:33 direct index ( temp sampler)
|
|
0:33 'local_sampler_array' ( temp 3-element array of sampler)
|
|
0:33 Constant:
|
|
0:33 2 (const int)
|
|
0:? 'g_samp[2]' ( uniform sampler)
|
|
0:34 Sequence
|
|
0:34 Sequence
|
|
0:34 move second child to first child ( temp texture1D)
|
|
0:34 direct index ( temp texture1D)
|
|
0:34 'local_texture_array' ( temp 3-element array of texture1D)
|
|
0:34 Constant:
|
|
0:34 0 (const int)
|
|
0:? 'g_tex[0]' ( uniform texture1D)
|
|
0:34 move second child to first child ( temp texture1D)
|
|
0:34 direct index ( temp texture1D)
|
|
0:34 'local_texture_array' ( temp 3-element array of texture1D)
|
|
0:34 Constant:
|
|
0:34 1 (const int)
|
|
0:? 'g_tex[1]' ( uniform texture1D)
|
|
0:34 move second child to first child ( temp texture1D)
|
|
0:34 direct index ( temp texture1D)
|
|
0:34 'local_texture_array' ( temp 3-element array of texture1D)
|
|
0:34 Constant:
|
|
0:34 2 (const int)
|
|
0:? 'g_tex[2]' ( uniform texture1D)
|
|
0:35 Sequence
|
|
0:35 move second child to first child ( temp 4-element array of float)
|
|
0:35 'local_float_array' ( temp 4-element array of float)
|
|
0:35 g_floats: direct index for structure ( uniform 4-element array of float)
|
|
0:35 'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 3X3 matrix of float g_mats, layout( binding=10) uniform 4-element array of 3X3 matrix of float g_mats_explicit, uniform 4-element array of float g_floats})
|
|
0:35 Constant:
|
|
0:35 2 (const uint)
|
|
0:37 move second child to first child ( temp 4-component vector of float)
|
|
0:37 color: direct index for structure ( temp 4-component vector of float)
|
|
0:37 'ps_output' ( out structure{ temp 4-component vector of float color})
|
|
0:37 Constant:
|
|
0:37 0 (const int)
|
|
0:37 add ( temp 4-component vector of float)
|
|
0:37 Function Call: TestFn1( ( temp 4-component vector of float)
|
|
0:37 Function Call: TestFn2(t11[3];p1[3]; ( temp 4-component vector of float)
|
|
0:37 Comma ( temp 3-element array of texture1D)
|
|
0:37 Sequence
|
|
0:37 move second child to first child ( temp texture1D)
|
|
0:37 direct index ( temp texture1D)
|
|
0:37 'aggShadow' ( temp 3-element array of texture1D)
|
|
0:37 Constant:
|
|
0:37 0 (const int)
|
|
0:? 'g_tex[0]' ( uniform texture1D)
|
|
0:37 move second child to first child ( temp texture1D)
|
|
0:37 direct index ( temp texture1D)
|
|
0:37 'aggShadow' ( temp 3-element array of texture1D)
|
|
0:37 Constant:
|
|
0:37 1 (const int)
|
|
0:? 'g_tex[1]' ( uniform texture1D)
|
|
0:37 move second child to first child ( temp texture1D)
|
|
0:37 direct index ( temp texture1D)
|
|
0:37 'aggShadow' ( temp 3-element array of texture1D)
|
|
0:37 Constant:
|
|
0:37 2 (const int)
|
|
0:? 'g_tex[2]' ( uniform texture1D)
|
|
0:37 'aggShadow' ( temp 3-element array of texture1D)
|
|
0:37 Comma ( temp 3-element array of sampler)
|
|
0:37 Sequence
|
|
0:37 move second child to first child ( temp sampler)
|
|
0:37 direct index ( temp sampler)
|
|
0:37 'aggShadow' ( temp 3-element array of sampler)
|
|
0:37 Constant:
|
|
0:37 0 (const int)
|
|
0:? 'g_samp[0]' ( uniform sampler)
|
|
0:37 move second child to first child ( temp sampler)
|
|
0:37 direct index ( temp sampler)
|
|
0:37 'aggShadow' ( temp 3-element array of sampler)
|
|
0:37 Constant:
|
|
0:37 1 (const int)
|
|
0:? 'g_samp[1]' ( uniform sampler)
|
|
0:37 move second child to first child ( temp sampler)
|
|
0:37 direct index ( temp sampler)
|
|
0:37 'aggShadow' ( temp 3-element array of sampler)
|
|
0:37 Constant:
|
|
0:37 2 (const int)
|
|
0:? 'g_samp[2]' ( uniform sampler)
|
|
0:37 'aggShadow' ( temp 3-element array of sampler)
|
|
0:31 Function Definition: main( ( temp void)
|
|
0:31 Function Parameters:
|
|
0:? Sequence
|
|
0:31 Function Call: @main(struct-PS_OUTPUT-vf41; ( temp void)
|
|
0:? 'ps_output' ( temp structure{ temp 4-component vector of float color})
|
|
0:31 Sequence
|
|
0:31 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'ps_output.color' (layout( location=0) out 4-component vector of float)
|
|
0:31 color: direct index for structure ( temp 4-component vector of float)
|
|
0:? 'ps_output' ( temp structure{ temp 4-component vector of float color})
|
|
0:31 Constant:
|
|
0:31 0 (const int)
|
|
0:? Linker Objects
|
|
0:? 'g_tex[0]' ( uniform texture1D)
|
|
0:? 'g_tex[1]' ( uniform texture1D)
|
|
0:? 'g_tex[2]' ( uniform texture1D)
|
|
0:? 'g_tex_explicit[0]' (layout( binding=1) uniform texture1D)
|
|
0:? 'g_tex_explicit[1]' (layout( binding=2) uniform texture1D)
|
|
0:? 'g_tex_explicit[2]' (layout( binding=3) uniform texture1D)
|
|
0:? 'g_samp[0]' ( uniform sampler)
|
|
0:? 'g_samp[1]' ( uniform sampler)
|
|
0:? 'g_samp[2]' ( uniform sampler)
|
|
0:? 'g_samp_explicit[0]' (layout( binding=5) uniform sampler)
|
|
0:? 'g_samp_explicit[1]' (layout( binding=6) uniform sampler)
|
|
0:? 'g_samp_explicit[2]' (layout( binding=7) uniform sampler)
|
|
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 3X3 matrix of float g_mats, layout( binding=10) uniform 4-element array of 3X3 matrix of float g_mats_explicit, uniform 4-element array of float g_floats})
|
|
0:? 'not_flattened_a' ( global 5-element array of int)
|
|
0:? 'ps_output.color' (layout( location=0) out 4-component vector of float)
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
Shader version: 500
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:17 Function Definition: TestFn1( ( temp 4-component vector of float)
|
|
0:17 Function Parameters:
|
|
0:? Sequence
|
|
0:18 Branch: Return with expression
|
|
0:18 texture ( temp 4-component vector of float)
|
|
0:18 Construct combined texture-sampler ( temp sampler1D)
|
|
0:? 'g_tex[1]' ( uniform texture1D)
|
|
0:? 'g_samp[1]' ( uniform sampler)
|
|
0:18 Constant:
|
|
0:18 0.200000
|
|
0:22 Function Definition: TestFn2(t11[3];p1[3]; ( temp 4-component vector of float)
|
|
0:22 Function Parameters:
|
|
0:22 'l_tex' ( in 3-element array of texture1D)
|
|
0:22 'l_samp' ( in 3-element array of sampler)
|
|
0:? Sequence
|
|
0:23 Branch: Return with expression
|
|
0:23 texture ( temp 4-component vector of float)
|
|
0:23 Construct combined texture-sampler ( temp sampler1D)
|
|
0:23 direct index ( temp texture1D)
|
|
0:23 'l_tex' ( in 3-element array of texture1D)
|
|
0:23 Constant:
|
|
0:23 2 (const int)
|
|
0:23 direct index ( temp sampler)
|
|
0:23 'l_samp' ( in 3-element array of sampler)
|
|
0:23 Constant:
|
|
0:23 2 (const int)
|
|
0:23 Constant:
|
|
0:23 0.200000
|
|
0:26 Sequence
|
|
0:26 move second child to first child ( temp 5-element array of int)
|
|
0:26 'not_flattened_a' ( global 5-element array of int)
|
|
0:26 Constant:
|
|
0:26 1 (const int)
|
|
0:26 2 (const int)
|
|
0:26 3 (const int)
|
|
0:26 4 (const int)
|
|
0:26 5 (const int)
|
|
0:31 Function Definition: @main(struct-PS_OUTPUT-vf41; ( temp void)
|
|
0:31 Function Parameters:
|
|
0:31 'ps_output' ( out structure{ temp 4-component vector of float color})
|
|
0:? Sequence
|
|
0:33 Sequence
|
|
0:33 Sequence
|
|
0:33 move second child to first child ( temp sampler)
|
|
0:33 direct index ( temp sampler)
|
|
0:33 'local_sampler_array' ( temp 3-element array of sampler)
|
|
0:33 Constant:
|
|
0:33 0 (const int)
|
|
0:? 'g_samp[0]' ( uniform sampler)
|
|
0:33 move second child to first child ( temp sampler)
|
|
0:33 direct index ( temp sampler)
|
|
0:33 'local_sampler_array' ( temp 3-element array of sampler)
|
|
0:33 Constant:
|
|
0:33 1 (const int)
|
|
0:? 'g_samp[1]' ( uniform sampler)
|
|
0:33 move second child to first child ( temp sampler)
|
|
0:33 direct index ( temp sampler)
|
|
0:33 'local_sampler_array' ( temp 3-element array of sampler)
|
|
0:33 Constant:
|
|
0:33 2 (const int)
|
|
0:? 'g_samp[2]' ( uniform sampler)
|
|
0:34 Sequence
|
|
0:34 Sequence
|
|
0:34 move second child to first child ( temp texture1D)
|
|
0:34 direct index ( temp texture1D)
|
|
0:34 'local_texture_array' ( temp 3-element array of texture1D)
|
|
0:34 Constant:
|
|
0:34 0 (const int)
|
|
0:? 'g_tex[0]' ( uniform texture1D)
|
|
0:34 move second child to first child ( temp texture1D)
|
|
0:34 direct index ( temp texture1D)
|
|
0:34 'local_texture_array' ( temp 3-element array of texture1D)
|
|
0:34 Constant:
|
|
0:34 1 (const int)
|
|
0:? 'g_tex[1]' ( uniform texture1D)
|
|
0:34 move second child to first child ( temp texture1D)
|
|
0:34 direct index ( temp texture1D)
|
|
0:34 'local_texture_array' ( temp 3-element array of texture1D)
|
|
0:34 Constant:
|
|
0:34 2 (const int)
|
|
0:? 'g_tex[2]' ( uniform texture1D)
|
|
0:35 Sequence
|
|
0:35 move second child to first child ( temp 4-element array of float)
|
|
0:35 'local_float_array' ( temp 4-element array of float)
|
|
0:35 g_floats: direct index for structure ( uniform 4-element array of float)
|
|
0:35 'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 3X3 matrix of float g_mats, layout( binding=10) uniform 4-element array of 3X3 matrix of float g_mats_explicit, uniform 4-element array of float g_floats})
|
|
0:35 Constant:
|
|
0:35 2 (const uint)
|
|
0:37 move second child to first child ( temp 4-component vector of float)
|
|
0:37 color: direct index for structure ( temp 4-component vector of float)
|
|
0:37 'ps_output' ( out structure{ temp 4-component vector of float color})
|
|
0:37 Constant:
|
|
0:37 0 (const int)
|
|
0:37 add ( temp 4-component vector of float)
|
|
0:37 Function Call: TestFn1( ( temp 4-component vector of float)
|
|
0:37 Function Call: TestFn2(t11[3];p1[3]; ( temp 4-component vector of float)
|
|
0:37 Comma ( temp 3-element array of texture1D)
|
|
0:37 Sequence
|
|
0:37 move second child to first child ( temp texture1D)
|
|
0:37 direct index ( temp texture1D)
|
|
0:37 'aggShadow' ( temp 3-element array of texture1D)
|
|
0:37 Constant:
|
|
0:37 0 (const int)
|
|
0:? 'g_tex[0]' ( uniform texture1D)
|
|
0:37 move second child to first child ( temp texture1D)
|
|
0:37 direct index ( temp texture1D)
|
|
0:37 'aggShadow' ( temp 3-element array of texture1D)
|
|
0:37 Constant:
|
|
0:37 1 (const int)
|
|
0:? 'g_tex[1]' ( uniform texture1D)
|
|
0:37 move second child to first child ( temp texture1D)
|
|
0:37 direct index ( temp texture1D)
|
|
0:37 'aggShadow' ( temp 3-element array of texture1D)
|
|
0:37 Constant:
|
|
0:37 2 (const int)
|
|
0:? 'g_tex[2]' ( uniform texture1D)
|
|
0:37 'aggShadow' ( temp 3-element array of texture1D)
|
|
0:37 Comma ( temp 3-element array of sampler)
|
|
0:37 Sequence
|
|
0:37 move second child to first child ( temp sampler)
|
|
0:37 direct index ( temp sampler)
|
|
0:37 'aggShadow' ( temp 3-element array of sampler)
|
|
0:37 Constant:
|
|
0:37 0 (const int)
|
|
0:? 'g_samp[0]' ( uniform sampler)
|
|
0:37 move second child to first child ( temp sampler)
|
|
0:37 direct index ( temp sampler)
|
|
0:37 'aggShadow' ( temp 3-element array of sampler)
|
|
0:37 Constant:
|
|
0:37 1 (const int)
|
|
0:? 'g_samp[1]' ( uniform sampler)
|
|
0:37 move second child to first child ( temp sampler)
|
|
0:37 direct index ( temp sampler)
|
|
0:37 'aggShadow' ( temp 3-element array of sampler)
|
|
0:37 Constant:
|
|
0:37 2 (const int)
|
|
0:? 'g_samp[2]' ( uniform sampler)
|
|
0:37 'aggShadow' ( temp 3-element array of sampler)
|
|
0:31 Function Definition: main( ( temp void)
|
|
0:31 Function Parameters:
|
|
0:? Sequence
|
|
0:31 Function Call: @main(struct-PS_OUTPUT-vf41; ( temp void)
|
|
0:? 'ps_output' ( temp structure{ temp 4-component vector of float color})
|
|
0:31 Sequence
|
|
0:31 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'ps_output.color' (layout( location=0) out 4-component vector of float)
|
|
0:31 color: direct index for structure ( temp 4-component vector of float)
|
|
0:? 'ps_output' ( temp structure{ temp 4-component vector of float color})
|
|
0:31 Constant:
|
|
0:31 0 (const int)
|
|
0:? Linker Objects
|
|
0:? 'g_tex[0]' ( uniform texture1D)
|
|
0:? 'g_tex[1]' ( uniform texture1D)
|
|
0:? 'g_tex[2]' ( uniform texture1D)
|
|
0:? 'g_tex_explicit[0]' (layout( binding=1) uniform texture1D)
|
|
0:? 'g_tex_explicit[1]' (layout( binding=2) uniform texture1D)
|
|
0:? 'g_tex_explicit[2]' (layout( binding=3) uniform texture1D)
|
|
0:? 'g_samp[0]' ( uniform sampler)
|
|
0:? 'g_samp[1]' ( uniform sampler)
|
|
0:? 'g_samp[2]' ( uniform sampler)
|
|
0:? 'g_samp_explicit[0]' (layout( binding=5) uniform sampler)
|
|
0:? 'g_samp_explicit[1]' (layout( binding=6) uniform sampler)
|
|
0:? 'g_samp_explicit[2]' (layout( binding=7) uniform sampler)
|
|
0:? 'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 3X3 matrix of float g_mats, layout( binding=10) uniform 4-element array of 3X3 matrix of float g_mats_explicit, uniform 4-element array of float g_floats})
|
|
0:? 'not_flattened_a' ( global 5-element array of int)
|
|
0:? 'ps_output.color' (layout( location=0) out 4-component vector of float)
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 143
|
|
|
|
Capability Shader
|
|
Capability Sampled1D
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 134
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Source HLSL 500
|
|
Name 4 "main"
|
|
Name 9 "TestFn1("
|
|
Name 22 "TestFn2(t11[3];p1[3];"
|
|
Name 20 "l_tex"
|
|
Name 21 "l_samp"
|
|
Name 24 "PS_OUTPUT"
|
|
MemberName 24(PS_OUTPUT) 0 "color"
|
|
Name 28 "@main(struct-PS_OUTPUT-vf41;"
|
|
Name 27 "ps_output"
|
|
Name 34 "not_flattened_a"
|
|
Name 42 "g_tex[1]"
|
|
Name 45 "g_samp[1]"
|
|
Name 63 "local_sampler_array"
|
|
Name 65 "g_samp[0]"
|
|
Name 70 "g_samp[2]"
|
|
Name 73 "local_texture_array"
|
|
Name 74 "g_tex[0]"
|
|
Name 79 "g_tex[2]"
|
|
Name 85 "local_float_array"
|
|
Name 91 "$Global"
|
|
MemberName 91($Global) 0 "g_mats"
|
|
MemberName 91($Global) 1 "g_mats_explicit"
|
|
MemberName 91($Global) 2 "g_floats"
|
|
Name 93 ""
|
|
Name 107 "aggShadow"
|
|
Name 114 "aggShadow"
|
|
Name 121 "param"
|
|
Name 123 "param"
|
|
Name 129 "ps_output"
|
|
Name 130 "param"
|
|
Name 134 "ps_output.color"
|
|
Name 137 "g_tex_explicit[0]"
|
|
Name 138 "g_tex_explicit[1]"
|
|
Name 139 "g_tex_explicit[2]"
|
|
Name 140 "g_samp_explicit[0]"
|
|
Name 141 "g_samp_explicit[1]"
|
|
Name 142 "g_samp_explicit[2]"
|
|
Decorate 42(g_tex[1]) DescriptorSet 0
|
|
Decorate 45(g_samp[1]) DescriptorSet 0
|
|
Decorate 65(g_samp[0]) DescriptorSet 0
|
|
Decorate 70(g_samp[2]) DescriptorSet 0
|
|
Decorate 74(g_tex[0]) DescriptorSet 0
|
|
Decorate 79(g_tex[2]) DescriptorSet 0
|
|
Decorate 88 ArrayStride 48
|
|
Decorate 89 ArrayStride 48
|
|
Decorate 90 ArrayStride 16
|
|
MemberDecorate 91($Global) 0 RowMajor
|
|
MemberDecorate 91($Global) 0 Offset 0
|
|
MemberDecorate 91($Global) 0 MatrixStride 16
|
|
MemberDecorate 91($Global) 1 RowMajor
|
|
MemberDecorate 91($Global) 1 Offset 192
|
|
MemberDecorate 91($Global) 1 MatrixStride 16
|
|
MemberDecorate 91($Global) 2 Offset 384
|
|
Decorate 91($Global) Block
|
|
Decorate 93 DescriptorSet 0
|
|
Decorate 134(ps_output.color) Location 0
|
|
Decorate 137(g_tex_explicit[0]) DescriptorSet 0
|
|
Decorate 137(g_tex_explicit[0]) Binding 1
|
|
Decorate 138(g_tex_explicit[1]) DescriptorSet 0
|
|
Decorate 138(g_tex_explicit[1]) Binding 2
|
|
Decorate 139(g_tex_explicit[2]) DescriptorSet 0
|
|
Decorate 139(g_tex_explicit[2]) Binding 3
|
|
Decorate 140(g_samp_explicit[0]) DescriptorSet 0
|
|
Decorate 140(g_samp_explicit[0]) Binding 5
|
|
Decorate 141(g_samp_explicit[1]) DescriptorSet 0
|
|
Decorate 141(g_samp_explicit[1]) Binding 6
|
|
Decorate 142(g_samp_explicit[2]) DescriptorSet 0
|
|
Decorate 142(g_samp_explicit[2]) Binding 7
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 4
|
|
8: TypeFunction 7(fvec4)
|
|
11: TypeImage 6(float) 1D sampled format:Unknown
|
|
12: TypeInt 32 0
|
|
13: 12(int) Constant 3
|
|
14: TypeArray 11 13
|
|
15: TypePointer Function 14
|
|
16: TypeSampler
|
|
17: TypeArray 16 13
|
|
18: TypePointer Function 17
|
|
19: TypeFunction 7(fvec4) 15(ptr) 18(ptr)
|
|
24(PS_OUTPUT): TypeStruct 7(fvec4)
|
|
25: TypePointer Function 24(PS_OUTPUT)
|
|
26: TypeFunction 2 25(ptr)
|
|
30: TypeInt 32 1
|
|
31: 12(int) Constant 5
|
|
32: TypeArray 30(int) 31
|
|
33: TypePointer Private 32
|
|
34(not_flattened_a): 33(ptr) Variable Private
|
|
35: 30(int) Constant 1
|
|
36: 30(int) Constant 2
|
|
37: 30(int) Constant 3
|
|
38: 30(int) Constant 4
|
|
39: 30(int) Constant 5
|
|
40: 32 ConstantComposite 35 36 37 38 39
|
|
41: TypePointer UniformConstant 11
|
|
42(g_tex[1]): 41(ptr) Variable UniformConstant
|
|
44: TypePointer UniformConstant 16
|
|
45(g_samp[1]): 44(ptr) Variable UniformConstant
|
|
47: TypeSampledImage 11
|
|
49: 6(float) Constant 1045220557
|
|
53: TypePointer Function 11
|
|
56: TypePointer Function 16
|
|
64: 30(int) Constant 0
|
|
65(g_samp[0]): 44(ptr) Variable UniformConstant
|
|
70(g_samp[2]): 44(ptr) Variable UniformConstant
|
|
74(g_tex[0]): 41(ptr) Variable UniformConstant
|
|
79(g_tex[2]): 41(ptr) Variable UniformConstant
|
|
82: 12(int) Constant 4
|
|
83: TypeArray 6(float) 82
|
|
84: TypePointer Function 83
|
|
86: TypeVector 6(float) 3
|
|
87: TypeMatrix 86(fvec3) 3
|
|
88: TypeArray 87 82
|
|
89: TypeArray 87 82
|
|
90: TypeArray 6(float) 82
|
|
91($Global): TypeStruct 88 89 90
|
|
92: TypePointer Uniform 91($Global)
|
|
93: 92(ptr) Variable Uniform
|
|
94: TypePointer Uniform 90
|
|
98: TypePointer Function 6(float)
|
|
127: TypePointer Function 7(fvec4)
|
|
133: TypePointer Output 7(fvec4)
|
|
134(ps_output.color): 133(ptr) Variable Output
|
|
137(g_tex_explicit[0]): 41(ptr) Variable UniformConstant
|
|
138(g_tex_explicit[1]): 41(ptr) Variable UniformConstant
|
|
139(g_tex_explicit[2]): 41(ptr) Variable UniformConstant
|
|
140(g_samp_explicit[0]): 44(ptr) Variable UniformConstant
|
|
141(g_samp_explicit[1]): 44(ptr) Variable UniformConstant
|
|
142(g_samp_explicit[2]): 44(ptr) Variable UniformConstant
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
129(ps_output): 25(ptr) Variable Function
|
|
130(param): 25(ptr) Variable Function
|
|
Store 34(not_flattened_a) 40
|
|
131: 2 FunctionCall 28(@main(struct-PS_OUTPUT-vf41;) 130(param)
|
|
132:24(PS_OUTPUT) Load 130(param)
|
|
Store 129(ps_output) 132
|
|
135: 127(ptr) AccessChain 129(ps_output) 64
|
|
136: 7(fvec4) Load 135
|
|
Store 134(ps_output.color) 136
|
|
Return
|
|
FunctionEnd
|
|
9(TestFn1(): 7(fvec4) Function None 8
|
|
10: Label
|
|
43: 11 Load 42(g_tex[1])
|
|
46: 16 Load 45(g_samp[1])
|
|
48: 47 SampledImage 43 46
|
|
50: 7(fvec4) ImageSampleImplicitLod 48 49
|
|
ReturnValue 50
|
|
FunctionEnd
|
|
22(TestFn2(t11[3];p1[3];): 7(fvec4) Function None 19
|
|
20(l_tex): 15(ptr) FunctionParameter
|
|
21(l_samp): 18(ptr) FunctionParameter
|
|
23: Label
|
|
54: 53(ptr) AccessChain 20(l_tex) 36
|
|
55: 11 Load 54
|
|
57: 56(ptr) AccessChain 21(l_samp) 36
|
|
58: 16 Load 57
|
|
59: 47 SampledImage 55 58
|
|
60: 7(fvec4) ImageSampleImplicitLod 59 49
|
|
ReturnValue 60
|
|
FunctionEnd
|
|
28(@main(struct-PS_OUTPUT-vf41;): 2 Function None 26
|
|
27(ps_output): 25(ptr) FunctionParameter
|
|
29: Label
|
|
63(local_sampler_array): 18(ptr) Variable Function
|
|
73(local_texture_array): 15(ptr) Variable Function
|
|
85(local_float_array): 84(ptr) Variable Function
|
|
107(aggShadow): 15(ptr) Variable Function
|
|
114(aggShadow): 18(ptr) Variable Function
|
|
121(param): 15(ptr) Variable Function
|
|
123(param): 18(ptr) Variable Function
|
|
66: 16 Load 65(g_samp[0])
|
|
67: 56(ptr) AccessChain 63(local_sampler_array) 64
|
|
Store 67 66
|
|
68: 16 Load 45(g_samp[1])
|
|
69: 56(ptr) AccessChain 63(local_sampler_array) 35
|
|
Store 69 68
|
|
71: 16 Load 70(g_samp[2])
|
|
72: 56(ptr) AccessChain 63(local_sampler_array) 36
|
|
Store 72 71
|
|
75: 11 Load 74(g_tex[0])
|
|
76: 53(ptr) AccessChain 73(local_texture_array) 64
|
|
Store 76 75
|
|
77: 11 Load 42(g_tex[1])
|
|
78: 53(ptr) AccessChain 73(local_texture_array) 35
|
|
Store 78 77
|
|
80: 11 Load 79(g_tex[2])
|
|
81: 53(ptr) AccessChain 73(local_texture_array) 36
|
|
Store 81 80
|
|
95: 94(ptr) AccessChain 93 36
|
|
96: 90 Load 95
|
|
97: 6(float) CompositeExtract 96 0
|
|
99: 98(ptr) AccessChain 85(local_float_array) 64
|
|
Store 99 97
|
|
100: 6(float) CompositeExtract 96 1
|
|
101: 98(ptr) AccessChain 85(local_float_array) 35
|
|
Store 101 100
|
|
102: 6(float) CompositeExtract 96 2
|
|
103: 98(ptr) AccessChain 85(local_float_array) 36
|
|
Store 103 102
|
|
104: 6(float) CompositeExtract 96 3
|
|
105: 98(ptr) AccessChain 85(local_float_array) 37
|
|
Store 105 104
|
|
106: 7(fvec4) FunctionCall 9(TestFn1()
|
|
108: 11 Load 74(g_tex[0])
|
|
109: 53(ptr) AccessChain 107(aggShadow) 64
|
|
Store 109 108
|
|
110: 11 Load 42(g_tex[1])
|
|
111: 53(ptr) AccessChain 107(aggShadow) 35
|
|
Store 111 110
|
|
112: 11 Load 79(g_tex[2])
|
|
113: 53(ptr) AccessChain 107(aggShadow) 36
|
|
Store 113 112
|
|
115: 16 Load 65(g_samp[0])
|
|
116: 56(ptr) AccessChain 114(aggShadow) 64
|
|
Store 116 115
|
|
117: 16 Load 45(g_samp[1])
|
|
118: 56(ptr) AccessChain 114(aggShadow) 35
|
|
Store 118 117
|
|
119: 16 Load 70(g_samp[2])
|
|
120: 56(ptr) AccessChain 114(aggShadow) 36
|
|
Store 120 119
|
|
122: 14 Load 107(aggShadow)
|
|
Store 121(param) 122
|
|
124: 17 Load 114(aggShadow)
|
|
Store 123(param) 124
|
|
125: 7(fvec4) FunctionCall 22(TestFn2(t11[3];p1[3];) 121(param) 123(param)
|
|
126: 7(fvec4) FAdd 106 125
|
|
128: 127(ptr) AccessChain 27(ps_output) 64
|
|
Store 128 126
|
|
Return
|
|
FunctionEnd
|