| hlsl.semantic.geom |
| Shader version: 500 |
| invocations = -1 |
| max_vertices = 4 |
| input primitive = triangles |
| output primitive = line_strip |
| 0:? Sequence |
| 0:12 Function Definition: @main(u1[3];struct-S-f1-f1-u1-u1-i11; ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Function Parameters: |
| 0:12 'VertexID' ( in 3-element array of uint) |
| 0:12 'OutputStream' ( out structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:? Sequence |
| 0:14 Branch: Return with expression |
| 0:14 's' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Function Definition: main( ( temp void) |
| 0:12 Function Parameters: |
| 0:? Sequence |
| 0:12 move second child to first child ( temp 3-element array of uint) |
| 0:? 'VertexID' ( temp 3-element array of uint) |
| 0:? 'VertexID' (layout( location=0) in 3-element array of uint) |
| 0:12 Sequence |
| 0:12 move second child to first child ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Function Call: @main(u1[3];struct-S-f1-f1-u1-u1-i11; ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:? 'VertexID' ( temp 3-element array of uint) |
| 0:? 'OutputStream' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:? Sequence |
| 0:12 move second child to first child ( temp float) |
| 0:12 direct index ( temp float) |
| 0:? 'OutputStream_clip0' ( out 1-element array of float ClipDistance) |
| 0:12 Constant: |
| 0:12 0 (const int) |
| 0:12 clip0: direct index for structure ( temp float) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 0 (const int) |
| 0:? Sequence |
| 0:12 move second child to first child ( temp float) |
| 0:12 direct index ( temp float) |
| 0:? 'OutputStream_cull0' ( out 1-element array of float CullDistance) |
| 0:12 Constant: |
| 0:12 0 (const int) |
| 0:12 cull0: direct index for structure ( temp float) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 1 (const int) |
| 0:12 move second child to first child ( temp uint) |
| 0:? 'OutputStream_vpai' ( out uint ViewportIndex) |
| 0:12 vpai: direct index for structure ( temp uint) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 2 (const int) |
| 0:12 move second child to first child ( temp uint) |
| 0:? 'OutputStream_rtai' ( out uint Layer) |
| 0:12 rtai: direct index for structure ( temp uint) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 3 (const int) |
| 0:12 move second child to first child ( temp int) |
| 0:12 ii: direct index for structure ( temp int) |
| 0:12 '@entryPointOutput' (layout( location=0) out structure{ temp int ii}) |
| 0:12 Constant: |
| 0:12 0 (const int) |
| 0:12 ii: direct index for structure ( temp int) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 4 (const int) |
| 0:? Linker Objects |
| 0:? '@entryPointOutput' (layout( location=0) out structure{ temp int ii}) |
| 0:? 'VertexID' (layout( location=0) in 3-element array of uint) |
| 0:? 'OutputStream' (layout( location=1) out structure{ temp int ii}) |
| 0:? 'OutputStream_clip0' ( out 1-element array of float ClipDistance) |
| 0:? 'OutputStream_cull0' ( out 1-element array of float CullDistance) |
| 0:? 'OutputStream_vpai' ( out uint ViewportIndex) |
| |
| |
| Linked geometry stage: |
| |
| |
| Shader version: 500 |
| invocations = 1 |
| max_vertices = 4 |
| input primitive = triangles |
| output primitive = line_strip |
| 0:? Sequence |
| 0:12 Function Definition: @main(u1[3];struct-S-f1-f1-u1-u1-i11; ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Function Parameters: |
| 0:12 'VertexID' ( in 3-element array of uint) |
| 0:12 'OutputStream' ( out structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:? Sequence |
| 0:14 Branch: Return with expression |
| 0:14 's' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Function Definition: main( ( temp void) |
| 0:12 Function Parameters: |
| 0:? Sequence |
| 0:12 move second child to first child ( temp 3-element array of uint) |
| 0:? 'VertexID' ( temp 3-element array of uint) |
| 0:? 'VertexID' (layout( location=0) in 3-element array of uint) |
| 0:12 Sequence |
| 0:12 move second child to first child ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Function Call: @main(u1[3];struct-S-f1-f1-u1-u1-i11; ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:? 'VertexID' ( temp 3-element array of uint) |
| 0:? 'OutputStream' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:? Sequence |
| 0:12 move second child to first child ( temp float) |
| 0:12 direct index ( temp float) |
| 0:? 'OutputStream_clip0' ( out 1-element array of float ClipDistance) |
| 0:12 Constant: |
| 0:12 0 (const int) |
| 0:12 clip0: direct index for structure ( temp float) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 0 (const int) |
| 0:? Sequence |
| 0:12 move second child to first child ( temp float) |
| 0:12 direct index ( temp float) |
| 0:? 'OutputStream_cull0' ( out 1-element array of float CullDistance) |
| 0:12 Constant: |
| 0:12 0 (const int) |
| 0:12 cull0: direct index for structure ( temp float) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 1 (const int) |
| 0:12 move second child to first child ( temp uint) |
| 0:? 'OutputStream_vpai' ( out uint ViewportIndex) |
| 0:12 vpai: direct index for structure ( temp uint) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 2 (const int) |
| 0:12 move second child to first child ( temp uint) |
| 0:? 'OutputStream_rtai' ( out uint Layer) |
| 0:12 rtai: direct index for structure ( temp uint) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 3 (const int) |
| 0:12 move second child to first child ( temp int) |
| 0:12 ii: direct index for structure ( temp int) |
| 0:12 '@entryPointOutput' (layout( location=0) out structure{ temp int ii}) |
| 0:12 Constant: |
| 0:12 0 (const int) |
| 0:12 ii: direct index for structure ( temp int) |
| 0:12 'flattenTemp' ( temp structure{ temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) |
| 0:12 Constant: |
| 0:12 4 (const int) |
| 0:? Linker Objects |
| 0:? '@entryPointOutput' (layout( location=0) out structure{ temp int ii}) |
| 0:? 'VertexID' (layout( location=0) in 3-element array of uint) |
| 0:? 'OutputStream' (layout( location=1) out structure{ temp int ii}) |
| 0:? 'OutputStream_clip0' ( out 1-element array of float ClipDistance) |
| 0:? 'OutputStream_cull0' ( out 1-element array of float CullDistance) |
| 0:? 'OutputStream_vpai' ( out uint ViewportIndex) |
| |
| // Module Version 10000 |
| // Generated by (magic number): 80001 |
| // Id's are bound by 71 |
| |
| Capability Geometry |
| Capability ClipDistance |
| Capability CullDistance |
| Capability MultiViewport |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint Geometry 4 "main" 25 37 44 50 55 61 70 |
| ExecutionMode 4 Triangles |
| ExecutionMode 4 Invocations 1 |
| ExecutionMode 4 OutputLineStrip |
| ExecutionMode 4 OutputVertices 4 |
| Source HLSL 500 |
| Name 4 "main" |
| Name 12 "S" |
| MemberName 12(S) 0 "clip0" |
| MemberName 12(S) 1 "cull0" |
| MemberName 12(S) 2 "vpai" |
| MemberName 12(S) 3 "rtai" |
| MemberName 12(S) 4 "ii" |
| Name 17 "@main(u1[3];struct-S-f1-f1-u1-u1-i11;" |
| Name 15 "VertexID" |
| Name 16 "OutputStream" |
| Name 19 "s" |
| Name 23 "VertexID" |
| Name 25 "VertexID" |
| Name 27 "flattenTemp" |
| Name 28 "OutputStream" |
| Name 29 "param" |
| Name 31 "param" |
| Name 37 "OutputStream_clip0" |
| Name 44 "OutputStream_cull0" |
| Name 50 "OutputStream_vpai" |
| Name 55 "OutputStream_rtai" |
| Name 59 "S" |
| MemberName 59(S) 0 "ii" |
| Name 61 "@entryPointOutput" |
| Name 68 "S" |
| MemberName 68(S) 0 "ii" |
| Name 70 "OutputStream" |
| Decorate 25(VertexID) Location 0 |
| Decorate 37(OutputStream_clip0) BuiltIn ClipDistance |
| Decorate 44(OutputStream_cull0) BuiltIn CullDistance |
| Decorate 50(OutputStream_vpai) BuiltIn ViewportIndex |
| Decorate 55(OutputStream_rtai) BuiltIn Layer |
| Decorate 61(@entryPointOutput) Location 0 |
| Decorate 70(OutputStream) Location 1 |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeInt 32 0 |
| 7: 6(int) Constant 3 |
| 8: TypeArray 6(int) 7 |
| 9: TypePointer Function 8 |
| 10: TypeFloat 32 |
| 11: TypeInt 32 1 |
| 12(S): TypeStruct 10(float) 10(float) 6(int) 6(int) 11(int) |
| 13: TypePointer Function 12(S) |
| 14: TypeFunction 12(S) 9(ptr) 13(ptr) |
| 24: TypePointer Input 8 |
| 25(VertexID): 24(ptr) Variable Input |
| 34: 6(int) Constant 1 |
| 35: TypeArray 10(float) 34 |
| 36: TypePointer Output 35 |
| 37(OutputStream_clip0): 36(ptr) Variable Output |
| 38: 11(int) Constant 0 |
| 39: TypePointer Function 10(float) |
| 42: TypePointer Output 10(float) |
| 44(OutputStream_cull0): 36(ptr) Variable Output |
| 45: 11(int) Constant 1 |
| 49: TypePointer Output 6(int) |
| 50(OutputStream_vpai): 49(ptr) Variable Output |
| 51: 11(int) Constant 2 |
| 52: TypePointer Function 6(int) |
| 55(OutputStream_rtai): 49(ptr) Variable Output |
| 56: 11(int) Constant 3 |
| 59(S): TypeStruct 11(int) |
| 60: TypePointer Output 59(S) |
| 61(@entryPointOutput): 60(ptr) Variable Output |
| 62: 11(int) Constant 4 |
| 63: TypePointer Function 11(int) |
| 66: TypePointer Output 11(int) |
| 68(S): TypeStruct 11(int) |
| 69: TypePointer Output 68(S) |
| 70(OutputStream): 69(ptr) Variable Output |
| 4(main): 2 Function None 3 |
| 5: Label |
| 23(VertexID): 9(ptr) Variable Function |
| 27(flattenTemp): 13(ptr) Variable Function |
| 28(OutputStream): 13(ptr) Variable Function |
| 29(param): 9(ptr) Variable Function |
| 31(param): 13(ptr) Variable Function |
| 26: 8 Load 25(VertexID) |
| Store 23(VertexID) 26 |
| 30: 8 Load 23(VertexID) |
| Store 29(param) 30 |
| 32: 12(S) FunctionCall 17(@main(u1[3];struct-S-f1-f1-u1-u1-i11;) 29(param) 31(param) |
| 33: 12(S) Load 31(param) |
| Store 28(OutputStream) 33 |
| Store 27(flattenTemp) 32 |
| 40: 39(ptr) AccessChain 27(flattenTemp) 38 |
| 41: 10(float) Load 40 |
| 43: 42(ptr) AccessChain 37(OutputStream_clip0) 38 |
| Store 43 41 |
| 46: 39(ptr) AccessChain 27(flattenTemp) 45 |
| 47: 10(float) Load 46 |
| 48: 42(ptr) AccessChain 44(OutputStream_cull0) 38 |
| Store 48 47 |
| 53: 52(ptr) AccessChain 27(flattenTemp) 51 |
| 54: 6(int) Load 53 |
| Store 50(OutputStream_vpai) 54 |
| 57: 52(ptr) AccessChain 27(flattenTemp) 56 |
| 58: 6(int) Load 57 |
| Store 55(OutputStream_rtai) 58 |
| 64: 63(ptr) AccessChain 27(flattenTemp) 62 |
| 65: 11(int) Load 64 |
| 67: 66(ptr) AccessChain 61(@entryPointOutput) 38 |
| Store 67 65 |
| Return |
| FunctionEnd |
| 17(@main(u1[3];struct-S-f1-f1-u1-u1-i11;): 12(S) Function None 14 |
| 15(VertexID): 9(ptr) FunctionParameter |
| 16(OutputStream): 13(ptr) FunctionParameter |
| 18: Label |
| 19(s): 13(ptr) Variable Function |
| 20: 12(S) Load 19(s) |
| ReturnValue 20 |
| FunctionEnd |