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