1hlsl.hull.2.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): 8000a 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 Isolines 332 ExecutionMode 4 SpacingEqual 333 Source HLSL 500 334 Name 4 "main" 335 Name 8 "VS_OUT" 336 MemberName 8(VS_OUT) 0 "cpoint" 337 Name 13 "HS_OUT" 338 MemberName 13(HS_OUT) 0 "cpoint" 339 Name 16 "@main(struct-VS_OUT-vf31[4];" 340 Name 15 "ip" 341 Name 23 "HS_CONSTANT_OUT" 342 MemberName 23(HS_CONSTANT_OUT) 0 "edges" 343 Name 27 "PCF(u1;vf4;" 344 Name 25 "pid" 345 Name 26 "pos" 346 Name 30 "output" 347 Name 40 "ip" 348 Name 43 "ip.cpoint" 349 Name 61 "@entryPointOutput.cpoint" 350 Name 63 "InvocationId" 351 Name 65 "param" 352 Name 78 "@patchConstantResult" 353 Name 79 "pid" 354 Name 81 "pos" 355 Name 82 "param" 356 Name 84 "param" 357 Name 89 "@patchConstantOutput.edges" 358 Name 98 "output" 359 Decorate 43(ip.cpoint) Location 0 360 Decorate 61(@entryPointOutput.cpoint) Location 0 361 Decorate 63(InvocationId) BuiltIn InvocationId 362 Decorate 79(pid) BuiltIn PrimitiveId 363 Decorate 81(pos) BuiltIn Position 364 Decorate 89(@patchConstantOutput.edges) Patch 365 Decorate 89(@patchConstantOutput.edges) BuiltIn TessLevelOuter 366 2: TypeVoid 367 3: TypeFunction 2 368 6: TypeFloat 32 369 7: TypeVector 6(float) 3 370 8(VS_OUT): TypeStruct 7(fvec3) 371 9: TypeInt 32 0 372 10: 9(int) Constant 4 373 11: TypeArray 8(VS_OUT) 10 374 12: TypePointer Function 11 375 13(HS_OUT): TypeStruct 7(fvec3) 376 14: TypeFunction 13(HS_OUT) 12(ptr) 377 18: TypePointer Function 9(int) 378 19: TypeVector 6(float) 4 379 20: TypePointer Function 19(fvec4) 380 21: 9(int) Constant 2 381 22: TypeArray 6(float) 21 38223(HS_CONSTANT_OUT): TypeStruct 22 383 24: TypeFunction 23(HS_CONSTANT_OUT) 18(ptr) 20(ptr) 384 29: TypePointer Function 13(HS_OUT) 385 31: TypeInt 32 1 386 32: 31(int) Constant 0 387 33: TypePointer Function 7(fvec3) 388 41: TypeArray 7(fvec3) 10 389 42: TypePointer Input 41 390 43(ip.cpoint): 42(ptr) Variable Input 391 44: TypePointer Input 7(fvec3) 392 48: 31(int) Constant 1 393 52: 31(int) Constant 2 394 56: 31(int) Constant 3 395 60: TypePointer Output 41 39661(@entryPointOutput.cpoint): 60(ptr) Variable Output 397 62: TypePointer Input 9(int) 39863(InvocationId): 62(ptr) Variable Input 399 69: TypePointer Output 7(fvec3) 400 71: 9(int) Constant 0 401 73: TypeBool 402 77: TypePointer Function 23(HS_CONSTANT_OUT) 403 79(pid): 62(ptr) Variable Input 404 80: TypePointer Input 19(fvec4) 405 81(pos): 80(ptr) Variable Input 406 87: TypeArray 6(float) 10 407 88: TypePointer Output 87 40889(@patchConstantOutput.edges): 88(ptr) Variable Output 409 90: TypePointer Function 6(float) 410 93: TypePointer Output 6(float) 411 99: 6(float) Constant 1073741824 412 101: 6(float) Constant 1090519040 413 4(main): 2 Function None 3 414 5: Label 415 40(ip): 12(ptr) Variable Function 416 65(param): 12(ptr) Variable Function 41778(@patchConstantResult): 77(ptr) Variable Function 418 82(param): 18(ptr) Variable Function 419 84(param): 20(ptr) Variable Function 420 45: 44(ptr) AccessChain 43(ip.cpoint) 32 421 46: 7(fvec3) Load 45 422 47: 33(ptr) AccessChain 40(ip) 32 32 423 Store 47 46 424 49: 44(ptr) AccessChain 43(ip.cpoint) 48 425 50: 7(fvec3) Load 49 426 51: 33(ptr) AccessChain 40(ip) 48 32 427 Store 51 50 428 53: 44(ptr) AccessChain 43(ip.cpoint) 52 429 54: 7(fvec3) Load 53 430 55: 33(ptr) AccessChain 40(ip) 52 32 431 Store 55 54 432 57: 44(ptr) AccessChain 43(ip.cpoint) 56 433 58: 7(fvec3) Load 57 434 59: 33(ptr) AccessChain 40(ip) 56 32 435 Store 59 58 436 64: 9(int) Load 63(InvocationId) 437 66: 11 Load 40(ip) 438 Store 65(param) 66 439 67: 13(HS_OUT) FunctionCall 16(@main(struct-VS_OUT-vf31[4];) 65(param) 440 68: 7(fvec3) CompositeExtract 67 0 441 70: 69(ptr) AccessChain 61(@entryPointOutput.cpoint) 64 442 Store 70 68 443 ControlBarrier 21 10 71 444 72: 9(int) Load 63(InvocationId) 445 74: 73(bool) IEqual 72 32 446 SelectionMerge 76 None 447 BranchConditional 74 75 76 448 75: Label 449 83: 9(int) Load 79(pid) 450 Store 82(param) 83 451 85: 19(fvec4) Load 81(pos) 452 Store 84(param) 85 453 86:23(HS_CONSTANT_OUT) FunctionCall 27(PCF(u1;vf4;) 82(param) 84(param) 454 Store 78(@patchConstantResult) 86 455 91: 90(ptr) AccessChain 78(@patchConstantResult) 32 32 456 92: 6(float) Load 91 457 94: 93(ptr) AccessChain 89(@patchConstantOutput.edges) 32 458 Store 94 92 459 95: 90(ptr) AccessChain 78(@patchConstantResult) 32 48 460 96: 6(float) Load 95 461 97: 93(ptr) AccessChain 89(@patchConstantOutput.edges) 48 462 Store 97 96 463 Branch 76 464 76: Label 465 Return 466 FunctionEnd 46716(@main(struct-VS_OUT-vf31[4];): 13(HS_OUT) Function None 14 468 15(ip): 12(ptr) FunctionParameter 469 17: Label 470 30(output): 29(ptr) Variable Function 471 34: 33(ptr) AccessChain 15(ip) 32 32 472 35: 7(fvec3) Load 34 473 36: 33(ptr) AccessChain 30(output) 32 474 Store 36 35 475 37: 13(HS_OUT) Load 30(output) 476 ReturnValue 37 477 FunctionEnd 478 27(PCF(u1;vf4;):23(HS_CONSTANT_OUT) Function None 24 479 25(pid): 18(ptr) FunctionParameter 480 26(pos): 20(ptr) FunctionParameter 481 28: Label 482 98(output): 77(ptr) Variable Function 483 100: 90(ptr) AccessChain 98(output) 32 32 484 Store 100 99 485 102: 90(ptr) AccessChain 98(output) 32 48 486 Store 102 101 487 103:23(HS_CONSTANT_OUT) Load 98(output) 488 ReturnValue 103 489 FunctionEnd 490