| hlsl.basic.geom |
| Shader version: 500 |
| invocations = -1 |
| max_vertices = 4 |
| input primitive = triangles |
| output primitive = line_strip |
| 0:? Sequence |
| 0:16 Function Definition: @main(u1[3];u1[3];struct-PSInput-f1-i11; ( temp void) |
| 0:16 Function Parameters: |
| 0:16 'VertexID' ( in 3-element array of uint) |
| 0:16 'test' ( in 3-element array of uint) |
| 0:16 'OutputStream' ( out structure{ temp float myfloat, temp int something}) |
| 0:? Sequence |
| 0:19 move second child to first child ( temp float) |
| 0:19 myfloat: direct index for structure ( temp float) |
| 0:19 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:19 Constant: |
| 0:19 0 (const int) |
| 0:19 Convert uint to float ( temp float) |
| 0:19 add ( temp uint) |
| 0:19 add ( temp uint) |
| 0:19 direct index ( temp uint) |
| 0:19 'test' ( in 3-element array of uint) |
| 0:19 Constant: |
| 0:19 0 (const int) |
| 0:19 direct index ( temp uint) |
| 0:19 'test' ( in 3-element array of uint) |
| 0:19 Constant: |
| 0:19 1 (const int) |
| 0:19 direct index ( temp uint) |
| 0:19 'test' ( in 3-element array of uint) |
| 0:19 Constant: |
| 0:19 2 (const int) |
| 0:20 move second child to first child ( temp int) |
| 0:20 something: direct index for structure ( temp int) |
| 0:20 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:20 Constant: |
| 0:20 1 (const int) |
| 0:20 Convert uint to int ( temp int) |
| 0:20 direct index ( temp uint) |
| 0:20 'VertexID' ( in 3-element array of uint) |
| 0:20 Constant: |
| 0:20 0 (const int) |
| 0:22 Sequence |
| 0:22 Sequence |
| 0:22 move second child to first child ( temp float) |
| 0:? 'OutputStream.myfloat' (layout( location=0) out float) |
| 0:22 myfloat: direct index for structure ( temp float) |
| 0:22 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:22 Constant: |
| 0:22 0 (const int) |
| 0:22 move second child to first child ( temp int) |
| 0:? 'OutputStream.something' (layout( location=1) out int) |
| 0:22 something: direct index for structure ( temp int) |
| 0:22 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:22 Constant: |
| 0:22 1 (const int) |
| 0:22 EmitVertex ( temp void) |
| 0:23 Sequence |
| 0:23 Sequence |
| 0:23 move second child to first child ( temp float) |
| 0:? 'OutputStream.myfloat' (layout( location=0) out float) |
| 0:23 myfloat: direct index for structure ( temp float) |
| 0:23 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:23 Constant: |
| 0:23 0 (const int) |
| 0:23 move second child to first child ( temp int) |
| 0:? 'OutputStream.something' (layout( location=1) out int) |
| 0:23 something: direct index for structure ( temp int) |
| 0:23 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:23 Constant: |
| 0:23 1 (const int) |
| 0:23 EmitVertex ( temp void) |
| 0:24 EndPrimitive ( temp void) |
| 0:16 Function Definition: main( ( temp void) |
| 0:16 Function Parameters: |
| 0:? Sequence |
| 0:16 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:16 move second child to first child ( temp 3-element array of uint) |
| 0:? 'test' ( temp 3-element array of uint) |
| 0:? 'test' (layout( location=1) in 3-element array of uint) |
| 0:16 Function Call: @main(u1[3];u1[3];struct-PSInput-f1-i11; ( temp void) |
| 0:? 'VertexID' ( temp 3-element array of uint) |
| 0:? 'test' ( temp 3-element array of uint) |
| 0:? 'OutputStream' ( temp structure{ temp float myfloat, temp int something}) |
| 0:? Linker Objects |
| 0:? 'VertexID' (layout( location=0) in 3-element array of uint) |
| 0:? 'test' (layout( location=1) in 3-element array of uint) |
| 0:? 'OutputStream.myfloat' (layout( location=0) out float) |
| 0:? 'OutputStream.something' (layout( location=1) out int) |
| |
| |
| Linked geometry stage: |
| |
| |
| Shader version: 500 |
| invocations = 1 |
| max_vertices = 4 |
| input primitive = triangles |
| output primitive = line_strip |
| 0:? Sequence |
| 0:16 Function Definition: @main(u1[3];u1[3];struct-PSInput-f1-i11; ( temp void) |
| 0:16 Function Parameters: |
| 0:16 'VertexID' ( in 3-element array of uint) |
| 0:16 'test' ( in 3-element array of uint) |
| 0:16 'OutputStream' ( out structure{ temp float myfloat, temp int something}) |
| 0:? Sequence |
| 0:19 move second child to first child ( temp float) |
| 0:19 myfloat: direct index for structure ( temp float) |
| 0:19 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:19 Constant: |
| 0:19 0 (const int) |
| 0:19 Convert uint to float ( temp float) |
| 0:19 add ( temp uint) |
| 0:19 add ( temp uint) |
| 0:19 direct index ( temp uint) |
| 0:19 'test' ( in 3-element array of uint) |
| 0:19 Constant: |
| 0:19 0 (const int) |
| 0:19 direct index ( temp uint) |
| 0:19 'test' ( in 3-element array of uint) |
| 0:19 Constant: |
| 0:19 1 (const int) |
| 0:19 direct index ( temp uint) |
| 0:19 'test' ( in 3-element array of uint) |
| 0:19 Constant: |
| 0:19 2 (const int) |
| 0:20 move second child to first child ( temp int) |
| 0:20 something: direct index for structure ( temp int) |
| 0:20 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:20 Constant: |
| 0:20 1 (const int) |
| 0:20 Convert uint to int ( temp int) |
| 0:20 direct index ( temp uint) |
| 0:20 'VertexID' ( in 3-element array of uint) |
| 0:20 Constant: |
| 0:20 0 (const int) |
| 0:22 Sequence |
| 0:22 Sequence |
| 0:22 move second child to first child ( temp float) |
| 0:? 'OutputStream.myfloat' (layout( location=0) out float) |
| 0:22 myfloat: direct index for structure ( temp float) |
| 0:22 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:22 Constant: |
| 0:22 0 (const int) |
| 0:22 move second child to first child ( temp int) |
| 0:? 'OutputStream.something' (layout( location=1) out int) |
| 0:22 something: direct index for structure ( temp int) |
| 0:22 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:22 Constant: |
| 0:22 1 (const int) |
| 0:22 EmitVertex ( temp void) |
| 0:23 Sequence |
| 0:23 Sequence |
| 0:23 move second child to first child ( temp float) |
| 0:? 'OutputStream.myfloat' (layout( location=0) out float) |
| 0:23 myfloat: direct index for structure ( temp float) |
| 0:23 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:23 Constant: |
| 0:23 0 (const int) |
| 0:23 move second child to first child ( temp int) |
| 0:? 'OutputStream.something' (layout( location=1) out int) |
| 0:23 something: direct index for structure ( temp int) |
| 0:23 'Vert' ( temp structure{ temp float myfloat, temp int something}) |
| 0:23 Constant: |
| 0:23 1 (const int) |
| 0:23 EmitVertex ( temp void) |
| 0:24 EndPrimitive ( temp void) |
| 0:16 Function Definition: main( ( temp void) |
| 0:16 Function Parameters: |
| 0:? Sequence |
| 0:16 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:16 move second child to first child ( temp 3-element array of uint) |
| 0:? 'test' ( temp 3-element array of uint) |
| 0:? 'test' (layout( location=1) in 3-element array of uint) |
| 0:16 Function Call: @main(u1[3];u1[3];struct-PSInput-f1-i11; ( temp void) |
| 0:? 'VertexID' ( temp 3-element array of uint) |
| 0:? 'test' ( temp 3-element array of uint) |
| 0:? 'OutputStream' ( temp structure{ temp float myfloat, temp int something}) |
| 0:? Linker Objects |
| 0:? 'VertexID' (layout( location=0) in 3-element array of uint) |
| 0:? 'test' (layout( location=1) in 3-element array of uint) |
| 0:? 'OutputStream.myfloat' (layout( location=0) out float) |
| 0:? 'OutputStream.something' (layout( location=1) out int) |
| |
| // Module Version 10000 |
| // Generated by (magic number): 80003 |
| // Id's are bound by 68 |
| |
| Capability Geometry |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint Geometry 4 "main" 42 46 55 58 |
| ExecutionMode 4 Triangles |
| ExecutionMode 4 Invocations 1 |
| ExecutionMode 4 OutputLineStrip |
| ExecutionMode 4 OutputVertices 4 |
| Source HLSL 500 |
| Name 4 "main" |
| Name 12 "PSInput" |
| MemberName 12(PSInput) 0 "myfloat" |
| MemberName 12(PSInput) 1 "something" |
| Name 18 "@main(u1[3];u1[3];struct-PSInput-f1-i11;" |
| Name 15 "VertexID" |
| Name 16 "test" |
| Name 17 "OutputStream" |
| Name 20 "Vert" |
| Name 42 "OutputStream.myfloat" |
| Name 46 "OutputStream.something" |
| Name 53 "VertexID" |
| Name 55 "VertexID" |
| Name 57 "test" |
| Name 58 "test" |
| Name 60 "OutputStream" |
| Name 61 "param" |
| Name 63 "param" |
| Name 65 "param" |
| Decorate 42(OutputStream.myfloat) Location 0 |
| Decorate 46(OutputStream.something) Location 1 |
| Decorate 55(VertexID) Location 0 |
| Decorate 58(test) 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(PSInput): TypeStruct 10(float) 11(int) |
| 13: TypePointer Function 12(PSInput) |
| 14: TypeFunction 2 9(ptr) 9(ptr) 13(ptr) |
| 21: 11(int) Constant 0 |
| 22: TypePointer Function 6(int) |
| 25: 11(int) Constant 1 |
| 29: 11(int) Constant 2 |
| 34: TypePointer Function 10(float) |
| 39: TypePointer Function 11(int) |
| 41: TypePointer Output 10(float) |
| 42(OutputStream.myfloat): 41(ptr) Variable Output |
| 45: TypePointer Output 11(int) |
| 46(OutputStream.something): 45(ptr) Variable Output |
| 54: TypePointer Input 8 |
| 55(VertexID): 54(ptr) Variable Input |
| 58(test): 54(ptr) Variable Input |
| 4(main): 2 Function None 3 |
| 5: Label |
| 53(VertexID): 9(ptr) Variable Function |
| 57(test): 9(ptr) Variable Function |
| 60(OutputStream): 13(ptr) Variable Function |
| 61(param): 9(ptr) Variable Function |
| 63(param): 9(ptr) Variable Function |
| 65(param): 13(ptr) Variable Function |
| 56: 8 Load 55(VertexID) |
| Store 53(VertexID) 56 |
| 59: 8 Load 58(test) |
| Store 57(test) 59 |
| 62: 8 Load 53(VertexID) |
| Store 61(param) 62 |
| 64: 8 Load 57(test) |
| Store 63(param) 64 |
| 66: 2 FunctionCall 18(@main(u1[3];u1[3];struct-PSInput-f1-i11;) 61(param) 63(param) 65(param) |
| 67: 12(PSInput) Load 65(param) |
| Store 60(OutputStream) 67 |
| Return |
| FunctionEnd |
| 18(@main(u1[3];u1[3];struct-PSInput-f1-i11;): 2 Function None 14 |
| 15(VertexID): 9(ptr) FunctionParameter |
| 16(test): 9(ptr) FunctionParameter |
| 17(OutputStream): 13(ptr) FunctionParameter |
| 19: Label |
| 20(Vert): 13(ptr) Variable Function |
| 23: 22(ptr) AccessChain 16(test) 21 |
| 24: 6(int) Load 23 |
| 26: 22(ptr) AccessChain 16(test) 25 |
| 27: 6(int) Load 26 |
| 28: 6(int) IAdd 24 27 |
| 30: 22(ptr) AccessChain 16(test) 29 |
| 31: 6(int) Load 30 |
| 32: 6(int) IAdd 28 31 |
| 33: 10(float) ConvertUToF 32 |
| 35: 34(ptr) AccessChain 20(Vert) 21 |
| Store 35 33 |
| 36: 22(ptr) AccessChain 15(VertexID) 21 |
| 37: 6(int) Load 36 |
| 38: 11(int) Bitcast 37 |
| 40: 39(ptr) AccessChain 20(Vert) 25 |
| Store 40 38 |
| 43: 34(ptr) AccessChain 20(Vert) 21 |
| 44: 10(float) Load 43 |
| Store 42(OutputStream.myfloat) 44 |
| 47: 39(ptr) AccessChain 20(Vert) 25 |
| 48: 11(int) Load 47 |
| Store 46(OutputStream.something) 48 |
| EmitVertex |
| 49: 34(ptr) AccessChain 20(Vert) 21 |
| 50: 10(float) Load 49 |
| Store 42(OutputStream.myfloat) 50 |
| 51: 39(ptr) AccessChain 20(Vert) 25 |
| 52: 11(int) Load 51 |
| Store 46(OutputStream.something) 52 |
| EmitVertex |
| EndPrimitive |
| Return |
| FunctionEnd |