blob: 42f2ca70d4d360878423b438403474871b9a5dfd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
|
spv.1.4.OpSelect.frag
// Module Version 10400
// Generated by (magic number): 8000b
// Id's are bound by 98
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 17 20 82 84
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
Name 4 "main"
Name 6 "fun1("
Name 8 "fun2("
Name 12 "f1"
Name 14 "f2"
Name 17 "outv"
Name 20 "cond"
Name 30 "iv1"
Name 34 "iv2"
Name 53 "m1"
Name 59 "m2"
Name 75 "S1"
MemberName 75(S1) 0 "a"
MemberName 75(S1) 1 "b"
Name 77 "fv"
Name 82 "in1"
Name 84 "in2"
Decorate 17(outv) Location 0
Decorate 20(cond) Flat
Decorate 20(cond) Location 4
Decorate 82(in1) Flat
Decorate 82(in1) Location 0
Decorate 84(in2) Flat
Decorate 84(in2) Location 2
2: TypeVoid
3: TypeFunction 2
10: TypeFloat 32
11: TypePointer Function 10(float)
13: 10(float) Constant 1065353216
15: 10(float) Constant 1073741824
16: TypePointer Output 10(float)
17(outv): 16(ptr) Variable Output
18: TypeInt 32 1
19: TypePointer Input 18(int)
20(cond): 19(ptr) Variable Input
22: 18(int) Constant 8
23: TypeBool
28: TypeVector 18(int) 4
29: TypePointer Function 28(ivec4)
39: 18(int) Constant 0
44: TypeInt 32 0
45: 44(int) Constant 2
50: TypeVector 10(float) 3
51: TypeMatrix 50(fvec3) 3
52: TypePointer Function 51
54: 10(float) Constant 0
55: 50(fvec3) ConstantComposite 13 54 54
56: 50(fvec3) ConstantComposite 54 13 54
57: 50(fvec3) ConstantComposite 54 54 13
58: 51 ConstantComposite 55 56 57
60: 50(fvec3) ConstantComposite 15 54 54
61: 50(fvec3) ConstantComposite 54 15 54
62: 50(fvec3) ConstantComposite 54 54 15
63: 51 ConstantComposite 60 61 62
65: 18(int) Constant 20
70: 18(int) Constant 2
71: 44(int) Constant 1
75(S1): TypeStruct 10(float) 18(int)
76: TypePointer Function 75(S1)
79: 18(int) Constant 5
81: TypePointer Input 75(S1)
82(in1): 81(ptr) Variable Input
84(in2): 81(ptr) Variable Input
4(main): 2 Function None 3
5: Label
12(f1): 11(ptr) Variable Function
14(f2): 11(ptr) Variable Function
30(iv1): 29(ptr) Variable Function
34(iv2): 29(ptr) Variable Function
53(m1): 52(ptr) Variable Function
59(m2): 52(ptr) Variable Function
77(fv): 76(ptr) Variable Function
Store 12(f1) 13
Store 14(f2) 15
21: 18(int) Load 20(cond)
24: 23(bool) SLessThan 21 22
25: 10(float) Load 12(f1)
26: 10(float) Load 14(f2)
27: 10(float) Select 24 25 26
Store 17(outv) 27
31: 10(float) Load 12(f1)
32: 18(int) ConvertFToS 31
33: 28(ivec4) CompositeConstruct 32 32 32 32
Store 30(iv1) 33
35: 10(float) Load 14(f2)
36: 18(int) ConvertFToS 35
37: 28(ivec4) CompositeConstruct 36 36 36 36
Store 34(iv2) 37
38: 18(int) Load 20(cond)
40: 23(bool) SGreaterThan 38 39
41: 28(ivec4) Load 30(iv1)
42: 28(ivec4) Load 34(iv2)
43: 28(ivec4) Select 40 41 42
46: 18(int) CompositeExtract 43 2
47: 10(float) ConvertSToF 46
48: 10(float) Load 17(outv)
49: 10(float) FMul 48 47
Store 17(outv) 49
Store 53(m1) 58
Store 59(m2) 63
64: 18(int) Load 20(cond)
66: 23(bool) SLessThan 64 65
67: 51 Load 53(m1)
68: 51 Load 59(m2)
69: 51 Select 66 67 68
72: 10(float) CompositeExtract 69 2 1
73: 10(float) Load 17(outv)
74: 10(float) FMul 73 72
Store 17(outv) 74
78: 18(int) Load 20(cond)
80: 23(bool) SGreaterThan 78 79
83: 75(S1) Load 82(in1)
85: 75(S1) Load 84(in2)
86: 75(S1) Select 80 83 85
Store 77(fv) 86
87: 11(ptr) AccessChain 77(fv) 39
88: 10(float) Load 87
89: 10(float) Load 17(outv)
90: 10(float) FMul 89 88
Store 17(outv) 90
91: 18(int) Load 20(cond)
92: 23(bool) SGreaterThan 91 39
SelectionMerge 94 None
BranchConditional 92 93 96
93: Label
95: 2 FunctionCall 6(fun1()
Branch 94
96: Label
97: 2 FunctionCall 8(fun2()
Branch 94
94: Label
Return
FunctionEnd
6(fun1(): 2 Function None 3
7: Label
Return
FunctionEnd
8(fun2(): 2 Function None 3
9: Label
Return
FunctionEnd
|