You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

629 lines
36 KiB

hlsl.domain.1.tese
Shader version: 500
input primitive = triangles
vertex spacing = none
triangle order = none
0:? Sequence
0:22 Function Definition: @main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11; ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Function Parameters:
0:22 'i' ( const (read only) 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 'f' ( in float)
0:22 'tesscoord' ( in 3-component vector of float)
0:22 'pcf_data' ( in structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:? Sequence
0:25 move second child to first child ( temp 4-component vector of float)
0:25 pos: direct index for structure ( temp 4-component vector of float)
0:25 'o' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:25 Constant:
0:25 0 (const int)
0:25 add ( temp 4-component vector of float)
0:25 pos: direct index for structure ( temp 4-component vector of float)
0:25 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:25 'i' ( const (read only) 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:25 Constant:
0:25 0 (const int)
0:25 Constant:
0:25 0 (const int)
0:25 component-wise multiply ( temp float)
0:25 direct index ( temp float)
0:25 'tesscoord' ( in 3-component vector of float)
0:25 Constant:
0:25 0 (const int)
0:25 'f' ( in float)
0:26 move second child to first child ( temp 3-component vector of float)
0:26 norm: direct index for structure ( temp 3-component vector of float)
0:26 'o' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:26 Constant:
0:26 1 (const int)
0:26 add ( temp 3-component vector of float)
0:26 norm: direct index for structure ( temp 3-component vector of float)
0:26 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:26 'i' ( const (read only) 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:26 Constant:
0:26 0 (const int)
0:26 Constant:
0:26 1 (const int)
0:26 direct index ( temp float)
0:26 'tesscoord' ( in 3-component vector of float)
0:26 Constant:
0:26 1 (const int)
0:28 direct index ( temp float)
0:28 'tesscoord' ( in 3-component vector of float)
0:28 Constant:
0:28 2 (const int)
0:30 Branch: Return with expression
0:30 'o' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Function Definition: main( ( temp void)
0:22 Function Parameters:
0:? Sequence
0:22 Sequence
0:22 move second child to first child ( temp 4-component vector of float)
0:22 pos: direct index for structure ( temp 4-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 0 (const int)
0:22 direct index (layout( location=0) in 4-component vector of float)
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
0:22 Constant:
0:22 0 (const int)
0:22 move second child to first child ( temp 3-component vector of float)
0:22 norm: direct index for structure ( temp 3-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 1 (const int)
0:22 direct index (layout( location=1) in 3-component vector of float)
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
0:22 Constant:
0:22 0 (const int)
0:22 move second child to first child ( temp 4-component vector of float)
0:22 pos: direct index for structure ( temp 4-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 1 (const int)
0:22 Constant:
0:22 0 (const int)
0:22 direct index (layout( location=0) in 4-component vector of float)
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
0:22 Constant:
0:22 1 (const int)
0:22 move second child to first child ( temp 3-component vector of float)
0:22 norm: direct index for structure ( temp 3-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 1 (const int)
0:22 Constant:
0:22 1 (const int)
0:22 direct index (layout( location=1) in 3-component vector of float)
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
0:22 Constant:
0:22 1 (const int)
0:22 move second child to first child ( temp 4-component vector of float)
0:22 pos: direct index for structure ( temp 4-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 2 (const int)
0:22 Constant:
0:22 0 (const int)
0:22 direct index (layout( location=0) in 4-component vector of float)
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
0:22 Constant:
0:22 2 (const int)
0:22 move second child to first child ( temp 3-component vector of float)
0:22 norm: direct index for structure ( temp 3-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 2 (const int)
0:22 Constant:
0:22 1 (const int)
0:22 direct index (layout( location=1) in 3-component vector of float)
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
0:22 Constant:
0:22 2 (const int)
0:22 move second child to first child ( temp float)
0:? 'f' ( temp float)
0:? 'f' (layout( location=2) patch in float)
0:22 move second child to first child ( temp 3-component vector of float)
0:? 'tesscoord' ( temp 3-component vector of float)
0:? 'tesscoord' ( patch in 3-component vector of float TessCoord)
0:22 Sequence
0:22 move second child to first child ( temp float)
0:22 direct index ( temp float)
0:22 flTessFactor: direct index for structure ( temp 3-element array of float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 0 (const int)
0:22 direct index ( patch in float TessLevelOuter)
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
0:22 Constant:
0:22 0 (const int)
0:22 move second child to first child ( temp float)
0:22 direct index ( temp float)
0:22 flTessFactor: direct index for structure ( temp 3-element array of float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 1 (const int)
0:22 direct index ( patch in float TessLevelOuter)
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
0:22 Constant:
0:22 1 (const int)
0:22 move second child to first child ( temp float)
0:22 direct index ( temp float)
0:22 flTessFactor: direct index for structure ( temp 3-element array of float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 2 (const int)
0:22 direct index ( patch in float TessLevelOuter)
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
0:22 Constant:
0:22 2 (const int)
0:22 move second child to first child ( temp float)
0:22 flInsideTessFactor: direct index for structure ( temp float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 Constant:
0:22 1 (const int)
0:22 direct index ( patch in float TessLevelInner)
0:? 'pcf_data.flInsideTessFactor' ( patch in 2-element array of float TessLevelInner)
0:22 Constant:
0:22 0 (const int)
0:22 Sequence
0:22 move second child to first child ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Function Call: @main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11; ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'f' ( temp float)
0:? 'tesscoord' ( temp 3-component vector of float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 move second child to first child ( temp 4-component vector of float)
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
0:22 pos: direct index for structure ( temp 4-component vector of float)
0:22 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 0 (const int)
0:22 move second child to first child ( temp 3-component vector of float)
0:? '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
0:22 norm: direct index for structure ( temp 3-component vector of float)
0:22 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 1 (const int)
0:? Linker Objects
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
0:? '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
0:? 'f' (layout( location=2) patch in float)
0:? 'tesscoord' ( patch in 3-component vector of float TessCoord)
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
0:? 'pcf_data.flInsideTessFactor' ( patch in 2-element array of float TessLevelInner)
Linked tessellation evaluation stage:
Shader version: 500
input primitive = triangles
vertex spacing = none
triangle order = none
0:? Sequence
0:22 Function Definition: @main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11; ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Function Parameters:
0:22 'i' ( const (read only) 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 'f' ( in float)
0:22 'tesscoord' ( in 3-component vector of float)
0:22 'pcf_data' ( in structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:? Sequence
0:25 move second child to first child ( temp 4-component vector of float)
0:25 pos: direct index for structure ( temp 4-component vector of float)
0:25 'o' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:25 Constant:
0:25 0 (const int)
0:25 add ( temp 4-component vector of float)
0:25 pos: direct index for structure ( temp 4-component vector of float)
0:25 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:25 'i' ( const (read only) 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:25 Constant:
0:25 0 (const int)
0:25 Constant:
0:25 0 (const int)
0:25 component-wise multiply ( temp float)
0:25 direct index ( temp float)
0:25 'tesscoord' ( in 3-component vector of float)
0:25 Constant:
0:25 0 (const int)
0:25 'f' ( in float)
0:26 move second child to first child ( temp 3-component vector of float)
0:26 norm: direct index for structure ( temp 3-component vector of float)
0:26 'o' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:26 Constant:
0:26 1 (const int)
0:26 add ( temp 3-component vector of float)
0:26 norm: direct index for structure ( temp 3-component vector of float)
0:26 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:26 'i' ( const (read only) 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:26 Constant:
0:26 0 (const int)
0:26 Constant:
0:26 1 (const int)
0:26 direct index ( temp float)
0:26 'tesscoord' ( in 3-component vector of float)
0:26 Constant:
0:26 1 (const int)
0:28 direct index ( temp float)
0:28 'tesscoord' ( in 3-component vector of float)
0:28 Constant:
0:28 2 (const int)
0:30 Branch: Return with expression
0:30 'o' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Function Definition: main( ( temp void)
0:22 Function Parameters:
0:? Sequence
0:22 Sequence
0:22 move second child to first child ( temp 4-component vector of float)
0:22 pos: direct index for structure ( temp 4-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 0 (const int)
0:22 direct index (layout( location=0) in 4-component vector of float)
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
0:22 Constant:
0:22 0 (const int)
0:22 move second child to first child ( temp 3-component vector of float)
0:22 norm: direct index for structure ( temp 3-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 1 (const int)
0:22 direct index (layout( location=1) in 3-component vector of float)
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
0:22 Constant:
0:22 0 (const int)
0:22 move second child to first child ( temp 4-component vector of float)
0:22 pos: direct index for structure ( temp 4-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 1 (const int)
0:22 Constant:
0:22 0 (const int)
0:22 direct index (layout( location=0) in 4-component vector of float)
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
0:22 Constant:
0:22 1 (const int)
0:22 move second child to first child ( temp 3-component vector of float)
0:22 norm: direct index for structure ( temp 3-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 1 (const int)
0:22 Constant:
0:22 1 (const int)
0:22 direct index (layout( location=1) in 3-component vector of float)
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
0:22 Constant:
0:22 1 (const int)
0:22 move second child to first child ( temp 4-component vector of float)
0:22 pos: direct index for structure ( temp 4-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 2 (const int)
0:22 Constant:
0:22 0 (const int)
0:22 direct index (layout( location=0) in 4-component vector of float)
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
0:22 Constant:
0:22 2 (const int)
0:22 move second child to first child ( temp 3-component vector of float)
0:22 norm: direct index for structure ( temp 3-component vector of float)
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 2 (const int)
0:22 Constant:
0:22 1 (const int)
0:22 direct index (layout( location=1) in 3-component vector of float)
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
0:22 Constant:
0:22 2 (const int)
0:22 move second child to first child ( temp float)
0:? 'f' ( temp float)
0:? 'f' (layout( location=2) patch in float)
0:22 move second child to first child ( temp 3-component vector of float)
0:? 'tesscoord' ( temp 3-component vector of float)
0:? 'tesscoord' ( patch in 3-component vector of float TessCoord)
0:22 Sequence
0:22 move second child to first child ( temp float)
0:22 direct index ( temp float)
0:22 flTessFactor: direct index for structure ( temp 3-element array of float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 0 (const int)
0:22 direct index ( patch in float TessLevelOuter)
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
0:22 Constant:
0:22 0 (const int)
0:22 move second child to first child ( temp float)
0:22 direct index ( temp float)
0:22 flTessFactor: direct index for structure ( temp 3-element array of float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 1 (const int)
0:22 direct index ( patch in float TessLevelOuter)
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
0:22 Constant:
0:22 1 (const int)
0:22 move second child to first child ( temp float)
0:22 direct index ( temp float)
0:22 flTessFactor: direct index for structure ( temp 3-element array of float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 Constant:
0:22 0 (const int)
0:22 Constant:
0:22 2 (const int)
0:22 direct index ( patch in float TessLevelOuter)
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
0:22 Constant:
0:22 2 (const int)
0:22 move second child to first child ( temp float)
0:22 flInsideTessFactor: direct index for structure ( temp float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 Constant:
0:22 1 (const int)
0:22 direct index ( patch in float TessLevelInner)
0:? 'pcf_data.flInsideTessFactor' ( patch in 2-element array of float TessLevelInner)
0:22 Constant:
0:22 0 (const int)
0:22 Sequence
0:22 move second child to first child ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Function Call: @main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11; ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:? 'f' ( temp float)
0:? 'tesscoord' ( temp 3-component vector of float)
0:? 'pcf_data' ( temp structure{ temp 3-element array of float flTessFactor, temp float flInsideTessFactor})
0:22 move second child to first child ( temp 4-component vector of float)
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
0:22 pos: direct index for structure ( temp 4-component vector of float)
0:22 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 0 (const int)
0:22 move second child to first child ( temp 3-component vector of float)
0:? '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
0:22 norm: direct index for structure ( temp 3-component vector of float)
0:22 'flattenTemp' ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
0:22 Constant:
0:22 1 (const int)
0:? Linker Objects
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
0:? '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
0:? 'f' (layout( location=2) patch in float)
0:? 'tesscoord' ( patch in 3-component vector of float TessCoord)
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
0:? 'pcf_data.flInsideTessFactor' ( patch in 2-element array of float TessLevelInner)
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 125
Capability Tessellation
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint TessellationEvaluation 4 "main" 55 62 82 85 91 104 118 122
ExecutionMode 4 Triangles
Source HLSL 500
Name 4 "main"
Name 9 "ds_in_t"
MemberName 9(ds_in_t) 0 "pos"
MemberName 9(ds_in_t) 1 "norm"
Name 16 "pcf_in_t"
MemberName 16(pcf_in_t) 0 "flTessFactor"
MemberName 16(pcf_in_t) 1 "flInsideTessFactor"
Name 18 "gs_in_t"
MemberName 18(gs_in_t) 0 "pos"
MemberName 18(gs_in_t) 1 "norm"
Name 24 "@main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11;"
Name 20 "i"
Name 21 "f"
Name 22 "tesscoord"
Name 23 "pcf_data"
Name 27 "o"
Name 52 "i"
Name 55 "i.pos"
Name 62 "i.norm"
Name 80 "f"
Name 82 "f"
Name 84 "tesscoord"
Name 85 "tesscoord"
Name 87 "pcf_data"
Name 91 "pcf_data.flTessFactor"
Name 104 "pcf_data.flInsideTessFactor"
Name 108 "flattenTemp"
Name 110 "param"
Name 112 "param"
Name 114 "param"
Name 118 "@entryPointOutput.pos"
Name 122 "@entryPointOutput.norm"
Decorate 55(i.pos) Location 0
Decorate 62(i.norm) Location 1
Decorate 82(f) Patch
Decorate 82(f) Location 2
Decorate 85(tesscoord) Patch
Decorate 85(tesscoord) BuiltIn TessCoord
Decorate 91(pcf_data.flTessFactor) Patch
Decorate 91(pcf_data.flTessFactor) BuiltIn TessLevelOuter
Decorate 104(pcf_data.flInsideTessFactor) Patch
Decorate 104(pcf_data.flInsideTessFactor) BuiltIn TessLevelInner
Decorate 118(@entryPointOutput.pos) Location 0
Decorate 122(@entryPointOutput.norm) Location 1
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypeVector 6(float) 3
9(ds_in_t): TypeStruct 7(fvec4) 8(fvec3)
10: TypeInt 32 0
11: 10(int) Constant 3
12: TypeArray 9(ds_in_t) 11
13: TypePointer Function 6(float)
14: TypePointer Function 8(fvec3)
15: TypeArray 6(float) 11
16(pcf_in_t): TypeStruct 15 6(float)
17: TypePointer Function 16(pcf_in_t)
18(gs_in_t): TypeStruct 7(fvec4) 8(fvec3)
19: TypeFunction 18(gs_in_t) 12 13(ptr) 14(ptr) 17(ptr)
26: TypePointer Function 18(gs_in_t)
28: TypeInt 32 1
29: 28(int) Constant 0
31: 10(int) Constant 0
38: TypePointer Function 7(fvec4)
40: 28(int) Constant 1
42: 10(int) Constant 1
51: TypePointer Function 12
53: TypeArray 7(fvec4) 11
54: TypePointer Input 53
55(i.pos): 54(ptr) Variable Input
56: TypePointer Input 7(fvec4)
60: TypeArray 8(fvec3) 11
61: TypePointer Input 60
62(i.norm): 61(ptr) Variable Input
63: TypePointer Input 8(fvec3)
73: 28(int) Constant 2
81: TypePointer Input 6(float)
82(f): 81(ptr) Variable Input
85(tesscoord): 63(ptr) Variable Input
88: 10(int) Constant 4
89: TypeArray 6(float) 88
90: TypePointer Input 89
91(pcf_data.flTessFactor): 90(ptr) Variable Input
101: 10(int) Constant 2
102: TypeArray 6(float) 101
103: TypePointer Input 102
104(pcf_data.flInsideTessFactor): 103(ptr) Variable Input
117: TypePointer Output 7(fvec4)
118(@entryPointOutput.pos): 117(ptr) Variable Output
121: TypePointer Output 8(fvec3)
122(@entryPointOutput.norm): 121(ptr) Variable Output
4(main): 2 Function None 3
5: Label
52(i): 51(ptr) Variable Function
80(f): 13(ptr) Variable Function
84(tesscoord): 14(ptr) Variable Function
87(pcf_data): 17(ptr) Variable Function
108(flattenTemp): 26(ptr) Variable Function
110(param): 13(ptr) Variable Function
112(param): 14(ptr) Variable Function
114(param): 17(ptr) Variable Function
57: 56(ptr) AccessChain 55(i.pos) 29
58: 7(fvec4) Load 57
59: 38(ptr) AccessChain 52(i) 29 29
Store 59 58
64: 63(ptr) AccessChain 62(i.norm) 29
65: 8(fvec3) Load 64
66: 14(ptr) AccessChain 52(i) 29 40
Store 66 65
67: 56(ptr) AccessChain 55(i.pos) 40
68: 7(fvec4) Load 67
69: 38(ptr) AccessChain 52(i) 40 29
Store 69 68
70: 63(ptr) AccessChain 62(i.norm) 40
71: 8(fvec3) Load 70
72: 14(ptr) AccessChain 52(i) 40 40
Store 72 71
74: 56(ptr) AccessChain 55(i.pos) 73
75: 7(fvec4) Load 74
76: 38(ptr) AccessChain 52(i) 73 29
Store 76 75
77: 63(ptr) AccessChain 62(i.norm) 73
78: 8(fvec3) Load 77
79: 14(ptr) AccessChain 52(i) 73 40
Store 79 78
83: 6(float) Load 82(f)
Store 80(f) 83
86: 8(fvec3) Load 85(tesscoord)
Store 84(tesscoord) 86
92: 81(ptr) AccessChain 91(pcf_data.flTessFactor) 29
93: 6(float) Load 92
94: 13(ptr) AccessChain 87(pcf_data) 29 29
Store 94 93
95: 81(ptr) AccessChain 91(pcf_data.flTessFactor) 40
96: 6(float) Load 95
97: 13(ptr) AccessChain 87(pcf_data) 29 40
Store 97 96
98: 81(ptr) AccessChain 91(pcf_data.flTessFactor) 73
99: 6(float) Load 98
100: 13(ptr) AccessChain 87(pcf_data) 29 73
Store 100 99
105: 81(ptr) AccessChain 104(pcf_data.flInsideTessFactor) 29
106: 6(float) Load 105
107: 13(ptr) AccessChain 87(pcf_data) 40
Store 107 106
109: 12 Load 52(i)
111: 6(float) Load 80(f)
Store 110(param) 111
113: 8(fvec3) Load 84(tesscoord)
Store 112(param) 113
115:16(pcf_in_t) Load 87(pcf_data)
Store 114(param) 115
116: 18(gs_in_t) FunctionCall 24(@main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11;) 109 110(param) 112(param) 114(param)
Store 108(flattenTemp) 116
119: 38(ptr) AccessChain 108(flattenTemp) 29
120: 7(fvec4) Load 119
Store 118(@entryPointOutput.pos) 120
123: 14(ptr) AccessChain 108(flattenTemp) 40
124: 8(fvec3) Load 123
Store 122(@entryPointOutput.norm) 124
Return
FunctionEnd
24(@main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11;): 18(gs_in_t) Function None 19
20(i): 12 FunctionParameter
21(f): 13(ptr) FunctionParameter
22(tesscoord): 14(ptr) FunctionParameter
23(pcf_data): 17(ptr) FunctionParameter
25: Label
27(o): 26(ptr) Variable Function
30: 7(fvec4) CompositeExtract 20(i) 0 0
32: 13(ptr) AccessChain 22(tesscoord) 31
33: 6(float) Load 32
34: 6(float) Load 21(f)
35: 6(float) FMul 33 34
36: 7(fvec4) CompositeConstruct 35 35 35 35
37: 7(fvec4) FAdd 30 36
39: 38(ptr) AccessChain 27(o) 29
Store 39 37
41: 8(fvec3) CompositeExtract 20(i) 0 1
43: 13(ptr) AccessChain 22(tesscoord) 42
44: 6(float) Load 43
45: 8(fvec3) CompositeConstruct 44 44 44
46: 8(fvec3) FAdd 41 45
47: 14(ptr) AccessChain 27(o) 40
Store 47 46
48: 18(gs_in_t) Load 27(o)
ReturnValue 48
FunctionEnd