1hlsl.hull.3.tesc 2Shader version: 500 3vertices = 4 4vertex spacing = equal_spacing 50:? Sequence 60:26 Function Definition: @main(struct-VS_OUT-vf31[4]; ( temp structure{ temp 3-component vector of float cpoint}) 70:26 Function Parameters: 80:26 'ip' ( in 4-element array of structure{ temp 3-component vector of float cpoint}) 90:? Sequence 100:28 move second child to first child ( temp 3-component vector of float) 110:28 cpoint: direct index for structure ( temp 3-component vector of float) 120:28 'output' ( temp structure{ temp 3-component vector of float cpoint}) 130:28 Constant: 140:28 0 (const int) 150:28 cpoint: direct index for structure ( temp 3-component vector of float) 160:28 direct index ( temp structure{ temp 3-component vector of float cpoint}) 170:28 'ip' ( in 4-element array of structure{ temp 3-component vector of float cpoint}) 180:28 Constant: 190:28 0 (const int) 200:28 Constant: 210:28 0 (const int) 220:29 Branch: Return with expression 230:29 'output' ( temp structure{ temp 3-component vector of float cpoint}) 240:26 Function Definition: main( ( temp void) 250:26 Function Parameters: 260:? Sequence 270:26 Sequence 280:26 move second child to first child ( temp 3-component vector of float) 290:26 cpoint: direct index for structure ( temp 3-component vector of float) 300:26 direct index ( temp structure{ temp 3-component vector of float cpoint}) 310:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 320:26 Constant: 330:26 0 (const int) 340:26 Constant: 350:26 0 (const int) 360:26 direct index (layout( location=0) in 3-component vector of float) 370:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 380:26 Constant: 390:26 0 (const int) 400:26 move second child to first child ( temp 3-component vector of float) 410:26 cpoint: direct index for structure ( temp 3-component vector of float) 420:26 direct index ( temp structure{ temp 3-component vector of float cpoint}) 430:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 440:26 Constant: 450:26 1 (const int) 460:26 Constant: 470:26 0 (const int) 480:26 direct index (layout( location=0) in 3-component vector of float) 490:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 500:26 Constant: 510:26 1 (const int) 520:26 move second child to first child ( temp 3-component vector of float) 530:26 cpoint: direct index for structure ( temp 3-component vector of float) 540:26 direct index ( temp structure{ temp 3-component vector of float cpoint}) 550:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 560:26 Constant: 570:26 2 (const int) 580:26 Constant: 590:26 0 (const int) 600:26 direct index (layout( location=0) in 3-component vector of float) 610:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 620:26 Constant: 630:26 2 (const int) 640:26 move second child to first child ( temp 3-component vector of float) 650:26 cpoint: direct index for structure ( temp 3-component vector of float) 660:26 direct index ( temp structure{ temp 3-component vector of float cpoint}) 670:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 680:26 Constant: 690:26 3 (const int) 700:26 Constant: 710:26 0 (const int) 720:26 direct index (layout( location=0) in 3-component vector of float) 730:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 740:26 Constant: 750:26 3 (const int) 760:26 Sequence 770:26 move second child to first child ( temp 3-component vector of float) 780:26 indirect index (layout( location=0) out 3-component vector of float) 790:? '@entryPointOutput.cpoint' (layout( location=0) out 4-element array of 3-component vector of float) 800:? 'InvocationId' ( in uint InvocationID) 810:26 cpoint: direct index for structure ( temp 3-component vector of float) 820:26 Function Call: @main(struct-VS_OUT-vf31[4]; ( temp structure{ temp 3-component vector of float cpoint}) 830:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 840:26 Constant: 850:26 0 (const int) 860:? Barrier ( temp void) 870:? Test condition and select ( temp void) 880:? Condition 890:? Compare Equal ( temp bool) 900:? 'InvocationId' ( in uint InvocationID) 910:? Constant: 920:? 0 (const int) 930:? true case 940:? Sequence 950:? move second child to first child ( temp structure{ temp 2-element array of float edges}) 960:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 970:? Function Call: PCF(u1;vf4; ( temp structure{ temp 2-element array of float edges}) 980:? 'pid' ( in uint PrimitiveID) 990:? 'pos' ( in 4-component vector of float Position) 1000:? Sequence 1010:? move second child to first child ( temp float) 1020:? direct index ( patch out float TessLevelOuter) 1030:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 1040:? Constant: 1050:? 0 (const int) 1060:? direct index ( temp float) 1070:? edges: direct index for structure ( temp 2-element array of float) 1080:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 1090:? Constant: 1100:? 0 (const int) 1110:? Constant: 1120:? 0 (const int) 1130:? move second child to first child ( temp float) 1140:? direct index ( patch out float TessLevelOuter) 1150:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 1160:? Constant: 1170:? 1 (const int) 1180:? direct index ( temp float) 1190:? edges: direct index for structure ( temp 2-element array of float) 1200:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 1210:? Constant: 1220:? 0 (const int) 1230:? Constant: 1240:? 1 (const int) 1250:33 Function Definition: PCF(u1;vf4; ( temp structure{ temp 2-element array of float edges}) 1260:33 Function Parameters: 1270:33 'pid' ( in uint) 1280:33 'pos' ( in 4-component vector of float) 1290:? Sequence 1300:36 move second child to first child ( temp float) 1310:36 direct index ( temp float) 1320:36 edges: direct index for structure ( temp 2-element array of float) 1330:36 'output' ( temp structure{ temp 2-element array of float edges}) 1340:36 Constant: 1350:36 0 (const int) 1360:36 Constant: 1370:36 0 (const int) 1380:36 Constant: 1390:36 2.000000 1400:37 move second child to first child ( temp float) 1410:37 direct index ( temp float) 1420:37 edges: direct index for structure ( temp 2-element array of float) 1430:37 'output' ( temp structure{ temp 2-element array of float edges}) 1440:37 Constant: 1450:37 0 (const int) 1460:37 Constant: 1470:37 1 (const int) 1480:37 Constant: 1490:37 8.000000 1500:38 Branch: Return with expression 1510:38 'output' ( temp structure{ temp 2-element array of float edges}) 1520:? Linker Objects 1530:? '@entryPointOutput.cpoint' (layout( location=0) out 4-element array of 3-component vector of float) 1540:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 1550:? 'InvocationId' ( in uint InvocationID) 1560:? 'pid' ( in uint PrimitiveID) 1570:? 'pos' ( in 4-component vector of float Position) 1580:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 159 160 161Linked tessellation control stage: 162 163 164Shader version: 500 165vertices = 4 166vertex spacing = equal_spacing 1670:? Sequence 1680:26 Function Definition: @main(struct-VS_OUT-vf31[4]; ( temp structure{ temp 3-component vector of float cpoint}) 1690:26 Function Parameters: 1700:26 'ip' ( in 4-element array of structure{ temp 3-component vector of float cpoint}) 1710:? Sequence 1720:28 move second child to first child ( temp 3-component vector of float) 1730:28 cpoint: direct index for structure ( temp 3-component vector of float) 1740:28 'output' ( temp structure{ temp 3-component vector of float cpoint}) 1750:28 Constant: 1760:28 0 (const int) 1770:28 cpoint: direct index for structure ( temp 3-component vector of float) 1780:28 direct index ( temp structure{ temp 3-component vector of float cpoint}) 1790:28 'ip' ( in 4-element array of structure{ temp 3-component vector of float cpoint}) 1800:28 Constant: 1810:28 0 (const int) 1820:28 Constant: 1830:28 0 (const int) 1840:29 Branch: Return with expression 1850:29 'output' ( temp structure{ temp 3-component vector of float cpoint}) 1860:26 Function Definition: main( ( temp void) 1870:26 Function Parameters: 1880:? Sequence 1890:26 Sequence 1900:26 move second child to first child ( temp 3-component vector of float) 1910:26 cpoint: direct index for structure ( temp 3-component vector of float) 1920:26 direct index ( temp structure{ temp 3-component vector of float cpoint}) 1930:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 1940:26 Constant: 1950:26 0 (const int) 1960:26 Constant: 1970:26 0 (const int) 1980:26 direct index (layout( location=0) in 3-component vector of float) 1990:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 2000:26 Constant: 2010:26 0 (const int) 2020:26 move second child to first child ( temp 3-component vector of float) 2030:26 cpoint: direct index for structure ( temp 3-component vector of float) 2040:26 direct index ( temp structure{ temp 3-component vector of float cpoint}) 2050:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 2060:26 Constant: 2070:26 1 (const int) 2080:26 Constant: 2090:26 0 (const int) 2100:26 direct index (layout( location=0) in 3-component vector of float) 2110:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 2120:26 Constant: 2130:26 1 (const int) 2140:26 move second child to first child ( temp 3-component vector of float) 2150:26 cpoint: direct index for structure ( temp 3-component vector of float) 2160:26 direct index ( temp structure{ temp 3-component vector of float cpoint}) 2170:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 2180:26 Constant: 2190:26 2 (const int) 2200:26 Constant: 2210:26 0 (const int) 2220:26 direct index (layout( location=0) in 3-component vector of float) 2230:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 2240:26 Constant: 2250:26 2 (const int) 2260:26 move second child to first child ( temp 3-component vector of float) 2270:26 cpoint: direct index for structure ( temp 3-component vector of float) 2280:26 direct index ( temp structure{ temp 3-component vector of float cpoint}) 2290:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 2300:26 Constant: 2310:26 3 (const int) 2320:26 Constant: 2330:26 0 (const int) 2340:26 direct index (layout( location=0) in 3-component vector of float) 2350:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 2360:26 Constant: 2370:26 3 (const int) 2380:26 Sequence 2390:26 move second child to first child ( temp 3-component vector of float) 2400:26 indirect index (layout( location=0) out 3-component vector of float) 2410:? '@entryPointOutput.cpoint' (layout( location=0) out 4-element array of 3-component vector of float) 2420:? 'InvocationId' ( in uint InvocationID) 2430:26 cpoint: direct index for structure ( temp 3-component vector of float) 2440:26 Function Call: @main(struct-VS_OUT-vf31[4]; ( temp structure{ temp 3-component vector of float cpoint}) 2450:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 2460:26 Constant: 2470:26 0 (const int) 2480:? Barrier ( temp void) 2490:? Test condition and select ( temp void) 2500:? Condition 2510:? Compare Equal ( temp bool) 2520:? 'InvocationId' ( in uint InvocationID) 2530:? Constant: 2540:? 0 (const int) 2550:? true case 2560:? Sequence 2570:? move second child to first child ( temp structure{ temp 2-element array of float edges}) 2580:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 2590:? Function Call: PCF(u1;vf4; ( temp structure{ temp 2-element array of float edges}) 2600:? 'pid' ( in uint PrimitiveID) 2610:? 'pos' ( in 4-component vector of float Position) 2620:? Sequence 2630:? move second child to first child ( temp float) 2640:? direct index ( patch out float TessLevelOuter) 2650:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 2660:? Constant: 2670:? 0 (const int) 2680:? direct index ( temp float) 2690:? edges: direct index for structure ( temp 2-element array of float) 2700:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 2710:? Constant: 2720:? 0 (const int) 2730:? Constant: 2740:? 0 (const int) 2750:? move second child to first child ( temp float) 2760:? direct index ( patch out float TessLevelOuter) 2770:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 2780:? Constant: 2790:? 1 (const int) 2800:? direct index ( temp float) 2810:? edges: direct index for structure ( temp 2-element array of float) 2820:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 2830:? Constant: 2840:? 0 (const int) 2850:? Constant: 2860:? 1 (const int) 2870:33 Function Definition: PCF(u1;vf4; ( temp structure{ temp 2-element array of float edges}) 2880:33 Function Parameters: 2890:33 'pid' ( in uint) 2900:33 'pos' ( in 4-component vector of float) 2910:? Sequence 2920:36 move second child to first child ( temp float) 2930:36 direct index ( temp float) 2940:36 edges: direct index for structure ( temp 2-element array of float) 2950:36 'output' ( temp structure{ temp 2-element array of float edges}) 2960:36 Constant: 2970:36 0 (const int) 2980:36 Constant: 2990:36 0 (const int) 3000:36 Constant: 3010:36 2.000000 3020:37 move second child to first child ( temp float) 3030:37 direct index ( temp float) 3040:37 edges: direct index for structure ( temp 2-element array of float) 3050:37 'output' ( temp structure{ temp 2-element array of float edges}) 3060:37 Constant: 3070:37 0 (const int) 3080:37 Constant: 3090:37 1 (const int) 3100:37 Constant: 3110:37 8.000000 3120:38 Branch: Return with expression 3130:38 'output' ( temp structure{ temp 2-element array of float edges}) 3140:? Linker Objects 3150:? '@entryPointOutput.cpoint' (layout( location=0) out 4-element array of 3-component vector of float) 3160:? 'ip.cpoint' (layout( location=0) in 4-element array of 3-component vector of float) 3170:? 'InvocationId' ( in uint InvocationID) 3180:? 'pid' ( in uint PrimitiveID) 3190:? 'pos' ( in 4-component vector of float Position) 3200:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 321 322// Module Version 10000 323// Generated by (magic number): 8000b 324// Id's are bound by 106 325 326 Capability Tessellation 327 1: ExtInstImport "GLSL.std.450" 328 MemoryModel Logical GLSL450 329 EntryPoint TessellationControl 4 "main" 43 61 63 79 81 89 330 ExecutionMode 4 OutputVertices 4 331 ExecutionMode 4 Triangles 332 ExecutionMode 4 SpacingEqual 333 ExecutionMode 4 PointMode 334 Source HLSL 500 335 Name 4 "main" 336 Name 8 "VS_OUT" 337 MemberName 8(VS_OUT) 0 "cpoint" 338 Name 13 "HS_OUT" 339 MemberName 13(HS_OUT) 0 "cpoint" 340 Name 16 "@main(struct-VS_OUT-vf31[4];" 341 Name 15 "ip" 342 Name 23 "HS_CONSTANT_OUT" 343 MemberName 23(HS_CONSTANT_OUT) 0 "edges" 344 Name 27 "PCF(u1;vf4;" 345 Name 25 "pid" 346 Name 26 "pos" 347 Name 30 "output" 348 Name 40 "ip" 349 Name 43 "ip.cpoint" 350 Name 61 "@entryPointOutput.cpoint" 351 Name 63 "InvocationId" 352 Name 65 "param" 353 Name 78 "@patchConstantResult" 354 Name 79 "pid" 355 Name 81 "pos" 356 Name 82 "param" 357 Name 84 "param" 358 Name 89 "@patchConstantOutput.edges" 359 Name 98 "output" 360 Decorate 43(ip.cpoint) Location 0 361 Decorate 61(@entryPointOutput.cpoint) Location 0 362 Decorate 63(InvocationId) BuiltIn InvocationId 363 Decorate 79(pid) BuiltIn PrimitiveId 364 Decorate 81(pos) BuiltIn Position 365 Decorate 89(@patchConstantOutput.edges) BuiltIn TessLevelOuter 366 Decorate 89(@patchConstantOutput.edges) Patch 367 2: TypeVoid 368 3: TypeFunction 2 369 6: TypeFloat 32 370 7: TypeVector 6(float) 3 371 8(VS_OUT): TypeStruct 7(fvec3) 372 9: TypeInt 32 0 373 10: 9(int) Constant 4 374 11: TypeArray 8(VS_OUT) 10 375 12: TypePointer Function 11 376 13(HS_OUT): TypeStruct 7(fvec3) 377 14: TypeFunction 13(HS_OUT) 12(ptr) 378 18: TypePointer Function 9(int) 379 19: TypeVector 6(float) 4 380 20: TypePointer Function 19(fvec4) 381 21: 9(int) Constant 2 382 22: TypeArray 6(float) 21 38323(HS_CONSTANT_OUT): TypeStruct 22 384 24: TypeFunction 23(HS_CONSTANT_OUT) 18(ptr) 20(ptr) 385 29: TypePointer Function 13(HS_OUT) 386 31: TypeInt 32 1 387 32: 31(int) Constant 0 388 33: TypePointer Function 7(fvec3) 389 41: TypeArray 7(fvec3) 10 390 42: TypePointer Input 41 391 43(ip.cpoint): 42(ptr) Variable Input 392 44: TypePointer Input 7(fvec3) 393 48: 31(int) Constant 1 394 52: 31(int) Constant 2 395 56: 31(int) Constant 3 396 60: TypePointer Output 41 39761(@entryPointOutput.cpoint): 60(ptr) Variable Output 398 62: TypePointer Input 9(int) 39963(InvocationId): 62(ptr) Variable Input 400 69: TypePointer Output 7(fvec3) 401 71: 9(int) Constant 0 402 73: TypeBool 403 77: TypePointer Function 23(HS_CONSTANT_OUT) 404 79(pid): 62(ptr) Variable Input 405 80: TypePointer Input 19(fvec4) 406 81(pos): 80(ptr) Variable Input 407 87: TypeArray 6(float) 10 408 88: TypePointer Output 87 40989(@patchConstantOutput.edges): 88(ptr) Variable Output 410 90: TypePointer Function 6(float) 411 93: TypePointer Output 6(float) 412 99: 6(float) Constant 1073741824 413 101: 6(float) Constant 1090519040 414 4(main): 2 Function None 3 415 5: Label 416 40(ip): 12(ptr) Variable Function 417 65(param): 12(ptr) Variable Function 41878(@patchConstantResult): 77(ptr) Variable Function 419 82(param): 18(ptr) Variable Function 420 84(param): 20(ptr) Variable Function 421 45: 44(ptr) AccessChain 43(ip.cpoint) 32 422 46: 7(fvec3) Load 45 423 47: 33(ptr) AccessChain 40(ip) 32 32 424 Store 47 46 425 49: 44(ptr) AccessChain 43(ip.cpoint) 48 426 50: 7(fvec3) Load 49 427 51: 33(ptr) AccessChain 40(ip) 48 32 428 Store 51 50 429 53: 44(ptr) AccessChain 43(ip.cpoint) 52 430 54: 7(fvec3) Load 53 431 55: 33(ptr) AccessChain 40(ip) 52 32 432 Store 55 54 433 57: 44(ptr) AccessChain 43(ip.cpoint) 56 434 58: 7(fvec3) Load 57 435 59: 33(ptr) AccessChain 40(ip) 56 32 436 Store 59 58 437 64: 9(int) Load 63(InvocationId) 438 66: 11 Load 40(ip) 439 Store 65(param) 66 440 67: 13(HS_OUT) FunctionCall 16(@main(struct-VS_OUT-vf31[4];) 65(param) 441 68: 7(fvec3) CompositeExtract 67 0 442 70: 69(ptr) AccessChain 61(@entryPointOutput.cpoint) 64 443 Store 70 68 444 ControlBarrier 21 10 71 445 72: 9(int) Load 63(InvocationId) 446 74: 73(bool) IEqual 72 32 447 SelectionMerge 76 None 448 BranchConditional 74 75 76 449 75: Label 450 83: 9(int) Load 79(pid) 451 Store 82(param) 83 452 85: 19(fvec4) Load 81(pos) 453 Store 84(param) 85 454 86:23(HS_CONSTANT_OUT) FunctionCall 27(PCF(u1;vf4;) 82(param) 84(param) 455 Store 78(@patchConstantResult) 86 456 91: 90(ptr) AccessChain 78(@patchConstantResult) 32 32 457 92: 6(float) Load 91 458 94: 93(ptr) AccessChain 89(@patchConstantOutput.edges) 32 459 Store 94 92 460 95: 90(ptr) AccessChain 78(@patchConstantResult) 32 48 461 96: 6(float) Load 95 462 97: 93(ptr) AccessChain 89(@patchConstantOutput.edges) 48 463 Store 97 96 464 Branch 76 465 76: Label 466 Return 467 FunctionEnd 46816(@main(struct-VS_OUT-vf31[4];): 13(HS_OUT) Function None 14 469 15(ip): 12(ptr) FunctionParameter 470 17: Label 471 30(output): 29(ptr) Variable Function 472 34: 33(ptr) AccessChain 15(ip) 32 32 473 35: 7(fvec3) Load 34 474 36: 33(ptr) AccessChain 30(output) 32 475 Store 36 35 476 37: 13(HS_OUT) Load 30(output) 477 ReturnValue 37 478 FunctionEnd 479 27(PCF(u1;vf4;):23(HS_CONSTANT_OUT) Function None 24 480 25(pid): 18(ptr) FunctionParameter 481 26(pos): 20(ptr) FunctionParameter 482 28: Label 483 98(output): 77(ptr) Variable Function 484 100: 90(ptr) AccessChain 98(output) 32 32 485 Store 100 99 486 102: 90(ptr) AccessChain 98(output) 32 48 487 Store 102 101 488 103:23(HS_CONSTANT_OUT) Load 98(output) 489 ReturnValue 103 490 FunctionEnd 491