hlsl.mul-truncate.frag Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:17 Function Definition: @main( ( temp 4-component vector of float) 0:17 Function Parameters: 0:? Sequence 0:19 Sequence 0:19 move second child to first child ( temp float) 0:19 'r00' ( temp float) 0:19 dot-product ( temp float) 0:19 v2: direct index for structure (layout( row_major std140) uniform 2-component vector of float) 0:19 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:19 Constant: 0:19 7 (const uint) 0:19 Construct vec2 ( in 2-component vector of float) 0:19 v3: direct index for structure (layout( row_major std140) uniform 3-component vector of float) 0:19 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:19 Constant: 0:19 6 (const uint) 0:20 Sequence 0:20 move second child to first child ( temp float) 0:20 'r01' ( temp float) 0:20 dot-product ( temp float) 0:20 Construct vec2 ( in 2-component vector of float) 0:20 v4: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 0:20 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:20 Constant: 0:20 5 (const uint) 0:20 v2: direct index for structure (layout( row_major std140) uniform 2-component vector of float) 0:20 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:20 Constant: 0:20 7 (const uint) 0:23 Sequence 0:23 move second child to first child ( temp 4-component vector of float) 0:23 'r10' ( temp 4-component vector of float) 0:23 matrix-times-vector ( temp 4-component vector of float) 0:23 Construct mat3x4 ( uniform 3X4 matrix of float) 0:23 m44: direct index for structure (layout( row_major std140) uniform 4X4 matrix of float) 0:23 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:23 Constant: 0:23 0 (const uint) 0:23 v3: direct index for structure (layout( row_major std140) uniform 3-component vector of float) 0:23 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:23 Constant: 0:23 6 (const uint) 0:24 Sequence 0:24 move second child to first child ( temp 4-component vector of float) 0:24 'r11' ( temp 4-component vector of float) 0:24 matrix-times-vector ( temp 4-component vector of float) 0:24 m34: direct index for structure (layout( row_major std140) uniform 3X4 matrix of float) 0:24 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:24 Constant: 0:24 2 (const uint) 0:24 Construct vec3 ( uniform 3-component vector of float) 0:24 v4: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 0:24 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:24 Constant: 0:24 5 (const uint) 0:27 Sequence 0:27 move second child to first child ( temp 4-component vector of float) 0:27 'r20' ( temp 4-component vector of float) 0:27 vector-times-matrix ( temp 4-component vector of float) 0:27 v3: direct index for structure (layout( row_major std140) uniform 3-component vector of float) 0:27 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:27 Constant: 0:27 6 (const uint) 0:27 Construct mat4x3 ( uniform 4X3 matrix of float) 0:27 m44: direct index for structure (layout( row_major std140) uniform 4X4 matrix of float) 0:27 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:27 Constant: 0:27 0 (const uint) 0:28 Sequence 0:28 move second child to first child ( temp 4-component vector of float) 0:28 'r21' ( temp 4-component vector of float) 0:28 vector-times-matrix ( temp 4-component vector of float) 0:28 Construct vec3 ( uniform 3-component vector of float) 0:28 v4: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 0:28 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:28 Constant: 0:28 5 (const uint) 0:28 m43: direct index for structure (layout( row_major std140) uniform 4X3 matrix of float) 0:28 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:28 Constant: 0:28 1 (const uint) 0:36 Branch: Return with expression 0:36 add ( temp 4-component vector of float) 0:36 add ( temp 4-component vector of float) 0:36 add ( temp 4-component vector of float) 0:36 add ( temp 4-component vector of float) 0:36 add ( temp 4-component vector of float) 0:36 'r10' ( temp 4-component vector of float) 0:36 'r11' ( temp 4-component vector of float) 0:36 'r20' ( temp 4-component vector of float) 0:36 'r21' ( temp 4-component vector of float) 0:36 'r00' ( temp float) 0:36 'r01' ( temp float) 0:17 Function Definition: main( ( temp void) 0:17 Function Parameters: 0:? Sequence 0:17 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:17 Function Call: @main( ( temp 4-component vector of float) 0:? Linker Objects 0:? 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:? '@entryPointOutput' (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: @main( ( temp 4-component vector of float) 0:17 Function Parameters: 0:? Sequence 0:19 Sequence 0:19 move second child to first child ( temp float) 0:19 'r00' ( temp float) 0:19 dot-product ( temp float) 0:19 v2: direct index for structure (layout( row_major std140) uniform 2-component vector of float) 0:19 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:19 Constant: 0:19 7 (const uint) 0:19 Construct vec2 ( in 2-component vector of float) 0:19 v3: direct index for structure (layout( row_major std140) uniform 3-component vector of float) 0:19 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:19 Constant: 0:19 6 (const uint) 0:20 Sequence 0:20 move second child to first child ( temp float) 0:20 'r01' ( temp float) 0:20 dot-product ( temp float) 0:20 Construct vec2 ( in 2-component vector of float) 0:20 v4: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 0:20 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:20 Constant: 0:20 5 (const uint) 0:20 v2: direct index for structure (layout( row_major std140) uniform 2-component vector of float) 0:20 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:20 Constant: 0:20 7 (const uint) 0:23 Sequence 0:23 move second child to first child ( temp 4-component vector of float) 0:23 'r10' ( temp 4-component vector of float) 0:23 matrix-times-vector ( temp 4-component vector of float) 0:23 Construct mat3x4 ( uniform 3X4 matrix of float) 0:23 m44: direct index for structure (layout( row_major std140) uniform 4X4 matrix of float) 0:23 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:23 Constant: 0:23 0 (const uint) 0:23 v3: direct index for structure (layout( row_major std140) uniform 3-component vector of float) 0:23 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:23 Constant: 0:23 6 (const uint) 0:24 Sequence 0:24 move second child to first child ( temp 4-component vector of float) 0:24 'r11' ( temp 4-component vector of float) 0:24 matrix-times-vector ( temp 4-component vector of float) 0:24 m34: direct index for structure (layout( row_major std140) uniform 3X4 matrix of float) 0:24 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:24 Constant: 0:24 2 (const uint) 0:24 Construct vec3 ( uniform 3-component vector of float) 0:24 v4: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 0:24 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:24 Constant: 0:24 5 (const uint) 0:27 Sequence 0:27 move second child to first child ( temp 4-component vector of float) 0:27 'r20' ( temp 4-component vector of float) 0:27 vector-times-matrix ( temp 4-component vector of float) 0:27 v3: direct index for structure (layout( row_major std140) uniform 3-component vector of float) 0:27 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:27 Constant: 0:27 6 (const uint) 0:27 Construct mat4x3 ( uniform 4X3 matrix of float) 0:27 m44: direct index for structure (layout( row_major std140) uniform 4X4 matrix of float) 0:27 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:27 Constant: 0:27 0 (const uint) 0:28 Sequence 0:28 move second child to first child ( temp 4-component vector of float) 0:28 'r21' ( temp 4-component vector of float) 0:28 vector-times-matrix ( temp 4-component vector of float) 0:28 Construct vec3 ( uniform 3-component vector of float) 0:28 v4: direct index for structure (layout( row_major std140) uniform 4-component vector of float) 0:28 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:28 Constant: 0:28 5 (const uint) 0:28 m43: direct index for structure (layout( row_major std140) uniform 4X3 matrix of float) 0:28 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:28 Constant: 0:28 1 (const uint) 0:36 Branch: Return with expression 0:36 add ( temp 4-component vector of float) 0:36 add ( temp 4-component vector of float) 0:36 add ( temp 4-component vector of float) 0:36 add ( temp 4-component vector of float) 0:36 add ( temp 4-component vector of float) 0:36 'r10' ( temp 4-component vector of float) 0:36 'r11' ( temp 4-component vector of float) 0:36 'r20' ( temp 4-component vector of float) 0:36 'r21' ( temp 4-component vector of float) 0:36 'r00' ( temp float) 0:36 'r01' ( temp float) 0:17 Function Definition: main( ( temp void) 0:17 Function Parameters: 0:? Sequence 0:17 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:17 Function Call: @main( ( temp 4-component vector of float) 0:? Linker Objects 0:? 'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4X4 matrix of float m44, layout( row_major std140) uniform 4X3 matrix of float m43, layout( row_major std140) uniform 3X4 matrix of float m34, layout( row_major std140) uniform 2X4 matrix of float m24, layout( row_major std140) uniform 4X2 matrix of float m42, layout( row_major std140) uniform 4-component vector of float v4, layout( row_major std140) uniform 3-component vector of float v3, layout( row_major std140) uniform 2-component vector of float v2}) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) // Module Version 10000 // Generated by (magic number): 80002 // Id's are bound by 139 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "main" 137 ExecutionMode 4 OriginUpperLeft Source HLSL 500 Name 4 "main" Name 9 "@main(" Name 12 "r00" Name 20 "Matrix" MemberName 20(Matrix) 0 "m44" MemberName 20(Matrix) 1 "m43" MemberName 20(Matrix) 2 "m34" MemberName 20(Matrix) 3 "m24" MemberName 20(Matrix) 4 "m42" MemberName 20(Matrix) 5 "v4" MemberName 20(Matrix) 6 "v3" MemberName 20(Matrix) 7 "v2" Name 22 "" Name 36 "r01" Name 48 "r10" Name 74 "r11" Name 86 "r20" Name 109 "r21" Name 137 "@entryPointOutput" MemberDecorate 20(Matrix) 0 RowMajor MemberDecorate 20(Matrix) 0 Offset 0 MemberDecorate 20(Matrix) 0 MatrixStride 16 MemberDecorate 20(Matrix) 1 RowMajor MemberDecorate 20(Matrix) 1 Offset 64 MemberDecorate 20(Matrix) 1 MatrixStride 16 MemberDecorate 20(Matrix) 2 RowMajor MemberDecorate 20(Matrix) 2 Offset 112 MemberDecorate 20(Matrix) 2 MatrixStride 16 MemberDecorate 20(Matrix) 3 RowMajor MemberDecorate 20(Matrix) 3 Offset 176 MemberDecorate 20(Matrix) 3 MatrixStride 16 MemberDecorate 20(Matrix) 4 RowMajor MemberDecorate 20(Matrix) 4 Offset 240 MemberDecorate 20(Matrix) 4 MatrixStride 16 MemberDecorate 20(Matrix) 5 Offset 272 MemberDecorate 20(Matrix) 6 Offset 288 MemberDecorate 20(Matrix) 7 Offset 304 Decorate 20(Matrix) Block Decorate 22 DescriptorSet 0 Decorate 137(@entryPointOutput) Location 0 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8: TypeFunction 7(fvec4) 11: TypePointer Function 6(float) 13: TypeMatrix 7(fvec4) 4 14: TypeVector 6(float) 3 15: TypeMatrix 14(fvec3) 4 16: TypeMatrix 7(fvec4) 3 17: TypeMatrix 7(fvec4) 2 18: TypeVector 6(float) 2 19: TypeMatrix 18(fvec2) 4 20(Matrix): TypeStruct 13 15 16 17 19 7(fvec4) 14(fvec3) 18(fvec2) 21: TypePointer Uniform 20(Matrix) 22: 21(ptr) Variable Uniform 23: TypeInt 32 1 24: 23(int) Constant 7 25: TypePointer Uniform 18(fvec2) 28: 23(int) Constant 6 29: TypePointer Uniform 14(fvec3) 37: 23(int) Constant 5 38: TypePointer Uniform 7(fvec4) 47: TypePointer Function 7(fvec4) 49: 23(int) Constant 0 50: TypePointer Uniform 13 53: 6(float) Constant 1065353216 54: 6(float) Constant 0 75: 23(int) Constant 2 76: TypePointer Uniform 16 116: 23(int) Constant 1 117: TypePointer Uniform 15 136: TypePointer Output 7(fvec4) 137(@entryPointOutput): 136(ptr) Variable Output 4(main): 2 Function None 3 5: Label 138: 7(fvec4) FunctionCall 9(@main() Store 137(@entryPointOutput) 138 Return FunctionEnd 9(@main(): 7(fvec4) Function None 8 10: Label 12(r00): 11(ptr) Variable Function 36(r01): 11(ptr) Variable Function 48(r10): 47(ptr) Variable Function 74(r11): 47(ptr) Variable Function 86(r20): 47(ptr) Variable Function 109(r21): 47(ptr) Variable Function 26: 25(ptr) AccessChain 22 24 27: 18(fvec2) Load 26 30: 29(ptr) AccessChain 22 28 31: 14(fvec3) Load 30 32: 6(float) CompositeExtract 31 0 33: 6(float) CompositeExtract 31 1 34: 18(fvec2) CompositeConstruct 32 33 35: 6(float) Dot 27 34 Store 12(r00) 35 39: 38(ptr) AccessChain 22 37 40: 7(fvec4) Load 39 41: 6(float) CompositeExtract 40 0 42: 6(float) CompositeExtract 40 1 43: 18(fvec2) CompositeConstruct 41 42 44: 25(ptr) AccessChain 22 24 45: 18(fvec2) Load 44 46: 6(float) Dot 43 45 Store 36(r01) 46 51: 50(ptr) AccessChain 22 49 52: 13 Load 51 55: 6(float) CompositeExtract 52 0 0 56: 6(float) CompositeExtract 52 0 1 57: 6(float) CompositeExtract 52 0 2 58: 6(float) CompositeExtract 52 0 3 59: 6(float) CompositeExtract 52 1 0 60: 6(float) CompositeExtract 52 1 1 61: 6(float) CompositeExtract 52 1 2 62: 6(float) CompositeExtract 52 1 3 63: 6(float) CompositeExtract 52 2 0 64: 6(float) CompositeExtract 52 2 1 65: 6(float) CompositeExtract 52 2 2 66: 6(float) CompositeExtract 52 2 3 67: 7(fvec4) CompositeConstruct 55 56 57 58 68: 7(fvec4) CompositeConstruct 59 60 61 62 69: 7(fvec4) CompositeConstruct 63 64 65 66 70: 16 CompositeConstruct 67 68 69 71: 29(ptr) AccessChain 22 28 72: 14(fvec3) Load 71 73: 7(fvec4) MatrixTimesVector 70 72 Store 48(r10) 73 77: 76(ptr) AccessChain 22 75 78: 16 Load 77 79: 38(ptr) AccessChain 22 37 80: 7(fvec4) Load 79 81: 6(float) CompositeExtract 80 0 82: 6(float) CompositeExtract 80 1 83: 6(float) CompositeExtract 80 2 84: 14(fvec3) CompositeConstruct 81 82 83 85: 7(fvec4) MatrixTimesVector 78 84 Store 74(r11) 85 87: 29(ptr) AccessChain 22 28 88: 14(fvec3) Load 87 89: 50(ptr) AccessChain 22 49 90: 13 Load 89 91: 6(float) CompositeExtract 90 0 0 92: 6(float) CompositeExtract 90 0 1 93: 6(float) CompositeExtract 90 0 2 94: 6(float) CompositeExtract 90 1 0 95: 6(float) CompositeExtract 90 1 1 96: 6(float) CompositeExtract 90 1 2 97: 6(float) CompositeExtract 90 2 0 98: 6(float) CompositeExtract 90 2 1 99: 6(float) CompositeExtract 90 2 2 100: 6(float) CompositeExtract 90 3 0 101: 6(float) CompositeExtract 90 3 1 102: 6(float) CompositeExtract 90 3 2 103: 14(fvec3) CompositeConstruct 91 92 93 104: 14(fvec3) CompositeConstruct 94 95 96 105: 14(fvec3) CompositeConstruct 97 98 99 106: 14(fvec3) CompositeConstruct 100 101 102 107: 15 CompositeConstruct 103 104 105 106 108: 7(fvec4) VectorTimesMatrix 88 107 Store 86(r20) 108 110: 38(ptr) AccessChain 22 37 111: 7(fvec4) Load 110 112: 6(float) CompositeExtract 111 0 113: 6(float) CompositeExtract 111 1 114: 6(float) CompositeExtract 111 2 115: 14(fvec3) CompositeConstruct 112 113 114 118: 117(ptr) AccessChain 22 116 119: 15 Load 118 120: 7(fvec4) VectorTimesMatrix 115 119 Store 109(r21) 120 121: 7(fvec4) Load 48(r10) 122: 7(fvec4) Load 74(r11) 123: 7(fvec4) FAdd 121 122 124: 7(fvec4) Load 86(r20) 125: 7(fvec4) FAdd 123 124 126: 7(fvec4) Load 109(r21) 127: 7(fvec4) FAdd 125 126 128: 6(float) Load 12(r00) 129: 7(fvec4) CompositeConstruct 128 128 128 128 130: 7(fvec4) FAdd 127 129 131: 6(float) Load 36(r01) 132: 7(fvec4) CompositeConstruct 131 131 131 131 133: 7(fvec4) FAdd 130 132 ReturnValue 133 FunctionEnd