mirror of
https://github.com/RPCS3/glslang.git
synced 2024-12-05 01:37:07 +00:00
d3f1122a44
Rationalizes the entire tracking of the linker object nodes, effecting GLSL, HLSL, and SPIR-V, to allow tracked objects to be fully edited before their type snapshot for linker objects. Should only effect things when the rest of the AST contained no reference to the symbol, because normal AST nodes were not stale. Also will only effect such objects when their types were edited.
481 lines
20 KiB
Plaintext
Executable File
481 lines
20 KiB
Plaintext
Executable File
hlsl.init.frag
|
|
Shader version: 450
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:1 Sequence
|
|
0:1 move second child to first child (temp 4-component vector of float)
|
|
0:1 'a1' (global 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 0.500000
|
|
0:? 0.000000
|
|
0:? 1.000000
|
|
0:1 move second child to first child (temp 4-component vector of float)
|
|
0:1 'b1' (global 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 2.000000
|
|
0:? 2.500000
|
|
0:? 2.100000
|
|
0:? 2.200000
|
|
0:2 Sequence
|
|
0:2 move second child to first child (temp 4-component vector of float)
|
|
0:2 'a1i' (global 4-component vector of float)
|
|
0:2 Constant:
|
|
0:2 1.000000
|
|
0:2 0.500000
|
|
0:2 0.000000
|
|
0:2 1.000000
|
|
0:2 move second child to first child (temp 4-component vector of float)
|
|
0:2 'b1i' (global 4-component vector of float)
|
|
0:2 Constant:
|
|
0:2 2.000000
|
|
0:2 2.500000
|
|
0:2 2.100000
|
|
0:2 2.200000
|
|
0:3 Sequence
|
|
0:3 move second child to first child (temp float)
|
|
0:3 'a2' (global float)
|
|
0:3 Constant:
|
|
0:3 0.200000
|
|
0:4 Sequence
|
|
0:4 move second child to first child (temp float)
|
|
0:4 'b3' (global float)
|
|
0:4 Constant:
|
|
0:4 0.300000
|
|
0:5 Sequence
|
|
0:5 move second child to first child (temp float)
|
|
0:5 'b4' (global float)
|
|
0:5 Constant:
|
|
0:5 0.400000
|
|
0:6 Sequence
|
|
0:6 move second child to first child (temp float)
|
|
0:6 'a5' (global float)
|
|
0:6 Constant:
|
|
0:6 0.500000
|
|
0:6 move second child to first child (temp float)
|
|
0:6 'c5' (global float)
|
|
0:6 Constant:
|
|
0:6 1.500000
|
|
0:9 Sequence
|
|
0:9 move second child to first child (temp structure{temp int f})
|
|
0:9 'single1' (global structure{temp int f})
|
|
0:9 Constant:
|
|
0:9 10 (const int)
|
|
0:12 Sequence
|
|
0:12 move second child to first child (temp structure{temp 2-component vector of uint v})
|
|
0:12 'single2' (global structure{temp 2-component vector of uint v})
|
|
0:12 Constant:
|
|
0:12 1 (const uint)
|
|
0:12 2 (const uint)
|
|
0:15 Sequence
|
|
0:15 move second child to first child (temp structure{temp structure{temp int f} s1})
|
|
0:15 'single3' (global structure{temp structure{temp int f} s1})
|
|
0:15 Constant:
|
|
0:15 3 (const int)
|
|
0:18 Sequence
|
|
0:18 move second child to first child (temp structure{temp structure{temp 2-component vector of uint v} s1})
|
|
0:18 'single4' (global structure{temp structure{temp 2-component vector of uint v} s1})
|
|
0:18 Constant:
|
|
0:18 4 (const uint)
|
|
0:18 5 (const uint)
|
|
0:21 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float)
|
|
0:21 Function Parameters:
|
|
0:21 'input' (layout(location=0 ) in 4-component vector of float)
|
|
0:? Sequence
|
|
0:22 Sequence
|
|
0:22 move second child to first child (temp 4-component vector of float)
|
|
0:22 'a2' (temp 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 0.200000
|
|
0:? 0.300000
|
|
0:? 0.400000
|
|
0:? 0.500000
|
|
0:32 Sequence
|
|
0:32 move second child to first child (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 's2i' (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 Construct structure (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 Constant:
|
|
0:32 9 (const int)
|
|
0:32 'a5' (global float)
|
|
0:32 Construct structure (temp structure{temp float f, temp int i})
|
|
0:32 Comma (temp float)
|
|
0:32 'a3' (global float)
|
|
0:32 'a4' (global float)
|
|
0:32 Constant:
|
|
0:32 12 (const int)
|
|
0:32 move second child to first child (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 's2' (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:? Construct structure (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 Constant:
|
|
0:32 9 (const int)
|
|
0:32 'a5' (global float)
|
|
0:? Construct structure (temp structure{temp float f, temp int i})
|
|
0:32 Comma (temp float)
|
|
0:32 'a3' (global float)
|
|
0:32 'a4' (global float)
|
|
0:32 Constant:
|
|
0:32 12 (const int)
|
|
0:33 Sequence
|
|
0:33 move second child to first child (temp float)
|
|
0:33 'a8' (temp float)
|
|
0:33 Comma (temp float)
|
|
0:33 'a2' (temp 4-component vector of float)
|
|
0:33 'b2' (global float)
|
|
0:33 move second child to first child (temp float)
|
|
0:33 'a9' (temp float)
|
|
0:33 'a5' (global float)
|
|
0:35 Sequence
|
|
0:35 move second child to first child (temp 4-component vector of float)
|
|
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
|
0:35 component-wise multiply (temp 4-component vector of float)
|
|
0:35 'input' (layout(location=0 ) in 4-component vector of float)
|
|
0:35 'a1' (global 4-component vector of float)
|
|
0:35 Branch: Return
|
|
0:? Linker Objects
|
|
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
|
0:? 'input' (layout(location=0 ) in 4-component vector of float)
|
|
0:? 'a1' (global 4-component vector of float)
|
|
0:? 'b1' (global 4-component vector of float)
|
|
0:? 'a1i' (global 4-component vector of float)
|
|
0:? 'b1i' (global 4-component vector of float)
|
|
0:? 'a2' (global float)
|
|
0:? 'b2' (global float)
|
|
0:? 'a3' (global float)
|
|
0:? 'b3' (global float)
|
|
0:? 'a4' (global float)
|
|
0:? 'b4' (global float)
|
|
0:? 'c4' (global float)
|
|
0:? 'a5' (global float)
|
|
0:? 'b5' (global float)
|
|
0:? 'c5' (global float)
|
|
0:? 'single1' (global structure{temp int f})
|
|
0:? 'single2' (global structure{temp 2-component vector of uint v})
|
|
0:? 'single3' (global structure{temp structure{temp int f} s1})
|
|
0:? 'single4' (global structure{temp structure{temp 2-component vector of uint v} s1})
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
Shader version: 450
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:1 Sequence
|
|
0:1 move second child to first child (temp 4-component vector of float)
|
|
0:1 'a1' (global 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 1.000000
|
|
0:? 0.500000
|
|
0:? 0.000000
|
|
0:? 1.000000
|
|
0:1 move second child to first child (temp 4-component vector of float)
|
|
0:1 'b1' (global 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 2.000000
|
|
0:? 2.500000
|
|
0:? 2.100000
|
|
0:? 2.200000
|
|
0:2 Sequence
|
|
0:2 move second child to first child (temp 4-component vector of float)
|
|
0:2 'a1i' (global 4-component vector of float)
|
|
0:2 Constant:
|
|
0:2 1.000000
|
|
0:2 0.500000
|
|
0:2 0.000000
|
|
0:2 1.000000
|
|
0:2 move second child to first child (temp 4-component vector of float)
|
|
0:2 'b1i' (global 4-component vector of float)
|
|
0:2 Constant:
|
|
0:2 2.000000
|
|
0:2 2.500000
|
|
0:2 2.100000
|
|
0:2 2.200000
|
|
0:3 Sequence
|
|
0:3 move second child to first child (temp float)
|
|
0:3 'a2' (global float)
|
|
0:3 Constant:
|
|
0:3 0.200000
|
|
0:4 Sequence
|
|
0:4 move second child to first child (temp float)
|
|
0:4 'b3' (global float)
|
|
0:4 Constant:
|
|
0:4 0.300000
|
|
0:5 Sequence
|
|
0:5 move second child to first child (temp float)
|
|
0:5 'b4' (global float)
|
|
0:5 Constant:
|
|
0:5 0.400000
|
|
0:6 Sequence
|
|
0:6 move second child to first child (temp float)
|
|
0:6 'a5' (global float)
|
|
0:6 Constant:
|
|
0:6 0.500000
|
|
0:6 move second child to first child (temp float)
|
|
0:6 'c5' (global float)
|
|
0:6 Constant:
|
|
0:6 1.500000
|
|
0:9 Sequence
|
|
0:9 move second child to first child (temp structure{temp int f})
|
|
0:9 'single1' (global structure{temp int f})
|
|
0:9 Constant:
|
|
0:9 10 (const int)
|
|
0:12 Sequence
|
|
0:12 move second child to first child (temp structure{temp 2-component vector of uint v})
|
|
0:12 'single2' (global structure{temp 2-component vector of uint v})
|
|
0:12 Constant:
|
|
0:12 1 (const uint)
|
|
0:12 2 (const uint)
|
|
0:15 Sequence
|
|
0:15 move second child to first child (temp structure{temp structure{temp int f} s1})
|
|
0:15 'single3' (global structure{temp structure{temp int f} s1})
|
|
0:15 Constant:
|
|
0:15 3 (const int)
|
|
0:18 Sequence
|
|
0:18 move second child to first child (temp structure{temp structure{temp 2-component vector of uint v} s1})
|
|
0:18 'single4' (global structure{temp structure{temp 2-component vector of uint v} s1})
|
|
0:18 Constant:
|
|
0:18 4 (const uint)
|
|
0:18 5 (const uint)
|
|
0:21 Function Definition: ShaderFunction(vf4; (temp 4-component vector of float)
|
|
0:21 Function Parameters:
|
|
0:21 'input' (layout(location=0 ) in 4-component vector of float)
|
|
0:? Sequence
|
|
0:22 Sequence
|
|
0:22 move second child to first child (temp 4-component vector of float)
|
|
0:22 'a2' (temp 4-component vector of float)
|
|
0:? Constant:
|
|
0:? 0.200000
|
|
0:? 0.300000
|
|
0:? 0.400000
|
|
0:? 0.500000
|
|
0:32 Sequence
|
|
0:32 move second child to first child (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 's2i' (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 Construct structure (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 Constant:
|
|
0:32 9 (const int)
|
|
0:32 'a5' (global float)
|
|
0:32 Construct structure (temp structure{temp float f, temp int i})
|
|
0:32 Comma (temp float)
|
|
0:32 'a3' (global float)
|
|
0:32 'a4' (global float)
|
|
0:32 Constant:
|
|
0:32 12 (const int)
|
|
0:32 move second child to first child (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 's2' (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:? Construct structure (temp structure{temp int j, temp float g, temp structure{temp float f, temp int i} s1})
|
|
0:32 Constant:
|
|
0:32 9 (const int)
|
|
0:32 'a5' (global float)
|
|
0:? Construct structure (temp structure{temp float f, temp int i})
|
|
0:32 Comma (temp float)
|
|
0:32 'a3' (global float)
|
|
0:32 'a4' (global float)
|
|
0:32 Constant:
|
|
0:32 12 (const int)
|
|
0:33 Sequence
|
|
0:33 move second child to first child (temp float)
|
|
0:33 'a8' (temp float)
|
|
0:33 Comma (temp float)
|
|
0:33 'a2' (temp 4-component vector of float)
|
|
0:33 'b2' (global float)
|
|
0:33 move second child to first child (temp float)
|
|
0:33 'a9' (temp float)
|
|
0:33 'a5' (global float)
|
|
0:35 Sequence
|
|
0:35 move second child to first child (temp 4-component vector of float)
|
|
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
|
0:35 component-wise multiply (temp 4-component vector of float)
|
|
0:35 'input' (layout(location=0 ) in 4-component vector of float)
|
|
0:35 'a1' (global 4-component vector of float)
|
|
0:35 Branch: Return
|
|
0:? Linker Objects
|
|
0:? '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
|
|
0:? 'input' (layout(location=0 ) in 4-component vector of float)
|
|
0:? 'a1' (global 4-component vector of float)
|
|
0:? 'b1' (global 4-component vector of float)
|
|
0:? 'a1i' (global 4-component vector of float)
|
|
0:? 'b1i' (global 4-component vector of float)
|
|
0:? 'a2' (global float)
|
|
0:? 'b2' (global float)
|
|
0:? 'a3' (global float)
|
|
0:? 'b3' (global float)
|
|
0:? 'a4' (global float)
|
|
0:? 'b4' (global float)
|
|
0:? 'c4' (global float)
|
|
0:? 'a5' (global float)
|
|
0:? 'b5' (global float)
|
|
0:? 'c5' (global float)
|
|
0:? 'single1' (global structure{temp int f})
|
|
0:? 'single2' (global structure{temp 2-component vector of uint v})
|
|
0:? 'single3' (global structure{temp structure{temp int f} s1})
|
|
0:? 'single4' (global structure{temp structure{temp 2-component vector of uint v} s1})
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 97
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "ShaderFunction" 88 90
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Name 4 "ShaderFunction"
|
|
Name 9 "a1"
|
|
Name 14 "b1"
|
|
Name 20 "a1i"
|
|
Name 21 "b1i"
|
|
Name 23 "a2"
|
|
Name 25 "b3"
|
|
Name 27 "b4"
|
|
Name 29 "a5"
|
|
Name 30 "c5"
|
|
Name 33 "Single1"
|
|
MemberName 33(Single1) 0 "f"
|
|
Name 35 "single1"
|
|
Name 40 "Single2"
|
|
MemberName 40(Single2) 0 "v"
|
|
Name 42 "single2"
|
|
Name 47 "Single3"
|
|
MemberName 47(Single3) 0 "s1"
|
|
Name 49 "single3"
|
|
Name 53 "Single4"
|
|
MemberName 53(Single4) 0 "s1"
|
|
Name 55 "single4"
|
|
Name 62 "a2"
|
|
Name 64 "S1"
|
|
MemberName 64(S1) 0 "f"
|
|
MemberName 64(S1) 1 "i"
|
|
Name 65 "S2"
|
|
MemberName 65(S2) 0 "j"
|
|
MemberName 65(S2) 1 "g"
|
|
MemberName 65(S2) 2 "s1"
|
|
Name 67 "s2i"
|
|
Name 70 "a3"
|
|
Name 71 "a4"
|
|
Name 76 "s2"
|
|
Name 82 "a8"
|
|
Name 83 "b2"
|
|
Name 85 "a9"
|
|
Name 88 "@entryPointOutput"
|
|
Name 90 "input"
|
|
Name 95 "c4"
|
|
Name 96 "b5"
|
|
Decorate 88(@entryPointOutput) Location 0
|
|
Decorate 90(input) Location 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 4
|
|
8: TypePointer Private 7(fvec4)
|
|
9(a1): 8(ptr) Variable Private
|
|
10: 6(float) Constant 1065353216
|
|
11: 6(float) Constant 1056964608
|
|
12: 6(float) Constant 0
|
|
13: 7(fvec4) ConstantComposite 10 11 12 10
|
|
14(b1): 8(ptr) Variable Private
|
|
15: 6(float) Constant 1073741824
|
|
16: 6(float) Constant 1075838976
|
|
17: 6(float) Constant 1074161254
|
|
18: 6(float) Constant 1074580685
|
|
19: 7(fvec4) ConstantComposite 15 16 17 18
|
|
20(a1i): 8(ptr) Variable Private
|
|
21(b1i): 8(ptr) Variable Private
|
|
22: TypePointer Private 6(float)
|
|
23(a2): 22(ptr) Variable Private
|
|
24: 6(float) Constant 1045220557
|
|
25(b3): 22(ptr) Variable Private
|
|
26: 6(float) Constant 1050253722
|
|
27(b4): 22(ptr) Variable Private
|
|
28: 6(float) Constant 1053609165
|
|
29(a5): 22(ptr) Variable Private
|
|
30(c5): 22(ptr) Variable Private
|
|
31: 6(float) Constant 1069547520
|
|
32: TypeInt 32 1
|
|
33(Single1): TypeStruct 32(int)
|
|
34: TypePointer Private 33(Single1)
|
|
35(single1): 34(ptr) Variable Private
|
|
36: 32(int) Constant 10
|
|
37: 33(Single1) ConstantComposite 36
|
|
38: TypeInt 32 0
|
|
39: TypeVector 38(int) 2
|
|
40(Single2): TypeStruct 39(ivec2)
|
|
41: TypePointer Private 40(Single2)
|
|
42(single2): 41(ptr) Variable Private
|
|
43: 38(int) Constant 1
|
|
44: 38(int) Constant 2
|
|
45: 39(ivec2) ConstantComposite 43 44
|
|
46: 40(Single2) ConstantComposite 45
|
|
47(Single3): TypeStruct 33(Single1)
|
|
48: TypePointer Private 47(Single3)
|
|
49(single3): 48(ptr) Variable Private
|
|
50: 32(int) Constant 3
|
|
51: 33(Single1) ConstantComposite 50
|
|
52: 47(Single3) ConstantComposite 51
|
|
53(Single4): TypeStruct 40(Single2)
|
|
54: TypePointer Private 53(Single4)
|
|
55(single4): 54(ptr) Variable Private
|
|
56: 38(int) Constant 4
|
|
57: 38(int) Constant 5
|
|
58: 39(ivec2) ConstantComposite 56 57
|
|
59: 40(Single2) ConstantComposite 58
|
|
60: 53(Single4) ConstantComposite 59
|
|
61: TypePointer Function 7(fvec4)
|
|
63: 7(fvec4) ConstantComposite 24 26 28 11
|
|
64(S1): TypeStruct 6(float) 32(int)
|
|
65(S2): TypeStruct 32(int) 6(float) 64(S1)
|
|
66: TypePointer Function 65(S2)
|
|
68: 32(int) Constant 9
|
|
70(a3): 22(ptr) Variable Private
|
|
71(a4): 22(ptr) Variable Private
|
|
73: 32(int) Constant 12
|
|
81: TypePointer Function 6(float)
|
|
83(b2): 22(ptr) Variable Private
|
|
87: TypePointer Output 7(fvec4)
|
|
88(@entryPointOutput): 87(ptr) Variable Output
|
|
89: TypePointer Input 7(fvec4)
|
|
90(input): 89(ptr) Variable Input
|
|
95(c4): 22(ptr) Variable Private
|
|
96(b5): 22(ptr) Variable Private
|
|
4(ShaderFunction): 2 Function None 3
|
|
5: Label
|
|
62(a2): 61(ptr) Variable Function
|
|
67(s2i): 66(ptr) Variable Function
|
|
76(s2): 66(ptr) Variable Function
|
|
82(a8): 81(ptr) Variable Function
|
|
85(a9): 81(ptr) Variable Function
|
|
Store 9(a1) 13
|
|
Store 14(b1) 19
|
|
Store 20(a1i) 13
|
|
Store 21(b1i) 19
|
|
Store 23(a2) 24
|
|
Store 25(b3) 26
|
|
Store 27(b4) 28
|
|
Store 29(a5) 11
|
|
Store 30(c5) 31
|
|
Store 35(single1) 37
|
|
Store 42(single2) 46
|
|
Store 49(single3) 52
|
|
Store 55(single4) 60
|
|
Store 62(a2) 63
|
|
69: 6(float) Load 29(a5)
|
|
72: 6(float) Load 71(a4)
|
|
74: 64(S1) CompositeConstruct 72 73
|
|
75: 65(S2) CompositeConstruct 68 69 74
|
|
Store 67(s2i) 75
|
|
77: 6(float) Load 29(a5)
|
|
78: 6(float) Load 71(a4)
|
|
79: 64(S1) CompositeConstruct 78 73
|
|
80: 65(S2) CompositeConstruct 68 77 79
|
|
Store 76(s2) 80
|
|
84: 6(float) Load 83(b2)
|
|
Store 82(a8) 84
|
|
86: 6(float) Load 29(a5)
|
|
Store 85(a9) 86
|
|
91: 7(fvec4) Load 90(input)
|
|
92: 7(fvec4) Load 9(a1)
|
|
93: 7(fvec4) FMul 91 92
|
|
Store 88(@entryPointOutput) 93
|
|
Return
|
|
FunctionEnd
|