| hlsl.partialFlattenLocal.vert |
| WARNING: AST will form illegal SPIR-V; need to transform to legalize |
| Shader version: 500 |
| 0:? Sequence |
| 0:12 Function Definition: @main(vf4; ( temp 4-component vector of float) |
| 0:12 Function Parameters: |
| 0:12 'pos' ( in 4-component vector of float) |
| 0:? Sequence |
| 0:14 move second child to first child ( temp texture2D) |
| 0:? 'packed.tex' ( temp texture2D) |
| 0:14 'tex' ( uniform texture2D) |
| 0:15 move second child to first child ( temp 3-component vector of float) |
| 0:15 direct index ( temp 3-component vector of float) |
| 0:? 'packed.pos' ( temp 3-element array of 3-component vector of float) |
| 0:15 Constant: |
| 0:15 0 (const int) |
| 0:? Constant: |
| 0:? 0.000000 |
| 0:? 0.000000 |
| 0:? 0.000000 |
| 0:16 move second child to first child ( temp 2-component vector of float) |
| 0:16 direct index ( temp 2-component vector of float) |
| 0:? 'packed.uv' ( temp 2-element array of 2-component vector of float) |
| 0:16 Constant: |
| 0:16 0 (const int) |
| 0:? Constant: |
| 0:? 0.000000 |
| 0:? 1.000000 |
| 0:17 move second child to first child ( temp float) |
| 0:? 'packed.x' ( temp float) |
| 0:17 Constant: |
| 0:17 1.000000 |
| 0:18 move second child to first child ( temp int) |
| 0:? 'packed.n' ( temp int) |
| 0:18 Constant: |
| 0:18 3 (const int) |
| 0:20 Sequence |
| 0:20 move second child to first child ( temp int) |
| 0:20 'i' ( temp int) |
| 0:20 Constant: |
| 0:20 0 (const int) |
| 0:20 Loop with condition tested first |
| 0:20 Loop Condition |
| 0:20 Compare Less Than ( temp bool) |
| 0:20 'i' ( temp int) |
| 0:20 Constant: |
| 0:20 1 (const int) |
| 0:20 Loop Body |
| 0:? Sequence |
| 0:21 add second child into first child ( temp 2-component vector of float) |
| 0:21 vector swizzle ( temp 2-component vector of float) |
| 0:21 indirect index ( temp 3-component vector of float) |
| 0:? 'packed.pos' ( temp 3-element array of 3-component vector of float) |
| 0:21 'i' ( temp int) |
| 0:21 Sequence |
| 0:21 Constant: |
| 0:21 0 (const int) |
| 0:21 Constant: |
| 0:21 1 (const int) |
| 0:21 indirect index ( temp 2-component vector of float) |
| 0:? 'packed.uv' ( temp 2-element array of 2-component vector of float) |
| 0:21 'i' ( temp int) |
| 0:20 Loop Terminal Expression |
| 0:20 Pre-Increment ( temp int) |
| 0:20 'i' ( temp int) |
| 0:24 Sequence |
| 0:24 Sequence |
| 0:24 move second child to first child ( temp texture2D) |
| 0:? 'packed2.tex' ( temp texture2D) |
| 0:? 'packed.tex' ( temp texture2D) |
| 0:24 move second child to first child ( temp 3-element array of 3-component vector of float) |
| 0:? 'packed2.pos' ( temp 3-element array of 3-component vector of float) |
| 0:? 'packed.pos' ( temp 3-element array of 3-component vector of float) |
| 0:24 move second child to first child ( temp 2-element array of 2-component vector of float) |
| 0:? 'packed2.uv' ( temp 2-element array of 2-component vector of float) |
| 0:? 'packed.uv' ( temp 2-element array of 2-component vector of float) |
| 0:24 move second child to first child ( temp float) |
| 0:? 'packed2.x' ( temp float) |
| 0:? 'packed.x' ( temp float) |
| 0:24 move second child to first child ( temp int) |
| 0:? 'packed2.n' ( temp int) |
| 0:? 'packed.n' ( temp int) |
| 0:26 Branch: Return with expression |
| 0:26 add ( temp 4-component vector of float) |
| 0:26 'pos' ( in 4-component vector of float) |
| 0:? Construct vec4 ( temp 4-component vector of float) |
| 0:26 direct index ( temp 3-component vector of float) |
| 0:? 'packed2.pos' ( temp 3-element array of 3-component vector of float) |
| 0:26 Constant: |
| 0:26 0 (const int) |
| 0:26 Constant: |
| 0:26 0.000000 |
| 0:12 Function Definition: main( ( temp void) |
| 0:12 Function Parameters: |
| 0:? Sequence |
| 0:12 move second child to first child ( temp 4-component vector of float) |
| 0:? 'pos' ( temp 4-component vector of float) |
| 0:? 'pos' (layout( location=0) in 4-component vector of float) |
| 0:12 move second child to first child ( temp 4-component vector of float) |
| 0:? '@entryPointOutput' ( out 4-component vector of float Position) |
| 0:12 Function Call: @main(vf4; ( temp 4-component vector of float) |
| 0:? 'pos' ( temp 4-component vector of float) |
| 0:? Linker Objects |
| 0:? 'tex' ( uniform texture2D) |
| 0:? '@entryPointOutput' ( out 4-component vector of float Position) |
| 0:? 'pos' (layout( location=0) in 4-component vector of float) |
| |
| |
| Linked vertex stage: |
| |
| |
| Shader version: 500 |
| 0:? Sequence |
| 0:12 Function Definition: @main(vf4; ( temp 4-component vector of float) |
| 0:12 Function Parameters: |
| 0:12 'pos' ( in 4-component vector of float) |
| 0:? Sequence |
| 0:14 move second child to first child ( temp texture2D) |
| 0:? 'packed.tex' ( temp texture2D) |
| 0:14 'tex' ( uniform texture2D) |
| 0:15 move second child to first child ( temp 3-component vector of float) |
| 0:15 direct index ( temp 3-component vector of float) |
| 0:? 'packed.pos' ( temp 3-element array of 3-component vector of float) |
| 0:15 Constant: |
| 0:15 0 (const int) |
| 0:? Constant: |
| 0:? 0.000000 |
| 0:? 0.000000 |
| 0:? 0.000000 |
| 0:16 move second child to first child ( temp 2-component vector of float) |
| 0:16 direct index ( temp 2-component vector of float) |
| 0:? 'packed.uv' ( temp 2-element array of 2-component vector of float) |
| 0:16 Constant: |
| 0:16 0 (const int) |
| 0:? Constant: |
| 0:? 0.000000 |
| 0:? 1.000000 |
| 0:17 move second child to first child ( temp float) |
| 0:? 'packed.x' ( temp float) |
| 0:17 Constant: |
| 0:17 1.000000 |
| 0:18 move second child to first child ( temp int) |
| 0:? 'packed.n' ( temp int) |
| 0:18 Constant: |
| 0:18 3 (const int) |
| 0:20 Sequence |
| 0:20 move second child to first child ( temp int) |
| 0:20 'i' ( temp int) |
| 0:20 Constant: |
| 0:20 0 (const int) |
| 0:20 Loop with condition tested first |
| 0:20 Loop Condition |
| 0:20 Compare Less Than ( temp bool) |
| 0:20 'i' ( temp int) |
| 0:20 Constant: |
| 0:20 1 (const int) |
| 0:20 Loop Body |
| 0:? Sequence |
| 0:21 add second child into first child ( temp 2-component vector of float) |
| 0:21 vector swizzle ( temp 2-component vector of float) |
| 0:21 indirect index ( temp 3-component vector of float) |
| 0:? 'packed.pos' ( temp 3-element array of 3-component vector of float) |
| 0:21 'i' ( temp int) |
| 0:21 Sequence |
| 0:21 Constant: |
| 0:21 0 (const int) |
| 0:21 Constant: |
| 0:21 1 (const int) |
| 0:21 indirect index ( temp 2-component vector of float) |
| 0:? 'packed.uv' ( temp 2-element array of 2-component vector of float) |
| 0:21 'i' ( temp int) |
| 0:20 Loop Terminal Expression |
| 0:20 Pre-Increment ( temp int) |
| 0:20 'i' ( temp int) |
| 0:24 Sequence |
| 0:24 Sequence |
| 0:24 move second child to first child ( temp texture2D) |
| 0:? 'packed2.tex' ( temp texture2D) |
| 0:? 'packed.tex' ( temp texture2D) |
| 0:24 move second child to first child ( temp 3-element array of 3-component vector of float) |
| 0:? 'packed2.pos' ( temp 3-element array of 3-component vector of float) |
| 0:? 'packed.pos' ( temp 3-element array of 3-component vector of float) |
| 0:24 move second child to first child ( temp 2-element array of 2-component vector of float) |
| 0:? 'packed2.uv' ( temp 2-element array of 2-component vector of float) |
| 0:? 'packed.uv' ( temp 2-element array of 2-component vector of float) |
| 0:24 move second child to first child ( temp float) |
| 0:? 'packed2.x' ( temp float) |
| 0:? 'packed.x' ( temp float) |
| 0:24 move second child to first child ( temp int) |
| 0:? 'packed2.n' ( temp int) |
| 0:? 'packed.n' ( temp int) |
| 0:26 Branch: Return with expression |
| 0:26 add ( temp 4-component vector of float) |
| 0:26 'pos' ( in 4-component vector of float) |
| 0:? Construct vec4 ( temp 4-component vector of float) |
| 0:26 direct index ( temp 3-component vector of float) |
| 0:? 'packed2.pos' ( temp 3-element array of 3-component vector of float) |
| 0:26 Constant: |
| 0:26 0 (const int) |
| 0:26 Constant: |
| 0:26 0.000000 |
| 0:12 Function Definition: main( ( temp void) |
| 0:12 Function Parameters: |
| 0:? Sequence |
| 0:12 move second child to first child ( temp 4-component vector of float) |
| 0:? 'pos' ( temp 4-component vector of float) |
| 0:? 'pos' (layout( location=0) in 4-component vector of float) |
| 0:12 move second child to first child ( temp 4-component vector of float) |
| 0:? '@entryPointOutput' ( out 4-component vector of float Position) |
| 0:12 Function Call: @main(vf4; ( temp 4-component vector of float) |
| 0:? 'pos' ( temp 4-component vector of float) |
| 0:? Linker Objects |
| 0:? 'tex' ( uniform texture2D) |
| 0:? '@entryPointOutput' ( out 4-component vector of float Position) |
| 0:? 'pos' (layout( location=0) in 4-component vector of float) |
| |
| // Module Version 10000 |
| // Generated by (magic number): 80002 |
| // Id's are bound by 97 |
| |
| Capability Shader |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint Vertex 4 "main" 90 93 |
| Source HLSL 500 |
| Name 4 "main" |
| Name 11 "@main(vf4;" |
| Name 10 "pos" |
| Name 15 "packed.tex" |
| Name 17 "tex" |
| Name 24 "packed.pos" |
| Name 35 "packed.uv" |
| Name 41 "packed.x" |
| Name 43 "packed.n" |
| Name 45 "i" |
| Name 68 "packed2.tex" |
| Name 70 "packed2.pos" |
| Name 72 "packed2.uv" |
| Name 74 "packed2.x" |
| Name 76 "packed2.n" |
| Name 88 "pos" |
| Name 90 "pos" |
| Name 93 "@entryPointOutput" |
| Name 94 "param" |
| Decorate 17(tex) DescriptorSet 0 |
| Decorate 90(pos) Location 0 |
| Decorate 93(@entryPointOutput) BuiltIn Position |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 32 |
| 7: TypeVector 6(float) 4 |
| 8: TypePointer Function 7(fvec4) |
| 9: TypeFunction 7(fvec4) 8(ptr) |
| 13: TypeImage 6(float) 2D sampled format:Unknown |
| 14: TypePointer Function 13 |
| 16: TypePointer UniformConstant 13 |
| 17(tex): 16(ptr) Variable UniformConstant |
| 19: TypeVector 6(float) 3 |
| 20: TypeInt 32 0 |
| 21: 20(int) Constant 3 |
| 22: TypeArray 19(fvec3) 21 |
| 23: TypePointer Function 22 |
| 25: TypeInt 32 1 |
| 26: 25(int) Constant 0 |
| 27: 6(float) Constant 0 |
| 28: 19(fvec3) ConstantComposite 27 27 27 |
| 29: TypePointer Function 19(fvec3) |
| 31: TypeVector 6(float) 2 |
| 32: 20(int) Constant 2 |
| 33: TypeArray 31(fvec2) 32 |
| 34: TypePointer Function 33 |
| 36: 6(float) Constant 1065353216 |
| 37: 31(fvec2) ConstantComposite 27 36 |
| 38: TypePointer Function 31(fvec2) |
| 40: TypePointer Function 6(float) |
| 42: TypePointer Function 25(int) |
| 44: 25(int) Constant 3 |
| 52: 25(int) Constant 1 |
| 53: TypeBool |
| 89: TypePointer Input 7(fvec4) |
| 90(pos): 89(ptr) Variable Input |
| 92: TypePointer Output 7(fvec4) |
| 93(@entryPointOutput): 92(ptr) Variable Output |
| 4(main): 2 Function None 3 |
| 5: Label |
| 88(pos): 8(ptr) Variable Function |
| 94(param): 8(ptr) Variable Function |
| 91: 7(fvec4) Load 90(pos) |
| Store 88(pos) 91 |
| 95: 7(fvec4) Load 88(pos) |
| Store 94(param) 95 |
| 96: 7(fvec4) FunctionCall 11(@main(vf4;) 94(param) |
| Store 93(@entryPointOutput) 96 |
| Return |
| FunctionEnd |
| 11(@main(vf4;): 7(fvec4) Function None 9 |
| 10(pos): 8(ptr) FunctionParameter |
| 12: Label |
| 15(packed.tex): 14(ptr) Variable Function |
| 24(packed.pos): 23(ptr) Variable Function |
| 35(packed.uv): 34(ptr) Variable Function |
| 41(packed.x): 40(ptr) Variable Function |
| 43(packed.n): 42(ptr) Variable Function |
| 45(i): 42(ptr) Variable Function |
| 68(packed2.tex): 14(ptr) Variable Function |
| 70(packed2.pos): 23(ptr) Variable Function |
| 72(packed2.uv): 34(ptr) Variable Function |
| 74(packed2.x): 40(ptr) Variable Function |
| 76(packed2.n): 42(ptr) Variable Function |
| 18: 13 Load 17(tex) |
| Store 15(packed.tex) 18 |
| 30: 29(ptr) AccessChain 24(packed.pos) 26 |
| Store 30 28 |
| 39: 38(ptr) AccessChain 35(packed.uv) 26 |
| Store 39 37 |
| Store 41(packed.x) 36 |
| Store 43(packed.n) 44 |
| Store 45(i) 26 |
| Branch 46 |
| 46: Label |
| LoopMerge 48 49 None |
| Branch 50 |
| 50: Label |
| 51: 25(int) Load 45(i) |
| 54: 53(bool) SLessThan 51 52 |
| BranchConditional 54 47 48 |
| 47: Label |
| 55: 25(int) Load 45(i) |
| 56: 25(int) Load 45(i) |
| 57: 38(ptr) AccessChain 35(packed.uv) 56 |
| 58: 31(fvec2) Load 57 |
| 59: 29(ptr) AccessChain 24(packed.pos) 55 |
| 60: 19(fvec3) Load 59 |
| 61: 31(fvec2) VectorShuffle 60 60 0 1 |
| 62: 31(fvec2) FAdd 61 58 |
| 63: 29(ptr) AccessChain 24(packed.pos) 55 |
| 64: 19(fvec3) Load 63 |
| 65: 19(fvec3) VectorShuffle 64 62 3 4 2 |
| Store 63 65 |
| Branch 49 |
| 49: Label |
| 66: 25(int) Load 45(i) |
| 67: 25(int) IAdd 66 52 |
| Store 45(i) 67 |
| Branch 46 |
| 48: Label |
| 69: 13 Load 15(packed.tex) |
| Store 68(packed2.tex) 69 |
| 71: 22 Load 24(packed.pos) |
| Store 70(packed2.pos) 71 |
| 73: 33 Load 35(packed.uv) |
| Store 72(packed2.uv) 73 |
| 75: 6(float) Load 41(packed.x) |
| Store 74(packed2.x) 75 |
| 77: 25(int) Load 43(packed.n) |
| Store 76(packed2.n) 77 |
| 78: 7(fvec4) Load 10(pos) |
| 79: 29(ptr) AccessChain 70(packed2.pos) 26 |
| 80: 19(fvec3) Load 79 |
| 81: 6(float) CompositeExtract 80 0 |
| 82: 6(float) CompositeExtract 80 1 |
| 83: 6(float) CompositeExtract 80 2 |
| 84: 7(fvec4) CompositeConstruct 81 82 83 27 |
| 85: 7(fvec4) FAdd 78 84 |
| ReturnValue 85 |
| FunctionEnd |