1hlsl.domain.3.tese
2Shader version: 500
3input primitive = isolines
4vertex spacing = none
5triangle order = none
60:? Sequence
70:24  Function Definition: @main(struct-ds_in_t-vf4-vf31[2];vf2;struct-pcf_in_t-f1[3]-f11; ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
80:24    Function Parameters:
90:24      'i' ( const (read only) 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
100:24      'tesscoord' ( in 2-component vector of float)
110:24      'pcf_data' ( in structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
120:?     Sequence
130:27      move second child to first child ( temp 4-component vector of float)
140:27        pos: direct index for structure ( temp 4-component vector of float)
150:27          'o' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
160:27          Constant:
170:27            0 (const int)
180:27        add ( temp 4-component vector of float)
190:27          pos: direct index for structure ( temp 4-component vector of float)
200:27            direct index ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
210:27              'i' ( const (read only) 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
220:27              Constant:
230:27                0 (const int)
240:27            Constant:
250:27              0 (const int)
260:27          direct index ( temp float)
270:27            'tesscoord' ( in 2-component vector of float)
280:27            Constant:
290:27              0 (const int)
300:28      move second child to first child ( temp 3-component vector of float)
310:28        norm: direct index for structure ( temp 3-component vector of float)
320:28          'o' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
330:28          Constant:
340:28            1 (const int)
350:28        add ( temp 3-component vector of float)
360:28          norm: direct index for structure ( temp 3-component vector of float)
370:28            direct index ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
380:28              'i' ( const (read only) 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
390:28              Constant:
400:28                0 (const int)
410:28            Constant:
420:28              1 (const int)
430:28          direct index ( temp float)
440:28            'tesscoord' ( in 2-component vector of float)
450:28            Constant:
460:28              1 (const int)
470:30      Branch: Return with expression
480:30        'o' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
490:24  Function Definition: main( ( temp void)
500:24    Function Parameters:
510:?     Sequence
520:24      move second child to first child ( temp 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
530:?         'i' ( temp 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
540:?         'i' (layout( location=0) in 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
550:24      move second child to first child ( temp 2-component vector of float)
560:?         'tesscoord' ( temp 2-component vector of float)
570:?         Construct vec2 ( temp 2-component vector of float)
580:?           'tesscoord' ( patch in 3-component vector of float TessCoord)
590:24      Sequence
600:24        move second child to first child ( temp float)
610:24          direct index ( temp float)
620:24            flTessFactor: direct index for structure ( temp 3-element array of float)
630:?               'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
640:24              Constant:
650:24                0 (const int)
660:24            Constant:
670:24              0 (const int)
680:24          direct index ( patch in float TessLevelOuter)
690:?             'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
700:24            Constant:
710:24              0 (const int)
720:24        move second child to first child ( temp float)
730:24          direct index ( temp float)
740:24            flTessFactor: direct index for structure ( temp 3-element array of float)
750:?               'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
760:24              Constant:
770:24                0 (const int)
780:24            Constant:
790:24              1 (const int)
800:24          direct index ( patch in float TessLevelOuter)
810:?             'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
820:24            Constant:
830:24              1 (const int)
840:24        move second child to first child ( temp float)
850:24          direct index ( temp float)
860:24            flTessFactor: direct index for structure ( temp 3-element array of float)
870:?               'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
880:24              Constant:
890:24                0 (const int)
900:24            Constant:
910:24              2 (const int)
920:24          direct index ( patch in float TessLevelOuter)
930:?             'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
940:24            Constant:
950:24              2 (const int)
960:24        move second child to first child ( temp float)
970:24          flInsideTessFactor: direct index for structure ( temp float)
980:?             'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
990:24            Constant:
1000:24              1 (const int)
1010:24          direct index ( patch in float TessLevelInner)
1020:?             'pcf_data.flInsideTessFactor' ( patch in 2-element array of float TessLevelInner)
1030:24            Constant:
1040:24              0 (const int)
1050:24      Sequence
1060:24        move second child to first child ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1070:24          'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1080:24          Function Call: @main(struct-ds_in_t-vf4-vf31[2];vf2;struct-pcf_in_t-f1[3]-f11; ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1090:?             'i' ( temp 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1100:?             'tesscoord' ( temp 2-component vector of float)
1110:?             'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
1120:24        move second child to first child ( temp 4-component vector of float)
1130:?           '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
1140:24          pos: direct index for structure ( temp 4-component vector of float)
1150:24            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1160:24            Constant:
1170:24              0 (const int)
1180:24        move second child to first child ( temp 3-component vector of float)
1190:?           '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
1200:24          norm: direct index for structure ( temp 3-component vector of float)
1210:24            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1220:24            Constant:
1230:24              1 (const int)
1240:?   Linker Objects
1250:?     '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
1260:?     '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
1270:?     'i' (layout( location=0) in 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1280:?     'tesscoord' ( patch in 3-component vector of float TessCoord)
1290:?     'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
1300:?     'pcf_data.flInsideTessFactor' ( patch in 2-element array of float TessLevelInner)
131
132
133Linked tessellation evaluation stage:
134
135
136Shader version: 500
137input primitive = isolines
138vertex spacing = none
139triangle order = none
1400:? Sequence
1410:24  Function Definition: @main(struct-ds_in_t-vf4-vf31[2];vf2;struct-pcf_in_t-f1[3]-f11; ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1420:24    Function Parameters:
1430:24      'i' ( const (read only) 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1440:24      'tesscoord' ( in 2-component vector of float)
1450:24      'pcf_data' ( in structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
1460:?     Sequence
1470:27      move second child to first child ( temp 4-component vector of float)
1480:27        pos: direct index for structure ( temp 4-component vector of float)
1490:27          'o' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1500:27          Constant:
1510:27            0 (const int)
1520:27        add ( temp 4-component vector of float)
1530:27          pos: direct index for structure ( temp 4-component vector of float)
1540:27            direct index ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1550:27              'i' ( const (read only) 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1560:27              Constant:
1570:27                0 (const int)
1580:27            Constant:
1590:27              0 (const int)
1600:27          direct index ( temp float)
1610:27            'tesscoord' ( in 2-component vector of float)
1620:27            Constant:
1630:27              0 (const int)
1640:28      move second child to first child ( temp 3-component vector of float)
1650:28        norm: direct index for structure ( temp 3-component vector of float)
1660:28          'o' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1670:28          Constant:
1680:28            1 (const int)
1690:28        add ( temp 3-component vector of float)
1700:28          norm: direct index for structure ( temp 3-component vector of float)
1710:28            direct index ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1720:28              'i' ( const (read only) 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1730:28              Constant:
1740:28                0 (const int)
1750:28            Constant:
1760:28              1 (const int)
1770:28          direct index ( temp float)
1780:28            'tesscoord' ( in 2-component vector of float)
1790:28            Constant:
1800:28              1 (const int)
1810:30      Branch: Return with expression
1820:30        'o' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1830:24  Function Definition: main( ( temp void)
1840:24    Function Parameters:
1850:?     Sequence
1860:24      move second child to first child ( temp 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1870:?         'i' ( temp 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1880:?         'i' (layout( location=0) in 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
1890:24      move second child to first child ( temp 2-component vector of float)
1900:?         'tesscoord' ( temp 2-component vector of float)
1910:?         Construct vec2 ( temp 2-component vector of float)
1920:?           'tesscoord' ( patch in 3-component vector of float TessCoord)
1930:24      Sequence
1940:24        move second child to first child ( temp float)
1950:24          direct index ( temp float)
1960:24            flTessFactor: direct index for structure ( temp 3-element array of float)
1970:?               'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
1980:24              Constant:
1990:24                0 (const int)
2000:24            Constant:
2010:24              0 (const int)
2020:24          direct index ( patch in float TessLevelOuter)
2030:?             'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
2040:24            Constant:
2050:24              0 (const int)
2060:24        move second child to first child ( temp float)
2070:24          direct index ( temp float)
2080:24            flTessFactor: direct index for structure ( temp 3-element array of float)
2090:?               'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
2100:24              Constant:
2110:24                0 (const int)
2120:24            Constant:
2130:24              1 (const int)
2140:24          direct index ( patch in float TessLevelOuter)
2150:?             'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
2160:24            Constant:
2170:24              1 (const int)
2180:24        move second child to first child ( temp float)
2190:24          direct index ( temp float)
2200:24            flTessFactor: direct index for structure ( temp 3-element array of float)
2210:?               'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
2220:24              Constant:
2230:24                0 (const int)
2240:24            Constant:
2250:24              2 (const int)
2260:24          direct index ( patch in float TessLevelOuter)
2270:?             'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
2280:24            Constant:
2290:24              2 (const int)
2300:24        move second child to first child ( temp float)
2310:24          flInsideTessFactor: direct index for structure ( temp float)
2320:?             'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
2330:24            Constant:
2340:24              1 (const int)
2350:24          direct index ( patch in float TessLevelInner)
2360:?             'pcf_data.flInsideTessFactor' ( patch in 2-element array of float TessLevelInner)
2370:24            Constant:
2380:24              0 (const int)
2390:24      Sequence
2400:24        move second child to first child ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
2410:24          'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
2420:24          Function Call: @main(struct-ds_in_t-vf4-vf31[2];vf2;struct-pcf_in_t-f1[3]-f11; ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
2430:?             'i' ( temp 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
2440:?             'tesscoord' ( temp 2-component vector of float)
2450:?             'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor,  temp float flInsideTessFactor})
2460:24        move second child to first child ( temp 4-component vector of float)
2470:?           '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
2480:24          pos: direct index for structure ( temp 4-component vector of float)
2490:24            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
2500:24            Constant:
2510:24              0 (const int)
2520:24        move second child to first child ( temp 3-component vector of float)
2530:?           '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
2540:24          norm: direct index for structure ( temp 3-component vector of float)
2550:24            'flattenTemp' ( temp structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
2560:24            Constant:
2570:24              1 (const int)
2580:?   Linker Objects
2590:?     '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
2600:?     '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
2610:?     'i' (layout( location=0) in 2-element array of structure{ temp 4-component vector of float pos,  temp 3-component vector of float norm})
2620:?     'tesscoord' ( patch in 3-component vector of float TessCoord)
2630:?     'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
2640:?     'pcf_data.flInsideTessFactor' ( patch in 2-element array of float TessLevelInner)
265
266// Module Version 10000
267// Generated by (magic number): 80007
268// Id's are bound by 100
269
270                              Capability Tessellation
271               1:             ExtInstImport  "GLSL.std.450"
272                              MemoryModel Logical GLSL450
273                              EntryPoint TessellationEvaluation 4  "main" 54 58 67 81 93 97
274                              ExecutionMode 4 Isolines
275                              Source HLSL 500
276                              Name 4  "main"
277                              Name 9  "ds_in_t"
278                              MemberName 9(ds_in_t) 0  "pos"
279                              MemberName 9(ds_in_t) 1  "norm"
280                              Name 17  "pcf_in_t"
281                              MemberName 17(pcf_in_t) 0  "flTessFactor"
282                              MemberName 17(pcf_in_t) 1  "flInsideTessFactor"
283                              Name 19  "gs_in_t"
284                              MemberName 19(gs_in_t) 0  "pos"
285                              MemberName 19(gs_in_t) 1  "norm"
286                              Name 24  "@main(struct-ds_in_t-vf4-vf31[2];vf2;struct-pcf_in_t-f1[3]-f11;"
287                              Name 21  "i"
288                              Name 22  "tesscoord"
289                              Name 23  "pcf_data"
290                              Name 27  "o"
291                              Name 52  "i"
292                              Name 54  "i"
293                              Name 56  "tesscoord"
294                              Name 58  "tesscoord"
295                              Name 63  "pcf_data"
296                              Name 67  "pcf_data.flTessFactor"
297                              Name 81  "pcf_data.flInsideTessFactor"
298                              Name 85  "flattenTemp"
299                              Name 87  "param"
300                              Name 89  "param"
301                              Name 93  "@entryPointOutput.pos"
302                              Name 97  "@entryPointOutput.norm"
303                              Decorate 54(i) Location 0
304                              Decorate 58(tesscoord) Patch
305                              Decorate 58(tesscoord) BuiltIn TessCoord
306                              Decorate 67(pcf_data.flTessFactor) Patch
307                              Decorate 67(pcf_data.flTessFactor) BuiltIn TessLevelOuter
308                              Decorate 81(pcf_data.flInsideTessFactor) Patch
309                              Decorate 81(pcf_data.flInsideTessFactor) BuiltIn TessLevelInner
310                              Decorate 93(@entryPointOutput.pos) Location 0
311                              Decorate 97(@entryPointOutput.norm) Location 1
312               2:             TypeVoid
313               3:             TypeFunction 2
314               6:             TypeFloat 32
315               7:             TypeVector 6(float) 4
316               8:             TypeVector 6(float) 3
317      9(ds_in_t):             TypeStruct 7(fvec4) 8(fvec3)
318              10:             TypeInt 32 0
319              11:     10(int) Constant 2
320              12:             TypeArray 9(ds_in_t) 11
321              13:             TypeVector 6(float) 2
322              14:             TypePointer Function 13(fvec2)
323              15:     10(int) Constant 3
324              16:             TypeArray 6(float) 15
325    17(pcf_in_t):             TypeStruct 16 6(float)
326              18:             TypePointer Function 17(pcf_in_t)
327     19(gs_in_t):             TypeStruct 7(fvec4) 8(fvec3)
328              20:             TypeFunction 19(gs_in_t) 12 14(ptr) 18(ptr)
329              26:             TypePointer Function 19(gs_in_t)
330              28:             TypeInt 32 1
331              29:     28(int) Constant 0
332              31:     10(int) Constant 0
333              32:             TypePointer Function 6(float)
334              37:             TypePointer Function 7(fvec4)
335              39:     28(int) Constant 1
336              41:     10(int) Constant 1
337              46:             TypePointer Function 8(fvec3)
338              51:             TypePointer Function 12
339              53:             TypePointer Input 12
340           54(i):     53(ptr) Variable Input
341              57:             TypePointer Input 8(fvec3)
342   58(tesscoord):     57(ptr) Variable Input
343              64:     10(int) Constant 4
344              65:             TypeArray 6(float) 64
345              66:             TypePointer Input 65
34667(pcf_data.flTessFactor):     66(ptr) Variable Input
347              68:             TypePointer Input 6(float)
348              75:     28(int) Constant 2
349              79:             TypeArray 6(float) 11
350              80:             TypePointer Input 79
35181(pcf_data.flInsideTessFactor):     80(ptr) Variable Input
352              92:             TypePointer Output 7(fvec4)
35393(@entryPointOutput.pos):     92(ptr) Variable Output
354              96:             TypePointer Output 8(fvec3)
35597(@entryPointOutput.norm):     96(ptr) Variable Output
356         4(main):           2 Function None 3
357               5:             Label
358           52(i):     51(ptr) Variable Function
359   56(tesscoord):     14(ptr) Variable Function
360    63(pcf_data):     18(ptr) Variable Function
361 85(flattenTemp):     26(ptr) Variable Function
362       87(param):     14(ptr) Variable Function
363       89(param):     18(ptr) Variable Function
364              55:          12 Load 54(i)
365                              Store 52(i) 55
366              59:    8(fvec3) Load 58(tesscoord)
367              60:    6(float) CompositeExtract 59 0
368              61:    6(float) CompositeExtract 59 1
369              62:   13(fvec2) CompositeConstruct 60 61
370                              Store 56(tesscoord) 62
371              69:     68(ptr) AccessChain 67(pcf_data.flTessFactor) 29
372              70:    6(float) Load 69
373              71:     32(ptr) AccessChain 63(pcf_data) 29 29
374                              Store 71 70
375              72:     68(ptr) AccessChain 67(pcf_data.flTessFactor) 39
376              73:    6(float) Load 72
377              74:     32(ptr) AccessChain 63(pcf_data) 29 39
378                              Store 74 73
379              76:     68(ptr) AccessChain 67(pcf_data.flTessFactor) 75
380              77:    6(float) Load 76
381              78:     32(ptr) AccessChain 63(pcf_data) 29 75
382                              Store 78 77
383              82:     68(ptr) AccessChain 81(pcf_data.flInsideTessFactor) 29
384              83:    6(float) Load 82
385              84:     32(ptr) AccessChain 63(pcf_data) 39
386                              Store 84 83
387              86:          12 Load 52(i)
388              88:   13(fvec2) Load 56(tesscoord)
389                              Store 87(param) 88
390              90:17(pcf_in_t) Load 63(pcf_data)
391                              Store 89(param) 90
392              91: 19(gs_in_t) FunctionCall 24(@main(struct-ds_in_t-vf4-vf31[2];vf2;struct-pcf_in_t-f1[3]-f11;) 86 87(param) 89(param)
393                              Store 85(flattenTemp) 91
394              94:     37(ptr) AccessChain 85(flattenTemp) 29
395              95:    7(fvec4) Load 94
396                              Store 93(@entryPointOutput.pos) 95
397              98:     46(ptr) AccessChain 85(flattenTemp) 39
398              99:    8(fvec3) Load 98
399                              Store 97(@entryPointOutput.norm) 99
400                              Return
401                              FunctionEnd
40224(@main(struct-ds_in_t-vf4-vf31[2];vf2;struct-pcf_in_t-f1[3]-f11;): 19(gs_in_t) Function None 20
403           21(i):          12 FunctionParameter
404   22(tesscoord):     14(ptr) FunctionParameter
405    23(pcf_data):     18(ptr) FunctionParameter
406              25:             Label
407           27(o):     26(ptr) Variable Function
408              30:    7(fvec4) CompositeExtract 21(i) 0 0
409              33:     32(ptr) AccessChain 22(tesscoord) 31
410              34:    6(float) Load 33
411              35:    7(fvec4) CompositeConstruct 34 34 34 34
412              36:    7(fvec4) FAdd 30 35
413              38:     37(ptr) AccessChain 27(o) 29
414                              Store 38 36
415              40:    8(fvec3) CompositeExtract 21(i) 0 1
416              42:     32(ptr) AccessChain 22(tesscoord) 41
417              43:    6(float) Load 42
418              44:    8(fvec3) CompositeConstruct 43 43 43
419              45:    8(fvec3) FAdd 40 44
420              47:     46(ptr) AccessChain 27(o) 39
421                              Store 47 45
422              48: 19(gs_in_t) Load 27(o)
423                              ReturnValue 48
424                              FunctionEnd
425