| hlsl.multiReturn.frag |
| Shader version: 450 |
| gl_FragCoord origin is upper left |
| 0:? Sequence |
| 0:12 Function Definition: foo( (temp structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m}) |
| 0:12 Function Parameters: |
| 0:? Sequence |
| 0:13 Branch: Return with expression |
| 0:13 s: direct index for structure (layout(row_major std140 ) uniform structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m}) |
| 0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(row_major std140 ) uniform structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m} s}) |
| 0:13 Constant: |
| 0:13 0 (const uint) |
| 0:17 Function Definition: main( (temp void) |
| 0:17 Function Parameters: |
| 0:? Sequence |
| 0:18 Function Call: foo( (temp structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m}) |
| 0:? Linker Objects |
| 0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(row_major std140 ) uniform structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m} s}) |
| |
| |
| Linked fragment stage: |
| |
| |
| Shader version: 450 |
| gl_FragCoord origin is upper left |
| 0:? Sequence |
| 0:12 Function Definition: foo( (temp structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m}) |
| 0:12 Function Parameters: |
| 0:? Sequence |
| 0:13 Branch: Return with expression |
| 0:13 s: direct index for structure (layout(row_major std140 ) uniform structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m}) |
| 0:13 'anon@0' (layout(row_major std140 ) uniform block{layout(row_major std140 ) uniform structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m} s}) |
| 0:13 Constant: |
| 0:13 0 (const uint) |
| 0:17 Function Definition: main( (temp void) |
| 0:17 Function Parameters: |
| 0:? Sequence |
| 0:18 Function Call: foo( (temp structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m}) |
| 0:? Linker Objects |
| 0:? 'anon@0' (layout(row_major std140 ) uniform block{layout(row_major std140 ) uniform structure{temp float f, temp 3-component vector of float v, temp 3X3 matrix of float m} s}) |
| |
| // Module Version 10000 |
| // Generated by (magic number): 80001 |
| // Id's are bound by 39 |
| |
| Capability Shader |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint Fragment 4 "main" |
| ExecutionMode 4 OriginUpperLeft |
| Name 4 "main" |
| Name 9 "S" |
| MemberName 9(S) 0 "f" |
| MemberName 9(S) 1 "v" |
| MemberName 9(S) 2 "m" |
| Name 11 "foo(" |
| Name 13 "S" |
| MemberName 13(S) 0 "f" |
| MemberName 13(S) 1 "v" |
| MemberName 13(S) 2 "m" |
| Name 14 "bufName" |
| MemberName 14(bufName) 0 "s" |
| Name 16 "" |
| MemberDecorate 13(S) 0 Offset 0 |
| MemberDecorate 13(S) 1 Offset 16 |
| MemberDecorate 13(S) 2 RowMajor |
| MemberDecorate 13(S) 2 Offset 32 |
| MemberDecorate 13(S) 2 MatrixStride 16 |
| MemberDecorate 14(bufName) 0 Offset 0 |
| Decorate 14(bufName) Block |
| Decorate 16 DescriptorSet 0 |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 32 |
| 7: TypeVector 6(float) 3 |
| 8: TypeMatrix 7(fvec3) 3 |
| 9(S): TypeStruct 6(float) 7(fvec3) 8 |
| 10: TypeFunction 9(S) |
| 13(S): TypeStruct 6(float) 7(fvec3) 8 |
| 14(bufName): TypeStruct 13(S) |
| 15: TypePointer Uniform 14(bufName) |
| 16: 15(ptr) Variable Uniform |
| 17: TypeInt 32 1 |
| 18: 17(int) Constant 0 |
| 19: TypePointer Uniform 13(S) |
| 22: TypePointer Function 9(S) |
| 25: TypePointer Function 6(float) |
| 28: 17(int) Constant 1 |
| 29: TypePointer Function 7(fvec3) |
| 32: 17(int) Constant 2 |
| 33: TypePointer Function 8 |
| 4(main): 2 Function None 3 |
| 5: Label |
| 38: 9(S) FunctionCall 11(foo() |
| Return |
| FunctionEnd |
| 11(foo(): 9(S) Function None 10 |
| 12: Label |
| 23: 22(ptr) Variable Function |
| 20: 19(ptr) AccessChain 16 18 |
| 21: 13(S) Load 20 |
| 24: 6(float) CompositeExtract 21 0 |
| 26: 25(ptr) AccessChain 23 18 |
| Store 26 24 |
| 27: 7(fvec3) CompositeExtract 21 1 |
| 30: 29(ptr) AccessChain 23 28 |
| Store 30 27 |
| 31: 8 CompositeExtract 21 2 |
| 34: 33(ptr) AccessChain 23 32 |
| Store 34 31 |
| 35: 9(S) Load 23 |
| ReturnValue 35 |
| FunctionEnd |