1 hlsl.clipdistance-5.vert 2 Shader version: 500 3 0:? Sequence 4 0:11 Function Definition: @main(struct-VS_INPUT-vf41; ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 5 0:11 Function Parameters: 6 0:11 'v' ( const (read only) structure{ temp 4-component vector of float Position}) 7 0:? Sequence 8 0:13 move second child to first child ( temp 4-component vector of float) 9 0:13 Position: direct index for structure ( temp 4-component vector of float) 10 0:13 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 11 0:13 Constant: 12 0:13 0 (const int) 13 0:13 Constant: 14 0:13 0.000000 15 0:13 0.000000 16 0:13 0.000000 17 0:13 0.000000 18 0:15 move second child to first child ( temp float) 19 0:15 direct index ( temp float) 20 0:15 direct index ( temp 2-component vector of float) 21 0:15 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 22 0:15 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 23 0:15 Constant: 24 0:15 1 (const int) 25 0:15 Constant: 26 0:15 0 (const int) 27 0:15 Constant: 28 0:15 0 (const int) 29 0:15 Constant: 30 0:15 1.000000 31 0:16 move second child to first child ( temp float) 32 0:16 direct index ( temp float) 33 0:16 direct index ( temp 2-component vector of float) 34 0:16 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 35 0:16 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 36 0:16 Constant: 37 0:16 1 (const int) 38 0:16 Constant: 39 0:16 0 (const int) 40 0:16 Constant: 41 0:16 1 (const int) 42 0:16 Constant: 43 0:16 2.000000 44 0:17 move second child to first child ( temp float) 45 0:17 direct index ( temp float) 46 0:17 direct index ( temp 2-component vector of float) 47 0:17 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 48 0:17 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 49 0:17 Constant: 50 0:17 1 (const int) 51 0:17 Constant: 52 0:17 1 (const int) 53 0:17 Constant: 54 0:17 0 (const int) 55 0:17 Constant: 56 0:17 3.000000 57 0:18 move second child to first child ( temp float) 58 0:18 direct index ( temp float) 59 0:18 direct index ( temp 2-component vector of float) 60 0:18 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 61 0:18 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 62 0:18 Constant: 63 0:18 1 (const int) 64 0:18 Constant: 65 0:18 1 (const int) 66 0:18 Constant: 67 0:18 1 (const int) 68 0:18 Constant: 69 0:18 4.000000 70 0:20 Branch: Return with expression 71 0:20 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 72 0:11 Function Definition: main( ( temp void) 73 0:11 Function Parameters: 74 0:? Sequence 75 0:11 Sequence 76 0:11 move second child to first child ( temp 4-component vector of float) 77 0:11 Position: direct index for structure ( temp 4-component vector of float) 78 0:? 'v' ( temp structure{ temp 4-component vector of float Position}) 79 0:11 Constant: 80 0:11 0 (const int) 81 0:? 'v.Position' (layout( location=0) in 4-component vector of float) 82 0:11 Sequence 83 0:11 move second child to first child ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 84 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 85 0:11 Function Call: @main(struct-VS_INPUT-vf41; ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 86 0:? 'v' ( temp structure{ temp 4-component vector of float Position}) 87 0:11 move second child to first child ( temp 4-component vector of float) 88 0:? '@entryPointOutput.Position' ( out 4-component vector of float Position) 89 0:11 Position: direct index for structure ( temp 4-component vector of float) 90 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 91 0:11 Constant: 92 0:11 0 (const int) 93 0:? Sequence 94 0:11 move second child to first child ( temp float) 95 0:11 direct index ( out float ClipDistance) 96 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 97 0:11 Constant: 98 0:11 0 (const int) 99 0:11 direct index ( temp float) 100 0:11 direct index ( temp 2-component vector of float) 101 0:11 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 102 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 103 0:11 Constant: 104 0:11 1 (const int) 105 0:11 Constant: 106 0:11 0 (const int) 107 0:11 Constant: 108 0:11 0 (const int) 109 0:11 move second child to first child ( temp float) 110 0:11 direct index ( out float ClipDistance) 111 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 112 0:11 Constant: 113 0:11 1 (const int) 114 0:11 direct index ( temp float) 115 0:11 direct index ( temp 2-component vector of float) 116 0:11 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 117 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 118 0:11 Constant: 119 0:11 1 (const int) 120 0:11 Constant: 121 0:11 0 (const int) 122 0:11 Constant: 123 0:11 1 (const int) 124 0:11 move second child to first child ( temp float) 125 0:11 direct index ( out float ClipDistance) 126 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 127 0:11 Constant: 128 0:11 2 (const int) 129 0:11 direct index ( temp float) 130 0:11 direct index ( temp 2-component vector of float) 131 0:11 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 132 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 133 0:11 Constant: 134 0:11 1 (const int) 135 0:11 Constant: 136 0:11 1 (const int) 137 0:11 Constant: 138 0:11 0 (const int) 139 0:11 move second child to first child ( temp float) 140 0:11 direct index ( out float ClipDistance) 141 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 142 0:11 Constant: 143 0:11 3 (const int) 144 0:11 direct index ( temp float) 145 0:11 direct index ( temp 2-component vector of float) 146 0:11 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 147 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 148 0:11 Constant: 149 0:11 1 (const int) 150 0:11 Constant: 151 0:11 1 (const int) 152 0:11 Constant: 153 0:11 1 (const int) 154 0:? Linker Objects 155 0:? '@entryPointOutput.Position' ( out 4-component vector of float Position) 156 0:? 'v.Position' (layout( location=0) in 4-component vector of float) 157 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 158 159 160 Linked vertex stage: 161 162 163 Shader version: 500 164 0:? Sequence 165 0:11 Function Definition: @main(struct-VS_INPUT-vf41; ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 166 0:11 Function Parameters: 167 0:11 'v' ( const (read only) structure{ temp 4-component vector of float Position}) 168 0:? Sequence 169 0:13 move second child to first child ( temp 4-component vector of float) 170 0:13 Position: direct index for structure ( temp 4-component vector of float) 171 0:13 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 172 0:13 Constant: 173 0:13 0 (const int) 174 0:13 Constant: 175 0:13 0.000000 176 0:13 0.000000 177 0:13 0.000000 178 0:13 0.000000 179 0:15 move second child to first child ( temp float) 180 0:15 direct index ( temp float) 181 0:15 direct index ( temp 2-component vector of float) 182 0:15 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 183 0:15 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 184 0:15 Constant: 185 0:15 1 (const int) 186 0:15 Constant: 187 0:15 0 (const int) 188 0:15 Constant: 189 0:15 0 (const int) 190 0:15 Constant: 191 0:15 1.000000 192 0:16 move second child to first child ( temp float) 193 0:16 direct index ( temp float) 194 0:16 direct index ( temp 2-component vector of float) 195 0:16 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 196 0:16 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 197 0:16 Constant: 198 0:16 1 (const int) 199 0:16 Constant: 200 0:16 0 (const int) 201 0:16 Constant: 202 0:16 1 (const int) 203 0:16 Constant: 204 0:16 2.000000 205 0:17 move second child to first child ( temp float) 206 0:17 direct index ( temp float) 207 0:17 direct index ( temp 2-component vector of float) 208 0:17 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 209 0:17 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 210 0:17 Constant: 211 0:17 1 (const int) 212 0:17 Constant: 213 0:17 1 (const int) 214 0:17 Constant: 215 0:17 0 (const int) 216 0:17 Constant: 217 0:17 3.000000 218 0:18 move second child to first child ( temp float) 219 0:18 direct index ( temp float) 220 0:18 direct index ( temp 2-component vector of float) 221 0:18 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 222 0:18 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 223 0:18 Constant: 224 0:18 1 (const int) 225 0:18 Constant: 226 0:18 1 (const int) 227 0:18 Constant: 228 0:18 1 (const int) 229 0:18 Constant: 230 0:18 4.000000 231 0:20 Branch: Return with expression 232 0:20 'Output' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 233 0:11 Function Definition: main( ( temp void) 234 0:11 Function Parameters: 235 0:? Sequence 236 0:11 Sequence 237 0:11 move second child to first child ( temp 4-component vector of float) 238 0:11 Position: direct index for structure ( temp 4-component vector of float) 239 0:? 'v' ( temp structure{ temp 4-component vector of float Position}) 240 0:11 Constant: 241 0:11 0 (const int) 242 0:? 'v.Position' (layout( location=0) in 4-component vector of float) 243 0:11 Sequence 244 0:11 move second child to first child ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 245 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 246 0:11 Function Call: @main(struct-VS_INPUT-vf41; ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 247 0:? 'v' ( temp structure{ temp 4-component vector of float Position}) 248 0:11 move second child to first child ( temp 4-component vector of float) 249 0:? '@entryPointOutput.Position' ( out 4-component vector of float Position) 250 0:11 Position: direct index for structure ( temp 4-component vector of float) 251 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 252 0:11 Constant: 253 0:11 0 (const int) 254 0:? Sequence 255 0:11 move second child to first child ( temp float) 256 0:11 direct index ( out float ClipDistance) 257 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 258 0:11 Constant: 259 0:11 0 (const int) 260 0:11 direct index ( temp float) 261 0:11 direct index ( temp 2-component vector of float) 262 0:11 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 263 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 264 0:11 Constant: 265 0:11 1 (const int) 266 0:11 Constant: 267 0:11 0 (const int) 268 0:11 Constant: 269 0:11 0 (const int) 270 0:11 move second child to first child ( temp float) 271 0:11 direct index ( out float ClipDistance) 272 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 273 0:11 Constant: 274 0:11 1 (const int) 275 0:11 direct index ( temp float) 276 0:11 direct index ( temp 2-component vector of float) 277 0:11 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 278 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 279 0:11 Constant: 280 0:11 1 (const int) 281 0:11 Constant: 282 0:11 0 (const int) 283 0:11 Constant: 284 0:11 1 (const int) 285 0:11 move second child to first child ( temp float) 286 0:11 direct index ( out float ClipDistance) 287 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 288 0:11 Constant: 289 0:11 2 (const int) 290 0:11 direct index ( temp float) 291 0:11 direct index ( temp 2-component vector of float) 292 0:11 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 293 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 294 0:11 Constant: 295 0:11 1 (const int) 296 0:11 Constant: 297 0:11 1 (const int) 298 0:11 Constant: 299 0:11 0 (const int) 300 0:11 move second child to first child ( temp float) 301 0:11 direct index ( out float ClipDistance) 302 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 303 0:11 Constant: 304 0:11 3 (const int) 305 0:11 direct index ( temp float) 306 0:11 direct index ( temp 2-component vector of float) 307 0:11 ClipRect: direct index for structure ( temp 2-element array of 2-component vector of float) 308 0:11 'flattenTemp' ( temp structure{ temp 4-component vector of float Position, temp 2-element array of 2-component vector of float ClipRect}) 309 0:11 Constant: 310 0:11 1 (const int) 311 0:11 Constant: 312 0:11 1 (const int) 313 0:11 Constant: 314 0:11 1 (const int) 315 0:? Linker Objects 316 0:? '@entryPointOutput.Position' ( out 4-component vector of float Position) 317 0:? 'v.Position' (layout( location=0) in 4-component vector of float) 318 0:? '@entryPointOutput.ClipRect' ( out 4-element array of float ClipDistance) 319 320 // Module Version 10000 321 // Generated by (magic number): 80007 322 // Id's are bound by 73 323 324 Capability Shader 325 Capability ClipDistance 326 1: ExtInstImport "GLSL.std.450" 327 MemoryModel Logical GLSL450 328 EntryPoint Vertex 4 "main" 44 51 57 329 Source HLSL 500 330 Name 4 "main" 331 Name 8 "VS_INPUT" 332 MemberName 8(VS_INPUT) 0 "Position" 333 Name 13 "VS_OUTPUT" 334 MemberName 13(VS_OUTPUT) 0 "Position" 335 MemberName 13(VS_OUTPUT) 1 "ClipRect" 336 Name 16 "@main(struct-VS_INPUT-vf41;" 337 Name 15 "v" 338 Name 19 "Output" 339 Name 42 "v" 340 Name 44 "v.Position" 341 Name 47 "flattenTemp" 342 Name 51 "@entryPointOutput.Position" 343 Name 57 "@entryPointOutput.ClipRect" 344 Decorate 44(v.Position) Location 0 345 Decorate 51(@entryPointOutput.Position) BuiltIn Position 346 Decorate 57(@entryPointOutput.ClipRect) BuiltIn ClipDistance 347 2: TypeVoid 348 3: TypeFunction 2 349 6: TypeFloat 32 350 7: TypeVector 6(float) 4 351 8(VS_INPUT): TypeStruct 7(fvec4) 352 9: TypeVector 6(float) 2 353 10: TypeInt 32 0 354 11: 10(int) Constant 2 355 12: TypeArray 9(fvec2) 11 356 13(VS_OUTPUT): TypeStruct 7(fvec4) 12 357 14: TypeFunction 13(VS_OUTPUT) 8(VS_INPUT) 358 18: TypePointer Function 13(VS_OUTPUT) 359 20: TypeInt 32 1 360 21: 20(int) Constant 0 361 22: 6(float) Constant 0 362 23: 7(fvec4) ConstantComposite 22 22 22 22 363 24: TypePointer Function 7(fvec4) 364 26: 20(int) Constant 1 365 27: 6(float) Constant 1065353216 366 28: 10(int) Constant 0 367 29: TypePointer Function 6(float) 368 31: 6(float) Constant 1073741824 369 32: 10(int) Constant 1 370 34: 6(float) Constant 1077936128 371 36: 6(float) Constant 1082130432 372 41: TypePointer Function 8(VS_INPUT) 373 43: TypePointer Input 7(fvec4) 374 44(v.Position): 43(ptr) Variable Input 375 50: TypePointer Output 7(fvec4) 376 51(@entryPointOutput.Position): 50(ptr) Variable Output 377 54: 10(int) Constant 4 378 55: TypeArray 6(float) 54 379 56: TypePointer Output 55 380 57(@entryPointOutput.ClipRect): 56(ptr) Variable Output 381 60: TypePointer Output 6(float) 382 65: 20(int) Constant 2 383 69: 20(int) Constant 3 384 4(main): 2 Function None 3 385 5: Label 386 42(v): 41(ptr) Variable Function 387 47(flattenTemp): 18(ptr) Variable Function 388 45: 7(fvec4) Load 44(v.Position) 389 46: 24(ptr) AccessChain 42(v) 21 390 Store 46 45 391 48: 8(VS_INPUT) Load 42(v) 392 49:13(VS_OUTPUT) FunctionCall 16(@main(struct-VS_INPUT-vf41;) 48 393 Store 47(flattenTemp) 49 394 52: 24(ptr) AccessChain 47(flattenTemp) 21 395 53: 7(fvec4) Load 52 396 Store 51(@entryPointOutput.Position) 53 397 58: 29(ptr) AccessChain 47(flattenTemp) 26 21 28 398 59: 6(float) Load 58 399 61: 60(ptr) AccessChain 57(@entryPointOutput.ClipRect) 21 400 Store 61 59 401 62: 29(ptr) AccessChain 47(flattenTemp) 26 21 32 402 63: 6(float) Load 62 403 64: 60(ptr) AccessChain 57(@entryPointOutput.ClipRect) 26 404 Store 64 63 405 66: 29(ptr) AccessChain 47(flattenTemp) 26 26 28 406 67: 6(float) Load 66 407 68: 60(ptr) AccessChain 57(@entryPointOutput.ClipRect) 65 408 Store 68 67 409 70: 29(ptr) AccessChain 47(flattenTemp) 26 26 32 410 71: 6(float) Load 70 411 72: 60(ptr) AccessChain 57(@entryPointOutput.ClipRect) 69 412 Store 72 71 413 Return 414 FunctionEnd 415 16(@main(struct-VS_INPUT-vf41;):13(VS_OUTPUT) Function None 14 416 15(v): 8(VS_INPUT) FunctionParameter 417 17: Label 418 19(Output): 18(ptr) Variable Function 419 25: 24(ptr) AccessChain 19(Output) 21 420 Store 25 23 421 30: 29(ptr) AccessChain 19(Output) 26 21 28 422 Store 30 27 423 33: 29(ptr) AccessChain 19(Output) 26 21 32 424 Store 33 31 425 35: 29(ptr) AccessChain 19(Output) 26 26 28 426 Store 35 34 427 37: 29(ptr) AccessChain 19(Output) 26 26 32 428 Store 37 36 429 38:13(VS_OUTPUT) Load 19(Output) 430 ReturnValue 38 431 FunctionEnd 432