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