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 move second child to first child ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 290:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 300:? 'ip' (layout( location=0) in 4-element array of structure{ temp 3-component vector of float cpoint}) 310:26 move second child to first child ( temp uint) 320:? 'm_cpid' ( temp uint) 330:? 'm_cpid' ( in uint InvocationID) 340:26 move second child to first child ( temp structure{ temp 3-component vector of float cpoint}) 350:26 indirect index (layout( location=0) out structure{ temp 3-component vector of float cpoint}) 360:? '@entryPointOutput' (layout( location=0) out 4-element array of structure{ temp 3-component vector of float cpoint}) 370:? 'm_cpid' ( in uint InvocationID) 380:26 Function Call: @main(struct-VS_OUT-vf31[4];u1; ( temp structure{ temp 3-component vector of float cpoint}) 390:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 400:? 'm_cpid' ( temp uint) 410:? Barrier ( temp void) 420:? Test condition and select ( temp void) 430:? Condition 440:? Compare Equal ( temp bool) 450:? 'm_cpid' ( in uint InvocationID) 460:? Constant: 470:? 0 (const int) 480:? true case 490:? Sequence 500:? move second child to first child ( temp structure{ temp 2-element array of float edges}) 510:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 520:? Function Call: PCF(u1; ( temp structure{ temp 2-element array of float edges}) 530:? 'pid' ( in uint PrimitiveID) 540:? Sequence 550:? move second child to first child ( temp float) 560:? direct index ( patch out float TessLevelOuter) 570:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 580:? Constant: 590:? 0 (const int) 600:? direct index ( temp float) 610:? edges: direct index for structure ( temp 2-element array of float) 620:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 630:? Constant: 640:? 0 (const int) 650:? Constant: 660:? 0 (const int) 670:? move second child to first child ( temp float) 680:? direct index ( patch out float TessLevelOuter) 690:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 700:? Constant: 710:? 1 (const int) 720:? direct index ( temp float) 730:? edges: direct index for structure ( temp 2-element array of float) 740:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 750:? Constant: 760:? 0 (const int) 770:? Constant: 780:? 1 (const int) 790:33 Function Definition: PCF(u1; ( temp structure{ temp 2-element array of float edges}) 800:33 Function Parameters: 810:33 'pid' ( in uint) 820:? Sequence 830:36 move second child to first child ( temp float) 840:36 direct index ( temp float) 850:36 edges: direct index for structure ( temp 2-element array of float) 860:36 'output' ( temp structure{ temp 2-element array of float edges}) 870:36 Constant: 880:36 0 (const int) 890:36 Constant: 900:36 0 (const int) 910:36 Constant: 920:36 2.000000 930:37 move second child to first child ( temp float) 940:37 direct index ( temp float) 950:37 edges: direct index for structure ( temp 2-element array of float) 960:37 'output' ( temp structure{ temp 2-element array of float edges}) 970:37 Constant: 980:37 0 (const int) 990:37 Constant: 1000:37 1 (const int) 1010:37 Constant: 1020:37 8.000000 1030:38 Branch: Return with expression 1040:38 'output' ( temp structure{ temp 2-element array of float edges}) 1050:? Linker Objects 1060:? '@entryPointOutput' (layout( location=0) out 4-element array of structure{ temp 3-component vector of float cpoint}) 1070:? 'ip' (layout( location=0) in 4-element array of structure{ temp 3-component vector of float cpoint}) 1080:? 'm_cpid' ( in uint InvocationID) 1090:? 'pid' ( in uint PrimitiveID) 1100:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 111 112 113Linked tessellation control stage: 114 115 116Shader version: 500 117vertices = 4 118vertex spacing = equal_spacing 1190:? Sequence 1200:26 Function Definition: @main(struct-VS_OUT-vf31[4];u1; ( temp structure{ temp 3-component vector of float cpoint}) 1210:26 Function Parameters: 1220:26 'ip' ( in 4-element array of structure{ temp 3-component vector of float cpoint}) 1230:26 'm_cpid' ( in uint) 1240:? Sequence 1250:28 move second child to first child ( temp 3-component vector of float) 1260:28 cpoint: direct index for structure ( temp 3-component vector of float) 1270:28 'output' ( temp structure{ temp 3-component vector of float cpoint}) 1280:28 Constant: 1290:28 0 (const int) 1300:28 cpoint: direct index for structure ( temp 3-component vector of float) 1310:28 direct index ( temp structure{ temp 3-component vector of float cpoint}) 1320:28 'ip' ( in 4-element array of structure{ temp 3-component vector of float cpoint}) 1330:28 Constant: 1340:28 0 (const int) 1350:28 Constant: 1360:28 0 (const int) 1370:29 Branch: Return with expression 1380:29 'output' ( temp structure{ temp 3-component vector of float cpoint}) 1390:26 Function Definition: main( ( temp void) 1400:26 Function Parameters: 1410:? Sequence 1420:26 move second child to first child ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 1430:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 1440:? 'ip' (layout( location=0) in 4-element array of structure{ temp 3-component vector of float cpoint}) 1450:26 move second child to first child ( temp uint) 1460:? 'm_cpid' ( temp uint) 1470:? 'm_cpid' ( in uint InvocationID) 1480:26 move second child to first child ( temp structure{ temp 3-component vector of float cpoint}) 1490:26 indirect index (layout( location=0) out structure{ temp 3-component vector of float cpoint}) 1500:? '@entryPointOutput' (layout( location=0) out 4-element array of structure{ temp 3-component vector of float cpoint}) 1510:? 'm_cpid' ( in uint InvocationID) 1520:26 Function Call: @main(struct-VS_OUT-vf31[4];u1; ( temp structure{ temp 3-component vector of float cpoint}) 1530:? 'ip' ( temp 4-element array of structure{ temp 3-component vector of float cpoint}) 1540:? 'm_cpid' ( temp uint) 1550:? Barrier ( temp void) 1560:? Test condition and select ( temp void) 1570:? Condition 1580:? Compare Equal ( temp bool) 1590:? 'm_cpid' ( in uint InvocationID) 1600:? Constant: 1610:? 0 (const int) 1620:? true case 1630:? Sequence 1640:? move second child to first child ( temp structure{ temp 2-element array of float edges}) 1650:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 1660:? Function Call: PCF(u1; ( temp structure{ temp 2-element array of float edges}) 1670:? 'pid' ( in uint PrimitiveID) 1680:? Sequence 1690:? move second child to first child ( temp float) 1700:? direct index ( patch out float TessLevelOuter) 1710:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 1720:? Constant: 1730:? 0 (const int) 1740:? direct index ( temp float) 1750:? edges: direct index for structure ( temp 2-element array of float) 1760:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 1770:? Constant: 1780:? 0 (const int) 1790:? Constant: 1800:? 0 (const int) 1810:? move second child to first child ( temp float) 1820:? direct index ( patch out float TessLevelOuter) 1830:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 1840:? Constant: 1850:? 1 (const int) 1860:? direct index ( temp float) 1870:? edges: direct index for structure ( temp 2-element array of float) 1880:? '@patchConstantResult' ( temp structure{ temp 2-element array of float edges}) 1890:? Constant: 1900:? 0 (const int) 1910:? Constant: 1920:? 1 (const int) 1930:33 Function Definition: PCF(u1; ( temp structure{ temp 2-element array of float edges}) 1940:33 Function Parameters: 1950:33 'pid' ( in uint) 1960:? Sequence 1970:36 move second child to first child ( temp float) 1980:36 direct index ( temp float) 1990:36 edges: direct index for structure ( temp 2-element array of float) 2000:36 'output' ( temp structure{ temp 2-element array of float edges}) 2010:36 Constant: 2020:36 0 (const int) 2030:36 Constant: 2040:36 0 (const int) 2050:36 Constant: 2060:36 2.000000 2070:37 move second child to first child ( temp float) 2080:37 direct index ( temp float) 2090:37 edges: direct index for structure ( temp 2-element array of float) 2100:37 'output' ( temp structure{ temp 2-element array of float edges}) 2110:37 Constant: 2120:37 0 (const int) 2130:37 Constant: 2140:37 1 (const int) 2150:37 Constant: 2160:37 8.000000 2170:38 Branch: Return with expression 2180:38 'output' ( temp structure{ temp 2-element array of float edges}) 2190:? Linker Objects 2200:? '@entryPointOutput' (layout( location=0) out 4-element array of structure{ temp 3-component vector of float cpoint}) 2210:? 'ip' (layout( location=0) in 4-element array of structure{ temp 3-component vector of float cpoint}) 2220:? 'm_cpid' ( in uint InvocationID) 2230:? 'pid' ( in uint PrimitiveID) 2240:? '@patchConstantOutput.edges' ( patch out 4-element array of float TessLevelOuter) 225 226// Module Version 10000 227// Generated by (magic number): 80007 228// Id's are bound by 89 229 230 Capability Tessellation 231 1: ExtInstImport "GLSL.std.450" 232 MemoryModel Logical GLSL450 233 EntryPoint TessellationControl 4 "main" 40 44 48 65 71 234 ExecutionMode 4 OutputVertices 4 235 ExecutionMode 4 Isolines 236 ExecutionMode 4 SpacingEqual 237 Source HLSL 500 238 Name 4 "main" 239 Name 8 "VS_OUT" 240 MemberName 8(VS_OUT) 0 "cpoint" 241 Name 14 "HS_OUT" 242 MemberName 14(HS_OUT) 0 "cpoint" 243 Name 18 "@main(struct-VS_OUT-vf31[4];u1;" 244 Name 16 "ip" 245 Name 17 "m_cpid" 246 Name 22 "HS_CONSTANT_OUT" 247 MemberName 22(HS_CONSTANT_OUT) 0 "edges" 248 Name 25 "PCF(u1;" 249 Name 24 "pid" 250 Name 28 "output" 251 Name 38 "ip" 252 Name 40 "ip" 253 Name 42 "m_cpid" 254 Name 44 "m_cpid" 255 Name 48 "@entryPointOutput" 256 Name 50 "param" 257 Name 52 "param" 258 Name 64 "@patchConstantResult" 259 Name 65 "pid" 260 Name 66 "param" 261 Name 71 "@patchConstantOutput.edges" 262 Name 81 "output" 263 Decorate 40(ip) Location 0 264 Decorate 44(m_cpid) BuiltIn InvocationId 265 Decorate 48(@entryPointOutput) Location 0 266 Decorate 65(pid) BuiltIn PrimitiveId 267 Decorate 71(@patchConstantOutput.edges) Patch 268 Decorate 71(@patchConstantOutput.edges) BuiltIn TessLevelOuter 269 2: TypeVoid 270 3: TypeFunction 2 271 6: TypeFloat 32 272 7: TypeVector 6(float) 3 273 8(VS_OUT): TypeStruct 7(fvec3) 274 9: TypeInt 32 0 275 10: 9(int) Constant 4 276 11: TypeArray 8(VS_OUT) 10 277 12: TypePointer Function 11 278 13: TypePointer Function 9(int) 279 14(HS_OUT): TypeStruct 7(fvec3) 280 15: TypeFunction 14(HS_OUT) 12(ptr) 13(ptr) 281 20: 9(int) Constant 2 282 21: TypeArray 6(float) 20 28322(HS_CONSTANT_OUT): TypeStruct 21 284 23: TypeFunction 22(HS_CONSTANT_OUT) 13(ptr) 285 27: TypePointer Function 14(HS_OUT) 286 29: TypeInt 32 1 287 30: 29(int) Constant 0 288 31: TypePointer Function 7(fvec3) 289 39: TypePointer Input 11 290 40(ip): 39(ptr) Variable Input 291 43: TypePointer Input 9(int) 292 44(m_cpid): 43(ptr) Variable Input 293 46: TypeArray 14(HS_OUT) 10 294 47: TypePointer Output 46 29548(@entryPointOutput): 47(ptr) Variable Output 296 55: TypePointer Output 14(HS_OUT) 297 57: 9(int) Constant 0 298 59: TypeBool 299 63: TypePointer Function 22(HS_CONSTANT_OUT) 300 65(pid): 43(ptr) Variable Input 301 69: TypeArray 6(float) 10 302 70: TypePointer Output 69 30371(@patchConstantOutput.edges): 70(ptr) Variable Output 304 72: TypePointer Function 6(float) 305 75: TypePointer Output 6(float) 306 77: 29(int) Constant 1 307 82: 6(float) Constant 1073741824 308 84: 6(float) Constant 1090519040 309 4(main): 2 Function None 3 310 5: Label 311 38(ip): 12(ptr) Variable Function 312 42(m_cpid): 13(ptr) Variable Function 313 50(param): 12(ptr) Variable Function 314 52(param): 13(ptr) Variable Function 31564(@patchConstantResult): 63(ptr) Variable Function 316 66(param): 13(ptr) Variable Function 317 41: 11 Load 40(ip) 318 Store 38(ip) 41 319 45: 9(int) Load 44(m_cpid) 320 Store 42(m_cpid) 45 321 49: 9(int) Load 44(m_cpid) 322 51: 11 Load 38(ip) 323 Store 50(param) 51 324 53: 9(int) Load 42(m_cpid) 325 Store 52(param) 53 326 54: 14(HS_OUT) FunctionCall 18(@main(struct-VS_OUT-vf31[4];u1;) 50(param) 52(param) 327 56: 55(ptr) AccessChain 48(@entryPointOutput) 49 328 Store 56 54 329 ControlBarrier 20 10 57 330 58: 9(int) Load 44(m_cpid) 331 60: 59(bool) IEqual 58 30 332 SelectionMerge 62 None 333 BranchConditional 60 61 62 334 61: Label 335 67: 9(int) Load 65(pid) 336 Store 66(param) 67 337 68:22(HS_CONSTANT_OUT) FunctionCall 25(PCF(u1;) 66(param) 338 Store 64(@patchConstantResult) 68 339 73: 72(ptr) AccessChain 64(@patchConstantResult) 30 30 340 74: 6(float) Load 73 341 76: 75(ptr) AccessChain 71(@patchConstantOutput.edges) 30 342 Store 76 74 343 78: 72(ptr) AccessChain 64(@patchConstantResult) 30 77 344 79: 6(float) Load 78 345 80: 75(ptr) AccessChain 71(@patchConstantOutput.edges) 77 346 Store 80 79 347 Branch 62 348 62: Label 349 Return 350 FunctionEnd 35118(@main(struct-VS_OUT-vf31[4];u1;): 14(HS_OUT) Function None 15 352 16(ip): 12(ptr) FunctionParameter 353 17(m_cpid): 13(ptr) FunctionParameter 354 19: Label 355 28(output): 27(ptr) Variable Function 356 32: 31(ptr) AccessChain 16(ip) 30 30 357 33: 7(fvec3) Load 32 358 34: 31(ptr) AccessChain 28(output) 30 359 Store 34 33 360 35: 14(HS_OUT) Load 28(output) 361 ReturnValue 35 362 FunctionEnd 363 25(PCF(u1;):22(HS_CONSTANT_OUT) Function None 23 364 24(pid): 13(ptr) FunctionParameter 365 26: Label 366 81(output): 63(ptr) Variable Function 367 83: 72(ptr) AccessChain 81(output) 30 30 368 Store 83 82 369 85: 72(ptr) AccessChain 81(output) 30 77 370 Store 85 84 371 86:22(HS_CONSTANT_OUT) Load 81(output) 372 ReturnValue 86 373 FunctionEnd 374