1 hlsl.semantic.geom 2 Shader version: 500 3 invocations = -1 4 max_vertices = 4 5 input primitive = triangles 6 output primitive = line_strip 7 0:? Sequence 8 0:13 Function Definition: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void) 9 0:13 Function Parameters: 10 0:13 'VertexID' ( in 3-element array of uint) 11 0:13 'OutputStream' ( out structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 12 0:? Sequence 13 0:15 Sequence 14 0:15 Sequence 15 0:15 move second child to first child ( temp float) 16 0:? 'OutputStream.clip0' ( out float Position) 17 0:15 clip0: direct index for structure ( temp float) 18 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 19 0:15 Constant: 20 0:15 0 (const int) 21 0:? Sequence 22 0:15 move second child to first child ( temp float) 23 0:15 direct index ( out float ClipDistance) 24 0:? 'OutputStream.clip0' ( out 1-element array of float ClipDistance) 25 0:15 Constant: 26 0:15 0 (const int) 27 0:15 clip0: direct index for structure ( temp float) 28 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 29 0:15 Constant: 30 0:15 1 (const int) 31 0:? Sequence 32 0:15 move second child to first child ( temp float) 33 0:15 direct index ( out float CullDistance) 34 0:? 'OutputStream.cull0' ( out 1-element array of float CullDistance) 35 0:15 Constant: 36 0:15 0 (const int) 37 0:15 cull0: direct index for structure ( temp float) 38 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 39 0:15 Constant: 40 0:15 2 (const int) 41 0:15 move second child to first child ( temp uint) 42 0:? 'OutputStream.vpai' ( out uint ViewportIndex) 43 0:15 vpai: direct index for structure ( temp uint) 44 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 45 0:15 Constant: 46 0:15 3 (const int) 47 0:15 move second child to first child ( temp uint) 48 0:? 'OutputStream.rtai' ( out uint Layer) 49 0:15 rtai: direct index for structure ( temp uint) 50 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 51 0:15 Constant: 52 0:15 4 (const int) 53 0:15 move second child to first child ( temp int) 54 0:? 'OutputStream.ii' (layout( location=0) out int) 55 0:15 ii: direct index for structure ( temp int) 56 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 57 0:15 Constant: 58 0:15 5 (const int) 59 0:15 EmitVertex ( temp void) 60 0:13 Function Definition: main( ( temp void) 61 0:13 Function Parameters: 62 0:? Sequence 63 0:13 move second child to first child ( temp 3-element array of uint) 64 0:? 'VertexID' ( temp 3-element array of uint) 65 0:? 'VertexID' (layout( location=0) in 3-element array of uint) 66 0:13 Function Call: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void) 67 0:? 'VertexID' ( temp 3-element array of uint) 68 0:? 'OutputStream' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 69 0:? Linker Objects 70 0:? 'VertexID' (layout( location=0) in 3-element array of uint) 71 0:? 'OutputStream.clip0' ( out float Position) 72 0:? 'OutputStream.vpai' ( out uint ViewportIndex) 73 0:? 'OutputStream.rtai' ( out uint Layer) 74 0:? 'OutputStream.ii' (layout( location=0) out int) 75 0:? 'OutputStream.clip0' ( out 1-element array of float ClipDistance) 76 0:? 'OutputStream.cull0' ( out 1-element array of float CullDistance) 77 78 79 Linked geometry stage: 80 81 82 Shader version: 500 83 invocations = 1 84 max_vertices = 4 85 input primitive = triangles 86 output primitive = line_strip 87 0:? Sequence 88 0:13 Function Definition: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void) 89 0:13 Function Parameters: 90 0:13 'VertexID' ( in 3-element array of uint) 91 0:13 'OutputStream' ( out structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 92 0:? Sequence 93 0:15 Sequence 94 0:15 Sequence 95 0:15 move second child to first child ( temp float) 96 0:? 'OutputStream.clip0' ( out float Position) 97 0:15 clip0: direct index for structure ( temp float) 98 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 99 0:15 Constant: 100 0:15 0 (const int) 101 0:? Sequence 102 0:15 move second child to first child ( temp float) 103 0:15 direct index ( out float ClipDistance) 104 0:? 'OutputStream.clip0' ( out 1-element array of float ClipDistance) 105 0:15 Constant: 106 0:15 0 (const int) 107 0:15 clip0: direct index for structure ( temp float) 108 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 109 0:15 Constant: 110 0:15 1 (const int) 111 0:? Sequence 112 0:15 move second child to first child ( temp float) 113 0:15 direct index ( out float CullDistance) 114 0:? 'OutputStream.cull0' ( out 1-element array of float CullDistance) 115 0:15 Constant: 116 0:15 0 (const int) 117 0:15 cull0: direct index for structure ( temp float) 118 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 119 0:15 Constant: 120 0:15 2 (const int) 121 0:15 move second child to first child ( temp uint) 122 0:? 'OutputStream.vpai' ( out uint ViewportIndex) 123 0:15 vpai: direct index for structure ( temp uint) 124 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 125 0:15 Constant: 126 0:15 3 (const int) 127 0:15 move second child to first child ( temp uint) 128 0:? 'OutputStream.rtai' ( out uint Layer) 129 0:15 rtai: direct index for structure ( temp uint) 130 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 131 0:15 Constant: 132 0:15 4 (const int) 133 0:15 move second child to first child ( temp int) 134 0:? 'OutputStream.ii' (layout( location=0) out int) 135 0:15 ii: direct index for structure ( temp int) 136 0:15 's' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 137 0:15 Constant: 138 0:15 5 (const int) 139 0:15 EmitVertex ( temp void) 140 0:13 Function Definition: main( ( temp void) 141 0:13 Function Parameters: 142 0:? Sequence 143 0:13 move second child to first child ( temp 3-element array of uint) 144 0:? 'VertexID' ( temp 3-element array of uint) 145 0:? 'VertexID' (layout( location=0) in 3-element array of uint) 146 0:13 Function Call: @main(u1[3];struct-S-f1-f1-f1-u1-u1-i11; ( temp void) 147 0:? 'VertexID' ( temp 3-element array of uint) 148 0:? 'OutputStream' ( temp structure{ temp float clip0, temp float clip0, temp float cull0, temp uint vpai, temp uint rtai, temp int ii}) 149 0:? Linker Objects 150 0:? 'VertexID' (layout( location=0) in 3-element array of uint) 151 0:? 'OutputStream.clip0' ( out float Position) 152 0:? 'OutputStream.vpai' ( out uint ViewportIndex) 153 0:? 'OutputStream.rtai' ( out uint Layer) 154 0:? 'OutputStream.ii' (layout( location=0) out int) 155 0:? 'OutputStream.clip0' ( out 1-element array of float ClipDistance) 156 0:? 'OutputStream.cull0' ( out 1-element array of float CullDistance) 157 158 Validation failed 159 // Module Version 10000 160 // Generated by (magic number): 80007 161 // Id's are bound by 65 162 163 Capability Geometry 164 Capability ClipDistance 165 Capability CullDistance 166 Capability MultiViewport 167 1: ExtInstImport "GLSL.std.450" 168 MemoryModel Logical GLSL450 169 EntryPoint Geometry 4 "main" 20 29 34 40 45 50 57 170 ExecutionMode 4 Triangles 171 ExecutionMode 4 Invocations 1 172 ExecutionMode 4 OutputLineStrip 173 ExecutionMode 4 OutputVertices 4 174 Source HLSL 500 175 Name 4 "main" 176 Name 12 "S" 177 MemberName 12(S) 0 "clip0" 178 MemberName 12(S) 1 "clip0" 179 MemberName 12(S) 2 "cull0" 180 MemberName 12(S) 3 "vpai" 181 MemberName 12(S) 4 "rtai" 182 MemberName 12(S) 5 "ii" 183 Name 17 "@main(u1[3];struct-S-f1-f1-f1-u1-u1-i11;" 184 Name 15 "VertexID" 185 Name 16 "OutputStream" 186 Name 20 "OutputStream.clip0" 187 Name 21 "s" 188 Name 29 "OutputStream.clip0" 189 Name 34 "OutputStream.cull0" 190 Name 40 "OutputStream.vpai" 191 Name 45 "OutputStream.rtai" 192 Name 50 "OutputStream.ii" 193 Name 55 "VertexID" 194 Name 57 "VertexID" 195 Name 59 "OutputStream" 196 Name 60 "param" 197 Name 62 "param" 198 Decorate 20(OutputStream.clip0) BuiltIn Position 199 Decorate 29(OutputStream.clip0) BuiltIn ClipDistance 200 Decorate 34(OutputStream.cull0) BuiltIn CullDistance 201 Decorate 40(OutputStream.vpai) BuiltIn ViewportIndex 202 Decorate 45(OutputStream.rtai) BuiltIn Layer 203 Decorate 50(OutputStream.ii) Location 0 204 Decorate 57(VertexID) Location 0 205 2: TypeVoid 206 3: TypeFunction 2 207 6: TypeInt 32 0 208 7: 6(int) Constant 3 209 8: TypeArray 6(int) 7 210 9: TypePointer Function 8 211 10: TypeFloat 32 212 11: TypeInt 32 1 213 12(S): TypeStruct 10(float) 10(float) 10(float) 6(int) 6(int) 11(int) 214 13: TypePointer Function 12(S) 215 14: TypeFunction 2 9(ptr) 13(ptr) 216 19: TypePointer Output 10(float) 217 20(OutputStream.clip0): 19(ptr) Variable Output 218 22: 11(int) Constant 0 219 23: TypePointer Function 10(float) 220 26: 6(int) Constant 1 221 27: TypeArray 10(float) 26 222 28: TypePointer Output 27 223 29(OutputStream.clip0): 28(ptr) Variable Output 224 30: 11(int) Constant 1 225 34(OutputStream.cull0): 28(ptr) Variable Output 226 35: 11(int) Constant 2 227 39: TypePointer Output 6(int) 228 40(OutputStream.vpai): 39(ptr) Variable Output 229 41: 11(int) Constant 3 230 42: TypePointer Function 6(int) 231 45(OutputStream.rtai): 39(ptr) Variable Output 232 46: 11(int) Constant 4 233 49: TypePointer Output 11(int) 234 50(OutputStream.ii): 49(ptr) Variable Output 235 51: 11(int) Constant 5 236 52: TypePointer Function 11(int) 237 56: TypePointer Input 8 238 57(VertexID): 56(ptr) Variable Input 239 4(main): 2 Function None 3 240 5: Label 241 55(VertexID): 9(ptr) Variable Function 242 59(OutputStream): 13(ptr) Variable Function 243 60(param): 9(ptr) Variable Function 244 62(param): 13(ptr) Variable Function 245 58: 8 Load 57(VertexID) 246 Store 55(VertexID) 58 247 61: 8 Load 55(VertexID) 248 Store 60(param) 61 249 63: 2 FunctionCall 17(@main(u1[3];struct-S-f1-f1-f1-u1-u1-i11;) 60(param) 62(param) 250 64: 12(S) Load 62(param) 251 Store 59(OutputStream) 64 252 Return 253 FunctionEnd 254 17(@main(u1[3];struct-S-f1-f1-f1-u1-u1-i11;): 2 Function None 14 255 15(VertexID): 9(ptr) FunctionParameter 256 16(OutputStream): 13(ptr) FunctionParameter 257 18: Label 258 21(s): 13(ptr) Variable Function 259 24: 23(ptr) AccessChain 21(s) 22 260 25: 10(float) Load 24 261 Store 20(OutputStream.clip0) 25 262 31: 23(ptr) AccessChain 21(s) 30 263 32: 10(float) Load 31 264 33: 19(ptr) AccessChain 29(OutputStream.clip0) 22 265 Store 33 32 266 36: 23(ptr) AccessChain 21(s) 35 267 37: 10(float) Load 36 268 38: 19(ptr) AccessChain 34(OutputStream.cull0) 22 269 Store 38 37 270 43: 42(ptr) AccessChain 21(s) 41 271 44: 6(int) Load 43 272 Store 40(OutputStream.vpai) 44 273 47: 42(ptr) AccessChain 21(s) 46 274 48: 6(int) Load 47 275 Store 45(OutputStream.rtai) 48 276 53: 52(ptr) AccessChain 21(s) 51 277 54: 11(int) Load 53 278 Store 50(OutputStream.ii) 54 279 EmitVertex 280 Return 281 FunctionEnd 282