HLSL: Stop flattening non-IO structs containing opaques.
This makes struct returns from functions work, but breaks structs containing arrays, due to limitations in subsequent transforms in spirv-opt. This is expected to be fixed soon.
This commit is contained in:
parent
471bfed062
commit
dc005fb083
18 changed files with 1610 additions and 1419 deletions
|
|
@ -4,14 +4,19 @@ Shader version: 500
|
|||
0:? Sequence
|
||||
0:5 Function Definition: lookUp(struct-FxaaTex-p1-t211; ( temp 4-component vector of float)
|
||||
0:5 Function Parameters:
|
||||
0:? 'tex.smpl' ( in sampler)
|
||||
0:? 'tex.tex' ( in texture2D)
|
||||
0:5 'tex' ( in structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:? Sequence
|
||||
0:6 Branch: Return with expression
|
||||
0:6 texture ( temp 4-component vector of float)
|
||||
0:6 Construct combined texture-sampler ( temp sampler2D)
|
||||
0:? 'tex.tex' ( in texture2D)
|
||||
0:? 'tex.smpl' ( in sampler)
|
||||
0:6 tex: direct index for structure ( temp texture2D)
|
||||
0:6 'tex' ( in structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:6 Constant:
|
||||
0:6 1 (const int)
|
||||
0:6 smpl: direct index for structure ( temp sampler)
|
||||
0:6 'tex' ( in structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:6 Constant:
|
||||
0:6 0 (const int)
|
||||
0:? Constant:
|
||||
0:? 0.300000
|
||||
0:? 0.400000
|
||||
|
|
@ -19,10 +24,16 @@ Shader version: 500
|
|||
0:10 Function Parameters:
|
||||
0:? Sequence
|
||||
0:12 move second child to first child ( temp sampler)
|
||||
0:? 't.smpl' ( temp sampler)
|
||||
0:12 smpl: direct index for structure ( temp sampler)
|
||||
0:12 't' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 'g_tInputTexture_sampler' ( uniform sampler)
|
||||
0:13 move second child to first child ( temp texture2D)
|
||||
0:? 't.tex' ( temp texture2D)
|
||||
0:13 tex: direct index for structure ( temp texture2D)
|
||||
0:13 't' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 'g_tInputTexture' ( uniform texture2D)
|
||||
0:14 Branch: Return with expression
|
||||
0:14 't' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
|
|
@ -30,67 +41,34 @@ Shader version: 500
|
|||
0:18 Function Parameters:
|
||||
0:? Sequence
|
||||
0:19 Sequence
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 Construct structure ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 'g_tInputTexture_sampler' ( uniform sampler)
|
||||
0:19 'g_tInputTexture' ( uniform texture2D)
|
||||
0:19 move second child to first child ( temp sampler)
|
||||
0:? 'tex1.smpl' ( temp sampler)
|
||||
0:19 smpl: direct index for structure ( temp sampler)
|
||||
0:19 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 move second child to first child ( temp texture2D)
|
||||
0:? 'tex1.tex' ( temp texture2D)
|
||||
0:19 tex: direct index for structure ( temp texture2D)
|
||||
0:19 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 'tex1' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 Construct structure ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 'g_tInputTexture_sampler' ( uniform sampler)
|
||||
0:19 'g_tInputTexture' ( uniform texture2D)
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child ( temp 4-component vector of float)
|
||||
0:20 'res' ( temp 4-component vector of float)
|
||||
0:20 Function Call: lookUp(struct-FxaaTex-p1-t211; ( temp 4-component vector of float)
|
||||
0:? 'tex1.smpl' ( temp sampler)
|
||||
0:? 'tex1.tex' ( temp texture2D)
|
||||
0:20 'tex1' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Sequence
|
||||
0:21 Sequence
|
||||
0:21 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Function Call: fillOpaque( ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 move second child to first child ( temp sampler)
|
||||
0:? 'tex2.smpl' ( temp sampler)
|
||||
0:21 smpl: direct index for structure ( temp sampler)
|
||||
0:21 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Constant:
|
||||
0:21 0 (const int)
|
||||
0:21 move second child to first child ( temp texture2D)
|
||||
0:? 'tex2.tex' ( temp texture2D)
|
||||
0:21 tex: direct index for structure ( temp texture2D)
|
||||
0:21 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Constant:
|
||||
0:21 1 (const int)
|
||||
0:21 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 'tex2' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Function Call: fillOpaque( ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:22 add second child into first child ( temp 4-component vector of float)
|
||||
0:22 'res' ( temp 4-component vector of float)
|
||||
0:22 Function Call: lookUp(struct-FxaaTex-p1-t211; ( temp 4-component vector of float)
|
||||
0:? 'tex2.smpl' ( temp sampler)
|
||||
0:? 'tex2.tex' ( temp texture2D)
|
||||
0:22 'tex2' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:23 Sequence
|
||||
0:23 Sequence
|
||||
0:23 move second child to first child ( temp sampler)
|
||||
0:? 'tex3.smpl' ( temp sampler)
|
||||
0:? 'tex1.smpl' ( temp sampler)
|
||||
0:23 move second child to first child ( temp texture2D)
|
||||
0:? 'tex3.tex' ( temp texture2D)
|
||||
0:? 'tex1.tex' ( temp texture2D)
|
||||
0:23 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:23 'tex3' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:23 'tex1' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:24 add second child into first child ( temp 4-component vector of float)
|
||||
0:24 'res' ( temp 4-component vector of float)
|
||||
0:24 Function Call: lookUp(struct-FxaaTex-p1-t211; ( temp 4-component vector of float)
|
||||
0:? 'tex3.smpl' ( temp sampler)
|
||||
0:? 'tex3.tex' ( temp texture2D)
|
||||
0:25 Branch: Return with expression
|
||||
0:25 'res' ( temp 4-component vector of float)
|
||||
0:24 'tex3' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:26 Branch: Return with expression
|
||||
0:26 'res' ( temp 4-component vector of float)
|
||||
0:18 Function Definition: main( ( temp void)
|
||||
0:18 Function Parameters:
|
||||
0:? Sequence
|
||||
|
|
@ -110,14 +88,19 @@ Shader version: 500
|
|||
0:? Sequence
|
||||
0:5 Function Definition: lookUp(struct-FxaaTex-p1-t211; ( temp 4-component vector of float)
|
||||
0:5 Function Parameters:
|
||||
0:? 'tex.smpl' ( in sampler)
|
||||
0:? 'tex.tex' ( in texture2D)
|
||||
0:5 'tex' ( in structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:? Sequence
|
||||
0:6 Branch: Return with expression
|
||||
0:6 texture ( temp 4-component vector of float)
|
||||
0:6 Construct combined texture-sampler ( temp sampler2D)
|
||||
0:? 'tex.tex' ( in texture2D)
|
||||
0:? 'tex.smpl' ( in sampler)
|
||||
0:6 tex: direct index for structure ( temp texture2D)
|
||||
0:6 'tex' ( in structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:6 Constant:
|
||||
0:6 1 (const int)
|
||||
0:6 smpl: direct index for structure ( temp sampler)
|
||||
0:6 'tex' ( in structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:6 Constant:
|
||||
0:6 0 (const int)
|
||||
0:? Constant:
|
||||
0:? 0.300000
|
||||
0:? 0.400000
|
||||
|
|
@ -125,10 +108,16 @@ Shader version: 500
|
|||
0:10 Function Parameters:
|
||||
0:? Sequence
|
||||
0:12 move second child to first child ( temp sampler)
|
||||
0:? 't.smpl' ( temp sampler)
|
||||
0:12 smpl: direct index for structure ( temp sampler)
|
||||
0:12 't' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:12 Constant:
|
||||
0:12 0 (const int)
|
||||
0:12 'g_tInputTexture_sampler' ( uniform sampler)
|
||||
0:13 move second child to first child ( temp texture2D)
|
||||
0:? 't.tex' ( temp texture2D)
|
||||
0:13 tex: direct index for structure ( temp texture2D)
|
||||
0:13 't' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:13 Constant:
|
||||
0:13 1 (const int)
|
||||
0:13 'g_tInputTexture' ( uniform texture2D)
|
||||
0:14 Branch: Return with expression
|
||||
0:14 't' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
|
|
@ -136,67 +125,34 @@ Shader version: 500
|
|||
0:18 Function Parameters:
|
||||
0:? Sequence
|
||||
0:19 Sequence
|
||||
0:19 Sequence
|
||||
0:19 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 Construct structure ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 'g_tInputTexture_sampler' ( uniform sampler)
|
||||
0:19 'g_tInputTexture' ( uniform texture2D)
|
||||
0:19 move second child to first child ( temp sampler)
|
||||
0:? 'tex1.smpl' ( temp sampler)
|
||||
0:19 smpl: direct index for structure ( temp sampler)
|
||||
0:19 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 Constant:
|
||||
0:19 0 (const int)
|
||||
0:19 move second child to first child ( temp texture2D)
|
||||
0:? 'tex1.tex' ( temp texture2D)
|
||||
0:19 tex: direct index for structure ( temp texture2D)
|
||||
0:19 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 Constant:
|
||||
0:19 1 (const int)
|
||||
0:19 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 'tex1' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 Construct structure ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:19 'g_tInputTexture_sampler' ( uniform sampler)
|
||||
0:19 'g_tInputTexture' ( uniform texture2D)
|
||||
0:20 Sequence
|
||||
0:20 move second child to first child ( temp 4-component vector of float)
|
||||
0:20 'res' ( temp 4-component vector of float)
|
||||
0:20 Function Call: lookUp(struct-FxaaTex-p1-t211; ( temp 4-component vector of float)
|
||||
0:? 'tex1.smpl' ( temp sampler)
|
||||
0:? 'tex1.tex' ( temp texture2D)
|
||||
0:20 'tex1' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Sequence
|
||||
0:21 Sequence
|
||||
0:21 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Function Call: fillOpaque( ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 move second child to first child ( temp sampler)
|
||||
0:? 'tex2.smpl' ( temp sampler)
|
||||
0:21 smpl: direct index for structure ( temp sampler)
|
||||
0:21 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Constant:
|
||||
0:21 0 (const int)
|
||||
0:21 move second child to first child ( temp texture2D)
|
||||
0:? 'tex2.tex' ( temp texture2D)
|
||||
0:21 tex: direct index for structure ( temp texture2D)
|
||||
0:21 'flattenTemp' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Constant:
|
||||
0:21 1 (const int)
|
||||
0:21 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 'tex2' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:21 Function Call: fillOpaque( ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:22 add second child into first child ( temp 4-component vector of float)
|
||||
0:22 'res' ( temp 4-component vector of float)
|
||||
0:22 Function Call: lookUp(struct-FxaaTex-p1-t211; ( temp 4-component vector of float)
|
||||
0:? 'tex2.smpl' ( temp sampler)
|
||||
0:? 'tex2.tex' ( temp texture2D)
|
||||
0:22 'tex2' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:23 Sequence
|
||||
0:23 Sequence
|
||||
0:23 move second child to first child ( temp sampler)
|
||||
0:? 'tex3.smpl' ( temp sampler)
|
||||
0:? 'tex1.smpl' ( temp sampler)
|
||||
0:23 move second child to first child ( temp texture2D)
|
||||
0:? 'tex3.tex' ( temp texture2D)
|
||||
0:? 'tex1.tex' ( temp texture2D)
|
||||
0:23 move second child to first child ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:23 'tex3' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:23 'tex1' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:24 add second child into first child ( temp 4-component vector of float)
|
||||
0:24 'res' ( temp 4-component vector of float)
|
||||
0:24 Function Call: lookUp(struct-FxaaTex-p1-t211; ( temp 4-component vector of float)
|
||||
0:? 'tex3.smpl' ( temp sampler)
|
||||
0:? 'tex3.tex' ( temp texture2D)
|
||||
0:25 Branch: Return with expression
|
||||
0:25 'res' ( temp 4-component vector of float)
|
||||
0:24 'tex3' ( temp structure{ temp sampler smpl, temp texture2D tex})
|
||||
0:26 Branch: Return with expression
|
||||
0:26 'res' ( temp 4-component vector of float)
|
||||
0:18 Function Definition: main( ( temp void)
|
||||
0:18 Function Parameters:
|
||||
0:? Sequence
|
||||
|
|
@ -210,164 +166,126 @@ Shader version: 500
|
|||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80002
|
||||
// Id's are bound by 101
|
||||
// Id's are bound by 82
|
||||
|
||||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Vertex 4 "main" 99
|
||||
EntryPoint Vertex 4 "main" 80
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
Name 15 "lookUp(struct-FxaaTex-p1-t211;"
|
||||
Name 13 "tex.smpl"
|
||||
Name 14 "tex.tex"
|
||||
Name 17 "FxaaTex"
|
||||
MemberName 17(FxaaTex) 0 "smpl"
|
||||
MemberName 17(FxaaTex) 1 "tex"
|
||||
Name 19 "fillOpaque("
|
||||
Name 22 "@main("
|
||||
Name 36 "t.smpl"
|
||||
Name 38 "g_tInputTexture_sampler"
|
||||
Name 40 "t.tex"
|
||||
Name 42 "g_tInputTexture"
|
||||
Name 45 "t"
|
||||
Name 49 "flattenTemp"
|
||||
Name 53 "tex1.smpl"
|
||||
Name 58 "tex1.tex"
|
||||
Name 63 "res"
|
||||
Name 9 "FxaaTex"
|
||||
MemberName 9(FxaaTex) 0 "smpl"
|
||||
MemberName 9(FxaaTex) 1 "tex"
|
||||
Name 14 "lookUp(struct-FxaaTex-p1-t211;"
|
||||
Name 13 "tex"
|
||||
Name 17 "fillOpaque("
|
||||
Name 20 "@main("
|
||||
Name 41 "t"
|
||||
Name 43 "g_tInputTexture_sampler"
|
||||
Name 47 "g_tInputTexture"
|
||||
Name 53 "tex1"
|
||||
Name 58 "res"
|
||||
Name 59 "param"
|
||||
Name 62 "tex2"
|
||||
Name 64 "param"
|
||||
Name 66 "param"
|
||||
Name 69 "flattenTemp"
|
||||
Name 71 "tex2.smpl"
|
||||
Name 74 "tex2.tex"
|
||||
Name 77 "param"
|
||||
Name 79 "param"
|
||||
Name 84 "tex3.smpl"
|
||||
Name 86 "tex3.tex"
|
||||
Name 88 "param"
|
||||
Name 90 "param"
|
||||
Name 99 "@entryPointOutput"
|
||||
Decorate 38(g_tInputTexture_sampler) DescriptorSet 0
|
||||
Decorate 42(g_tInputTexture) DescriptorSet 0
|
||||
Decorate 99(@entryPointOutput) Location 0
|
||||
Name 69 "tex3"
|
||||
Name 71 "param"
|
||||
Name 80 "@entryPointOutput"
|
||||
Decorate 43(g_tInputTexture_sampler) DescriptorSet 0
|
||||
Decorate 47(g_tInputTexture) DescriptorSet 0
|
||||
Decorate 80(@entryPointOutput) Location 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeSampler
|
||||
7: TypePointer Function 6
|
||||
8: TypeFloat 32
|
||||
9: TypeImage 8(float) 2D sampled format:Unknown
|
||||
10: TypePointer Function 9
|
||||
11: TypeVector 8(float) 4
|
||||
12: TypeFunction 11(fvec4) 7(ptr) 10(ptr)
|
||||
17(FxaaTex): TypeStruct 6 9
|
||||
18: TypeFunction 17(FxaaTex)
|
||||
21: TypeFunction 11(fvec4)
|
||||
26: TypeSampledImage 9
|
||||
28: TypeVector 8(float) 2
|
||||
29: 8(float) Constant 1050253722
|
||||
30: 8(float) Constant 1053609165
|
||||
31: 28(fvec2) ConstantComposite 29 30
|
||||
32: 8(float) Constant 0
|
||||
37: TypePointer UniformConstant 6
|
||||
38(g_tInputTexture_sampler): 37(ptr) Variable UniformConstant
|
||||
41: TypePointer UniformConstant 9
|
||||
42(g_tInputTexture): 41(ptr) Variable UniformConstant
|
||||
44: TypePointer Function 17(FxaaTex)
|
||||
54: TypeInt 32 1
|
||||
55: 54(int) Constant 0
|
||||
59: 54(int) Constant 1
|
||||
62: TypePointer Function 11(fvec4)
|
||||
98: TypePointer Output 11(fvec4)
|
||||
99(@entryPointOutput): 98(ptr) Variable Output
|
||||
7: TypeFloat 32
|
||||
8: TypeImage 7(float) 2D sampled format:Unknown
|
||||
9(FxaaTex): TypeStruct 6 8
|
||||
10: TypePointer Function 9(FxaaTex)
|
||||
11: TypeVector 7(float) 4
|
||||
12: TypeFunction 11(fvec4) 10(ptr)
|
||||
16: TypeFunction 9(FxaaTex)
|
||||
19: TypeFunction 11(fvec4)
|
||||
22: TypeInt 32 1
|
||||
23: 22(int) Constant 1
|
||||
24: TypePointer Function 8
|
||||
27: 22(int) Constant 0
|
||||
28: TypePointer Function 6
|
||||
31: TypeSampledImage 8
|
||||
33: TypeVector 7(float) 2
|
||||
34: 7(float) Constant 1050253722
|
||||
35: 7(float) Constant 1053609165
|
||||
36: 33(fvec2) ConstantComposite 34 35
|
||||
37: 7(float) Constant 0
|
||||
42: TypePointer UniformConstant 6
|
||||
43(g_tInputTexture_sampler): 42(ptr) Variable UniformConstant
|
||||
46: TypePointer UniformConstant 8
|
||||
47(g_tInputTexture): 46(ptr) Variable UniformConstant
|
||||
57: TypePointer Function 11(fvec4)
|
||||
79: TypePointer Output 11(fvec4)
|
||||
80(@entryPointOutput): 79(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
100: 11(fvec4) FunctionCall 22(@main()
|
||||
Store 99(@entryPointOutput) 100
|
||||
81: 11(fvec4) FunctionCall 20(@main()
|
||||
Store 80(@entryPointOutput) 81
|
||||
Return
|
||||
FunctionEnd
|
||||
15(lookUp(struct-FxaaTex-p1-t211;): 11(fvec4) Function None 12
|
||||
13(tex.smpl): 7(ptr) FunctionParameter
|
||||
14(tex.tex): 10(ptr) FunctionParameter
|
||||
16: Label
|
||||
24: 9 Load 14(tex.tex)
|
||||
25: 6 Load 13(tex.smpl)
|
||||
27: 26 SampledImage 24 25
|
||||
33: 11(fvec4) ImageSampleExplicitLod 27 31 Lod 32
|
||||
ReturnValue 33
|
||||
14(lookUp(struct-FxaaTex-p1-t211;): 11(fvec4) Function None 12
|
||||
13(tex): 10(ptr) FunctionParameter
|
||||
15: Label
|
||||
25: 24(ptr) AccessChain 13(tex) 23
|
||||
26: 8 Load 25
|
||||
29: 28(ptr) AccessChain 13(tex) 27
|
||||
30: 6 Load 29
|
||||
32: 31 SampledImage 26 30
|
||||
38: 11(fvec4) ImageSampleExplicitLod 32 36 Lod 37
|
||||
ReturnValue 38
|
||||
FunctionEnd
|
||||
19(fillOpaque(): 17(FxaaTex) Function None 18
|
||||
20: Label
|
||||
36(t.smpl): 7(ptr) Variable Function
|
||||
40(t.tex): 10(ptr) Variable Function
|
||||
45(t): 44(ptr) Variable Function
|
||||
39: 6 Load 38(g_tInputTexture_sampler)
|
||||
Store 36(t.smpl) 39
|
||||
43: 9 Load 42(g_tInputTexture)
|
||||
Store 40(t.tex) 43
|
||||
46: 17(FxaaTex) Load 45(t)
|
||||
ReturnValue 46
|
||||
17(fillOpaque(): 9(FxaaTex) Function None 16
|
||||
18: Label
|
||||
41(t): 10(ptr) Variable Function
|
||||
44: 6 Load 43(g_tInputTexture_sampler)
|
||||
45: 28(ptr) AccessChain 41(t) 27
|
||||
Store 45 44
|
||||
48: 8 Load 47(g_tInputTexture)
|
||||
49: 24(ptr) AccessChain 41(t) 23
|
||||
Store 49 48
|
||||
50: 9(FxaaTex) Load 41(t)
|
||||
ReturnValue 50
|
||||
FunctionEnd
|
||||
22(@main(): 11(fvec4) Function None 21
|
||||
23: Label
|
||||
49(flattenTemp): 44(ptr) Variable Function
|
||||
53(tex1.smpl): 7(ptr) Variable Function
|
||||
58(tex1.tex): 10(ptr) Variable Function
|
||||
63(res): 62(ptr) Variable Function
|
||||
64(param): 7(ptr) Variable Function
|
||||
66(param): 10(ptr) Variable Function
|
||||
69(flattenTemp): 44(ptr) Variable Function
|
||||
71(tex2.smpl): 7(ptr) Variable Function
|
||||
74(tex2.tex): 10(ptr) Variable Function
|
||||
77(param): 7(ptr) Variable Function
|
||||
79(param): 10(ptr) Variable Function
|
||||
84(tex3.smpl): 7(ptr) Variable Function
|
||||
86(tex3.tex): 10(ptr) Variable Function
|
||||
88(param): 7(ptr) Variable Function
|
||||
90(param): 10(ptr) Variable Function
|
||||
50: 6 Load 38(g_tInputTexture_sampler)
|
||||
51: 9 Load 42(g_tInputTexture)
|
||||
52: 17(FxaaTex) CompositeConstruct 50 51
|
||||
Store 49(flattenTemp) 52
|
||||
56: 7(ptr) AccessChain 49(flattenTemp) 55
|
||||
57: 6 Load 56
|
||||
Store 53(tex1.smpl) 57
|
||||
60: 10(ptr) AccessChain 49(flattenTemp) 59
|
||||
61: 9 Load 60
|
||||
Store 58(tex1.tex) 61
|
||||
65: 6 Load 53(tex1.smpl)
|
||||
20(@main(): 11(fvec4) Function None 19
|
||||
21: Label
|
||||
53(tex1): 10(ptr) Variable Function
|
||||
58(res): 57(ptr) Variable Function
|
||||
59(param): 10(ptr) Variable Function
|
||||
62(tex2): 10(ptr) Variable Function
|
||||
64(param): 10(ptr) Variable Function
|
||||
69(tex3): 10(ptr) Variable Function
|
||||
71(param): 10(ptr) Variable Function
|
||||
54: 6 Load 43(g_tInputTexture_sampler)
|
||||
55: 8 Load 47(g_tInputTexture)
|
||||
56: 9(FxaaTex) CompositeConstruct 54 55
|
||||
Store 53(tex1) 56
|
||||
60: 9(FxaaTex) Load 53(tex1)
|
||||
Store 59(param) 60
|
||||
61: 11(fvec4) FunctionCall 14(lookUp(struct-FxaaTex-p1-t211;) 59(param)
|
||||
Store 58(res) 61
|
||||
63: 9(FxaaTex) FunctionCall 17(fillOpaque()
|
||||
Store 62(tex2) 63
|
||||
65: 9(FxaaTex) Load 62(tex2)
|
||||
Store 64(param) 65
|
||||
67: 9 Load 58(tex1.tex)
|
||||
Store 66(param) 67
|
||||
68: 11(fvec4) FunctionCall 15(lookUp(struct-FxaaTex-p1-t211;) 64(param) 66(param)
|
||||
Store 63(res) 68
|
||||
70: 17(FxaaTex) FunctionCall 19(fillOpaque()
|
||||
Store 69(flattenTemp) 70
|
||||
72: 7(ptr) AccessChain 69(flattenTemp) 55
|
||||
73: 6 Load 72
|
||||
Store 71(tex2.smpl) 73
|
||||
75: 10(ptr) AccessChain 69(flattenTemp) 59
|
||||
76: 9 Load 75
|
||||
Store 74(tex2.tex) 76
|
||||
78: 6 Load 71(tex2.smpl)
|
||||
Store 77(param) 78
|
||||
80: 9 Load 74(tex2.tex)
|
||||
Store 79(param) 80
|
||||
81: 11(fvec4) FunctionCall 15(lookUp(struct-FxaaTex-p1-t211;) 77(param) 79(param)
|
||||
82: 11(fvec4) Load 63(res)
|
||||
83: 11(fvec4) FAdd 82 81
|
||||
Store 63(res) 83
|
||||
85: 6 Load 53(tex1.smpl)
|
||||
Store 84(tex3.smpl) 85
|
||||
87: 9 Load 58(tex1.tex)
|
||||
Store 86(tex3.tex) 87
|
||||
89: 6 Load 84(tex3.smpl)
|
||||
Store 88(param) 89
|
||||
91: 9 Load 86(tex3.tex)
|
||||
Store 90(param) 91
|
||||
92: 11(fvec4) FunctionCall 15(lookUp(struct-FxaaTex-p1-t211;) 88(param) 90(param)
|
||||
93: 11(fvec4) Load 63(res)
|
||||
94: 11(fvec4) FAdd 93 92
|
||||
Store 63(res) 94
|
||||
95: 11(fvec4) Load 63(res)
|
||||
ReturnValue 95
|
||||
66: 11(fvec4) FunctionCall 14(lookUp(struct-FxaaTex-p1-t211;) 64(param)
|
||||
67: 11(fvec4) Load 58(res)
|
||||
68: 11(fvec4) FAdd 67 66
|
||||
Store 58(res) 68
|
||||
70: 9(FxaaTex) Load 53(tex1)
|
||||
Store 69(tex3) 70
|
||||
72: 9(FxaaTex) Load 69(tex3)
|
||||
Store 71(param) 72
|
||||
73: 11(fvec4) FunctionCall 14(lookUp(struct-FxaaTex-p1-t211;) 71(param)
|
||||
74: 11(fvec4) Load 58(res)
|
||||
75: 11(fvec4) FAdd 74 73
|
||||
Store 58(res) 75
|
||||
76: 11(fvec4) Load 58(res)
|
||||
ReturnValue 76
|
||||
FunctionEnd
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue