1spv.specConstant.vert
2// Module Version 10000
3// Generated by (magic number): 80007
4// Id's are bound by 81
5
6                              Capability Shader
7                              Capability Float64
8               1:             ExtInstImport  "GLSL.std.450"
9                              MemoryModel Logical GLSL450
10                              EntryPoint Vertex 4  "main" 20 22 28 53
11                              Source GLSL 400
12                              Name 4  "main"
13                              Name 9  "arraySize"
14                              Name 14  "foo(vf4[s2468];"
15                              Name 13  "p"
16                              Name 17  "builtin_spec_constant("
17                              Name 20  "color"
18                              Name 22  "ucol"
19                              Name 28  "size"
20                              Name 30  "spBool"
21                              Name 34  "scale"
22                              Name 39  "spDouble"
23                              Name 40  "spFloat"
24                              Name 47  "param"
25                              Name 50  "dupArraySize"
26                              Name 53  "dupUcol"
27                              Name 60  "spDupBool"
28                              Name 63  "dupScale"
29                              Name 67  "spDupDouble"
30                              Name 68  "spDupFloat"
31                              Name 76  "result"
32                              Name 77  "gl_MaxImageUnits"
33                              Decorate 9(arraySize) SpecId 16
34                              Decorate 30(spBool) SpecId 17
35                              Decorate 34(scale) SpecId 22
36                              Decorate 39(spDouble) SpecId 19
37                              Decorate 40(spFloat) SpecId 18
38                              Decorate 50(dupArraySize) SpecId 116
39                              Decorate 60(spDupBool) SpecId 117
40                              Decorate 63(dupScale) SpecId 122
41                              Decorate 67(spDupDouble) SpecId 119
42                              Decorate 68(spDupFloat) SpecId 118
43                              Decorate 77(gl_MaxImageUnits) SpecId 24
44               2:             TypeVoid
45               3:             TypeFunction 2
46               6:             TypeFloat 32
47               7:             TypeVector 6(float) 4
48               8:             TypeInt 32 1
49    9(arraySize):      8(int) SpecConstant 5
50              10:             TypeArray 7(fvec4) 9(arraySize)
51              11:             TypePointer Function 10
52              12:             TypeFunction 2 11(ptr)
53              16:             TypeFunction 8(int)
54              19:             TypePointer Output 7(fvec4)
55       20(color):     19(ptr) Variable Output
56              21:             TypePointer Input 10
57        22(ucol):     21(ptr) Variable Input
58              23:      8(int) Constant 2
59              24:             TypePointer Input 7(fvec4)
60              27:             TypePointer Output 8(int)
61        28(size):     27(ptr) Variable Output
62              29:             TypeBool
63      30(spBool):    29(bool) SpecConstantTrue
64              33:             TypeInt 32 0
65       34(scale):     33(int) SpecConstant 2
66              38:             TypeFloat 64
67    39(spDouble):38(float64_t) SpecConstant 1413754136 1074340347
68     40(spFloat):    6(float) SpecConstant 1078523331
69              41:38(float64_t) SpecConstantOp 115 40(spFloat)
7050(dupArraySize):      8(int) SpecConstant 12
71              51:             TypeArray 7(fvec4) 50(dupArraySize)
72              52:             TypePointer Input 51
73     53(dupUcol):     52(ptr) Variable Input
74   60(spDupBool):    29(bool) SpecConstantTrue
75    63(dupScale):     33(int) SpecConstant 2
76 67(spDupDouble):38(float64_t) SpecConstant 1413754136 1074340347
77  68(spDupFloat):    6(float) SpecConstant 1078523331
78              69:38(float64_t) SpecConstantOp 115 68(spDupFloat)
79              75:             TypePointer Function 8(int)
8077(gl_MaxImageUnits):      8(int) SpecConstant 8
81         4(main):           2 Function None 3
82               5:             Label
83       47(param):     11(ptr) Variable Function
84              25:     24(ptr) AccessChain 22(ucol) 23
85              26:    7(fvec4) Load 25
86                              Store 20(color) 26
87                              Store 28(size) 9(arraySize)
88                              SelectionMerge 32 None
89                              BranchConditional 30(spBool) 31 32
90              31:               Label
91              35:    6(float)   ConvertUToF 34(scale)
92              36:    7(fvec4)   Load 20(color)
93              37:    7(fvec4)   VectorTimesScalar 36 35
94                                Store 20(color) 37
95                                Branch 32
96              32:             Label
97              42:38(float64_t) FDiv 39(spDouble) 41
98              43:    6(float) FConvert 42
99              44:    7(fvec4) Load 20(color)
100              45:    7(fvec4) CompositeConstruct 43 43 43 43
101              46:    7(fvec4) FAdd 44 45
102                              Store 20(color) 46
103              48:          10 Load 22(ucol)
104                              Store 47(param) 48
105              49:           2 FunctionCall 14(foo(vf4[s2468];) 47(param)
106                              Return
107                              FunctionEnd
10814(foo(vf4[s2468];):           2 Function None 12
109           13(p):     11(ptr) FunctionParameter
110              15:             Label
111              54:     24(ptr) AccessChain 53(dupUcol) 23
112              55:    7(fvec4) Load 54
113              56:    7(fvec4) Load 20(color)
114              57:    7(fvec4) FAdd 56 55
115                              Store 20(color) 57
116              58:      8(int) Load 28(size)
117              59:      8(int) IAdd 58 50(dupArraySize)
118                              Store 28(size) 59
119                              SelectionMerge 62 None
120                              BranchConditional 60(spDupBool) 61 62
121              61:               Label
122              64:    6(float)   ConvertUToF 63(dupScale)
123              65:    7(fvec4)   Load 20(color)
124              66:    7(fvec4)   VectorTimesScalar 65 64
125                                Store 20(color) 66
126                                Branch 62
127              62:             Label
128              70:38(float64_t) FDiv 67(spDupDouble) 69
129              71:    6(float) FConvert 70
130              72:    7(fvec4) Load 20(color)
131              73:    7(fvec4) CompositeConstruct 71 71 71 71
132              74:    7(fvec4) FAdd 72 73
133                              Store 20(color) 74
134                              Return
135                              FunctionEnd
13617(builtin_spec_constant():      8(int) Function None 16
137              18:             Label
138      76(result):     75(ptr) Variable Function
139                              Store 76(result) 77(gl_MaxImageUnits)
140              78:      8(int) Load 76(result)
141                              ReturnValue 78
142                              FunctionEnd
143