• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // GENERATED FILE - DO NOT EDIT.
2 // Generated by gen_builtin_symbols.py using data from builtin_function_declarations.txt.
3 //
4 // Copyright 2020 The ANGLE Project Authors. All rights reserved.
5 // Use of this source code is governed by a BSD-style license that can be
6 // found in the LICENSE file.
7 //
8 // ImmutableString_test_ESSL_autogen.cpp:
9 //   Tests for matching script-generated hashes with runtime computed hashes.
10 
11 #include "compiler/translator/ImmutableString.h"
12 #include "gtest/gtest.h"
13 
14 namespace sh
15 {
16 
TEST(ImmutableStringTest,ScriptGeneratedHashesMatch)17 TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
18 {
19     ASSERT_EQ(0x00000000u, ImmutableString("radians(00B").mangledNameHash());
20     ASSERT_EQ(0x00000001u, ImmutableString("radians(10B").mangledNameHash());
21     ASSERT_EQ(0x00000002u, ImmutableString("radians(20B").mangledNameHash());
22     ASSERT_EQ(0x00000003u, ImmutableString("radians(30B").mangledNameHash());
23     ASSERT_EQ(0x00000004u, ImmutableString("degrees(00B").mangledNameHash());
24     ASSERT_EQ(0x00000005u, ImmutableString("degrees(10B").mangledNameHash());
25     ASSERT_EQ(0x00000006u, ImmutableString("degrees(20B").mangledNameHash());
26     ASSERT_EQ(0x00000007u, ImmutableString("degrees(30B").mangledNameHash());
27     ASSERT_EQ(0x00000008u, ImmutableString("sin(00B").mangledNameHash());
28     ASSERT_EQ(0x00000009u, ImmutableString("sin(10B").mangledNameHash());
29     ASSERT_EQ(0x0000000au, ImmutableString("sin(20B").mangledNameHash());
30     ASSERT_EQ(0x0000000bu, ImmutableString("sin(30B").mangledNameHash());
31     ASSERT_EQ(0x0000000cu, ImmutableString("cos(00B").mangledNameHash());
32     ASSERT_EQ(0x0000000du, ImmutableString("cos(10B").mangledNameHash());
33     ASSERT_EQ(0x0000000eu, ImmutableString("cos(20B").mangledNameHash());
34     ASSERT_EQ(0x0000000fu, ImmutableString("cos(30B").mangledNameHash());
35     ASSERT_EQ(0x00000010u, ImmutableString("tan(00B").mangledNameHash());
36     ASSERT_EQ(0x00000011u, ImmutableString("tan(10B").mangledNameHash());
37     ASSERT_EQ(0x00000012u, ImmutableString("tan(20B").mangledNameHash());
38     ASSERT_EQ(0x00000013u, ImmutableString("tan(30B").mangledNameHash());
39     ASSERT_EQ(0x00000014u, ImmutableString("asin(00B").mangledNameHash());
40     ASSERT_EQ(0x00000015u, ImmutableString("asin(10B").mangledNameHash());
41     ASSERT_EQ(0x00000016u, ImmutableString("asin(20B").mangledNameHash());
42     ASSERT_EQ(0x00000017u, ImmutableString("asin(30B").mangledNameHash());
43     ASSERT_EQ(0x00000018u, ImmutableString("acos(00B").mangledNameHash());
44     ASSERT_EQ(0x00000019u, ImmutableString("acos(10B").mangledNameHash());
45     ASSERT_EQ(0x0000001au, ImmutableString("acos(20B").mangledNameHash());
46     ASSERT_EQ(0x0000001bu, ImmutableString("acos(30B").mangledNameHash());
47     ASSERT_EQ(0x0000001cu, ImmutableString("atan(00B00B").mangledNameHash());
48     ASSERT_EQ(0x0000001du, ImmutableString("atan(10B10B").mangledNameHash());
49     ASSERT_EQ(0x0000001eu, ImmutableString("atan(20B20B").mangledNameHash());
50     ASSERT_EQ(0x0000001fu, ImmutableString("atan(30B30B").mangledNameHash());
51     ASSERT_EQ(0x00000020u, ImmutableString("atan(00B").mangledNameHash());
52     ASSERT_EQ(0x00000021u, ImmutableString("atan(10B").mangledNameHash());
53     ASSERT_EQ(0x00000022u, ImmutableString("atan(20B").mangledNameHash());
54     ASSERT_EQ(0x00000023u, ImmutableString("atan(30B").mangledNameHash());
55     ASSERT_EQ(0x00000024u, ImmutableString("sinh(00B").mangledNameHash());
56     ASSERT_EQ(0x00000025u, ImmutableString("sinh(10B").mangledNameHash());
57     ASSERT_EQ(0x00000026u, ImmutableString("sinh(20B").mangledNameHash());
58     ASSERT_EQ(0x00000027u, ImmutableString("sinh(30B").mangledNameHash());
59     ASSERT_EQ(0x00000028u, ImmutableString("cosh(00B").mangledNameHash());
60     ASSERT_EQ(0x00000029u, ImmutableString("cosh(10B").mangledNameHash());
61     ASSERT_EQ(0x0000002au, ImmutableString("cosh(20B").mangledNameHash());
62     ASSERT_EQ(0x0000002bu, ImmutableString("cosh(30B").mangledNameHash());
63     ASSERT_EQ(0x0000002cu, ImmutableString("tanh(00B").mangledNameHash());
64     ASSERT_EQ(0x0000002du, ImmutableString("tanh(10B").mangledNameHash());
65     ASSERT_EQ(0x0000002eu, ImmutableString("tanh(20B").mangledNameHash());
66     ASSERT_EQ(0x0000002fu, ImmutableString("tanh(30B").mangledNameHash());
67     ASSERT_EQ(0x00000030u, ImmutableString("asinh(00B").mangledNameHash());
68     ASSERT_EQ(0x00000031u, ImmutableString("asinh(10B").mangledNameHash());
69     ASSERT_EQ(0x00000032u, ImmutableString("asinh(20B").mangledNameHash());
70     ASSERT_EQ(0x00000033u, ImmutableString("asinh(30B").mangledNameHash());
71     ASSERT_EQ(0x00000034u, ImmutableString("acosh(00B").mangledNameHash());
72     ASSERT_EQ(0x00000035u, ImmutableString("acosh(10B").mangledNameHash());
73     ASSERT_EQ(0x00000036u, ImmutableString("acosh(20B").mangledNameHash());
74     ASSERT_EQ(0x00000037u, ImmutableString("acosh(30B").mangledNameHash());
75     ASSERT_EQ(0x00000038u, ImmutableString("atanh(00B").mangledNameHash());
76     ASSERT_EQ(0x00000039u, ImmutableString("atanh(10B").mangledNameHash());
77     ASSERT_EQ(0x0000003au, ImmutableString("atanh(20B").mangledNameHash());
78     ASSERT_EQ(0x0000003bu, ImmutableString("atanh(30B").mangledNameHash());
79     ASSERT_EQ(0x0000003cu, ImmutableString("pow(00B00B").mangledNameHash());
80     ASSERT_EQ(0x0000003du, ImmutableString("pow(10B10B").mangledNameHash());
81     ASSERT_EQ(0x0000003eu, ImmutableString("pow(20B20B").mangledNameHash());
82     ASSERT_EQ(0x0000003fu, ImmutableString("pow(30B30B").mangledNameHash());
83     ASSERT_EQ(0x00000040u, ImmutableString("exp(00B").mangledNameHash());
84     ASSERT_EQ(0x00000041u, ImmutableString("exp(10B").mangledNameHash());
85     ASSERT_EQ(0x00000042u, ImmutableString("exp(20B").mangledNameHash());
86     ASSERT_EQ(0x00000043u, ImmutableString("exp(30B").mangledNameHash());
87     ASSERT_EQ(0x00000044u, ImmutableString("log(00B").mangledNameHash());
88     ASSERT_EQ(0x00000045u, ImmutableString("log(10B").mangledNameHash());
89     ASSERT_EQ(0x00000046u, ImmutableString("log(20B").mangledNameHash());
90     ASSERT_EQ(0x00000047u, ImmutableString("log(30B").mangledNameHash());
91     ASSERT_EQ(0x00000048u, ImmutableString("exp2(00B").mangledNameHash());
92     ASSERT_EQ(0x00000049u, ImmutableString("exp2(10B").mangledNameHash());
93     ASSERT_EQ(0x0000004au, ImmutableString("exp2(20B").mangledNameHash());
94     ASSERT_EQ(0x0000004bu, ImmutableString("exp2(30B").mangledNameHash());
95     ASSERT_EQ(0x0000004cu, ImmutableString("log2(00B").mangledNameHash());
96     ASSERT_EQ(0x0000004du, ImmutableString("log2(10B").mangledNameHash());
97     ASSERT_EQ(0x0000004eu, ImmutableString("log2(20B").mangledNameHash());
98     ASSERT_EQ(0x0000004fu, ImmutableString("log2(30B").mangledNameHash());
99     ASSERT_EQ(0x00000050u, ImmutableString("sqrt(00B").mangledNameHash());
100     ASSERT_EQ(0x00000051u, ImmutableString("sqrt(10B").mangledNameHash());
101     ASSERT_EQ(0x00000052u, ImmutableString("sqrt(20B").mangledNameHash());
102     ASSERT_EQ(0x00000053u, ImmutableString("sqrt(30B").mangledNameHash());
103     ASSERT_EQ(0x00000054u, ImmutableString("inversesqrt(00B").mangledNameHash());
104     ASSERT_EQ(0x00000055u, ImmutableString("inversesqrt(10B").mangledNameHash());
105     ASSERT_EQ(0x00000056u, ImmutableString("inversesqrt(20B").mangledNameHash());
106     ASSERT_EQ(0x00000057u, ImmutableString("inversesqrt(30B").mangledNameHash());
107     ASSERT_EQ(0x00000058u, ImmutableString("abs(00B").mangledNameHash());
108     ASSERT_EQ(0x00000059u, ImmutableString("abs(10B").mangledNameHash());
109     ASSERT_EQ(0x0000005au, ImmutableString("abs(20B").mangledNameHash());
110     ASSERT_EQ(0x0000005bu, ImmutableString("abs(30B").mangledNameHash());
111     ASSERT_EQ(0x0000005cu, ImmutableString("abs(00D").mangledNameHash());
112     ASSERT_EQ(0x0000005du, ImmutableString("abs(10D").mangledNameHash());
113     ASSERT_EQ(0x0000005eu, ImmutableString("abs(20D").mangledNameHash());
114     ASSERT_EQ(0x0000005fu, ImmutableString("abs(30D").mangledNameHash());
115     ASSERT_EQ(0x00000060u, ImmutableString("sign(00B").mangledNameHash());
116     ASSERT_EQ(0x00000061u, ImmutableString("sign(10B").mangledNameHash());
117     ASSERT_EQ(0x00000062u, ImmutableString("sign(20B").mangledNameHash());
118     ASSERT_EQ(0x00000063u, ImmutableString("sign(30B").mangledNameHash());
119     ASSERT_EQ(0x00000064u, ImmutableString("sign(00D").mangledNameHash());
120     ASSERT_EQ(0x00000065u, ImmutableString("sign(10D").mangledNameHash());
121     ASSERT_EQ(0x00000066u, ImmutableString("sign(20D").mangledNameHash());
122     ASSERT_EQ(0x00000067u, ImmutableString("sign(30D").mangledNameHash());
123     ASSERT_EQ(0x00000068u, ImmutableString("floor(00B").mangledNameHash());
124     ASSERT_EQ(0x00000069u, ImmutableString("floor(10B").mangledNameHash());
125     ASSERT_EQ(0x0000006au, ImmutableString("floor(20B").mangledNameHash());
126     ASSERT_EQ(0x0000006bu, ImmutableString("floor(30B").mangledNameHash());
127     ASSERT_EQ(0x0000006cu, ImmutableString("trunc(00B").mangledNameHash());
128     ASSERT_EQ(0x0000006du, ImmutableString("trunc(10B").mangledNameHash());
129     ASSERT_EQ(0x0000006eu, ImmutableString("trunc(20B").mangledNameHash());
130     ASSERT_EQ(0x0000006fu, ImmutableString("trunc(30B").mangledNameHash());
131     ASSERT_EQ(0x00000070u, ImmutableString("round(00B").mangledNameHash());
132     ASSERT_EQ(0x00000071u, ImmutableString("round(10B").mangledNameHash());
133     ASSERT_EQ(0x00000072u, ImmutableString("round(20B").mangledNameHash());
134     ASSERT_EQ(0x00000073u, ImmutableString("round(30B").mangledNameHash());
135     ASSERT_EQ(0x00000074u, ImmutableString("roundEven(00B").mangledNameHash());
136     ASSERT_EQ(0x00000075u, ImmutableString("roundEven(10B").mangledNameHash());
137     ASSERT_EQ(0x00000076u, ImmutableString("roundEven(20B").mangledNameHash());
138     ASSERT_EQ(0x00000077u, ImmutableString("roundEven(30B").mangledNameHash());
139     ASSERT_EQ(0x00000078u, ImmutableString("ceil(00B").mangledNameHash());
140     ASSERT_EQ(0x00000079u, ImmutableString("ceil(10B").mangledNameHash());
141     ASSERT_EQ(0x0000007au, ImmutableString("ceil(20B").mangledNameHash());
142     ASSERT_EQ(0x0000007bu, ImmutableString("ceil(30B").mangledNameHash());
143     ASSERT_EQ(0x0000007cu, ImmutableString("fract(00B").mangledNameHash());
144     ASSERT_EQ(0x0000007du, ImmutableString("fract(10B").mangledNameHash());
145     ASSERT_EQ(0x0000007eu, ImmutableString("fract(20B").mangledNameHash());
146     ASSERT_EQ(0x0000007fu, ImmutableString("fract(30B").mangledNameHash());
147     ASSERT_EQ(0x00000080u, ImmutableString("mod(00B00B").mangledNameHash());
148     ASSERT_EQ(0x00000081u, ImmutableString("mod(10B00B").mangledNameHash());
149     ASSERT_EQ(0x00000082u, ImmutableString("mod(20B00B").mangledNameHash());
150     ASSERT_EQ(0x00000083u, ImmutableString("mod(30B00B").mangledNameHash());
151     ASSERT_EQ(0x00000084u, ImmutableString("mod(10B10B").mangledNameHash());
152     ASSERT_EQ(0x00000085u, ImmutableString("mod(20B20B").mangledNameHash());
153     ASSERT_EQ(0x00000086u, ImmutableString("mod(30B30B").mangledNameHash());
154     ASSERT_EQ(0x00000087u, ImmutableString("min(00B00B").mangledNameHash());
155     ASSERT_EQ(0x00000088u, ImmutableString("min(10B00B").mangledNameHash());
156     ASSERT_EQ(0x00000089u, ImmutableString("min(20B00B").mangledNameHash());
157     ASSERT_EQ(0x0000008au, ImmutableString("min(30B00B").mangledNameHash());
158     ASSERT_EQ(0x0000008bu, ImmutableString("min(10B10B").mangledNameHash());
159     ASSERT_EQ(0x0000008cu, ImmutableString("min(20B20B").mangledNameHash());
160     ASSERT_EQ(0x0000008du, ImmutableString("min(30B30B").mangledNameHash());
161     ASSERT_EQ(0x0000008eu, ImmutableString("min(00D00D").mangledNameHash());
162     ASSERT_EQ(0x0000008fu, ImmutableString("min(10D10D").mangledNameHash());
163     ASSERT_EQ(0x00000090u, ImmutableString("min(20D20D").mangledNameHash());
164     ASSERT_EQ(0x00000091u, ImmutableString("min(30D30D").mangledNameHash());
165     ASSERT_EQ(0x00000092u, ImmutableString("min(10D00D").mangledNameHash());
166     ASSERT_EQ(0x00000093u, ImmutableString("min(20D00D").mangledNameHash());
167     ASSERT_EQ(0x00000094u, ImmutableString("min(30D00D").mangledNameHash());
168     ASSERT_EQ(0x00000095u, ImmutableString("min(00E00E").mangledNameHash());
169     ASSERT_EQ(0x00000096u, ImmutableString("min(10E10E").mangledNameHash());
170     ASSERT_EQ(0x00000097u, ImmutableString("min(20E20E").mangledNameHash());
171     ASSERT_EQ(0x00000098u, ImmutableString("min(30E30E").mangledNameHash());
172     ASSERT_EQ(0x00000099u, ImmutableString("min(10E00E").mangledNameHash());
173     ASSERT_EQ(0x0000009au, ImmutableString("min(20E00E").mangledNameHash());
174     ASSERT_EQ(0x0000009bu, ImmutableString("min(30E00E").mangledNameHash());
175     ASSERT_EQ(0x0000009cu, ImmutableString("max(00B00B").mangledNameHash());
176     ASSERT_EQ(0x0000009du, ImmutableString("max(10B00B").mangledNameHash());
177     ASSERT_EQ(0x0000009eu, ImmutableString("max(20B00B").mangledNameHash());
178     ASSERT_EQ(0x0000009fu, ImmutableString("max(30B00B").mangledNameHash());
179     ASSERT_EQ(0x000000a0u, ImmutableString("max(10B10B").mangledNameHash());
180     ASSERT_EQ(0x000000a1u, ImmutableString("max(20B20B").mangledNameHash());
181     ASSERT_EQ(0x000000a2u, ImmutableString("max(30B30B").mangledNameHash());
182     ASSERT_EQ(0x000000a3u, ImmutableString("max(00D00D").mangledNameHash());
183     ASSERT_EQ(0x000000a4u, ImmutableString("max(10D10D").mangledNameHash());
184     ASSERT_EQ(0x000000a5u, ImmutableString("max(20D20D").mangledNameHash());
185     ASSERT_EQ(0x000000a6u, ImmutableString("max(30D30D").mangledNameHash());
186     ASSERT_EQ(0x000000a7u, ImmutableString("max(10D00D").mangledNameHash());
187     ASSERT_EQ(0x000000a8u, ImmutableString("max(20D00D").mangledNameHash());
188     ASSERT_EQ(0x000000a9u, ImmutableString("max(30D00D").mangledNameHash());
189     ASSERT_EQ(0x000000aau, ImmutableString("max(00E00E").mangledNameHash());
190     ASSERT_EQ(0x000000abu, ImmutableString("max(10E10E").mangledNameHash());
191     ASSERT_EQ(0x000000acu, ImmutableString("max(20E20E").mangledNameHash());
192     ASSERT_EQ(0x000000adu, ImmutableString("max(30E30E").mangledNameHash());
193     ASSERT_EQ(0x000000aeu, ImmutableString("max(10E00E").mangledNameHash());
194     ASSERT_EQ(0x000000afu, ImmutableString("max(20E00E").mangledNameHash());
195     ASSERT_EQ(0x000000b0u, ImmutableString("max(30E00E").mangledNameHash());
196     ASSERT_EQ(0x000000b1u, ImmutableString("clamp(00B00B00B").mangledNameHash());
197     ASSERT_EQ(0x000000b2u, ImmutableString("clamp(10B00B00B").mangledNameHash());
198     ASSERT_EQ(0x000000b3u, ImmutableString("clamp(20B00B00B").mangledNameHash());
199     ASSERT_EQ(0x000000b4u, ImmutableString("clamp(30B00B00B").mangledNameHash());
200     ASSERT_EQ(0x000000b5u, ImmutableString("clamp(10B10B10B").mangledNameHash());
201     ASSERT_EQ(0x000000b6u, ImmutableString("clamp(20B20B20B").mangledNameHash());
202     ASSERT_EQ(0x000000b7u, ImmutableString("clamp(30B30B30B").mangledNameHash());
203     ASSERT_EQ(0x000000b8u, ImmutableString("clamp(00D00D00D").mangledNameHash());
204     ASSERT_EQ(0x000000b9u, ImmutableString("clamp(10D00D00D").mangledNameHash());
205     ASSERT_EQ(0x000000bau, ImmutableString("clamp(20D00D00D").mangledNameHash());
206     ASSERT_EQ(0x000000bbu, ImmutableString("clamp(30D00D00D").mangledNameHash());
207     ASSERT_EQ(0x000000bcu, ImmutableString("clamp(10D10D10D").mangledNameHash());
208     ASSERT_EQ(0x000000bdu, ImmutableString("clamp(20D20D20D").mangledNameHash());
209     ASSERT_EQ(0x000000beu, ImmutableString("clamp(30D30D30D").mangledNameHash());
210     ASSERT_EQ(0x000000bfu, ImmutableString("clamp(00E00E00E").mangledNameHash());
211     ASSERT_EQ(0x000000c0u, ImmutableString("clamp(10E00E00E").mangledNameHash());
212     ASSERT_EQ(0x000000c1u, ImmutableString("clamp(20E00E00E").mangledNameHash());
213     ASSERT_EQ(0x000000c2u, ImmutableString("clamp(30E00E00E").mangledNameHash());
214     ASSERT_EQ(0x000000c3u, ImmutableString("clamp(10E10E10E").mangledNameHash());
215     ASSERT_EQ(0x000000c4u, ImmutableString("clamp(20E20E20E").mangledNameHash());
216     ASSERT_EQ(0x000000c5u, ImmutableString("clamp(30E30E30E").mangledNameHash());
217     ASSERT_EQ(0x000000c6u, ImmutableString("mix(00B00B00B").mangledNameHash());
218     ASSERT_EQ(0x000000c7u, ImmutableString("mix(10B10B00B").mangledNameHash());
219     ASSERT_EQ(0x000000c8u, ImmutableString("mix(20B20B00B").mangledNameHash());
220     ASSERT_EQ(0x000000c9u, ImmutableString("mix(30B30B00B").mangledNameHash());
221     ASSERT_EQ(0x000000cau, ImmutableString("mix(10B10B10B").mangledNameHash());
222     ASSERT_EQ(0x000000cbu, ImmutableString("mix(20B20B20B").mangledNameHash());
223     ASSERT_EQ(0x000000ccu, ImmutableString("mix(30B30B30B").mangledNameHash());
224     ASSERT_EQ(0x000000cdu, ImmutableString("mix(00B00B00F").mangledNameHash());
225     ASSERT_EQ(0x000000ceu, ImmutableString("mix(10B10B10F").mangledNameHash());
226     ASSERT_EQ(0x000000cfu, ImmutableString("mix(20B20B20F").mangledNameHash());
227     ASSERT_EQ(0x000000d0u, ImmutableString("mix(30B30B30F").mangledNameHash());
228     ASSERT_EQ(0x000000d1u, ImmutableString("mix(00D00D00F").mangledNameHash());
229     ASSERT_EQ(0x000000d2u, ImmutableString("mix(10D10D10F").mangledNameHash());
230     ASSERT_EQ(0x000000d3u, ImmutableString("mix(20D20D20F").mangledNameHash());
231     ASSERT_EQ(0x000000d4u, ImmutableString("mix(30D30D30F").mangledNameHash());
232     ASSERT_EQ(0x000000d5u, ImmutableString("mix(00E00E00F").mangledNameHash());
233     ASSERT_EQ(0x000000d6u, ImmutableString("mix(10E10E10F").mangledNameHash());
234     ASSERT_EQ(0x000000d7u, ImmutableString("mix(20E20E20F").mangledNameHash());
235     ASSERT_EQ(0x000000d8u, ImmutableString("mix(30E30E30F").mangledNameHash());
236     ASSERT_EQ(0x000000d9u, ImmutableString("mix(00F00F00F").mangledNameHash());
237     ASSERT_EQ(0x000000dau, ImmutableString("mix(10F10F10F").mangledNameHash());
238     ASSERT_EQ(0x000000dbu, ImmutableString("mix(20F20F20F").mangledNameHash());
239     ASSERT_EQ(0x000000dcu, ImmutableString("mix(30F30F30F").mangledNameHash());
240     ASSERT_EQ(0x000000ddu, ImmutableString("step(00B00B").mangledNameHash());
241     ASSERT_EQ(0x000000deu, ImmutableString("step(10B10B").mangledNameHash());
242     ASSERT_EQ(0x000000dfu, ImmutableString("step(20B20B").mangledNameHash());
243     ASSERT_EQ(0x000000e0u, ImmutableString("step(30B30B").mangledNameHash());
244     ASSERT_EQ(0x000000e1u, ImmutableString("step(00B10B").mangledNameHash());
245     ASSERT_EQ(0x000000e2u, ImmutableString("step(00B20B").mangledNameHash());
246     ASSERT_EQ(0x000000e3u, ImmutableString("step(00B30B").mangledNameHash());
247     ASSERT_EQ(0x000000e4u, ImmutableString("smoothstep(00B00B00B").mangledNameHash());
248     ASSERT_EQ(0x000000e5u, ImmutableString("smoothstep(10B10B10B").mangledNameHash());
249     ASSERT_EQ(0x000000e6u, ImmutableString("smoothstep(20B20B20B").mangledNameHash());
250     ASSERT_EQ(0x000000e7u, ImmutableString("smoothstep(30B30B30B").mangledNameHash());
251     ASSERT_EQ(0x000000e8u, ImmutableString("smoothstep(00B00B10B").mangledNameHash());
252     ASSERT_EQ(0x000000e9u, ImmutableString("smoothstep(00B00B20B").mangledNameHash());
253     ASSERT_EQ(0x000000eau, ImmutableString("smoothstep(00B00B30B").mangledNameHash());
254     ASSERT_EQ(0x000000ebu, ImmutableString("modf(00B00B").mangledNameHash());
255     ASSERT_EQ(0x000000ecu, ImmutableString("modf(10B10B").mangledNameHash());
256     ASSERT_EQ(0x000000edu, ImmutableString("modf(20B20B").mangledNameHash());
257     ASSERT_EQ(0x000000eeu, ImmutableString("modf(30B30B").mangledNameHash());
258     ASSERT_EQ(0x000000efu, ImmutableString("isnan(00B").mangledNameHash());
259     ASSERT_EQ(0x000000f0u, ImmutableString("isnan(10B").mangledNameHash());
260     ASSERT_EQ(0x000000f1u, ImmutableString("isnan(20B").mangledNameHash());
261     ASSERT_EQ(0x000000f2u, ImmutableString("isnan(30B").mangledNameHash());
262     ASSERT_EQ(0x000000f3u, ImmutableString("isinf(00B").mangledNameHash());
263     ASSERT_EQ(0x000000f4u, ImmutableString("isinf(10B").mangledNameHash());
264     ASSERT_EQ(0x000000f5u, ImmutableString("isinf(20B").mangledNameHash());
265     ASSERT_EQ(0x000000f6u, ImmutableString("isinf(30B").mangledNameHash());
266     ASSERT_EQ(0x000000f7u, ImmutableString("floatBitsToInt(00B").mangledNameHash());
267     ASSERT_EQ(0x000000f8u, ImmutableString("floatBitsToInt(10B").mangledNameHash());
268     ASSERT_EQ(0x000000f9u, ImmutableString("floatBitsToInt(20B").mangledNameHash());
269     ASSERT_EQ(0x000000fau, ImmutableString("floatBitsToInt(30B").mangledNameHash());
270     ASSERT_EQ(0x000000fbu, ImmutableString("floatBitsToUint(00B").mangledNameHash());
271     ASSERT_EQ(0x000000fcu, ImmutableString("floatBitsToUint(10B").mangledNameHash());
272     ASSERT_EQ(0x000000fdu, ImmutableString("floatBitsToUint(20B").mangledNameHash());
273     ASSERT_EQ(0x000000feu, ImmutableString("floatBitsToUint(30B").mangledNameHash());
274     ASSERT_EQ(0x000000ffu, ImmutableString("intBitsToFloat(00D").mangledNameHash());
275     ASSERT_EQ(0x00000100u, ImmutableString("intBitsToFloat(10D").mangledNameHash());
276     ASSERT_EQ(0x00000101u, ImmutableString("intBitsToFloat(20D").mangledNameHash());
277     ASSERT_EQ(0x00000102u, ImmutableString("intBitsToFloat(30D").mangledNameHash());
278     ASSERT_EQ(0x00000103u, ImmutableString("uintBitsToFloat(00E").mangledNameHash());
279     ASSERT_EQ(0x00000104u, ImmutableString("uintBitsToFloat(10E").mangledNameHash());
280     ASSERT_EQ(0x00000105u, ImmutableString("uintBitsToFloat(20E").mangledNameHash());
281     ASSERT_EQ(0x00000106u, ImmutableString("uintBitsToFloat(30E").mangledNameHash());
282     ASSERT_EQ(0x00000107u, ImmutableString("fma(00B00B00B").mangledNameHash());
283     ASSERT_EQ(0x00000108u, ImmutableString("fma(10B10B10B").mangledNameHash());
284     ASSERT_EQ(0x00000109u, ImmutableString("fma(20B20B20B").mangledNameHash());
285     ASSERT_EQ(0x0000010au, ImmutableString("fma(30B30B30B").mangledNameHash());
286     ASSERT_EQ(0x0000010bu, ImmutableString("frexp(00B00D").mangledNameHash());
287     ASSERT_EQ(0x0000010cu, ImmutableString("frexp(10B10D").mangledNameHash());
288     ASSERT_EQ(0x0000010du, ImmutableString("frexp(20B20D").mangledNameHash());
289     ASSERT_EQ(0x0000010eu, ImmutableString("frexp(30B30D").mangledNameHash());
290     ASSERT_EQ(0x0000010fu, ImmutableString("ldexp(00B00D").mangledNameHash());
291     ASSERT_EQ(0x00000110u, ImmutableString("ldexp(10B10D").mangledNameHash());
292     ASSERT_EQ(0x00000111u, ImmutableString("ldexp(20B20D").mangledNameHash());
293     ASSERT_EQ(0x00000112u, ImmutableString("ldexp(30B30D").mangledNameHash());
294     ASSERT_EQ(0x00000113u, ImmutableString("packSnorm2x16(10B").mangledNameHash());
295     ASSERT_EQ(0x00000114u, ImmutableString("packHalf2x16(10B").mangledNameHash());
296     ASSERT_EQ(0x00000115u, ImmutableString("unpackSnorm2x16(00E").mangledNameHash());
297     ASSERT_EQ(0x00000116u, ImmutableString("unpackHalf2x16(00E").mangledNameHash());
298     ASSERT_EQ(0x00000117u, ImmutableString("packUnorm2x16(10B").mangledNameHash());
299     ASSERT_EQ(0x00000118u, ImmutableString("unpackUnorm2x16(00E").mangledNameHash());
300     ASSERT_EQ(0x00000119u, ImmutableString("packUnorm4x8(30B").mangledNameHash());
301     ASSERT_EQ(0x0000011au, ImmutableString("packSnorm4x8(30B").mangledNameHash());
302     ASSERT_EQ(0x0000011bu, ImmutableString("unpackUnorm4x8(00E").mangledNameHash());
303     ASSERT_EQ(0x0000011cu, ImmutableString("unpackSnorm4x8(00E").mangledNameHash());
304     ASSERT_EQ(0x0000011du, ImmutableString("length(00B").mangledNameHash());
305     ASSERT_EQ(0x0000011eu, ImmutableString("length(10B").mangledNameHash());
306     ASSERT_EQ(0x0000011fu, ImmutableString("length(20B").mangledNameHash());
307     ASSERT_EQ(0x00000120u, ImmutableString("length(30B").mangledNameHash());
308     ASSERT_EQ(0x00000121u, ImmutableString("distance(00B00B").mangledNameHash());
309     ASSERT_EQ(0x00000122u, ImmutableString("distance(10B10B").mangledNameHash());
310     ASSERT_EQ(0x00000123u, ImmutableString("distance(20B20B").mangledNameHash());
311     ASSERT_EQ(0x00000124u, ImmutableString("distance(30B30B").mangledNameHash());
312     ASSERT_EQ(0x00000125u, ImmutableString("dot(00B00B").mangledNameHash());
313     ASSERT_EQ(0x00000126u, ImmutableString("dot(10B10B").mangledNameHash());
314     ASSERT_EQ(0x00000127u, ImmutableString("dot(20B20B").mangledNameHash());
315     ASSERT_EQ(0x00000128u, ImmutableString("dot(30B30B").mangledNameHash());
316     ASSERT_EQ(0x00000129u, ImmutableString("cross(20B20B").mangledNameHash());
317     ASSERT_EQ(0x0000012au, ImmutableString("normalize(00B").mangledNameHash());
318     ASSERT_EQ(0x0000012bu, ImmutableString("normalize(10B").mangledNameHash());
319     ASSERT_EQ(0x0000012cu, ImmutableString("normalize(20B").mangledNameHash());
320     ASSERT_EQ(0x0000012du, ImmutableString("normalize(30B").mangledNameHash());
321     ASSERT_EQ(0x0000012eu, ImmutableString("faceforward(00B00B00B").mangledNameHash());
322     ASSERT_EQ(0x0000012fu, ImmutableString("faceforward(10B10B10B").mangledNameHash());
323     ASSERT_EQ(0x00000130u, ImmutableString("faceforward(20B20B20B").mangledNameHash());
324     ASSERT_EQ(0x00000131u, ImmutableString("faceforward(30B30B30B").mangledNameHash());
325     ASSERT_EQ(0x00000132u, ImmutableString("reflect(00B00B").mangledNameHash());
326     ASSERT_EQ(0x00000133u, ImmutableString("reflect(10B10B").mangledNameHash());
327     ASSERT_EQ(0x00000134u, ImmutableString("reflect(20B20B").mangledNameHash());
328     ASSERT_EQ(0x00000135u, ImmutableString("reflect(30B30B").mangledNameHash());
329     ASSERT_EQ(0x00000136u, ImmutableString("refract(00B00B00B").mangledNameHash());
330     ASSERT_EQ(0x00000137u, ImmutableString("refract(10B10B00B").mangledNameHash());
331     ASSERT_EQ(0x00000138u, ImmutableString("refract(20B20B00B").mangledNameHash());
332     ASSERT_EQ(0x00000139u, ImmutableString("refract(30B30B00B").mangledNameHash());
333     ASSERT_EQ(0x0000013au, ImmutableString("matrixCompMult(50B50B").mangledNameHash());
334     ASSERT_EQ(0x0000013bu, ImmutableString("matrixCompMult(A0BA0B").mangledNameHash());
335     ASSERT_EQ(0x0000013cu, ImmutableString("matrixCompMult(F0BF0B").mangledNameHash());
336     ASSERT_EQ(0x0000013du, ImmutableString("matrixCompMult(90B90B").mangledNameHash());
337     ASSERT_EQ(0x0000013eu, ImmutableString("matrixCompMult(60B60B").mangledNameHash());
338     ASSERT_EQ(0x0000013fu, ImmutableString("matrixCompMult(D0BD0B").mangledNameHash());
339     ASSERT_EQ(0x00000140u, ImmutableString("matrixCompMult(70B70B").mangledNameHash());
340     ASSERT_EQ(0x00000141u, ImmutableString("matrixCompMult(E0BE0B").mangledNameHash());
341     ASSERT_EQ(0x00000142u, ImmutableString("matrixCompMult(B0BB0B").mangledNameHash());
342     ASSERT_EQ(0x00000143u, ImmutableString("outerProduct(10B10B").mangledNameHash());
343     ASSERT_EQ(0x00000144u, ImmutableString("outerProduct(20B20B").mangledNameHash());
344     ASSERT_EQ(0x00000145u, ImmutableString("outerProduct(30B30B").mangledNameHash());
345     ASSERT_EQ(0x00000146u, ImmutableString("outerProduct(20B10B").mangledNameHash());
346     ASSERT_EQ(0x00000147u, ImmutableString("outerProduct(10B20B").mangledNameHash());
347     ASSERT_EQ(0x00000148u, ImmutableString("outerProduct(30B10B").mangledNameHash());
348     ASSERT_EQ(0x00000149u, ImmutableString("outerProduct(10B30B").mangledNameHash());
349     ASSERT_EQ(0x0000014au, ImmutableString("outerProduct(30B20B").mangledNameHash());
350     ASSERT_EQ(0x0000014bu, ImmutableString("outerProduct(20B30B").mangledNameHash());
351     ASSERT_EQ(0x0000014cu, ImmutableString("transpose(50B").mangledNameHash());
352     ASSERT_EQ(0x0000014du, ImmutableString("transpose(A0B").mangledNameHash());
353     ASSERT_EQ(0x0000014eu, ImmutableString("transpose(F0B").mangledNameHash());
354     ASSERT_EQ(0x0000014fu, ImmutableString("transpose(60B").mangledNameHash());
355     ASSERT_EQ(0x00000150u, ImmutableString("transpose(90B").mangledNameHash());
356     ASSERT_EQ(0x00000151u, ImmutableString("transpose(70B").mangledNameHash());
357     ASSERT_EQ(0x00000152u, ImmutableString("transpose(D0B").mangledNameHash());
358     ASSERT_EQ(0x00000153u, ImmutableString("transpose(B0B").mangledNameHash());
359     ASSERT_EQ(0x00000154u, ImmutableString("transpose(E0B").mangledNameHash());
360     ASSERT_EQ(0x00000155u, ImmutableString("determinant(50B").mangledNameHash());
361     ASSERT_EQ(0x00000156u, ImmutableString("determinant(A0B").mangledNameHash());
362     ASSERT_EQ(0x00000157u, ImmutableString("determinant(F0B").mangledNameHash());
363     ASSERT_EQ(0x00000158u, ImmutableString("inverse(50B").mangledNameHash());
364     ASSERT_EQ(0x00000159u, ImmutableString("inverse(A0B").mangledNameHash());
365     ASSERT_EQ(0x0000015au, ImmutableString("inverse(F0B").mangledNameHash());
366     ASSERT_EQ(0x0000015bu, ImmutableString("lessThan(10B10B").mangledNameHash());
367     ASSERT_EQ(0x0000015cu, ImmutableString("lessThan(20B20B").mangledNameHash());
368     ASSERT_EQ(0x0000015du, ImmutableString("lessThan(30B30B").mangledNameHash());
369     ASSERT_EQ(0x0000015eu, ImmutableString("lessThan(10D10D").mangledNameHash());
370     ASSERT_EQ(0x0000015fu, ImmutableString("lessThan(20D20D").mangledNameHash());
371     ASSERT_EQ(0x00000160u, ImmutableString("lessThan(30D30D").mangledNameHash());
372     ASSERT_EQ(0x00000161u, ImmutableString("lessThan(10E10E").mangledNameHash());
373     ASSERT_EQ(0x00000162u, ImmutableString("lessThan(20E20E").mangledNameHash());
374     ASSERT_EQ(0x00000163u, ImmutableString("lessThan(30E30E").mangledNameHash());
375     ASSERT_EQ(0x00000164u, ImmutableString("lessThanEqual(10B10B").mangledNameHash());
376     ASSERT_EQ(0x00000165u, ImmutableString("lessThanEqual(20B20B").mangledNameHash());
377     ASSERT_EQ(0x00000166u, ImmutableString("lessThanEqual(30B30B").mangledNameHash());
378     ASSERT_EQ(0x00000167u, ImmutableString("lessThanEqual(10D10D").mangledNameHash());
379     ASSERT_EQ(0x00000168u, ImmutableString("lessThanEqual(20D20D").mangledNameHash());
380     ASSERT_EQ(0x00000169u, ImmutableString("lessThanEqual(30D30D").mangledNameHash());
381     ASSERT_EQ(0x0000016au, ImmutableString("lessThanEqual(10E10E").mangledNameHash());
382     ASSERT_EQ(0x0000016bu, ImmutableString("lessThanEqual(20E20E").mangledNameHash());
383     ASSERT_EQ(0x0000016cu, ImmutableString("lessThanEqual(30E30E").mangledNameHash());
384     ASSERT_EQ(0x0000016du, ImmutableString("greaterThan(10B10B").mangledNameHash());
385     ASSERT_EQ(0x0000016eu, ImmutableString("greaterThan(20B20B").mangledNameHash());
386     ASSERT_EQ(0x0000016fu, ImmutableString("greaterThan(30B30B").mangledNameHash());
387     ASSERT_EQ(0x00000170u, ImmutableString("greaterThan(10D10D").mangledNameHash());
388     ASSERT_EQ(0x00000171u, ImmutableString("greaterThan(20D20D").mangledNameHash());
389     ASSERT_EQ(0x00000172u, ImmutableString("greaterThan(30D30D").mangledNameHash());
390     ASSERT_EQ(0x00000173u, ImmutableString("greaterThan(10E10E").mangledNameHash());
391     ASSERT_EQ(0x00000174u, ImmutableString("greaterThan(20E20E").mangledNameHash());
392     ASSERT_EQ(0x00000175u, ImmutableString("greaterThan(30E30E").mangledNameHash());
393     ASSERT_EQ(0x00000176u, ImmutableString("greaterThanEqual(10B10B").mangledNameHash());
394     ASSERT_EQ(0x00000177u, ImmutableString("greaterThanEqual(20B20B").mangledNameHash());
395     ASSERT_EQ(0x00000178u, ImmutableString("greaterThanEqual(30B30B").mangledNameHash());
396     ASSERT_EQ(0x00000179u, ImmutableString("greaterThanEqual(10D10D").mangledNameHash());
397     ASSERT_EQ(0x0000017au, ImmutableString("greaterThanEqual(20D20D").mangledNameHash());
398     ASSERT_EQ(0x0000017bu, ImmutableString("greaterThanEqual(30D30D").mangledNameHash());
399     ASSERT_EQ(0x0000017cu, ImmutableString("greaterThanEqual(10E10E").mangledNameHash());
400     ASSERT_EQ(0x0000017du, ImmutableString("greaterThanEqual(20E20E").mangledNameHash());
401     ASSERT_EQ(0x0000017eu, ImmutableString("greaterThanEqual(30E30E").mangledNameHash());
402     ASSERT_EQ(0x0000017fu, ImmutableString("equal(10B10B").mangledNameHash());
403     ASSERT_EQ(0x00000180u, ImmutableString("equal(20B20B").mangledNameHash());
404     ASSERT_EQ(0x00000181u, ImmutableString("equal(30B30B").mangledNameHash());
405     ASSERT_EQ(0x00000182u, ImmutableString("equal(10D10D").mangledNameHash());
406     ASSERT_EQ(0x00000183u, ImmutableString("equal(20D20D").mangledNameHash());
407     ASSERT_EQ(0x00000184u, ImmutableString("equal(30D30D").mangledNameHash());
408     ASSERT_EQ(0x00000185u, ImmutableString("equal(10E10E").mangledNameHash());
409     ASSERT_EQ(0x00000186u, ImmutableString("equal(20E20E").mangledNameHash());
410     ASSERT_EQ(0x00000187u, ImmutableString("equal(30E30E").mangledNameHash());
411     ASSERT_EQ(0x00000188u, ImmutableString("equal(10F10F").mangledNameHash());
412     ASSERT_EQ(0x00000189u, ImmutableString("equal(20F20F").mangledNameHash());
413     ASSERT_EQ(0x0000018au, ImmutableString("equal(30F30F").mangledNameHash());
414     ASSERT_EQ(0x0000018bu, ImmutableString("notEqual(10B10B").mangledNameHash());
415     ASSERT_EQ(0x0000018cu, ImmutableString("notEqual(20B20B").mangledNameHash());
416     ASSERT_EQ(0x0000018du, ImmutableString("notEqual(30B30B").mangledNameHash());
417     ASSERT_EQ(0x0000018eu, ImmutableString("notEqual(10D10D").mangledNameHash());
418     ASSERT_EQ(0x0000018fu, ImmutableString("notEqual(20D20D").mangledNameHash());
419     ASSERT_EQ(0x00000190u, ImmutableString("notEqual(30D30D").mangledNameHash());
420     ASSERT_EQ(0x00000191u, ImmutableString("notEqual(10E10E").mangledNameHash());
421     ASSERT_EQ(0x00000192u, ImmutableString("notEqual(20E20E").mangledNameHash());
422     ASSERT_EQ(0x00000193u, ImmutableString("notEqual(30E30E").mangledNameHash());
423     ASSERT_EQ(0x00000194u, ImmutableString("notEqual(10F10F").mangledNameHash());
424     ASSERT_EQ(0x00000195u, ImmutableString("notEqual(20F20F").mangledNameHash());
425     ASSERT_EQ(0x00000196u, ImmutableString("notEqual(30F30F").mangledNameHash());
426     ASSERT_EQ(0x00000197u, ImmutableString("any(10F").mangledNameHash());
427     ASSERT_EQ(0x00000198u, ImmutableString("any(20F").mangledNameHash());
428     ASSERT_EQ(0x00000199u, ImmutableString("any(30F").mangledNameHash());
429     ASSERT_EQ(0x0000019au, ImmutableString("all(10F").mangledNameHash());
430     ASSERT_EQ(0x0000019bu, ImmutableString("all(20F").mangledNameHash());
431     ASSERT_EQ(0x0000019cu, ImmutableString("all(30F").mangledNameHash());
432     ASSERT_EQ(0x0000019du, ImmutableString("not(10F").mangledNameHash());
433     ASSERT_EQ(0x0000019eu, ImmutableString("not(20F").mangledNameHash());
434     ASSERT_EQ(0x0000019fu, ImmutableString("not(30F").mangledNameHash());
435     ASSERT_EQ(0x000001a0u, ImmutableString("bitfieldExtract(00D00D00D").mangledNameHash());
436     ASSERT_EQ(0x000001a1u, ImmutableString("bitfieldExtract(10D00D00D").mangledNameHash());
437     ASSERT_EQ(0x000001a2u, ImmutableString("bitfieldExtract(20D00D00D").mangledNameHash());
438     ASSERT_EQ(0x000001a3u, ImmutableString("bitfieldExtract(30D00D00D").mangledNameHash());
439     ASSERT_EQ(0x000001a4u, ImmutableString("bitfieldExtract(00E00D00D").mangledNameHash());
440     ASSERT_EQ(0x000001a5u, ImmutableString("bitfieldExtract(10E00D00D").mangledNameHash());
441     ASSERT_EQ(0x000001a6u, ImmutableString("bitfieldExtract(20E00D00D").mangledNameHash());
442     ASSERT_EQ(0x000001a7u, ImmutableString("bitfieldExtract(30E00D00D").mangledNameHash());
443     ASSERT_EQ(0x000001a8u, ImmutableString("bitfieldInsert(00D00D00D00D").mangledNameHash());
444     ASSERT_EQ(0x000001a9u, ImmutableString("bitfieldInsert(10D10D00D00D").mangledNameHash());
445     ASSERT_EQ(0x000001aau, ImmutableString("bitfieldInsert(20D20D00D00D").mangledNameHash());
446     ASSERT_EQ(0x000001abu, ImmutableString("bitfieldInsert(30D30D00D00D").mangledNameHash());
447     ASSERT_EQ(0x000001acu, ImmutableString("bitfieldInsert(00E00E00D00D").mangledNameHash());
448     ASSERT_EQ(0x000001adu, ImmutableString("bitfieldInsert(10E10E00D00D").mangledNameHash());
449     ASSERT_EQ(0x000001aeu, ImmutableString("bitfieldInsert(20E20E00D00D").mangledNameHash());
450     ASSERT_EQ(0x000001afu, ImmutableString("bitfieldInsert(30E30E00D00D").mangledNameHash());
451     ASSERT_EQ(0x000001b0u, ImmutableString("bitfieldReverse(00D").mangledNameHash());
452     ASSERT_EQ(0x000001b1u, ImmutableString("bitfieldReverse(10D").mangledNameHash());
453     ASSERT_EQ(0x000001b2u, ImmutableString("bitfieldReverse(20D").mangledNameHash());
454     ASSERT_EQ(0x000001b3u, ImmutableString("bitfieldReverse(30D").mangledNameHash());
455     ASSERT_EQ(0x000001b4u, ImmutableString("bitfieldReverse(00E").mangledNameHash());
456     ASSERT_EQ(0x000001b5u, ImmutableString("bitfieldReverse(10E").mangledNameHash());
457     ASSERT_EQ(0x000001b6u, ImmutableString("bitfieldReverse(20E").mangledNameHash());
458     ASSERT_EQ(0x000001b7u, ImmutableString("bitfieldReverse(30E").mangledNameHash());
459     ASSERT_EQ(0x000001b8u, ImmutableString("bitCount(00D").mangledNameHash());
460     ASSERT_EQ(0x000001b9u, ImmutableString("bitCount(10D").mangledNameHash());
461     ASSERT_EQ(0x000001bau, ImmutableString("bitCount(20D").mangledNameHash());
462     ASSERT_EQ(0x000001bbu, ImmutableString("bitCount(30D").mangledNameHash());
463     ASSERT_EQ(0x000001bcu, ImmutableString("bitCount(00E").mangledNameHash());
464     ASSERT_EQ(0x000001bdu, ImmutableString("bitCount(10E").mangledNameHash());
465     ASSERT_EQ(0x000001beu, ImmutableString("bitCount(20E").mangledNameHash());
466     ASSERT_EQ(0x000001bfu, ImmutableString("bitCount(30E").mangledNameHash());
467     ASSERT_EQ(0x000001c0u, ImmutableString("findLSB(00D").mangledNameHash());
468     ASSERT_EQ(0x000001c1u, ImmutableString("findLSB(10D").mangledNameHash());
469     ASSERT_EQ(0x000001c2u, ImmutableString("findLSB(20D").mangledNameHash());
470     ASSERT_EQ(0x000001c3u, ImmutableString("findLSB(30D").mangledNameHash());
471     ASSERT_EQ(0x000001c4u, ImmutableString("findLSB(00E").mangledNameHash());
472     ASSERT_EQ(0x000001c5u, ImmutableString("findLSB(10E").mangledNameHash());
473     ASSERT_EQ(0x000001c6u, ImmutableString("findLSB(20E").mangledNameHash());
474     ASSERT_EQ(0x000001c7u, ImmutableString("findLSB(30E").mangledNameHash());
475     ASSERT_EQ(0x000001c8u, ImmutableString("findMSB(00D").mangledNameHash());
476     ASSERT_EQ(0x000001c9u, ImmutableString("findMSB(10D").mangledNameHash());
477     ASSERT_EQ(0x000001cau, ImmutableString("findMSB(20D").mangledNameHash());
478     ASSERT_EQ(0x000001cbu, ImmutableString("findMSB(30D").mangledNameHash());
479     ASSERT_EQ(0x000001ccu, ImmutableString("findMSB(00E").mangledNameHash());
480     ASSERT_EQ(0x000001cdu, ImmutableString("findMSB(10E").mangledNameHash());
481     ASSERT_EQ(0x000001ceu, ImmutableString("findMSB(20E").mangledNameHash());
482     ASSERT_EQ(0x000001cfu, ImmutableString("findMSB(30E").mangledNameHash());
483     ASSERT_EQ(0x000001d0u, ImmutableString("uaddCarry(00E00E00E").mangledNameHash());
484     ASSERT_EQ(0x000001d1u, ImmutableString("uaddCarry(10E10E10E").mangledNameHash());
485     ASSERT_EQ(0x000001d2u, ImmutableString("uaddCarry(20E20E20E").mangledNameHash());
486     ASSERT_EQ(0x000001d3u, ImmutableString("uaddCarry(30E30E30E").mangledNameHash());
487     ASSERT_EQ(0x000001d4u, ImmutableString("usubBorrow(00E00E00E").mangledNameHash());
488     ASSERT_EQ(0x000001d5u, ImmutableString("usubBorrow(10E10E10E").mangledNameHash());
489     ASSERT_EQ(0x000001d6u, ImmutableString("usubBorrow(20E20E20E").mangledNameHash());
490     ASSERT_EQ(0x000001d7u, ImmutableString("usubBorrow(30E30E30E").mangledNameHash());
491     ASSERT_EQ(0x000001d8u, ImmutableString("umulExtended(00E00E00E00E").mangledNameHash());
492     ASSERT_EQ(0x000001d9u, ImmutableString("umulExtended(10E10E10E10E").mangledNameHash());
493     ASSERT_EQ(0x000001dau, ImmutableString("umulExtended(20E20E20E20E").mangledNameHash());
494     ASSERT_EQ(0x000001dbu, ImmutableString("umulExtended(30E30E30E30E").mangledNameHash());
495     ASSERT_EQ(0x000001dcu, ImmutableString("imulExtended(00D00D00D00D").mangledNameHash());
496     ASSERT_EQ(0x000001ddu, ImmutableString("imulExtended(10D10D10D10D").mangledNameHash());
497     ASSERT_EQ(0x000001deu, ImmutableString("imulExtended(20D20D20D20D").mangledNameHash());
498     ASSERT_EQ(0x000001dfu, ImmutableString("imulExtended(30D30D30D30D").mangledNameHash());
499     ASSERT_EQ(0x000001e0u, ImmutableString("texture2D(00I10B").mangledNameHash());
500     ASSERT_EQ(0x000001e1u, ImmutableString("texture2DProj(00I20B").mangledNameHash());
501     ASSERT_EQ(0x000001e2u, ImmutableString("texture2DProj(00I30B").mangledNameHash());
502     ASSERT_EQ(0x000001e3u, ImmutableString("textureCube(00K20B").mangledNameHash());
503     ASSERT_EQ(0x000001e4u, ImmutableString("texture3D(00J20B").mangledNameHash());
504     ASSERT_EQ(0x000001e5u, ImmutableString("texture3DProj(00J30B").mangledNameHash());
505     ASSERT_EQ(0x000001e6u, ImmutableString("shadow2DEXT(00d20B").mangledNameHash());
506     ASSERT_EQ(0x000001e7u, ImmutableString("shadow2DProjEXT(00d30B").mangledNameHash());
507     ASSERT_EQ(0x000001e8u, ImmutableString("texture2D(00M10B").mangledNameHash());
508     ASSERT_EQ(0x000001e9u, ImmutableString("texture2DProj(00M20B").mangledNameHash());
509     ASSERT_EQ(0x000001eau, ImmutableString("texture2DProj(00M30B").mangledNameHash());
510     ASSERT_EQ(0x000001ebu, ImmutableString("texture2DRect(00O10B").mangledNameHash());
511     ASSERT_EQ(0x000001ecu, ImmutableString("texture2DRectProj(00O20B").mangledNameHash());
512     ASSERT_EQ(0x000001edu, ImmutableString("texture2DRectProj(00O30B").mangledNameHash());
513     ASSERT_EQ(0x000001eeu, ImmutableString("texture2DGradEXT(00I10B10B10B").mangledNameHash());
514     ASSERT_EQ(0x000001efu, ImmutableString("texture2DProjGradEXT(00I20B10B10B").mangledNameHash());
515     ASSERT_EQ(0x000001f0u, ImmutableString("texture2DProjGradEXT(00I30B10B10B").mangledNameHash());
516     ASSERT_EQ(0x000001f1u, ImmutableString("textureCubeGradEXT(00K20B20B20B").mangledNameHash());
517     ASSERT_EQ(0x000001f2u, ImmutableString("textureVideoWEBGL(00y10B").mangledNameHash());
518     ASSERT_EQ(0x000001f3u, ImmutableString("texture2D(00I10B00B").mangledNameHash());
519     ASSERT_EQ(0x000001f4u, ImmutableString("texture2DProj(00I20B00B").mangledNameHash());
520     ASSERT_EQ(0x000001f5u, ImmutableString("texture2DProj(00I30B00B").mangledNameHash());
521     ASSERT_EQ(0x000001f6u, ImmutableString("textureCube(00K20B00B").mangledNameHash());
522     ASSERT_EQ(0x000001f7u, ImmutableString("texture3D(00J20B00B").mangledNameHash());
523     ASSERT_EQ(0x000001f8u, ImmutableString("texture3DProj(00J30B00B").mangledNameHash());
524     ASSERT_EQ(0x000001f9u, ImmutableString("texture3DLod(00J20B00B").mangledNameHash());
525     ASSERT_EQ(0x000001fau, ImmutableString("texture3DProjLod(00J30B00B").mangledNameHash());
526     ASSERT_EQ(0x000001fbu, ImmutableString("texture2DLod(00I10B00B").mangledNameHash());
527     ASSERT_EQ(0x000001fcu, ImmutableString("texture2DProjLod(00I20B00B").mangledNameHash());
528     ASSERT_EQ(0x000001fdu, ImmutableString("texture2DProjLod(00I30B00B").mangledNameHash());
529     ASSERT_EQ(0x000001feu, ImmutableString("textureCubeLod(00K20B00B").mangledNameHash());
530     ASSERT_EQ(0x000001ffu, ImmutableString("texture2DLodEXT(00I10B00B").mangledNameHash());
531     ASSERT_EQ(0x00000200u, ImmutableString("texture2DProjLodEXT(00I20B00B").mangledNameHash());
532     ASSERT_EQ(0x00000201u, ImmutableString("texture2DProjLodEXT(00I30B00B").mangledNameHash());
533     ASSERT_EQ(0x00000202u, ImmutableString("textureCubeLodEXT(00K20B00B").mangledNameHash());
534     ASSERT_EQ(0x00000203u, ImmutableString("texture(00I10B").mangledNameHash());
535     ASSERT_EQ(0x00000204u, ImmutableString("texture(00R10B").mangledNameHash());
536     ASSERT_EQ(0x00000205u, ImmutableString("texture(00X10B").mangledNameHash());
537     ASSERT_EQ(0x00000206u, ImmutableString("texture(00J20B").mangledNameHash());
538     ASSERT_EQ(0x00000207u, ImmutableString("texture(00S20B").mangledNameHash());
539     ASSERT_EQ(0x00000208u, ImmutableString("texture(00Y20B").mangledNameHash());
540     ASSERT_EQ(0x00000209u, ImmutableString("texture(00K20B").mangledNameHash());
541     ASSERT_EQ(0x0000020au, ImmutableString("texture(00T20B").mangledNameHash());
542     ASSERT_EQ(0x0000020bu, ImmutableString("texture(00Z20B").mangledNameHash());
543     ASSERT_EQ(0x0000020cu, ImmutableString("texture(00L20B").mangledNameHash());
544     ASSERT_EQ(0x0000020du, ImmutableString("texture(00U20B").mangledNameHash());
545     ASSERT_EQ(0x0000020eu, ImmutableString("texture(00a20B").mangledNameHash());
546     ASSERT_EQ(0x0000020fu, ImmutableString("texture(00d20B").mangledNameHash());
547     ASSERT_EQ(0x00000210u, ImmutableString("texture(00e30B").mangledNameHash());
548     ASSERT_EQ(0x00000211u, ImmutableString("texture(00f30B").mangledNameHash());
549     ASSERT_EQ(0x00000212u, ImmutableString("texture(00k30B").mangledNameHash());
550     ASSERT_EQ(0x00000213u, ImmutableString("texture(00s30B").mangledNameHash());
551     ASSERT_EQ(0x00000214u, ImmutableString("texture(00x30B").mangledNameHash());
552     ASSERT_EQ(0x00000215u, ImmutableString("texture(00l30B00B").mangledNameHash());
553     ASSERT_EQ(0x00000216u, ImmutableString("texture(00M10B").mangledNameHash());
554     ASSERT_EQ(0x00000217u, ImmutableString("texture(00N10B").mangledNameHash());
555     ASSERT_EQ(0x00000218u, ImmutableString("texture(00O10B").mangledNameHash());
556     ASSERT_EQ(0x00000219u, ImmutableString("texture(00y10B").mangledNameHash());
557     ASSERT_EQ(0x0000021au, ImmutableString("textureProj(00I20B").mangledNameHash());
558     ASSERT_EQ(0x0000021bu, ImmutableString("textureProj(00R20B").mangledNameHash());
559     ASSERT_EQ(0x0000021cu, ImmutableString("textureProj(00X20B").mangledNameHash());
560     ASSERT_EQ(0x0000021du, ImmutableString("textureProj(00I30B").mangledNameHash());
561     ASSERT_EQ(0x0000021eu, ImmutableString("textureProj(00R30B").mangledNameHash());
562     ASSERT_EQ(0x0000021fu, ImmutableString("textureProj(00X30B").mangledNameHash());
563     ASSERT_EQ(0x00000220u, ImmutableString("textureProj(00J30B").mangledNameHash());
564     ASSERT_EQ(0x00000221u, ImmutableString("textureProj(00S30B").mangledNameHash());
565     ASSERT_EQ(0x00000222u, ImmutableString("textureProj(00Y30B").mangledNameHash());
566     ASSERT_EQ(0x00000223u, ImmutableString("textureProj(00d30B").mangledNameHash());
567     ASSERT_EQ(0x00000224u, ImmutableString("textureProj(00M20B").mangledNameHash());
568     ASSERT_EQ(0x00000225u, ImmutableString("textureProj(00M30B").mangledNameHash());
569     ASSERT_EQ(0x00000226u, ImmutableString("textureProj(00N20B").mangledNameHash());
570     ASSERT_EQ(0x00000227u, ImmutableString("textureProj(00N30B").mangledNameHash());
571     ASSERT_EQ(0x00000228u, ImmutableString("textureProj(00O20B").mangledNameHash());
572     ASSERT_EQ(0x00000229u, ImmutableString("textureProj(00O30B").mangledNameHash());
573     ASSERT_EQ(0x0000022au, ImmutableString("textureLod(00I10B00B").mangledNameHash());
574     ASSERT_EQ(0x0000022bu, ImmutableString("textureLod(00R10B00B").mangledNameHash());
575     ASSERT_EQ(0x0000022cu, ImmutableString("textureLod(00X10B00B").mangledNameHash());
576     ASSERT_EQ(0x0000022du, ImmutableString("textureLod(00J20B00B").mangledNameHash());
577     ASSERT_EQ(0x0000022eu, ImmutableString("textureLod(00S20B00B").mangledNameHash());
578     ASSERT_EQ(0x0000022fu, ImmutableString("textureLod(00Y20B00B").mangledNameHash());
579     ASSERT_EQ(0x00000230u, ImmutableString("textureLod(00K20B00B").mangledNameHash());
580     ASSERT_EQ(0x00000231u, ImmutableString("textureLod(00T20B00B").mangledNameHash());
581     ASSERT_EQ(0x00000232u, ImmutableString("textureLod(00Z20B00B").mangledNameHash());
582     ASSERT_EQ(0x00000233u, ImmutableString("textureLod(00L20B00B").mangledNameHash());
583     ASSERT_EQ(0x00000234u, ImmutableString("textureLod(00U20B00B").mangledNameHash());
584     ASSERT_EQ(0x00000235u, ImmutableString("textureLod(00a20B00B").mangledNameHash());
585     ASSERT_EQ(0x00000236u, ImmutableString("textureLod(00d20B00B").mangledNameHash());
586     ASSERT_EQ(0x00000237u, ImmutableString("textureLod(00k30B00B").mangledNameHash());
587     ASSERT_EQ(0x00000238u, ImmutableString("textureLod(00s30B00B").mangledNameHash());
588     ASSERT_EQ(0x00000239u, ImmutableString("textureLod(00x30B00B").mangledNameHash());
589     ASSERT_EQ(0x0000023au, ImmutableString("textureSize(00I00D").mangledNameHash());
590     ASSERT_EQ(0x0000023bu, ImmutableString("textureSize(00R00D").mangledNameHash());
591     ASSERT_EQ(0x0000023cu, ImmutableString("textureSize(00X00D").mangledNameHash());
592     ASSERT_EQ(0x0000023du, ImmutableString("textureSize(00J00D").mangledNameHash());
593     ASSERT_EQ(0x0000023eu, ImmutableString("textureSize(00S00D").mangledNameHash());
594     ASSERT_EQ(0x0000023fu, ImmutableString("textureSize(00Y00D").mangledNameHash());
595     ASSERT_EQ(0x00000240u, ImmutableString("textureSize(00K00D").mangledNameHash());
596     ASSERT_EQ(0x00000241u, ImmutableString("textureSize(00T00D").mangledNameHash());
597     ASSERT_EQ(0x00000242u, ImmutableString("textureSize(00Z00D").mangledNameHash());
598     ASSERT_EQ(0x00000243u, ImmutableString("textureSize(00L00D").mangledNameHash());
599     ASSERT_EQ(0x00000244u, ImmutableString("textureSize(00U00D").mangledNameHash());
600     ASSERT_EQ(0x00000245u, ImmutableString("textureSize(00a00D").mangledNameHash());
601     ASSERT_EQ(0x00000246u, ImmutableString("textureSize(00d00D").mangledNameHash());
602     ASSERT_EQ(0x00000247u, ImmutableString("textureSize(00e00D").mangledNameHash());
603     ASSERT_EQ(0x00000248u, ImmutableString("textureSize(00f00D").mangledNameHash());
604     ASSERT_EQ(0x00000249u, ImmutableString("textureSize(00k00D").mangledNameHash());
605     ASSERT_EQ(0x0000024au, ImmutableString("textureSize(00s00D").mangledNameHash());
606     ASSERT_EQ(0x0000024bu, ImmutableString("textureSize(00x00D").mangledNameHash());
607     ASSERT_EQ(0x0000024cu, ImmutableString("textureSize(00l00D").mangledNameHash());
608     ASSERT_EQ(0x0000024du, ImmutableString("textureSize(00j").mangledNameHash());
609     ASSERT_EQ(0x0000024eu, ImmutableString("textureSize(00r").mangledNameHash());
610     ASSERT_EQ(0x0000024fu, ImmutableString("textureSize(00w").mangledNameHash());
611     ASSERT_EQ(0x00000250u, ImmutableString("textureSize(00P").mangledNameHash());
612     ASSERT_EQ(0x00000251u, ImmutableString("textureSize(00V").mangledNameHash());
613     ASSERT_EQ(0x00000252u, ImmutableString("textureSize(00b").mangledNameHash());
614     ASSERT_EQ(0x00000253u, ImmutableString("textureSize(00Q").mangledNameHash());
615     ASSERT_EQ(0x00000254u, ImmutableString("textureSize(00W").mangledNameHash());
616     ASSERT_EQ(0x00000255u, ImmutableString("textureSize(00c").mangledNameHash());
617     ASSERT_EQ(0x00000256u, ImmutableString("textureSize(00M00D").mangledNameHash());
618     ASSERT_EQ(0x00000257u, ImmutableString("textureSize(00N00D").mangledNameHash());
619     ASSERT_EQ(0x00000258u, ImmutableString("textureProjLod(00I20B00B").mangledNameHash());
620     ASSERT_EQ(0x00000259u, ImmutableString("textureProjLod(00R20B00B").mangledNameHash());
621     ASSERT_EQ(0x0000025au, ImmutableString("textureProjLod(00X20B00B").mangledNameHash());
622     ASSERT_EQ(0x0000025bu, ImmutableString("textureProjLod(00I30B00B").mangledNameHash());
623     ASSERT_EQ(0x0000025cu, ImmutableString("textureProjLod(00R30B00B").mangledNameHash());
624     ASSERT_EQ(0x0000025du, ImmutableString("textureProjLod(00X30B00B").mangledNameHash());
625     ASSERT_EQ(0x0000025eu, ImmutableString("textureProjLod(00J30B00B").mangledNameHash());
626     ASSERT_EQ(0x0000025fu, ImmutableString("textureProjLod(00S30B00B").mangledNameHash());
627     ASSERT_EQ(0x00000260u, ImmutableString("textureProjLod(00Y30B00B").mangledNameHash());
628     ASSERT_EQ(0x00000261u, ImmutableString("textureProjLod(00d30B00B").mangledNameHash());
629     ASSERT_EQ(0x00000262u, ImmutableString("texelFetch(00I10D00D").mangledNameHash());
630     ASSERT_EQ(0x00000263u, ImmutableString("texelFetch(00R10D00D").mangledNameHash());
631     ASSERT_EQ(0x00000264u, ImmutableString("texelFetch(00X10D00D").mangledNameHash());
632     ASSERT_EQ(0x00000265u, ImmutableString("texelFetch(00J20D00D").mangledNameHash());
633     ASSERT_EQ(0x00000266u, ImmutableString("texelFetch(00S20D00D").mangledNameHash());
634     ASSERT_EQ(0x00000267u, ImmutableString("texelFetch(00Y20D00D").mangledNameHash());
635     ASSERT_EQ(0x00000268u, ImmutableString("texelFetch(00L20D00D").mangledNameHash());
636     ASSERT_EQ(0x00000269u, ImmutableString("texelFetch(00U20D00D").mangledNameHash());
637     ASSERT_EQ(0x0000026au, ImmutableString("texelFetch(00a20D00D").mangledNameHash());
638     ASSERT_EQ(0x0000026bu, ImmutableString("texelFetch(00j00D").mangledNameHash());
639     ASSERT_EQ(0x0000026cu, ImmutableString("texelFetch(00r00D").mangledNameHash());
640     ASSERT_EQ(0x0000026du, ImmutableString("texelFetch(00w00D").mangledNameHash());
641     ASSERT_EQ(0x0000026eu, ImmutableString("texelFetch(00P10D00D").mangledNameHash());
642     ASSERT_EQ(0x0000026fu, ImmutableString("texelFetch(00V10D00D").mangledNameHash());
643     ASSERT_EQ(0x00000270u, ImmutableString("texelFetch(00b10D00D").mangledNameHash());
644     ASSERT_EQ(0x00000271u, ImmutableString("texelFetch(00Q20D00D").mangledNameHash());
645     ASSERT_EQ(0x00000272u, ImmutableString("texelFetch(00W20D00D").mangledNameHash());
646     ASSERT_EQ(0x00000273u, ImmutableString("texelFetch(00c20D00D").mangledNameHash());
647     ASSERT_EQ(0x00000274u, ImmutableString("texelFetch(00M10D00D").mangledNameHash());
648     ASSERT_EQ(0x00000275u, ImmutableString("texelFetch(00N10D00D").mangledNameHash());
649     ASSERT_EQ(0x00000276u, ImmutableString("textureGrad(00I10B10B10B").mangledNameHash());
650     ASSERT_EQ(0x00000277u, ImmutableString("textureGrad(00R10B10B10B").mangledNameHash());
651     ASSERT_EQ(0x00000278u, ImmutableString("textureGrad(00X10B10B10B").mangledNameHash());
652     ASSERT_EQ(0x00000279u, ImmutableString("textureGrad(00J20B20B20B").mangledNameHash());
653     ASSERT_EQ(0x0000027au, ImmutableString("textureGrad(00S20B20B20B").mangledNameHash());
654     ASSERT_EQ(0x0000027bu, ImmutableString("textureGrad(00Y20B20B20B").mangledNameHash());
655     ASSERT_EQ(0x0000027cu, ImmutableString("textureGrad(00K20B20B20B").mangledNameHash());
656     ASSERT_EQ(0x0000027du, ImmutableString("textureGrad(00T20B20B20B").mangledNameHash());
657     ASSERT_EQ(0x0000027eu, ImmutableString("textureGrad(00Z20B20B20B").mangledNameHash());
658     ASSERT_EQ(0x0000027fu, ImmutableString("textureGrad(00d20B10B10B").mangledNameHash());
659     ASSERT_EQ(0x00000280u, ImmutableString("textureGrad(00e30B20B20B").mangledNameHash());
660     ASSERT_EQ(0x00000281u, ImmutableString("textureGrad(00L20B10B10B").mangledNameHash());
661     ASSERT_EQ(0x00000282u, ImmutableString("textureGrad(00U20B10B10B").mangledNameHash());
662     ASSERT_EQ(0x00000283u, ImmutableString("textureGrad(00a20B10B10B").mangledNameHash());
663     ASSERT_EQ(0x00000284u, ImmutableString("textureGrad(00f30B10B10B").mangledNameHash());
664     ASSERT_EQ(0x00000285u, ImmutableString("textureGrad(00k30B20B20B").mangledNameHash());
665     ASSERT_EQ(0x00000286u, ImmutableString("textureGrad(00s30B20B20B").mangledNameHash());
666     ASSERT_EQ(0x00000287u, ImmutableString("textureGrad(00x30B20B20B").mangledNameHash());
667     ASSERT_EQ(0x00000288u, ImmutableString("textureProjGrad(00I20B10B10B").mangledNameHash());
668     ASSERT_EQ(0x00000289u, ImmutableString("textureProjGrad(00R20B10B10B").mangledNameHash());
669     ASSERT_EQ(0x0000028au, ImmutableString("textureProjGrad(00X20B10B10B").mangledNameHash());
670     ASSERT_EQ(0x0000028bu, ImmutableString("textureProjGrad(00I30B10B10B").mangledNameHash());
671     ASSERT_EQ(0x0000028cu, ImmutableString("textureProjGrad(00R30B10B10B").mangledNameHash());
672     ASSERT_EQ(0x0000028du, ImmutableString("textureProjGrad(00X30B10B10B").mangledNameHash());
673     ASSERT_EQ(0x0000028eu, ImmutableString("textureProjGrad(00J30B20B20B").mangledNameHash());
674     ASSERT_EQ(0x0000028fu, ImmutableString("textureProjGrad(00S30B20B20B").mangledNameHash());
675     ASSERT_EQ(0x00000290u, ImmutableString("textureProjGrad(00Y30B20B20B").mangledNameHash());
676     ASSERT_EQ(0x00000291u, ImmutableString("textureProjGrad(00d30B10B10B").mangledNameHash());
677     ASSERT_EQ(0x00000292u, ImmutableString("texture(00I10B00B").mangledNameHash());
678     ASSERT_EQ(0x00000293u, ImmutableString("texture(00R10B00B").mangledNameHash());
679     ASSERT_EQ(0x00000294u, ImmutableString("texture(00X10B00B").mangledNameHash());
680     ASSERT_EQ(0x00000295u, ImmutableString("texture(00J20B00B").mangledNameHash());
681     ASSERT_EQ(0x00000296u, ImmutableString("texture(00S20B00B").mangledNameHash());
682     ASSERT_EQ(0x00000297u, ImmutableString("texture(00Y20B00B").mangledNameHash());
683     ASSERT_EQ(0x00000298u, ImmutableString("texture(00K20B00B").mangledNameHash());
684     ASSERT_EQ(0x00000299u, ImmutableString("texture(00T20B00B").mangledNameHash());
685     ASSERT_EQ(0x0000029au, ImmutableString("texture(00Z20B00B").mangledNameHash());
686     ASSERT_EQ(0x0000029bu, ImmutableString("texture(00L20B00B").mangledNameHash());
687     ASSERT_EQ(0x0000029cu, ImmutableString("texture(00U20B00B").mangledNameHash());
688     ASSERT_EQ(0x0000029du, ImmutableString("texture(00a20B00B").mangledNameHash());
689     ASSERT_EQ(0x0000029eu, ImmutableString("textureProj(00I20B00B").mangledNameHash());
690     ASSERT_EQ(0x0000029fu, ImmutableString("textureProj(00R20B00B").mangledNameHash());
691     ASSERT_EQ(0x000002a0u, ImmutableString("textureProj(00X20B00B").mangledNameHash());
692     ASSERT_EQ(0x000002a1u, ImmutableString("textureProj(00I30B00B").mangledNameHash());
693     ASSERT_EQ(0x000002a2u, ImmutableString("textureProj(00R30B00B").mangledNameHash());
694     ASSERT_EQ(0x000002a3u, ImmutableString("textureProj(00X30B00B").mangledNameHash());
695     ASSERT_EQ(0x000002a4u, ImmutableString("textureProj(00J30B00B").mangledNameHash());
696     ASSERT_EQ(0x000002a5u, ImmutableString("textureProj(00S30B00B").mangledNameHash());
697     ASSERT_EQ(0x000002a6u, ImmutableString("textureProj(00Y30B00B").mangledNameHash());
698     ASSERT_EQ(0x000002a7u, ImmutableString("texture(00d20B00B").mangledNameHash());
699     ASSERT_EQ(0x000002a8u, ImmutableString("texture(00e30B00B").mangledNameHash());
700     ASSERT_EQ(0x000002a9u, ImmutableString("textureProj(00d30B00B").mangledNameHash());
701     ASSERT_EQ(0x000002aau, ImmutableString("texture(00k30B00B").mangledNameHash());
702     ASSERT_EQ(0x000002abu, ImmutableString("texture(00s30B00B").mangledNameHash());
703     ASSERT_EQ(0x000002acu, ImmutableString("texture(00x30B00B").mangledNameHash());
704     ASSERT_EQ(0x000002adu, ImmutableString("texture(00M10B00B").mangledNameHash());
705     ASSERT_EQ(0x000002aeu, ImmutableString("textureProj(00M20B00B").mangledNameHash());
706     ASSERT_EQ(0x000002afu, ImmutableString("textureProj(00M30B00B").mangledNameHash());
707     ASSERT_EQ(0x000002b0u, ImmutableString("texture(00N10B00B").mangledNameHash());
708     ASSERT_EQ(0x000002b1u, ImmutableString("textureProj(00N20B00B").mangledNameHash());
709     ASSERT_EQ(0x000002b2u, ImmutableString("textureProj(00N30B00B").mangledNameHash());
710     ASSERT_EQ(0x000002b3u, ImmutableString("textureOffset(00I10B10D").mangledNameHash());
711     ASSERT_EQ(0x000002b4u, ImmutableString("textureOffset(00R10B10D").mangledNameHash());
712     ASSERT_EQ(0x000002b5u, ImmutableString("textureOffset(00X10B10D").mangledNameHash());
713     ASSERT_EQ(0x000002b6u, ImmutableString("textureOffset(00J20B20D").mangledNameHash());
714     ASSERT_EQ(0x000002b7u, ImmutableString("textureOffset(00S20B20D").mangledNameHash());
715     ASSERT_EQ(0x000002b8u, ImmutableString("textureOffset(00Y20B20D").mangledNameHash());
716     ASSERT_EQ(0x000002b9u, ImmutableString("textureOffset(00d20B10D").mangledNameHash());
717     ASSERT_EQ(0x000002bau, ImmutableString("textureOffset(00L20B10D").mangledNameHash());
718     ASSERT_EQ(0x000002bbu, ImmutableString("textureOffset(00U20B10D").mangledNameHash());
719     ASSERT_EQ(0x000002bcu, ImmutableString("textureOffset(00a20B10D").mangledNameHash());
720     ASSERT_EQ(0x000002bdu, ImmutableString("textureProjOffset(00I20B10D").mangledNameHash());
721     ASSERT_EQ(0x000002beu, ImmutableString("textureProjOffset(00R20B10D").mangledNameHash());
722     ASSERT_EQ(0x000002bfu, ImmutableString("textureProjOffset(00X20B10D").mangledNameHash());
723     ASSERT_EQ(0x000002c0u, ImmutableString("textureProjOffset(00I30B10D").mangledNameHash());
724     ASSERT_EQ(0x000002c1u, ImmutableString("textureProjOffset(00R30B10D").mangledNameHash());
725     ASSERT_EQ(0x000002c2u, ImmutableString("textureProjOffset(00X30B10D").mangledNameHash());
726     ASSERT_EQ(0x000002c3u, ImmutableString("textureProjOffset(00J30B20D").mangledNameHash());
727     ASSERT_EQ(0x000002c4u, ImmutableString("textureProjOffset(00S30B20D").mangledNameHash());
728     ASSERT_EQ(0x000002c5u, ImmutableString("textureProjOffset(00Y30B20D").mangledNameHash());
729     ASSERT_EQ(0x000002c6u, ImmutableString("textureProjOffset(00d30B10D").mangledNameHash());
730     ASSERT_EQ(0x000002c7u, ImmutableString("textureLodOffset(00I10B00B10D").mangledNameHash());
731     ASSERT_EQ(0x000002c8u, ImmutableString("textureLodOffset(00R10B00B10D").mangledNameHash());
732     ASSERT_EQ(0x000002c9u, ImmutableString("textureLodOffset(00X10B00B10D").mangledNameHash());
733     ASSERT_EQ(0x000002cau, ImmutableString("textureLodOffset(00J20B00B20D").mangledNameHash());
734     ASSERT_EQ(0x000002cbu, ImmutableString("textureLodOffset(00S20B00B20D").mangledNameHash());
735     ASSERT_EQ(0x000002ccu, ImmutableString("textureLodOffset(00Y20B00B20D").mangledNameHash());
736     ASSERT_EQ(0x000002cdu, ImmutableString("textureLodOffset(00d20B00B10D").mangledNameHash());
737     ASSERT_EQ(0x000002ceu, ImmutableString("textureLodOffset(00L20B00B10D").mangledNameHash());
738     ASSERT_EQ(0x000002cfu, ImmutableString("textureLodOffset(00U20B00B10D").mangledNameHash());
739     ASSERT_EQ(0x000002d0u, ImmutableString("textureLodOffset(00a20B00B10D").mangledNameHash());
740     ASSERT_EQ(0x000002d1u, ImmutableString("textureProjLodOffset(00I20B00B10D").mangledNameHash());
741     ASSERT_EQ(0x000002d2u, ImmutableString("textureProjLodOffset(00R20B00B10D").mangledNameHash());
742     ASSERT_EQ(0x000002d3u, ImmutableString("textureProjLodOffset(00X20B00B10D").mangledNameHash());
743     ASSERT_EQ(0x000002d4u, ImmutableString("textureProjLodOffset(00I30B00B10D").mangledNameHash());
744     ASSERT_EQ(0x000002d5u, ImmutableString("textureProjLodOffset(00R30B00B10D").mangledNameHash());
745     ASSERT_EQ(0x000002d6u, ImmutableString("textureProjLodOffset(00X30B00B10D").mangledNameHash());
746     ASSERT_EQ(0x000002d7u, ImmutableString("textureProjLodOffset(00J30B00B20D").mangledNameHash());
747     ASSERT_EQ(0x000002d8u, ImmutableString("textureProjLodOffset(00S30B00B20D").mangledNameHash());
748     ASSERT_EQ(0x000002d9u, ImmutableString("textureProjLodOffset(00Y30B00B20D").mangledNameHash());
749     ASSERT_EQ(0x000002dau, ImmutableString("textureProjLodOffset(00d30B00B10D").mangledNameHash());
750     ASSERT_EQ(0x000002dbu, ImmutableString("texelFetchOffset(00I10D00D10D").mangledNameHash());
751     ASSERT_EQ(0x000002dcu, ImmutableString("texelFetchOffset(00R10D00D10D").mangledNameHash());
752     ASSERT_EQ(0x000002ddu, ImmutableString("texelFetchOffset(00X10D00D10D").mangledNameHash());
753     ASSERT_EQ(0x000002deu, ImmutableString("texelFetchOffset(00J20D00D20D").mangledNameHash());
754     ASSERT_EQ(0x000002dfu, ImmutableString("texelFetchOffset(00S20D00D20D").mangledNameHash());
755     ASSERT_EQ(0x000002e0u, ImmutableString("texelFetchOffset(00Y20D00D20D").mangledNameHash());
756     ASSERT_EQ(0x000002e1u, ImmutableString("texelFetchOffset(00L20D00D10D").mangledNameHash());
757     ASSERT_EQ(0x000002e2u, ImmutableString("texelFetchOffset(00U20D00D10D").mangledNameHash());
758     ASSERT_EQ(0x000002e3u, ImmutableString("texelFetchOffset(00a20D00D10D").mangledNameHash());
759     ASSERT_EQ(0x000002e4u, ImmutableString("textureGradOffset(00I10B10B10B10D").mangledNameHash());
760     ASSERT_EQ(0x000002e5u, ImmutableString("textureGradOffset(00R10B10B10B10D").mangledNameHash());
761     ASSERT_EQ(0x000002e6u, ImmutableString("textureGradOffset(00X10B10B10B10D").mangledNameHash());
762     ASSERT_EQ(0x000002e7u, ImmutableString("textureGradOffset(00J20B20B20B20D").mangledNameHash());
763     ASSERT_EQ(0x000002e8u, ImmutableString("textureGradOffset(00S20B20B20B20D").mangledNameHash());
764     ASSERT_EQ(0x000002e9u, ImmutableString("textureGradOffset(00Y20B20B20B20D").mangledNameHash());
765     ASSERT_EQ(0x000002eau, ImmutableString("textureGradOffset(00d20B10B10B10D").mangledNameHash());
766     ASSERT_EQ(0x000002ebu, ImmutableString("textureGradOffset(00L20B10B10B10D").mangledNameHash());
767     ASSERT_EQ(0x000002ecu, ImmutableString("textureGradOffset(00U20B10B10B10D").mangledNameHash());
768     ASSERT_EQ(0x000002edu, ImmutableString("textureGradOffset(00a20B10B10B10D").mangledNameHash());
769     ASSERT_EQ(0x000002eeu, ImmutableString("textureGradOffset(00f30B10B10B10D").mangledNameHash());
770     ASSERT_EQ(0x000002efu,
771               ImmutableString("textureProjGradOffset(00I20B10B10B10D").mangledNameHash());
772     ASSERT_EQ(0x000002f0u,
773               ImmutableString("textureProjGradOffset(00R20B10B10B10D").mangledNameHash());
774     ASSERT_EQ(0x000002f1u,
775               ImmutableString("textureProjGradOffset(00X20B10B10B10D").mangledNameHash());
776     ASSERT_EQ(0x000002f2u,
777               ImmutableString("textureProjGradOffset(00I30B10B10B10D").mangledNameHash());
778     ASSERT_EQ(0x000002f3u,
779               ImmutableString("textureProjGradOffset(00R30B10B10B10D").mangledNameHash());
780     ASSERT_EQ(0x000002f4u,
781               ImmutableString("textureProjGradOffset(00X30B10B10B10D").mangledNameHash());
782     ASSERT_EQ(0x000002f5u,
783               ImmutableString("textureProjGradOffset(00J30B20B20B20D").mangledNameHash());
784     ASSERT_EQ(0x000002f6u,
785               ImmutableString("textureProjGradOffset(00S30B20B20B20D").mangledNameHash());
786     ASSERT_EQ(0x000002f7u,
787               ImmutableString("textureProjGradOffset(00Y30B20B20B20D").mangledNameHash());
788     ASSERT_EQ(0x000002f8u,
789               ImmutableString("textureProjGradOffset(00d30B10B10B10D").mangledNameHash());
790     ASSERT_EQ(0x000002f9u, ImmutableString("textureOffset(00I10B10D00B").mangledNameHash());
791     ASSERT_EQ(0x000002fau, ImmutableString("textureOffset(00R10B10D00B").mangledNameHash());
792     ASSERT_EQ(0x000002fbu, ImmutableString("textureOffset(00X10B10D00B").mangledNameHash());
793     ASSERT_EQ(0x000002fcu, ImmutableString("textureOffset(00J20B20D00B").mangledNameHash());
794     ASSERT_EQ(0x000002fdu, ImmutableString("textureOffset(00S20B20D00B").mangledNameHash());
795     ASSERT_EQ(0x000002feu, ImmutableString("textureOffset(00Y20B20D00B").mangledNameHash());
796     ASSERT_EQ(0x000002ffu, ImmutableString("textureOffset(00d20B10D00B").mangledNameHash());
797     ASSERT_EQ(0x00000300u, ImmutableString("textureOffset(00L20B10D00B").mangledNameHash());
798     ASSERT_EQ(0x00000301u, ImmutableString("textureOffset(00U20B10D00B").mangledNameHash());
799     ASSERT_EQ(0x00000302u, ImmutableString("textureOffset(00a20B10D00B").mangledNameHash());
800     ASSERT_EQ(0x00000303u, ImmutableString("textureProjOffset(00I20B10D00B").mangledNameHash());
801     ASSERT_EQ(0x00000304u, ImmutableString("textureProjOffset(00R20B10D00B").mangledNameHash());
802     ASSERT_EQ(0x00000305u, ImmutableString("textureProjOffset(00X20B10D00B").mangledNameHash());
803     ASSERT_EQ(0x00000306u, ImmutableString("textureProjOffset(00I30B10D00B").mangledNameHash());
804     ASSERT_EQ(0x00000307u, ImmutableString("textureProjOffset(00R30B10D00B").mangledNameHash());
805     ASSERT_EQ(0x00000308u, ImmutableString("textureProjOffset(00X30B10D00B").mangledNameHash());
806     ASSERT_EQ(0x00000309u, ImmutableString("textureProjOffset(00J30B20D00B").mangledNameHash());
807     ASSERT_EQ(0x0000030au, ImmutableString("textureProjOffset(00S30B20D00B").mangledNameHash());
808     ASSERT_EQ(0x0000030bu, ImmutableString("textureProjOffset(00Y30B20D00B").mangledNameHash());
809     ASSERT_EQ(0x0000030cu, ImmutableString("textureProjOffset(00d30B10D00B").mangledNameHash());
810     ASSERT_EQ(0x0000030du, ImmutableString("textureGather(00I10B").mangledNameHash());
811     ASSERT_EQ(0x0000030eu, ImmutableString("textureGather(00R10B").mangledNameHash());
812     ASSERT_EQ(0x0000030fu, ImmutableString("textureGather(00X10B").mangledNameHash());
813     ASSERT_EQ(0x00000310u, ImmutableString("textureGather(00I10B00D").mangledNameHash());
814     ASSERT_EQ(0x00000311u, ImmutableString("textureGather(00R10B00D").mangledNameHash());
815     ASSERT_EQ(0x00000312u, ImmutableString("textureGather(00X10B00D").mangledNameHash());
816     ASSERT_EQ(0x00000313u, ImmutableString("textureGather(00L20B").mangledNameHash());
817     ASSERT_EQ(0x00000314u, ImmutableString("textureGather(00U20B").mangledNameHash());
818     ASSERT_EQ(0x00000315u, ImmutableString("textureGather(00a20B").mangledNameHash());
819     ASSERT_EQ(0x00000316u, ImmutableString("textureGather(00L20B00D").mangledNameHash());
820     ASSERT_EQ(0x00000317u, ImmutableString("textureGather(00U20B00D").mangledNameHash());
821     ASSERT_EQ(0x00000318u, ImmutableString("textureGather(00a20B00D").mangledNameHash());
822     ASSERT_EQ(0x00000319u, ImmutableString("textureGather(00K20B").mangledNameHash());
823     ASSERT_EQ(0x0000031au, ImmutableString("textureGather(00T20B").mangledNameHash());
824     ASSERT_EQ(0x0000031bu, ImmutableString("textureGather(00Z20B").mangledNameHash());
825     ASSERT_EQ(0x0000031cu, ImmutableString("textureGather(00K20B00D").mangledNameHash());
826     ASSERT_EQ(0x0000031du, ImmutableString("textureGather(00T20B00D").mangledNameHash());
827     ASSERT_EQ(0x0000031eu, ImmutableString("textureGather(00Z20B00D").mangledNameHash());
828     ASSERT_EQ(0x0000031fu, ImmutableString("textureGather(00k30B").mangledNameHash());
829     ASSERT_EQ(0x00000320u, ImmutableString("textureGather(00s30B").mangledNameHash());
830     ASSERT_EQ(0x00000321u, ImmutableString("textureGather(00x30B").mangledNameHash());
831     ASSERT_EQ(0x00000322u, ImmutableString("textureGather(00k30B00D").mangledNameHash());
832     ASSERT_EQ(0x00000323u, ImmutableString("textureGather(00s30B00D").mangledNameHash());
833     ASSERT_EQ(0x00000324u, ImmutableString("textureGather(00x30B00D").mangledNameHash());
834     ASSERT_EQ(0x00000325u, ImmutableString("textureGather(00l30B00B").mangledNameHash());
835     ASSERT_EQ(0x00000326u, ImmutableString("textureGather(00d10B").mangledNameHash());
836     ASSERT_EQ(0x00000327u, ImmutableString("textureGather(00d10B00B").mangledNameHash());
837     ASSERT_EQ(0x00000328u, ImmutableString("textureGather(00f20B").mangledNameHash());
838     ASSERT_EQ(0x00000329u, ImmutableString("textureGather(00f20B00B").mangledNameHash());
839     ASSERT_EQ(0x0000032au, ImmutableString("textureGather(00e20B").mangledNameHash());
840     ASSERT_EQ(0x0000032bu, ImmutableString("textureGather(00e20B00B").mangledNameHash());
841     ASSERT_EQ(0x0000032cu, ImmutableString("textureGatherOffset(00I10B10D").mangledNameHash());
842     ASSERT_EQ(0x0000032du, ImmutableString("textureGatherOffset(00R10B10D").mangledNameHash());
843     ASSERT_EQ(0x0000032eu, ImmutableString("textureGatherOffset(00X10B10D").mangledNameHash());
844     ASSERT_EQ(0x0000032fu, ImmutableString("textureGatherOffset(00L20B10D").mangledNameHash());
845     ASSERT_EQ(0x00000330u, ImmutableString("textureGatherOffset(00U20B10D").mangledNameHash());
846     ASSERT_EQ(0x00000331u, ImmutableString("textureGatherOffset(00a20B10D").mangledNameHash());
847     ASSERT_EQ(0x00000332u, ImmutableString("textureGatherOffset(00d10B00B10D").mangledNameHash());
848     ASSERT_EQ(0x00000333u, ImmutableString("textureGatherOffset(00f20B00B10D").mangledNameHash());
849     ASSERT_EQ(0x00000334u, ImmutableString("textureGatherOffset(00I10B10D00D").mangledNameHash());
850     ASSERT_EQ(0x00000335u, ImmutableString("textureGatherOffset(00R10B10D00D").mangledNameHash());
851     ASSERT_EQ(0x00000336u, ImmutableString("textureGatherOffset(00X10B10D00D").mangledNameHash());
852     ASSERT_EQ(0x00000337u, ImmutableString("textureGatherOffset(00L20B10D00D").mangledNameHash());
853     ASSERT_EQ(0x00000338u, ImmutableString("textureGatherOffset(00U20B10D00D").mangledNameHash());
854     ASSERT_EQ(0x00000339u, ImmutableString("textureGatherOffset(00a20B10D00D").mangledNameHash());
855     ASSERT_EQ(0x0000033au, ImmutableString("textureGatherOffsets(00I10B10Dx4").mangledNameHash());
856     ASSERT_EQ(0x0000033bu, ImmutableString("textureGatherOffsets(00R10B10Dx4").mangledNameHash());
857     ASSERT_EQ(0x0000033cu, ImmutableString("textureGatherOffsets(00X10B10Dx4").mangledNameHash());
858     ASSERT_EQ(0x0000033du, ImmutableString("textureGatherOffsets(00L20B10Dx4").mangledNameHash());
859     ASSERT_EQ(0x0000033eu, ImmutableString("textureGatherOffsets(00U20B10Dx4").mangledNameHash());
860     ASSERT_EQ(0x0000033fu, ImmutableString("textureGatherOffsets(00a20B10Dx4").mangledNameHash());
861     ASSERT_EQ(0x00000340u,
862               ImmutableString("textureGatherOffsets(00d10B00B10Dx4").mangledNameHash());
863     ASSERT_EQ(0x00000341u,
864               ImmutableString("textureGatherOffsets(00f20B00B10Dx4").mangledNameHash());
865     ASSERT_EQ(0x00000342u,
866               ImmutableString("textureGatherOffsets(00I10B10Dx400D").mangledNameHash());
867     ASSERT_EQ(0x00000343u,
868               ImmutableString("textureGatherOffsets(00R10B10Dx400D").mangledNameHash());
869     ASSERT_EQ(0x00000344u,
870               ImmutableString("textureGatherOffsets(00X10B10Dx400D").mangledNameHash());
871     ASSERT_EQ(0x00000345u,
872               ImmutableString("textureGatherOffsets(00L20B10Dx400D").mangledNameHash());
873     ASSERT_EQ(0x00000346u,
874               ImmutableString("textureGatherOffsets(00U20B10Dx400D").mangledNameHash());
875     ASSERT_EQ(0x00000347u,
876               ImmutableString("textureGatherOffsets(00a20B10Dx400D").mangledNameHash());
877     ASSERT_EQ(0x00000348u, ImmutableString("rgb_2_yuv(20B00H").mangledNameHash());
878     ASSERT_EQ(0x00000349u, ImmutableString("yuv_2_rgb(20B00H").mangledNameHash());
879     ASSERT_EQ(0x0000034au, ImmutableString("dFdx(00B").mangledNameHash());
880     ASSERT_EQ(0x0000034bu, ImmutableString("dFdx(10B").mangledNameHash());
881     ASSERT_EQ(0x0000034cu, ImmutableString("dFdx(20B").mangledNameHash());
882     ASSERT_EQ(0x0000034du, ImmutableString("dFdx(30B").mangledNameHash());
883     ASSERT_EQ(0x0000034eu, ImmutableString("dFdy(00B").mangledNameHash());
884     ASSERT_EQ(0x0000034fu, ImmutableString("dFdy(10B").mangledNameHash());
885     ASSERT_EQ(0x00000350u, ImmutableString("dFdy(20B").mangledNameHash());
886     ASSERT_EQ(0x00000351u, ImmutableString("dFdy(30B").mangledNameHash());
887     ASSERT_EQ(0x00000352u, ImmutableString("fwidth(00B").mangledNameHash());
888     ASSERT_EQ(0x00000353u, ImmutableString("fwidth(10B").mangledNameHash());
889     ASSERT_EQ(0x00000354u, ImmutableString("fwidth(20B").mangledNameHash());
890     ASSERT_EQ(0x00000355u, ImmutableString("fwidth(30B").mangledNameHash());
891     ASSERT_EQ(0x00000356u, ImmutableString("interpolateAtCentroid(00B").mangledNameHash());
892     ASSERT_EQ(0x00000357u, ImmutableString("interpolateAtCentroid(10B").mangledNameHash());
893     ASSERT_EQ(0x00000358u, ImmutableString("interpolateAtCentroid(20B").mangledNameHash());
894     ASSERT_EQ(0x00000359u, ImmutableString("interpolateAtCentroid(30B").mangledNameHash());
895     ASSERT_EQ(0x0000035au, ImmutableString("interpolateAtSample(00B00D").mangledNameHash());
896     ASSERT_EQ(0x0000035bu, ImmutableString("interpolateAtSample(10B00D").mangledNameHash());
897     ASSERT_EQ(0x0000035cu, ImmutableString("interpolateAtSample(20B00D").mangledNameHash());
898     ASSERT_EQ(0x0000035du, ImmutableString("interpolateAtSample(30B00D").mangledNameHash());
899     ASSERT_EQ(0x0000035eu, ImmutableString("interpolateAtOffset(00B10B").mangledNameHash());
900     ASSERT_EQ(0x0000035fu, ImmutableString("interpolateAtOffset(10B10B").mangledNameHash());
901     ASSERT_EQ(0x00000360u, ImmutableString("interpolateAtOffset(20B10B").mangledNameHash());
902     ASSERT_EQ(0x00000361u, ImmutableString("interpolateAtOffset(30B10B").mangledNameHash());
903     ASSERT_EQ(0x00000362u, ImmutableString("atomicCounter(00G").mangledNameHash());
904     ASSERT_EQ(0x00000363u, ImmutableString("atomicCounterIncrement(00G").mangledNameHash());
905     ASSERT_EQ(0x00000364u, ImmutableString("atomicCounterDecrement(00G").mangledNameHash());
906     ASSERT_EQ(0x00000365u, ImmutableString("atomicAdd(00E00E").mangledNameHash());
907     ASSERT_EQ(0x00000366u, ImmutableString("atomicAdd(00D00D").mangledNameHash());
908     ASSERT_EQ(0x00000367u, ImmutableString("atomicMin(00E00E").mangledNameHash());
909     ASSERT_EQ(0x00000368u, ImmutableString("atomicMin(00D00D").mangledNameHash());
910     ASSERT_EQ(0x00000369u, ImmutableString("atomicMax(00E00E").mangledNameHash());
911     ASSERT_EQ(0x0000036au, ImmutableString("atomicMax(00D00D").mangledNameHash());
912     ASSERT_EQ(0x0000036bu, ImmutableString("atomicAnd(00E00E").mangledNameHash());
913     ASSERT_EQ(0x0000036cu, ImmutableString("atomicAnd(00D00D").mangledNameHash());
914     ASSERT_EQ(0x0000036du, ImmutableString("atomicOr(00E00E").mangledNameHash());
915     ASSERT_EQ(0x0000036eu, ImmutableString("atomicOr(00D00D").mangledNameHash());
916     ASSERT_EQ(0x0000036fu, ImmutableString("atomicXor(00E00E").mangledNameHash());
917     ASSERT_EQ(0x00000370u, ImmutableString("atomicXor(00D00D").mangledNameHash());
918     ASSERT_EQ(0x00000371u, ImmutableString("atomicExchange(00E00E").mangledNameHash());
919     ASSERT_EQ(0x00000372u, ImmutableString("atomicExchange(00D00D").mangledNameHash());
920     ASSERT_EQ(0x00000373u, ImmutableString("atomicCompSwap(00E00E00E").mangledNameHash());
921     ASSERT_EQ(0x00000374u, ImmutableString("atomicCompSwap(00D00D00D").mangledNameHash());
922     ASSERT_EQ(0x00000375u, ImmutableString("imageSize(00z").mangledNameHash());
923     ASSERT_EQ(0x00000376u, ImmutableString("imageSize(01K").mangledNameHash());
924     ASSERT_EQ(0x00000377u, ImmutableString("imageSize(01V").mangledNameHash());
925     ASSERT_EQ(0x00000378u, ImmutableString("imageSize(01A").mangledNameHash());
926     ASSERT_EQ(0x00000379u, ImmutableString("imageSize(01L").mangledNameHash());
927     ASSERT_EQ(0x0000037au, ImmutableString("imageSize(01W").mangledNameHash());
928     ASSERT_EQ(0x0000037bu, ImmutableString("imageSize(01B").mangledNameHash());
929     ASSERT_EQ(0x0000037cu, ImmutableString("imageSize(01M").mangledNameHash());
930     ASSERT_EQ(0x0000037du, ImmutableString("imageSize(01X").mangledNameHash());
931     ASSERT_EQ(0x0000037eu, ImmutableString("imageSize(01C").mangledNameHash());
932     ASSERT_EQ(0x0000037fu, ImmutableString("imageSize(01N").mangledNameHash());
933     ASSERT_EQ(0x00000380u, ImmutableString("imageSize(01Y").mangledNameHash());
934     ASSERT_EQ(0x00000381u, ImmutableString("imageSize(01H").mangledNameHash());
935     ASSERT_EQ(0x00000382u, ImmutableString("imageSize(01S").mangledNameHash());
936     ASSERT_EQ(0x00000383u, ImmutableString("imageSize(01d").mangledNameHash());
937     ASSERT_EQ(0x00000384u, ImmutableString("imageSize(01J").mangledNameHash());
938     ASSERT_EQ(0x00000385u, ImmutableString("imageSize(01U").mangledNameHash());
939     ASSERT_EQ(0x00000386u, ImmutableString("imageSize(01f").mangledNameHash());
940     ASSERT_EQ(0x00000387u, ImmutableString("imageStore(00z10D30B").mangledNameHash());
941     ASSERT_EQ(0x00000388u, ImmutableString("imageStore(01K10D30D").mangledNameHash());
942     ASSERT_EQ(0x00000389u, ImmutableString("imageStore(01V10D30E").mangledNameHash());
943     ASSERT_EQ(0x0000038au, ImmutableString("imageStore(01A20D30B").mangledNameHash());
944     ASSERT_EQ(0x0000038bu, ImmutableString("imageStore(01L20D30D").mangledNameHash());
945     ASSERT_EQ(0x0000038cu, ImmutableString("imageStore(01W20D30E").mangledNameHash());
946     ASSERT_EQ(0x0000038du, ImmutableString("imageStore(01B20D30B").mangledNameHash());
947     ASSERT_EQ(0x0000038eu, ImmutableString("imageStore(01M20D30D").mangledNameHash());
948     ASSERT_EQ(0x0000038fu, ImmutableString("imageStore(01X20D30E").mangledNameHash());
949     ASSERT_EQ(0x00000390u, ImmutableString("imageStore(01C20D30B").mangledNameHash());
950     ASSERT_EQ(0x00000391u, ImmutableString("imageStore(01N20D30D").mangledNameHash());
951     ASSERT_EQ(0x00000392u, ImmutableString("imageStore(01Y20D30E").mangledNameHash());
952     ASSERT_EQ(0x00000393u, ImmutableString("imageStore(01H20D30B").mangledNameHash());
953     ASSERT_EQ(0x00000394u, ImmutableString("imageStore(01S20D30D").mangledNameHash());
954     ASSERT_EQ(0x00000395u, ImmutableString("imageStore(01d20D30E").mangledNameHash());
955     ASSERT_EQ(0x00000396u, ImmutableString("imageStore(01J00D30B").mangledNameHash());
956     ASSERT_EQ(0x00000397u, ImmutableString("imageStore(01U00D30D").mangledNameHash());
957     ASSERT_EQ(0x00000398u, ImmutableString("imageStore(01f00D30E").mangledNameHash());
958     ASSERT_EQ(0x00000399u, ImmutableString("imageLoad(00z10D").mangledNameHash());
959     ASSERT_EQ(0x0000039au, ImmutableString("imageLoad(01K10D").mangledNameHash());
960     ASSERT_EQ(0x0000039bu, ImmutableString("imageLoad(01V10D").mangledNameHash());
961     ASSERT_EQ(0x0000039cu, ImmutableString("imageLoad(01A20D").mangledNameHash());
962     ASSERT_EQ(0x0000039du, ImmutableString("imageLoad(01L20D").mangledNameHash());
963     ASSERT_EQ(0x0000039eu, ImmutableString("imageLoad(01W20D").mangledNameHash());
964     ASSERT_EQ(0x0000039fu, ImmutableString("imageLoad(01B20D").mangledNameHash());
965     ASSERT_EQ(0x000003a0u, ImmutableString("imageLoad(01M20D").mangledNameHash());
966     ASSERT_EQ(0x000003a1u, ImmutableString("imageLoad(01X20D").mangledNameHash());
967     ASSERT_EQ(0x000003a2u, ImmutableString("imageLoad(01C20D").mangledNameHash());
968     ASSERT_EQ(0x000003a3u, ImmutableString("imageLoad(01N20D").mangledNameHash());
969     ASSERT_EQ(0x000003a4u, ImmutableString("imageLoad(01Y20D").mangledNameHash());
970     ASSERT_EQ(0x000003a5u, ImmutableString("imageLoad(01H20D").mangledNameHash());
971     ASSERT_EQ(0x000003a6u, ImmutableString("imageLoad(01S20D").mangledNameHash());
972     ASSERT_EQ(0x000003a7u, ImmutableString("imageLoad(01d20D").mangledNameHash());
973     ASSERT_EQ(0x000003a8u, ImmutableString("imageLoad(01J00D").mangledNameHash());
974     ASSERT_EQ(0x000003a9u, ImmutableString("imageLoad(01U00D").mangledNameHash());
975     ASSERT_EQ(0x000003aau, ImmutableString("imageLoad(01f00D").mangledNameHash());
976     ASSERT_EQ(0x000003abu, ImmutableString("imageAtomicAdd(00z10D00E").mangledNameHash());
977     ASSERT_EQ(0x000003acu, ImmutableString("imageAtomicAdd(01K10D00E").mangledNameHash());
978     ASSERT_EQ(0x000003adu, ImmutableString("imageAtomicAdd(01V10D00E").mangledNameHash());
979     ASSERT_EQ(0x000003aeu, ImmutableString("imageAtomicAdd(01A20D00E").mangledNameHash());
980     ASSERT_EQ(0x000003afu, ImmutableString("imageAtomicAdd(01L20D00E").mangledNameHash());
981     ASSERT_EQ(0x000003b0u, ImmutableString("imageAtomicAdd(01W20D00E").mangledNameHash());
982     ASSERT_EQ(0x000003b1u, ImmutableString("imageAtomicAdd(01C20D00E").mangledNameHash());
983     ASSERT_EQ(0x000003b2u, ImmutableString("imageAtomicAdd(01N20D00E").mangledNameHash());
984     ASSERT_EQ(0x000003b3u, ImmutableString("imageAtomicAdd(01Y20D00E").mangledNameHash());
985     ASSERT_EQ(0x000003b4u, ImmutableString("imageAtomicAdd(01J00D00E").mangledNameHash());
986     ASSERT_EQ(0x000003b5u, ImmutableString("imageAtomicAdd(01U00D00E").mangledNameHash());
987     ASSERT_EQ(0x000003b6u, ImmutableString("imageAtomicAdd(01f00D00E").mangledNameHash());
988     ASSERT_EQ(0x000003b7u, ImmutableString("imageAtomicAdd(01B20D00E").mangledNameHash());
989     ASSERT_EQ(0x000003b8u, ImmutableString("imageAtomicAdd(01M20D00E").mangledNameHash());
990     ASSERT_EQ(0x000003b9u, ImmutableString("imageAtomicAdd(01X20D00E").mangledNameHash());
991     ASSERT_EQ(0x000003bau, ImmutableString("imageAtomicAdd(01H20D00E").mangledNameHash());
992     ASSERT_EQ(0x000003bbu, ImmutableString("imageAtomicAdd(01S20D00E").mangledNameHash());
993     ASSERT_EQ(0x000003bcu, ImmutableString("imageAtomicAdd(01d20D00E").mangledNameHash());
994     ASSERT_EQ(0x000003bdu, ImmutableString("imageAtomicAdd(01D00D00E").mangledNameHash());
995     ASSERT_EQ(0x000003beu, ImmutableString("imageAtomicAdd(01O00D00E").mangledNameHash());
996     ASSERT_EQ(0x000003bfu, ImmutableString("imageAtomicAdd(01Z00D00E").mangledNameHash());
997     ASSERT_EQ(0x000003c0u, ImmutableString("imageAtomicAdd(01E10D00E").mangledNameHash());
998     ASSERT_EQ(0x000003c1u, ImmutableString("imageAtomicAdd(01P10D00E").mangledNameHash());
999     ASSERT_EQ(0x000003c2u, ImmutableString("imageAtomicAdd(01a10D00E").mangledNameHash());
1000     ASSERT_EQ(0x000003c3u, ImmutableString("imageAtomicAdd(01I10D00E").mangledNameHash());
1001     ASSERT_EQ(0x000003c4u, ImmutableString("imageAtomicAdd(01T10D00E").mangledNameHash());
1002     ASSERT_EQ(0x000003c5u, ImmutableString("imageAtomicAdd(01e10D00E").mangledNameHash());
1003     ASSERT_EQ(0x000003c6u, ImmutableString("imageAtomicAdd(01F10D00D00E").mangledNameHash());
1004     ASSERT_EQ(0x000003c7u, ImmutableString("imageAtomicAdd(01Q10D00D00E").mangledNameHash());
1005     ASSERT_EQ(0x000003c8u, ImmutableString("imageAtomicAdd(01b10D00D00E").mangledNameHash());
1006     ASSERT_EQ(0x000003c9u, ImmutableString("imageAtomicAdd(01G20D00D00E").mangledNameHash());
1007     ASSERT_EQ(0x000003cau, ImmutableString("imageAtomicAdd(01R20D00D00E").mangledNameHash());
1008     ASSERT_EQ(0x000003cbu, ImmutableString("imageAtomicAdd(01c20D00D00E").mangledNameHash());
1009     ASSERT_EQ(0x000003ccu, ImmutableString("imageAtomicAdd(00z10D00D").mangledNameHash());
1010     ASSERT_EQ(0x000003cdu, ImmutableString("imageAtomicAdd(01K10D00D").mangledNameHash());
1011     ASSERT_EQ(0x000003ceu, ImmutableString("imageAtomicAdd(01V10D00D").mangledNameHash());
1012     ASSERT_EQ(0x000003cfu, ImmutableString("imageAtomicAdd(01A20D00D").mangledNameHash());
1013     ASSERT_EQ(0x000003d0u, ImmutableString("imageAtomicAdd(01L20D00D").mangledNameHash());
1014     ASSERT_EQ(0x000003d1u, ImmutableString("imageAtomicAdd(01W20D00D").mangledNameHash());
1015     ASSERT_EQ(0x000003d2u, ImmutableString("imageAtomicAdd(01C20D00D").mangledNameHash());
1016     ASSERT_EQ(0x000003d3u, ImmutableString("imageAtomicAdd(01N20D00D").mangledNameHash());
1017     ASSERT_EQ(0x000003d4u, ImmutableString("imageAtomicAdd(01Y20D00D").mangledNameHash());
1018     ASSERT_EQ(0x000003d5u, ImmutableString("imageAtomicAdd(01J00D00D").mangledNameHash());
1019     ASSERT_EQ(0x000003d6u, ImmutableString("imageAtomicAdd(01U00D00D").mangledNameHash());
1020     ASSERT_EQ(0x000003d7u, ImmutableString("imageAtomicAdd(01f00D00D").mangledNameHash());
1021     ASSERT_EQ(0x000003d8u, ImmutableString("imageAtomicAdd(01B20D00D").mangledNameHash());
1022     ASSERT_EQ(0x000003d9u, ImmutableString("imageAtomicAdd(01M20D00D").mangledNameHash());
1023     ASSERT_EQ(0x000003dau, ImmutableString("imageAtomicAdd(01X20D00D").mangledNameHash());
1024     ASSERT_EQ(0x000003dbu, ImmutableString("imageAtomicAdd(01H20D00D").mangledNameHash());
1025     ASSERT_EQ(0x000003dcu, ImmutableString("imageAtomicAdd(01S20D00D").mangledNameHash());
1026     ASSERT_EQ(0x000003ddu, ImmutableString("imageAtomicAdd(01d20D00D").mangledNameHash());
1027     ASSERT_EQ(0x000003deu, ImmutableString("imageAtomicAdd(01D00D00D").mangledNameHash());
1028     ASSERT_EQ(0x000003dfu, ImmutableString("imageAtomicAdd(01O00D00D").mangledNameHash());
1029     ASSERT_EQ(0x000003e0u, ImmutableString("imageAtomicAdd(01Z00D00D").mangledNameHash());
1030     ASSERT_EQ(0x000003e1u, ImmutableString("imageAtomicAdd(01E10D00D").mangledNameHash());
1031     ASSERT_EQ(0x000003e2u, ImmutableString("imageAtomicAdd(01P10D00D").mangledNameHash());
1032     ASSERT_EQ(0x000003e3u, ImmutableString("imageAtomicAdd(01a10D00D").mangledNameHash());
1033     ASSERT_EQ(0x000003e4u, ImmutableString("imageAtomicAdd(01I10D00D").mangledNameHash());
1034     ASSERT_EQ(0x000003e5u, ImmutableString("imageAtomicAdd(01T10D00D").mangledNameHash());
1035     ASSERT_EQ(0x000003e6u, ImmutableString("imageAtomicAdd(01e10D00D").mangledNameHash());
1036     ASSERT_EQ(0x000003e7u, ImmutableString("imageAtomicAdd(01F10D00D00D").mangledNameHash());
1037     ASSERT_EQ(0x000003e8u, ImmutableString("imageAtomicAdd(01Q10D00D00D").mangledNameHash());
1038     ASSERT_EQ(0x000003e9u, ImmutableString("imageAtomicAdd(01b10D00D00D").mangledNameHash());
1039     ASSERT_EQ(0x000003eau, ImmutableString("imageAtomicAdd(01G20D00D00D").mangledNameHash());
1040     ASSERT_EQ(0x000003ebu, ImmutableString("imageAtomicAdd(01R20D00D00D").mangledNameHash());
1041     ASSERT_EQ(0x000003ecu, ImmutableString("imageAtomicAdd(01c20D00D00D").mangledNameHash());
1042     ASSERT_EQ(0x000003edu, ImmutableString("imageAtomicMin(00z10D00E").mangledNameHash());
1043     ASSERT_EQ(0x000003eeu, ImmutableString("imageAtomicMin(01K10D00E").mangledNameHash());
1044     ASSERT_EQ(0x000003efu, ImmutableString("imageAtomicMin(01V10D00E").mangledNameHash());
1045     ASSERT_EQ(0x000003f0u, ImmutableString("imageAtomicMin(01A20D00E").mangledNameHash());
1046     ASSERT_EQ(0x000003f1u, ImmutableString("imageAtomicMin(01L20D00E").mangledNameHash());
1047     ASSERT_EQ(0x000003f2u, ImmutableString("imageAtomicMin(01W20D00E").mangledNameHash());
1048     ASSERT_EQ(0x000003f3u, ImmutableString("imageAtomicMin(01C20D00E").mangledNameHash());
1049     ASSERT_EQ(0x000003f4u, ImmutableString("imageAtomicMin(01N20D00E").mangledNameHash());
1050     ASSERT_EQ(0x000003f5u, ImmutableString("imageAtomicMin(01Y20D00E").mangledNameHash());
1051     ASSERT_EQ(0x000003f6u, ImmutableString("imageAtomicMin(01J00D00E").mangledNameHash());
1052     ASSERT_EQ(0x000003f7u, ImmutableString("imageAtomicMin(01U00D00E").mangledNameHash());
1053     ASSERT_EQ(0x000003f8u, ImmutableString("imageAtomicMin(01f00D00E").mangledNameHash());
1054     ASSERT_EQ(0x000003f9u, ImmutableString("imageAtomicMin(01B20D00E").mangledNameHash());
1055     ASSERT_EQ(0x000003fau, ImmutableString("imageAtomicMin(01M20D00E").mangledNameHash());
1056     ASSERT_EQ(0x000003fbu, ImmutableString("imageAtomicMin(01X20D00E").mangledNameHash());
1057     ASSERT_EQ(0x000003fcu, ImmutableString("imageAtomicMin(01H20D00E").mangledNameHash());
1058     ASSERT_EQ(0x000003fdu, ImmutableString("imageAtomicMin(01S20D00E").mangledNameHash());
1059     ASSERT_EQ(0x000003feu, ImmutableString("imageAtomicMin(01d20D00E").mangledNameHash());
1060     ASSERT_EQ(0x000003ffu, ImmutableString("imageAtomicMin(01D00D00E").mangledNameHash());
1061     ASSERT_EQ(0x00000400u, ImmutableString("imageAtomicMin(01O00D00E").mangledNameHash());
1062     ASSERT_EQ(0x00000401u, ImmutableString("imageAtomicMin(01Z00D00E").mangledNameHash());
1063     ASSERT_EQ(0x00000402u, ImmutableString("imageAtomicMin(01E10D00E").mangledNameHash());
1064     ASSERT_EQ(0x00000403u, ImmutableString("imageAtomicMin(01P10D00E").mangledNameHash());
1065     ASSERT_EQ(0x00000404u, ImmutableString("imageAtomicMin(01a10D00E").mangledNameHash());
1066     ASSERT_EQ(0x00000405u, ImmutableString("imageAtomicMin(01I10D00E").mangledNameHash());
1067     ASSERT_EQ(0x00000406u, ImmutableString("imageAtomicMin(01T10D00E").mangledNameHash());
1068     ASSERT_EQ(0x00000407u, ImmutableString("imageAtomicMin(01e10D00E").mangledNameHash());
1069     ASSERT_EQ(0x00000408u, ImmutableString("imageAtomicMin(01F10D00D00E").mangledNameHash());
1070     ASSERT_EQ(0x00000409u, ImmutableString("imageAtomicMin(01Q10D00D00E").mangledNameHash());
1071     ASSERT_EQ(0x0000040au, ImmutableString("imageAtomicMin(01b10D00D00E").mangledNameHash());
1072     ASSERT_EQ(0x0000040bu, ImmutableString("imageAtomicMin(01G20D00D00E").mangledNameHash());
1073     ASSERT_EQ(0x0000040cu, ImmutableString("imageAtomicMin(01R20D00D00E").mangledNameHash());
1074     ASSERT_EQ(0x0000040du, ImmutableString("imageAtomicMin(01c20D00D00E").mangledNameHash());
1075     ASSERT_EQ(0x0000040eu, ImmutableString("imageAtomicMin(00z10D00D").mangledNameHash());
1076     ASSERT_EQ(0x0000040fu, ImmutableString("imageAtomicMin(01K10D00D").mangledNameHash());
1077     ASSERT_EQ(0x00000410u, ImmutableString("imageAtomicMin(01V10D00D").mangledNameHash());
1078     ASSERT_EQ(0x00000411u, ImmutableString("imageAtomicMin(01A20D00D").mangledNameHash());
1079     ASSERT_EQ(0x00000412u, ImmutableString("imageAtomicMin(01L20D00D").mangledNameHash());
1080     ASSERT_EQ(0x00000413u, ImmutableString("imageAtomicMin(01W20D00D").mangledNameHash());
1081     ASSERT_EQ(0x00000414u, ImmutableString("imageAtomicMin(01C20D00D").mangledNameHash());
1082     ASSERT_EQ(0x00000415u, ImmutableString("imageAtomicMin(01N20D00D").mangledNameHash());
1083     ASSERT_EQ(0x00000416u, ImmutableString("imageAtomicMin(01Y20D00D").mangledNameHash());
1084     ASSERT_EQ(0x00000417u, ImmutableString("imageAtomicMin(01J00D00D").mangledNameHash());
1085     ASSERT_EQ(0x00000418u, ImmutableString("imageAtomicMin(01U00D00D").mangledNameHash());
1086     ASSERT_EQ(0x00000419u, ImmutableString("imageAtomicMin(01f00D00D").mangledNameHash());
1087     ASSERT_EQ(0x0000041au, ImmutableString("imageAtomicMin(01B20D00D").mangledNameHash());
1088     ASSERT_EQ(0x0000041bu, ImmutableString("imageAtomicMin(01M20D00D").mangledNameHash());
1089     ASSERT_EQ(0x0000041cu, ImmutableString("imageAtomicMin(01X20D00D").mangledNameHash());
1090     ASSERT_EQ(0x0000041du, ImmutableString("imageAtomicMin(01H20D00D").mangledNameHash());
1091     ASSERT_EQ(0x0000041eu, ImmutableString("imageAtomicMin(01S20D00D").mangledNameHash());
1092     ASSERT_EQ(0x0000041fu, ImmutableString("imageAtomicMin(01d20D00D").mangledNameHash());
1093     ASSERT_EQ(0x00000420u, ImmutableString("imageAtomicMin(01D00D00D").mangledNameHash());
1094     ASSERT_EQ(0x00000421u, ImmutableString("imageAtomicMin(01O00D00D").mangledNameHash());
1095     ASSERT_EQ(0x00000422u, ImmutableString("imageAtomicMin(01Z00D00D").mangledNameHash());
1096     ASSERT_EQ(0x00000423u, ImmutableString("imageAtomicMin(01E10D00D").mangledNameHash());
1097     ASSERT_EQ(0x00000424u, ImmutableString("imageAtomicMin(01P10D00D").mangledNameHash());
1098     ASSERT_EQ(0x00000425u, ImmutableString("imageAtomicMin(01a10D00D").mangledNameHash());
1099     ASSERT_EQ(0x00000426u, ImmutableString("imageAtomicMin(01I10D00D").mangledNameHash());
1100     ASSERT_EQ(0x00000427u, ImmutableString("imageAtomicMin(01T10D00D").mangledNameHash());
1101     ASSERT_EQ(0x00000428u, ImmutableString("imageAtomicMin(01e10D00D").mangledNameHash());
1102     ASSERT_EQ(0x00000429u, ImmutableString("imageAtomicMin(01F10D00D00D").mangledNameHash());
1103     ASSERT_EQ(0x0000042au, ImmutableString("imageAtomicMin(01Q10D00D00D").mangledNameHash());
1104     ASSERT_EQ(0x0000042bu, ImmutableString("imageAtomicMin(01b10D00D00D").mangledNameHash());
1105     ASSERT_EQ(0x0000042cu, ImmutableString("imageAtomicMin(01G20D00D00D").mangledNameHash());
1106     ASSERT_EQ(0x0000042du, ImmutableString("imageAtomicMin(01R20D00D00D").mangledNameHash());
1107     ASSERT_EQ(0x0000042eu, ImmutableString("imageAtomicMin(01c20D00D00D").mangledNameHash());
1108     ASSERT_EQ(0x0000042fu, ImmutableString("imageAtomicMax(00z10D00E").mangledNameHash());
1109     ASSERT_EQ(0x00000430u, ImmutableString("imageAtomicMax(01K10D00E").mangledNameHash());
1110     ASSERT_EQ(0x00000431u, ImmutableString("imageAtomicMax(01V10D00E").mangledNameHash());
1111     ASSERT_EQ(0x00000432u, ImmutableString("imageAtomicMax(01A20D00E").mangledNameHash());
1112     ASSERT_EQ(0x00000433u, ImmutableString("imageAtomicMax(01L20D00E").mangledNameHash());
1113     ASSERT_EQ(0x00000434u, ImmutableString("imageAtomicMax(01W20D00E").mangledNameHash());
1114     ASSERT_EQ(0x00000435u, ImmutableString("imageAtomicMax(01C20D00E").mangledNameHash());
1115     ASSERT_EQ(0x00000436u, ImmutableString("imageAtomicMax(01N20D00E").mangledNameHash());
1116     ASSERT_EQ(0x00000437u, ImmutableString("imageAtomicMax(01Y20D00E").mangledNameHash());
1117     ASSERT_EQ(0x00000438u, ImmutableString("imageAtomicMax(01J00D00E").mangledNameHash());
1118     ASSERT_EQ(0x00000439u, ImmutableString("imageAtomicMax(01U00D00E").mangledNameHash());
1119     ASSERT_EQ(0x0000043au, ImmutableString("imageAtomicMax(01f00D00E").mangledNameHash());
1120     ASSERT_EQ(0x0000043bu, ImmutableString("imageAtomicMax(01B20D00E").mangledNameHash());
1121     ASSERT_EQ(0x0000043cu, ImmutableString("imageAtomicMax(01M20D00E").mangledNameHash());
1122     ASSERT_EQ(0x0000043du, ImmutableString("imageAtomicMax(01X20D00E").mangledNameHash());
1123     ASSERT_EQ(0x0000043eu, ImmutableString("imageAtomicMax(01H20D00E").mangledNameHash());
1124     ASSERT_EQ(0x0000043fu, ImmutableString("imageAtomicMax(01S20D00E").mangledNameHash());
1125     ASSERT_EQ(0x00000440u, ImmutableString("imageAtomicMax(01d20D00E").mangledNameHash());
1126     ASSERT_EQ(0x00000441u, ImmutableString("imageAtomicMax(01D00D00E").mangledNameHash());
1127     ASSERT_EQ(0x00000442u, ImmutableString("imageAtomicMax(01O00D00E").mangledNameHash());
1128     ASSERT_EQ(0x00000443u, ImmutableString("imageAtomicMax(01Z00D00E").mangledNameHash());
1129     ASSERT_EQ(0x00000444u, ImmutableString("imageAtomicMax(01E10D00E").mangledNameHash());
1130     ASSERT_EQ(0x00000445u, ImmutableString("imageAtomicMax(01P10D00E").mangledNameHash());
1131     ASSERT_EQ(0x00000446u, ImmutableString("imageAtomicMax(01a10D00E").mangledNameHash());
1132     ASSERT_EQ(0x00000447u, ImmutableString("imageAtomicMax(01I10D00E").mangledNameHash());
1133     ASSERT_EQ(0x00000448u, ImmutableString("imageAtomicMax(01T10D00E").mangledNameHash());
1134     ASSERT_EQ(0x00000449u, ImmutableString("imageAtomicMax(01e10D00E").mangledNameHash());
1135     ASSERT_EQ(0x0000044au, ImmutableString("imageAtomicMax(01F10D00D00E").mangledNameHash());
1136     ASSERT_EQ(0x0000044bu, ImmutableString("imageAtomicMax(01Q10D00D00E").mangledNameHash());
1137     ASSERT_EQ(0x0000044cu, ImmutableString("imageAtomicMax(01b10D00D00E").mangledNameHash());
1138     ASSERT_EQ(0x0000044du, ImmutableString("imageAtomicMax(01G20D00D00E").mangledNameHash());
1139     ASSERT_EQ(0x0000044eu, ImmutableString("imageAtomicMax(01R20D00D00E").mangledNameHash());
1140     ASSERT_EQ(0x0000044fu, ImmutableString("imageAtomicMax(01c20D00D00E").mangledNameHash());
1141     ASSERT_EQ(0x00000450u, ImmutableString("imageAtomicMax(00z10D00D").mangledNameHash());
1142     ASSERT_EQ(0x00000451u, ImmutableString("imageAtomicMax(01K10D00D").mangledNameHash());
1143     ASSERT_EQ(0x00000452u, ImmutableString("imageAtomicMax(01V10D00D").mangledNameHash());
1144     ASSERT_EQ(0x00000453u, ImmutableString("imageAtomicMax(01A20D00D").mangledNameHash());
1145     ASSERT_EQ(0x00000454u, ImmutableString("imageAtomicMax(01L20D00D").mangledNameHash());
1146     ASSERT_EQ(0x00000455u, ImmutableString("imageAtomicMax(01W20D00D").mangledNameHash());
1147     ASSERT_EQ(0x00000456u, ImmutableString("imageAtomicMax(01C20D00D").mangledNameHash());
1148     ASSERT_EQ(0x00000457u, ImmutableString("imageAtomicMax(01N20D00D").mangledNameHash());
1149     ASSERT_EQ(0x00000458u, ImmutableString("imageAtomicMax(01Y20D00D").mangledNameHash());
1150     ASSERT_EQ(0x00000459u, ImmutableString("imageAtomicMax(01J00D00D").mangledNameHash());
1151     ASSERT_EQ(0x0000045au, ImmutableString("imageAtomicMax(01U00D00D").mangledNameHash());
1152     ASSERT_EQ(0x0000045bu, ImmutableString("imageAtomicMax(01f00D00D").mangledNameHash());
1153     ASSERT_EQ(0x0000045cu, ImmutableString("imageAtomicMax(01B20D00D").mangledNameHash());
1154     ASSERT_EQ(0x0000045du, ImmutableString("imageAtomicMax(01M20D00D").mangledNameHash());
1155     ASSERT_EQ(0x0000045eu, ImmutableString("imageAtomicMax(01X20D00D").mangledNameHash());
1156     ASSERT_EQ(0x0000045fu, ImmutableString("imageAtomicMax(01H20D00D").mangledNameHash());
1157     ASSERT_EQ(0x00000460u, ImmutableString("imageAtomicMax(01S20D00D").mangledNameHash());
1158     ASSERT_EQ(0x00000461u, ImmutableString("imageAtomicMax(01d20D00D").mangledNameHash());
1159     ASSERT_EQ(0x00000462u, ImmutableString("imageAtomicMax(01D00D00D").mangledNameHash());
1160     ASSERT_EQ(0x00000463u, ImmutableString("imageAtomicMax(01O00D00D").mangledNameHash());
1161     ASSERT_EQ(0x00000464u, ImmutableString("imageAtomicMax(01Z00D00D").mangledNameHash());
1162     ASSERT_EQ(0x00000465u, ImmutableString("imageAtomicMax(01E10D00D").mangledNameHash());
1163     ASSERT_EQ(0x00000466u, ImmutableString("imageAtomicMax(01P10D00D").mangledNameHash());
1164     ASSERT_EQ(0x00000467u, ImmutableString("imageAtomicMax(01a10D00D").mangledNameHash());
1165     ASSERT_EQ(0x00000468u, ImmutableString("imageAtomicMax(01I10D00D").mangledNameHash());
1166     ASSERT_EQ(0x00000469u, ImmutableString("imageAtomicMax(01T10D00D").mangledNameHash());
1167     ASSERT_EQ(0x0000046au, ImmutableString("imageAtomicMax(01e10D00D").mangledNameHash());
1168     ASSERT_EQ(0x0000046bu, ImmutableString("imageAtomicMax(01F10D00D00D").mangledNameHash());
1169     ASSERT_EQ(0x0000046cu, ImmutableString("imageAtomicMax(01Q10D00D00D").mangledNameHash());
1170     ASSERT_EQ(0x0000046du, ImmutableString("imageAtomicMax(01b10D00D00D").mangledNameHash());
1171     ASSERT_EQ(0x0000046eu, ImmutableString("imageAtomicMax(01G20D00D00D").mangledNameHash());
1172     ASSERT_EQ(0x0000046fu, ImmutableString("imageAtomicMax(01R20D00D00D").mangledNameHash());
1173     ASSERT_EQ(0x00000470u, ImmutableString("imageAtomicMax(01c20D00D00D").mangledNameHash());
1174     ASSERT_EQ(0x00000471u, ImmutableString("imageAtomicAnd(00z10D00E").mangledNameHash());
1175     ASSERT_EQ(0x00000472u, ImmutableString("imageAtomicAnd(01K10D00E").mangledNameHash());
1176     ASSERT_EQ(0x00000473u, ImmutableString("imageAtomicAnd(01V10D00E").mangledNameHash());
1177     ASSERT_EQ(0x00000474u, ImmutableString("imageAtomicAnd(01A20D00E").mangledNameHash());
1178     ASSERT_EQ(0x00000475u, ImmutableString("imageAtomicAnd(01L20D00E").mangledNameHash());
1179     ASSERT_EQ(0x00000476u, ImmutableString("imageAtomicAnd(01W20D00E").mangledNameHash());
1180     ASSERT_EQ(0x00000477u, ImmutableString("imageAtomicAnd(01C20D00E").mangledNameHash());
1181     ASSERT_EQ(0x00000478u, ImmutableString("imageAtomicAnd(01N20D00E").mangledNameHash());
1182     ASSERT_EQ(0x00000479u, ImmutableString("imageAtomicAnd(01Y20D00E").mangledNameHash());
1183     ASSERT_EQ(0x0000047au, ImmutableString("imageAtomicAnd(01J00D00E").mangledNameHash());
1184     ASSERT_EQ(0x0000047bu, ImmutableString("imageAtomicAnd(01U00D00E").mangledNameHash());
1185     ASSERT_EQ(0x0000047cu, ImmutableString("imageAtomicAnd(01f00D00E").mangledNameHash());
1186     ASSERT_EQ(0x0000047du, ImmutableString("imageAtomicAnd(01B20D00E").mangledNameHash());
1187     ASSERT_EQ(0x0000047eu, ImmutableString("imageAtomicAnd(01M20D00E").mangledNameHash());
1188     ASSERT_EQ(0x0000047fu, ImmutableString("imageAtomicAnd(01X20D00E").mangledNameHash());
1189     ASSERT_EQ(0x00000480u, ImmutableString("imageAtomicAnd(01H20D00E").mangledNameHash());
1190     ASSERT_EQ(0x00000481u, ImmutableString("imageAtomicAnd(01S20D00E").mangledNameHash());
1191     ASSERT_EQ(0x00000482u, ImmutableString("imageAtomicAnd(01d20D00E").mangledNameHash());
1192     ASSERT_EQ(0x00000483u, ImmutableString("imageAtomicAnd(01D00D00E").mangledNameHash());
1193     ASSERT_EQ(0x00000484u, ImmutableString("imageAtomicAnd(01O00D00E").mangledNameHash());
1194     ASSERT_EQ(0x00000485u, ImmutableString("imageAtomicAnd(01Z00D00E").mangledNameHash());
1195     ASSERT_EQ(0x00000486u, ImmutableString("imageAtomicAnd(01E10D00E").mangledNameHash());
1196     ASSERT_EQ(0x00000487u, ImmutableString("imageAtomicAnd(01P10D00E").mangledNameHash());
1197     ASSERT_EQ(0x00000488u, ImmutableString("imageAtomicAnd(01a10D00E").mangledNameHash());
1198     ASSERT_EQ(0x00000489u, ImmutableString("imageAtomicAnd(01I10D00E").mangledNameHash());
1199     ASSERT_EQ(0x0000048au, ImmutableString("imageAtomicAnd(01T10D00E").mangledNameHash());
1200     ASSERT_EQ(0x0000048bu, ImmutableString("imageAtomicAnd(01e10D00E").mangledNameHash());
1201     ASSERT_EQ(0x0000048cu, ImmutableString("imageAtomicAnd(01F10D00D00E").mangledNameHash());
1202     ASSERT_EQ(0x0000048du, ImmutableString("imageAtomicAnd(01Q10D00D00E").mangledNameHash());
1203     ASSERT_EQ(0x0000048eu, ImmutableString("imageAtomicAnd(01b10D00D00E").mangledNameHash());
1204     ASSERT_EQ(0x0000048fu, ImmutableString("imageAtomicAnd(01G20D00D00E").mangledNameHash());
1205     ASSERT_EQ(0x00000490u, ImmutableString("imageAtomicAnd(01R20D00D00E").mangledNameHash());
1206     ASSERT_EQ(0x00000491u, ImmutableString("imageAtomicAnd(01c20D00D00E").mangledNameHash());
1207     ASSERT_EQ(0x00000492u, ImmutableString("imageAtomicAnd(00z10D00D").mangledNameHash());
1208     ASSERT_EQ(0x00000493u, ImmutableString("imageAtomicAnd(01K10D00D").mangledNameHash());
1209     ASSERT_EQ(0x00000494u, ImmutableString("imageAtomicAnd(01V10D00D").mangledNameHash());
1210     ASSERT_EQ(0x00000495u, ImmutableString("imageAtomicAnd(01A20D00D").mangledNameHash());
1211     ASSERT_EQ(0x00000496u, ImmutableString("imageAtomicAnd(01L20D00D").mangledNameHash());
1212     ASSERT_EQ(0x00000497u, ImmutableString("imageAtomicAnd(01W20D00D").mangledNameHash());
1213     ASSERT_EQ(0x00000498u, ImmutableString("imageAtomicAnd(01C20D00D").mangledNameHash());
1214     ASSERT_EQ(0x00000499u, ImmutableString("imageAtomicAnd(01N20D00D").mangledNameHash());
1215     ASSERT_EQ(0x0000049au, ImmutableString("imageAtomicAnd(01Y20D00D").mangledNameHash());
1216     ASSERT_EQ(0x0000049bu, ImmutableString("imageAtomicAnd(01J00D00D").mangledNameHash());
1217     ASSERT_EQ(0x0000049cu, ImmutableString("imageAtomicAnd(01U00D00D").mangledNameHash());
1218     ASSERT_EQ(0x0000049du, ImmutableString("imageAtomicAnd(01f00D00D").mangledNameHash());
1219     ASSERT_EQ(0x0000049eu, ImmutableString("imageAtomicAnd(01B20D00D").mangledNameHash());
1220     ASSERT_EQ(0x0000049fu, ImmutableString("imageAtomicAnd(01M20D00D").mangledNameHash());
1221     ASSERT_EQ(0x000004a0u, ImmutableString("imageAtomicAnd(01X20D00D").mangledNameHash());
1222     ASSERT_EQ(0x000004a1u, ImmutableString("imageAtomicAnd(01H20D00D").mangledNameHash());
1223     ASSERT_EQ(0x000004a2u, ImmutableString("imageAtomicAnd(01S20D00D").mangledNameHash());
1224     ASSERT_EQ(0x000004a3u, ImmutableString("imageAtomicAnd(01d20D00D").mangledNameHash());
1225     ASSERT_EQ(0x000004a4u, ImmutableString("imageAtomicAnd(01D00D00D").mangledNameHash());
1226     ASSERT_EQ(0x000004a5u, ImmutableString("imageAtomicAnd(01O00D00D").mangledNameHash());
1227     ASSERT_EQ(0x000004a6u, ImmutableString("imageAtomicAnd(01Z00D00D").mangledNameHash());
1228     ASSERT_EQ(0x000004a7u, ImmutableString("imageAtomicAnd(01E10D00D").mangledNameHash());
1229     ASSERT_EQ(0x000004a8u, ImmutableString("imageAtomicAnd(01P10D00D").mangledNameHash());
1230     ASSERT_EQ(0x000004a9u, ImmutableString("imageAtomicAnd(01a10D00D").mangledNameHash());
1231     ASSERT_EQ(0x000004aau, ImmutableString("imageAtomicAnd(01I10D00D").mangledNameHash());
1232     ASSERT_EQ(0x000004abu, ImmutableString("imageAtomicAnd(01T10D00D").mangledNameHash());
1233     ASSERT_EQ(0x000004acu, ImmutableString("imageAtomicAnd(01e10D00D").mangledNameHash());
1234     ASSERT_EQ(0x000004adu, ImmutableString("imageAtomicAnd(01F10D00D00D").mangledNameHash());
1235     ASSERT_EQ(0x000004aeu, ImmutableString("imageAtomicAnd(01Q10D00D00D").mangledNameHash());
1236     ASSERT_EQ(0x000004afu, ImmutableString("imageAtomicAnd(01b10D00D00D").mangledNameHash());
1237     ASSERT_EQ(0x000004b0u, ImmutableString("imageAtomicAnd(01G20D00D00D").mangledNameHash());
1238     ASSERT_EQ(0x000004b1u, ImmutableString("imageAtomicAnd(01R20D00D00D").mangledNameHash());
1239     ASSERT_EQ(0x000004b2u, ImmutableString("imageAtomicAnd(01c20D00D00D").mangledNameHash());
1240     ASSERT_EQ(0x000004b3u, ImmutableString("imageAtomicOr(00z10D00E").mangledNameHash());
1241     ASSERT_EQ(0x000004b4u, ImmutableString("imageAtomicOr(01K10D00E").mangledNameHash());
1242     ASSERT_EQ(0x000004b5u, ImmutableString("imageAtomicOr(01V10D00E").mangledNameHash());
1243     ASSERT_EQ(0x000004b6u, ImmutableString("imageAtomicOr(01A20D00E").mangledNameHash());
1244     ASSERT_EQ(0x000004b7u, ImmutableString("imageAtomicOr(01L20D00E").mangledNameHash());
1245     ASSERT_EQ(0x000004b8u, ImmutableString("imageAtomicOr(01W20D00E").mangledNameHash());
1246     ASSERT_EQ(0x000004b9u, ImmutableString("imageAtomicOr(01C20D00E").mangledNameHash());
1247     ASSERT_EQ(0x000004bau, ImmutableString("imageAtomicOr(01N20D00E").mangledNameHash());
1248     ASSERT_EQ(0x000004bbu, ImmutableString("imageAtomicOr(01Y20D00E").mangledNameHash());
1249     ASSERT_EQ(0x000004bcu, ImmutableString("imageAtomicOr(01J00D00E").mangledNameHash());
1250     ASSERT_EQ(0x000004bdu, ImmutableString("imageAtomicOr(01U00D00E").mangledNameHash());
1251     ASSERT_EQ(0x000004beu, ImmutableString("imageAtomicOr(01f00D00E").mangledNameHash());
1252     ASSERT_EQ(0x000004bfu, ImmutableString("imageAtomicOr(01B20D00E").mangledNameHash());
1253     ASSERT_EQ(0x000004c0u, ImmutableString("imageAtomicOr(01M20D00E").mangledNameHash());
1254     ASSERT_EQ(0x000004c1u, ImmutableString("imageAtomicOr(01X20D00E").mangledNameHash());
1255     ASSERT_EQ(0x000004c2u, ImmutableString("imageAtomicOr(01H20D00E").mangledNameHash());
1256     ASSERT_EQ(0x000004c3u, ImmutableString("imageAtomicOr(01S20D00E").mangledNameHash());
1257     ASSERT_EQ(0x000004c4u, ImmutableString("imageAtomicOr(01d20D00E").mangledNameHash());
1258     ASSERT_EQ(0x000004c5u, ImmutableString("imageAtomicOr(01D00D00E").mangledNameHash());
1259     ASSERT_EQ(0x000004c6u, ImmutableString("imageAtomicOr(01O00D00E").mangledNameHash());
1260     ASSERT_EQ(0x000004c7u, ImmutableString("imageAtomicOr(01Z00D00E").mangledNameHash());
1261     ASSERT_EQ(0x000004c8u, ImmutableString("imageAtomicOr(01E10D00E").mangledNameHash());
1262     ASSERT_EQ(0x000004c9u, ImmutableString("imageAtomicOr(01P10D00E").mangledNameHash());
1263     ASSERT_EQ(0x000004cau, ImmutableString("imageAtomicOr(01a10D00E").mangledNameHash());
1264     ASSERT_EQ(0x000004cbu, ImmutableString("imageAtomicOr(01I10D00E").mangledNameHash());
1265     ASSERT_EQ(0x000004ccu, ImmutableString("imageAtomicOr(01T10D00E").mangledNameHash());
1266     ASSERT_EQ(0x000004cdu, ImmutableString("imageAtomicOr(01e10D00E").mangledNameHash());
1267     ASSERT_EQ(0x000004ceu, ImmutableString("imageAtomicOr(01F10D00D00E").mangledNameHash());
1268     ASSERT_EQ(0x000004cfu, ImmutableString("imageAtomicOr(01Q10D00D00E").mangledNameHash());
1269     ASSERT_EQ(0x000004d0u, ImmutableString("imageAtomicOr(01b10D00D00E").mangledNameHash());
1270     ASSERT_EQ(0x000004d1u, ImmutableString("imageAtomicOr(01G20D00D00E").mangledNameHash());
1271     ASSERT_EQ(0x000004d2u, ImmutableString("imageAtomicOr(01R20D00D00E").mangledNameHash());
1272     ASSERT_EQ(0x000004d3u, ImmutableString("imageAtomicOr(01c20D00D00E").mangledNameHash());
1273     ASSERT_EQ(0x000004d4u, ImmutableString("imageAtomicOr(00z10D00D").mangledNameHash());
1274     ASSERT_EQ(0x000004d5u, ImmutableString("imageAtomicOr(01K10D00D").mangledNameHash());
1275     ASSERT_EQ(0x000004d6u, ImmutableString("imageAtomicOr(01V10D00D").mangledNameHash());
1276     ASSERT_EQ(0x000004d7u, ImmutableString("imageAtomicOr(01A20D00D").mangledNameHash());
1277     ASSERT_EQ(0x000004d8u, ImmutableString("imageAtomicOr(01L20D00D").mangledNameHash());
1278     ASSERT_EQ(0x000004d9u, ImmutableString("imageAtomicOr(01W20D00D").mangledNameHash());
1279     ASSERT_EQ(0x000004dau, ImmutableString("imageAtomicOr(01C20D00D").mangledNameHash());
1280     ASSERT_EQ(0x000004dbu, ImmutableString("imageAtomicOr(01N20D00D").mangledNameHash());
1281     ASSERT_EQ(0x000004dcu, ImmutableString("imageAtomicOr(01Y20D00D").mangledNameHash());
1282     ASSERT_EQ(0x000004ddu, ImmutableString("imageAtomicOr(01J00D00D").mangledNameHash());
1283     ASSERT_EQ(0x000004deu, ImmutableString("imageAtomicOr(01U00D00D").mangledNameHash());
1284     ASSERT_EQ(0x000004dfu, ImmutableString("imageAtomicOr(01f00D00D").mangledNameHash());
1285     ASSERT_EQ(0x000004e0u, ImmutableString("imageAtomicOr(01B20D00D").mangledNameHash());
1286     ASSERT_EQ(0x000004e1u, ImmutableString("imageAtomicOr(01M20D00D").mangledNameHash());
1287     ASSERT_EQ(0x000004e2u, ImmutableString("imageAtomicOr(01X20D00D").mangledNameHash());
1288     ASSERT_EQ(0x000004e3u, ImmutableString("imageAtomicOr(01H20D00D").mangledNameHash());
1289     ASSERT_EQ(0x000004e4u, ImmutableString("imageAtomicOr(01S20D00D").mangledNameHash());
1290     ASSERT_EQ(0x000004e5u, ImmutableString("imageAtomicOr(01d20D00D").mangledNameHash());
1291     ASSERT_EQ(0x000004e6u, ImmutableString("imageAtomicOr(01D00D00D").mangledNameHash());
1292     ASSERT_EQ(0x000004e7u, ImmutableString("imageAtomicOr(01O00D00D").mangledNameHash());
1293     ASSERT_EQ(0x000004e8u, ImmutableString("imageAtomicOr(01Z00D00D").mangledNameHash());
1294     ASSERT_EQ(0x000004e9u, ImmutableString("imageAtomicOr(01E10D00D").mangledNameHash());
1295     ASSERT_EQ(0x000004eau, ImmutableString("imageAtomicOr(01P10D00D").mangledNameHash());
1296     ASSERT_EQ(0x000004ebu, ImmutableString("imageAtomicOr(01a10D00D").mangledNameHash());
1297     ASSERT_EQ(0x000004ecu, ImmutableString("imageAtomicOr(01I10D00D").mangledNameHash());
1298     ASSERT_EQ(0x000004edu, ImmutableString("imageAtomicOr(01T10D00D").mangledNameHash());
1299     ASSERT_EQ(0x000004eeu, ImmutableString("imageAtomicOr(01e10D00D").mangledNameHash());
1300     ASSERT_EQ(0x000004efu, ImmutableString("imageAtomicOr(01F10D00D00D").mangledNameHash());
1301     ASSERT_EQ(0x000004f0u, ImmutableString("imageAtomicOr(01Q10D00D00D").mangledNameHash());
1302     ASSERT_EQ(0x000004f1u, ImmutableString("imageAtomicOr(01b10D00D00D").mangledNameHash());
1303     ASSERT_EQ(0x000004f2u, ImmutableString("imageAtomicOr(01G20D00D00D").mangledNameHash());
1304     ASSERT_EQ(0x000004f3u, ImmutableString("imageAtomicOr(01R20D00D00D").mangledNameHash());
1305     ASSERT_EQ(0x000004f4u, ImmutableString("imageAtomicOr(01c20D00D00D").mangledNameHash());
1306     ASSERT_EQ(0x000004f5u, ImmutableString("imageAtomicXor(00z10D00E").mangledNameHash());
1307     ASSERT_EQ(0x000004f6u, ImmutableString("imageAtomicXor(01K10D00E").mangledNameHash());
1308     ASSERT_EQ(0x000004f7u, ImmutableString("imageAtomicXor(01V10D00E").mangledNameHash());
1309     ASSERT_EQ(0x000004f8u, ImmutableString("imageAtomicXor(01A20D00E").mangledNameHash());
1310     ASSERT_EQ(0x000004f9u, ImmutableString("imageAtomicXor(01L20D00E").mangledNameHash());
1311     ASSERT_EQ(0x000004fau, ImmutableString("imageAtomicXor(01W20D00E").mangledNameHash());
1312     ASSERT_EQ(0x000004fbu, ImmutableString("imageAtomicXor(01C20D00E").mangledNameHash());
1313     ASSERT_EQ(0x000004fcu, ImmutableString("imageAtomicXor(01N20D00E").mangledNameHash());
1314     ASSERT_EQ(0x000004fdu, ImmutableString("imageAtomicXor(01Y20D00E").mangledNameHash());
1315     ASSERT_EQ(0x000004feu, ImmutableString("imageAtomicXor(01J00D00E").mangledNameHash());
1316     ASSERT_EQ(0x000004ffu, ImmutableString("imageAtomicXor(01U00D00E").mangledNameHash());
1317     ASSERT_EQ(0x00000500u, ImmutableString("imageAtomicXor(01f00D00E").mangledNameHash());
1318     ASSERT_EQ(0x00000501u, ImmutableString("imageAtomicXor(01B20D00E").mangledNameHash());
1319     ASSERT_EQ(0x00000502u, ImmutableString("imageAtomicXor(01M20D00E").mangledNameHash());
1320     ASSERT_EQ(0x00000503u, ImmutableString("imageAtomicXor(01X20D00E").mangledNameHash());
1321     ASSERT_EQ(0x00000504u, ImmutableString("imageAtomicXor(01H20D00E").mangledNameHash());
1322     ASSERT_EQ(0x00000505u, ImmutableString("imageAtomicXor(01S20D00E").mangledNameHash());
1323     ASSERT_EQ(0x00000506u, ImmutableString("imageAtomicXor(01d20D00E").mangledNameHash());
1324     ASSERT_EQ(0x00000507u, ImmutableString("imageAtomicXor(01D00D00E").mangledNameHash());
1325     ASSERT_EQ(0x00000508u, ImmutableString("imageAtomicXor(01O00D00E").mangledNameHash());
1326     ASSERT_EQ(0x00000509u, ImmutableString("imageAtomicXor(01Z00D00E").mangledNameHash());
1327     ASSERT_EQ(0x0000050au, ImmutableString("imageAtomicXor(01E10D00E").mangledNameHash());
1328     ASSERT_EQ(0x0000050bu, ImmutableString("imageAtomicXor(01P10D00E").mangledNameHash());
1329     ASSERT_EQ(0x0000050cu, ImmutableString("imageAtomicXor(01a10D00E").mangledNameHash());
1330     ASSERT_EQ(0x0000050du, ImmutableString("imageAtomicXor(01I10D00E").mangledNameHash());
1331     ASSERT_EQ(0x0000050eu, ImmutableString("imageAtomicXor(01T10D00E").mangledNameHash());
1332     ASSERT_EQ(0x0000050fu, ImmutableString("imageAtomicXor(01e10D00E").mangledNameHash());
1333     ASSERT_EQ(0x00000510u, ImmutableString("imageAtomicXor(01F10D00D00E").mangledNameHash());
1334     ASSERT_EQ(0x00000511u, ImmutableString("imageAtomicXor(01Q10D00D00E").mangledNameHash());
1335     ASSERT_EQ(0x00000512u, ImmutableString("imageAtomicXor(01b10D00D00E").mangledNameHash());
1336     ASSERT_EQ(0x00000513u, ImmutableString("imageAtomicXor(01G20D00D00E").mangledNameHash());
1337     ASSERT_EQ(0x00000514u, ImmutableString("imageAtomicXor(01R20D00D00E").mangledNameHash());
1338     ASSERT_EQ(0x00000515u, ImmutableString("imageAtomicXor(01c20D00D00E").mangledNameHash());
1339     ASSERT_EQ(0x00000516u, ImmutableString("imageAtomicXor(00z10D00D").mangledNameHash());
1340     ASSERT_EQ(0x00000517u, ImmutableString("imageAtomicXor(01K10D00D").mangledNameHash());
1341     ASSERT_EQ(0x00000518u, ImmutableString("imageAtomicXor(01V10D00D").mangledNameHash());
1342     ASSERT_EQ(0x00000519u, ImmutableString("imageAtomicXor(01A20D00D").mangledNameHash());
1343     ASSERT_EQ(0x0000051au, ImmutableString("imageAtomicXor(01L20D00D").mangledNameHash());
1344     ASSERT_EQ(0x0000051bu, ImmutableString("imageAtomicXor(01W20D00D").mangledNameHash());
1345     ASSERT_EQ(0x0000051cu, ImmutableString("imageAtomicXor(01C20D00D").mangledNameHash());
1346     ASSERT_EQ(0x0000051du, ImmutableString("imageAtomicXor(01N20D00D").mangledNameHash());
1347     ASSERT_EQ(0x0000051eu, ImmutableString("imageAtomicXor(01Y20D00D").mangledNameHash());
1348     ASSERT_EQ(0x0000051fu, ImmutableString("imageAtomicXor(01J00D00D").mangledNameHash());
1349     ASSERT_EQ(0x00000520u, ImmutableString("imageAtomicXor(01U00D00D").mangledNameHash());
1350     ASSERT_EQ(0x00000521u, ImmutableString("imageAtomicXor(01f00D00D").mangledNameHash());
1351     ASSERT_EQ(0x00000522u, ImmutableString("imageAtomicXor(01B20D00D").mangledNameHash());
1352     ASSERT_EQ(0x00000523u, ImmutableString("imageAtomicXor(01M20D00D").mangledNameHash());
1353     ASSERT_EQ(0x00000524u, ImmutableString("imageAtomicXor(01X20D00D").mangledNameHash());
1354     ASSERT_EQ(0x00000525u, ImmutableString("imageAtomicXor(01H20D00D").mangledNameHash());
1355     ASSERT_EQ(0x00000526u, ImmutableString("imageAtomicXor(01S20D00D").mangledNameHash());
1356     ASSERT_EQ(0x00000527u, ImmutableString("imageAtomicXor(01d20D00D").mangledNameHash());
1357     ASSERT_EQ(0x00000528u, ImmutableString("imageAtomicXor(01D00D00D").mangledNameHash());
1358     ASSERT_EQ(0x00000529u, ImmutableString("imageAtomicXor(01O00D00D").mangledNameHash());
1359     ASSERT_EQ(0x0000052au, ImmutableString("imageAtomicXor(01Z00D00D").mangledNameHash());
1360     ASSERT_EQ(0x0000052bu, ImmutableString("imageAtomicXor(01E10D00D").mangledNameHash());
1361     ASSERT_EQ(0x0000052cu, ImmutableString("imageAtomicXor(01P10D00D").mangledNameHash());
1362     ASSERT_EQ(0x0000052du, ImmutableString("imageAtomicXor(01a10D00D").mangledNameHash());
1363     ASSERT_EQ(0x0000052eu, ImmutableString("imageAtomicXor(01I10D00D").mangledNameHash());
1364     ASSERT_EQ(0x0000052fu, ImmutableString("imageAtomicXor(01T10D00D").mangledNameHash());
1365     ASSERT_EQ(0x00000530u, ImmutableString("imageAtomicXor(01e10D00D").mangledNameHash());
1366     ASSERT_EQ(0x00000531u, ImmutableString("imageAtomicXor(01F10D00D00D").mangledNameHash());
1367     ASSERT_EQ(0x00000532u, ImmutableString("imageAtomicXor(01Q10D00D00D").mangledNameHash());
1368     ASSERT_EQ(0x00000533u, ImmutableString("imageAtomicXor(01b10D00D00D").mangledNameHash());
1369     ASSERT_EQ(0x00000534u, ImmutableString("imageAtomicXor(01G20D00D00D").mangledNameHash());
1370     ASSERT_EQ(0x00000535u, ImmutableString("imageAtomicXor(01R20D00D00D").mangledNameHash());
1371     ASSERT_EQ(0x00000536u, ImmutableString("imageAtomicXor(01c20D00D00D").mangledNameHash());
1372     ASSERT_EQ(0x00000537u, ImmutableString("imageAtomicExchange(00z10D00E").mangledNameHash());
1373     ASSERT_EQ(0x00000538u, ImmutableString("imageAtomicExchange(01K10D00E").mangledNameHash());
1374     ASSERT_EQ(0x00000539u, ImmutableString("imageAtomicExchange(01V10D00E").mangledNameHash());
1375     ASSERT_EQ(0x0000053au, ImmutableString("imageAtomicExchange(01A20D00E").mangledNameHash());
1376     ASSERT_EQ(0x0000053bu, ImmutableString("imageAtomicExchange(01L20D00E").mangledNameHash());
1377     ASSERT_EQ(0x0000053cu, ImmutableString("imageAtomicExchange(01W20D00E").mangledNameHash());
1378     ASSERT_EQ(0x0000053du, ImmutableString("imageAtomicExchange(01C20D00E").mangledNameHash());
1379     ASSERT_EQ(0x0000053eu, ImmutableString("imageAtomicExchange(01N20D00E").mangledNameHash());
1380     ASSERT_EQ(0x0000053fu, ImmutableString("imageAtomicExchange(01Y20D00E").mangledNameHash());
1381     ASSERT_EQ(0x00000540u, ImmutableString("imageAtomicExchange(01J00D00E").mangledNameHash());
1382     ASSERT_EQ(0x00000541u, ImmutableString("imageAtomicExchange(01U00D00E").mangledNameHash());
1383     ASSERT_EQ(0x00000542u, ImmutableString("imageAtomicExchange(01f00D00E").mangledNameHash());
1384     ASSERT_EQ(0x00000543u, ImmutableString("imageAtomicExchange(01B20D00E").mangledNameHash());
1385     ASSERT_EQ(0x00000544u, ImmutableString("imageAtomicExchange(01M20D00E").mangledNameHash());
1386     ASSERT_EQ(0x00000545u, ImmutableString("imageAtomicExchange(01X20D00E").mangledNameHash());
1387     ASSERT_EQ(0x00000546u, ImmutableString("imageAtomicExchange(01H20D00E").mangledNameHash());
1388     ASSERT_EQ(0x00000547u, ImmutableString("imageAtomicExchange(01S20D00E").mangledNameHash());
1389     ASSERT_EQ(0x00000548u, ImmutableString("imageAtomicExchange(01d20D00E").mangledNameHash());
1390     ASSERT_EQ(0x00000549u, ImmutableString("imageAtomicExchange(01D00D00E").mangledNameHash());
1391     ASSERT_EQ(0x0000054au, ImmutableString("imageAtomicExchange(01O00D00E").mangledNameHash());
1392     ASSERT_EQ(0x0000054bu, ImmutableString("imageAtomicExchange(01Z00D00E").mangledNameHash());
1393     ASSERT_EQ(0x0000054cu, ImmutableString("imageAtomicExchange(01E10D00E").mangledNameHash());
1394     ASSERT_EQ(0x0000054du, ImmutableString("imageAtomicExchange(01P10D00E").mangledNameHash());
1395     ASSERT_EQ(0x0000054eu, ImmutableString("imageAtomicExchange(01a10D00E").mangledNameHash());
1396     ASSERT_EQ(0x0000054fu, ImmutableString("imageAtomicExchange(01I10D00E").mangledNameHash());
1397     ASSERT_EQ(0x00000550u, ImmutableString("imageAtomicExchange(01T10D00E").mangledNameHash());
1398     ASSERT_EQ(0x00000551u, ImmutableString("imageAtomicExchange(01e10D00E").mangledNameHash());
1399     ASSERT_EQ(0x00000552u, ImmutableString("imageAtomicExchange(01F10D00D00E").mangledNameHash());
1400     ASSERT_EQ(0x00000553u, ImmutableString("imageAtomicExchange(01Q10D00D00E").mangledNameHash());
1401     ASSERT_EQ(0x00000554u, ImmutableString("imageAtomicExchange(01b10D00D00E").mangledNameHash());
1402     ASSERT_EQ(0x00000555u, ImmutableString("imageAtomicExchange(01G20D00D00E").mangledNameHash());
1403     ASSERT_EQ(0x00000556u, ImmutableString("imageAtomicExchange(01R20D00D00E").mangledNameHash());
1404     ASSERT_EQ(0x00000557u, ImmutableString("imageAtomicExchange(01c20D00D00E").mangledNameHash());
1405     ASSERT_EQ(0x00000558u, ImmutableString("imageAtomicExchange(00z10D00D").mangledNameHash());
1406     ASSERT_EQ(0x00000559u, ImmutableString("imageAtomicExchange(01K10D00D").mangledNameHash());
1407     ASSERT_EQ(0x0000055au, ImmutableString("imageAtomicExchange(01V10D00D").mangledNameHash());
1408     ASSERT_EQ(0x0000055bu, ImmutableString("imageAtomicExchange(01A20D00D").mangledNameHash());
1409     ASSERT_EQ(0x0000055cu, ImmutableString("imageAtomicExchange(01L20D00D").mangledNameHash());
1410     ASSERT_EQ(0x0000055du, ImmutableString("imageAtomicExchange(01W20D00D").mangledNameHash());
1411     ASSERT_EQ(0x0000055eu, ImmutableString("imageAtomicExchange(01C20D00D").mangledNameHash());
1412     ASSERT_EQ(0x0000055fu, ImmutableString("imageAtomicExchange(01N20D00D").mangledNameHash());
1413     ASSERT_EQ(0x00000560u, ImmutableString("imageAtomicExchange(01Y20D00D").mangledNameHash());
1414     ASSERT_EQ(0x00000561u, ImmutableString("imageAtomicExchange(01J00D00D").mangledNameHash());
1415     ASSERT_EQ(0x00000562u, ImmutableString("imageAtomicExchange(01U00D00D").mangledNameHash());
1416     ASSERT_EQ(0x00000563u, ImmutableString("imageAtomicExchange(01f00D00D").mangledNameHash());
1417     ASSERT_EQ(0x00000564u, ImmutableString("imageAtomicExchange(01B20D00D").mangledNameHash());
1418     ASSERT_EQ(0x00000565u, ImmutableString("imageAtomicExchange(01M20D00D").mangledNameHash());
1419     ASSERT_EQ(0x00000566u, ImmutableString("imageAtomicExchange(01X20D00D").mangledNameHash());
1420     ASSERT_EQ(0x00000567u, ImmutableString("imageAtomicExchange(01H20D00D").mangledNameHash());
1421     ASSERT_EQ(0x00000568u, ImmutableString("imageAtomicExchange(01S20D00D").mangledNameHash());
1422     ASSERT_EQ(0x00000569u, ImmutableString("imageAtomicExchange(01d20D00D").mangledNameHash());
1423     ASSERT_EQ(0x0000056au, ImmutableString("imageAtomicExchange(01D00D00D").mangledNameHash());
1424     ASSERT_EQ(0x0000056bu, ImmutableString("imageAtomicExchange(01O00D00D").mangledNameHash());
1425     ASSERT_EQ(0x0000056cu, ImmutableString("imageAtomicExchange(01Z00D00D").mangledNameHash());
1426     ASSERT_EQ(0x0000056du, ImmutableString("imageAtomicExchange(01E10D00D").mangledNameHash());
1427     ASSERT_EQ(0x0000056eu, ImmutableString("imageAtomicExchange(01P10D00D").mangledNameHash());
1428     ASSERT_EQ(0x0000056fu, ImmutableString("imageAtomicExchange(01a10D00D").mangledNameHash());
1429     ASSERT_EQ(0x00000570u, ImmutableString("imageAtomicExchange(01I10D00D").mangledNameHash());
1430     ASSERT_EQ(0x00000571u, ImmutableString("imageAtomicExchange(01T10D00D").mangledNameHash());
1431     ASSERT_EQ(0x00000572u, ImmutableString("imageAtomicExchange(01e10D00D").mangledNameHash());
1432     ASSERT_EQ(0x00000573u, ImmutableString("imageAtomicExchange(01F10D00D00D").mangledNameHash());
1433     ASSERT_EQ(0x00000574u, ImmutableString("imageAtomicExchange(01Q10D00D00D").mangledNameHash());
1434     ASSERT_EQ(0x00000575u, ImmutableString("imageAtomicExchange(01b10D00D00D").mangledNameHash());
1435     ASSERT_EQ(0x00000576u, ImmutableString("imageAtomicExchange(01G20D00D00D").mangledNameHash());
1436     ASSERT_EQ(0x00000577u, ImmutableString("imageAtomicExchange(01R20D00D00D").mangledNameHash());
1437     ASSERT_EQ(0x00000578u, ImmutableString("imageAtomicExchange(01c20D00D00D").mangledNameHash());
1438     ASSERT_EQ(0x00000579u, ImmutableString("imageAtomicExchange(00z10D00B").mangledNameHash());
1439     ASSERT_EQ(0x0000057au, ImmutableString("imageAtomicExchange(01K10D00B").mangledNameHash());
1440     ASSERT_EQ(0x0000057bu, ImmutableString("imageAtomicExchange(01V10D00B").mangledNameHash());
1441     ASSERT_EQ(0x0000057cu, ImmutableString("imageAtomicExchange(01A20D00B").mangledNameHash());
1442     ASSERT_EQ(0x0000057du, ImmutableString("imageAtomicExchange(01L20D00B").mangledNameHash());
1443     ASSERT_EQ(0x0000057eu, ImmutableString("imageAtomicExchange(01W20D00B").mangledNameHash());
1444     ASSERT_EQ(0x0000057fu, ImmutableString("imageAtomicExchange(01C20D00B").mangledNameHash());
1445     ASSERT_EQ(0x00000580u, ImmutableString("imageAtomicExchange(01N20D00B").mangledNameHash());
1446     ASSERT_EQ(0x00000581u, ImmutableString("imageAtomicExchange(01Y20D00B").mangledNameHash());
1447     ASSERT_EQ(0x00000582u, ImmutableString("imageAtomicExchange(01J00D00B").mangledNameHash());
1448     ASSERT_EQ(0x00000583u, ImmutableString("imageAtomicExchange(01U00D00B").mangledNameHash());
1449     ASSERT_EQ(0x00000584u, ImmutableString("imageAtomicExchange(01f00D00B").mangledNameHash());
1450     ASSERT_EQ(0x00000585u, ImmutableString("imageAtomicExchange(01B20D00B").mangledNameHash());
1451     ASSERT_EQ(0x00000586u, ImmutableString("imageAtomicExchange(01M20D00B").mangledNameHash());
1452     ASSERT_EQ(0x00000587u, ImmutableString("imageAtomicExchange(01X20D00B").mangledNameHash());
1453     ASSERT_EQ(0x00000588u, ImmutableString("imageAtomicExchange(01H20D00B").mangledNameHash());
1454     ASSERT_EQ(0x00000589u, ImmutableString("imageAtomicExchange(01S20D00B").mangledNameHash());
1455     ASSERT_EQ(0x0000058au, ImmutableString("imageAtomicExchange(01d20D00B").mangledNameHash());
1456     ASSERT_EQ(0x0000058bu, ImmutableString("imageAtomicExchange(01D00D00B").mangledNameHash());
1457     ASSERT_EQ(0x0000058cu, ImmutableString("imageAtomicExchange(01O00D00B").mangledNameHash());
1458     ASSERT_EQ(0x0000058du, ImmutableString("imageAtomicExchange(01Z00D00B").mangledNameHash());
1459     ASSERT_EQ(0x0000058eu, ImmutableString("imageAtomicExchange(01E10D00B").mangledNameHash());
1460     ASSERT_EQ(0x0000058fu, ImmutableString("imageAtomicExchange(01P10D00B").mangledNameHash());
1461     ASSERT_EQ(0x00000590u, ImmutableString("imageAtomicExchange(01a10D00B").mangledNameHash());
1462     ASSERT_EQ(0x00000591u, ImmutableString("imageAtomicExchange(01I10D00B").mangledNameHash());
1463     ASSERT_EQ(0x00000592u, ImmutableString("imageAtomicExchange(01T10D00B").mangledNameHash());
1464     ASSERT_EQ(0x00000593u, ImmutableString("imageAtomicExchange(01e10D00B").mangledNameHash());
1465     ASSERT_EQ(0x00000594u, ImmutableString("imageAtomicExchange(01F10D00D00B").mangledNameHash());
1466     ASSERT_EQ(0x00000595u, ImmutableString("imageAtomicExchange(01Q10D00D00B").mangledNameHash());
1467     ASSERT_EQ(0x00000596u, ImmutableString("imageAtomicExchange(01b10D00D00B").mangledNameHash());
1468     ASSERT_EQ(0x00000597u, ImmutableString("imageAtomicExchange(01G20D00D00B").mangledNameHash());
1469     ASSERT_EQ(0x00000598u, ImmutableString("imageAtomicExchange(01R20D00D00B").mangledNameHash());
1470     ASSERT_EQ(0x00000599u, ImmutableString("imageAtomicExchange(01c20D00D00B").mangledNameHash());
1471     ASSERT_EQ(0x0000059au, ImmutableString("imageAtomicCompSwap(00z10D00E00E").mangledNameHash());
1472     ASSERT_EQ(0x0000059bu, ImmutableString("imageAtomicCompSwap(01K10D00E00E").mangledNameHash());
1473     ASSERT_EQ(0x0000059cu, ImmutableString("imageAtomicCompSwap(01V10D00E00E").mangledNameHash());
1474     ASSERT_EQ(0x0000059du, ImmutableString("imageAtomicCompSwap(01A20D00E00E").mangledNameHash());
1475     ASSERT_EQ(0x0000059eu, ImmutableString("imageAtomicCompSwap(01L20D00E00E").mangledNameHash());
1476     ASSERT_EQ(0x0000059fu, ImmutableString("imageAtomicCompSwap(01W20D00E00E").mangledNameHash());
1477     ASSERT_EQ(0x000005a0u, ImmutableString("imageAtomicCompSwap(01C20D00E00E").mangledNameHash());
1478     ASSERT_EQ(0x000005a1u, ImmutableString("imageAtomicCompSwap(01N20D00E00E").mangledNameHash());
1479     ASSERT_EQ(0x000005a2u, ImmutableString("imageAtomicCompSwap(01Y20D00E00E").mangledNameHash());
1480     ASSERT_EQ(0x000005a3u, ImmutableString("imageAtomicCompSwap(01J00D00E00E").mangledNameHash());
1481     ASSERT_EQ(0x000005a4u, ImmutableString("imageAtomicCompSwap(01U00D00E00E").mangledNameHash());
1482     ASSERT_EQ(0x000005a5u, ImmutableString("imageAtomicCompSwap(01f00D00E00E").mangledNameHash());
1483     ASSERT_EQ(0x000005a6u, ImmutableString("imageAtomicCompSwap(01B20D00E00E").mangledNameHash());
1484     ASSERT_EQ(0x000005a7u, ImmutableString("imageAtomicCompSwap(01M20D00E00E").mangledNameHash());
1485     ASSERT_EQ(0x000005a8u, ImmutableString("imageAtomicCompSwap(01X20D00E00E").mangledNameHash());
1486     ASSERT_EQ(0x000005a9u, ImmutableString("imageAtomicCompSwap(01H20D00E00E").mangledNameHash());
1487     ASSERT_EQ(0x000005aau, ImmutableString("imageAtomicCompSwap(01S20D00E00E").mangledNameHash());
1488     ASSERT_EQ(0x000005abu, ImmutableString("imageAtomicCompSwap(01d20D00E00E").mangledNameHash());
1489     ASSERT_EQ(0x000005acu, ImmutableString("imageAtomicCompSwap(01D00D00E00E").mangledNameHash());
1490     ASSERT_EQ(0x000005adu, ImmutableString("imageAtomicCompSwap(01O00D00E00E").mangledNameHash());
1491     ASSERT_EQ(0x000005aeu, ImmutableString("imageAtomicCompSwap(01Z00D00E00E").mangledNameHash());
1492     ASSERT_EQ(0x000005afu, ImmutableString("imageAtomicCompSwap(01E10D00E00E").mangledNameHash());
1493     ASSERT_EQ(0x000005b0u, ImmutableString("imageAtomicCompSwap(01P10D00E00E").mangledNameHash());
1494     ASSERT_EQ(0x000005b1u, ImmutableString("imageAtomicCompSwap(01a10D00E00E").mangledNameHash());
1495     ASSERT_EQ(0x000005b2u, ImmutableString("imageAtomicCompSwap(01I10D00E00E").mangledNameHash());
1496     ASSERT_EQ(0x000005b3u, ImmutableString("imageAtomicCompSwap(01T10D00E00E").mangledNameHash());
1497     ASSERT_EQ(0x000005b4u, ImmutableString("imageAtomicCompSwap(01e10D00E00E").mangledNameHash());
1498     ASSERT_EQ(0x000005b5u,
1499               ImmutableString("imageAtomicCompSwap(01F10D00D00E00E").mangledNameHash());
1500     ASSERT_EQ(0x000005b6u,
1501               ImmutableString("imageAtomicCompSwap(01Q10D00D00E00E").mangledNameHash());
1502     ASSERT_EQ(0x000005b7u,
1503               ImmutableString("imageAtomicCompSwap(01b10D00D00E00E").mangledNameHash());
1504     ASSERT_EQ(0x000005b8u,
1505               ImmutableString("imageAtomicCompSwap(01G20D00D00E00E").mangledNameHash());
1506     ASSERT_EQ(0x000005b9u,
1507               ImmutableString("imageAtomicCompSwap(01R20D00D00E00E").mangledNameHash());
1508     ASSERT_EQ(0x000005bau,
1509               ImmutableString("imageAtomicCompSwap(01c20D00D00E00E").mangledNameHash());
1510     ASSERT_EQ(0x000005bbu, ImmutableString("imageAtomicCompSwap(00z10D00D00D").mangledNameHash());
1511     ASSERT_EQ(0x000005bcu, ImmutableString("imageAtomicCompSwap(01K10D00D00D").mangledNameHash());
1512     ASSERT_EQ(0x000005bdu, ImmutableString("imageAtomicCompSwap(01V10D00D00D").mangledNameHash());
1513     ASSERT_EQ(0x000005beu, ImmutableString("imageAtomicCompSwap(01A20D00D00D").mangledNameHash());
1514     ASSERT_EQ(0x000005bfu, ImmutableString("imageAtomicCompSwap(01L20D00D00D").mangledNameHash());
1515     ASSERT_EQ(0x000005c0u, ImmutableString("imageAtomicCompSwap(01W20D00D00D").mangledNameHash());
1516     ASSERT_EQ(0x000005c1u, ImmutableString("imageAtomicCompSwap(01C20D00D00D").mangledNameHash());
1517     ASSERT_EQ(0x000005c2u, ImmutableString("imageAtomicCompSwap(01N20D00D00D").mangledNameHash());
1518     ASSERT_EQ(0x000005c3u, ImmutableString("imageAtomicCompSwap(01Y20D00D00D").mangledNameHash());
1519     ASSERT_EQ(0x000005c4u, ImmutableString("imageAtomicCompSwap(01J00D00D00D").mangledNameHash());
1520     ASSERT_EQ(0x000005c5u, ImmutableString("imageAtomicCompSwap(01U00D00D00D").mangledNameHash());
1521     ASSERT_EQ(0x000005c6u, ImmutableString("imageAtomicCompSwap(01f00D00D00D").mangledNameHash());
1522     ASSERT_EQ(0x000005c7u, ImmutableString("imageAtomicCompSwap(01B20D00D00D").mangledNameHash());
1523     ASSERT_EQ(0x000005c8u, ImmutableString("imageAtomicCompSwap(01M20D00D00D").mangledNameHash());
1524     ASSERT_EQ(0x000005c9u, ImmutableString("imageAtomicCompSwap(01X20D00D00D").mangledNameHash());
1525     ASSERT_EQ(0x000005cau, ImmutableString("imageAtomicCompSwap(01H20D00D00D").mangledNameHash());
1526     ASSERT_EQ(0x000005cbu, ImmutableString("imageAtomicCompSwap(01S20D00D00D").mangledNameHash());
1527     ASSERT_EQ(0x000005ccu, ImmutableString("imageAtomicCompSwap(01d20D00D00D").mangledNameHash());
1528     ASSERT_EQ(0x000005cdu, ImmutableString("imageAtomicCompSwap(01D00D00D00D").mangledNameHash());
1529     ASSERT_EQ(0x000005ceu, ImmutableString("imageAtomicCompSwap(01O00D00D00D").mangledNameHash());
1530     ASSERT_EQ(0x000005cfu, ImmutableString("imageAtomicCompSwap(01Z00D00D00D").mangledNameHash());
1531     ASSERT_EQ(0x000005d0u, ImmutableString("imageAtomicCompSwap(01E10D00D00D").mangledNameHash());
1532     ASSERT_EQ(0x000005d1u, ImmutableString("imageAtomicCompSwap(01P10D00D00D").mangledNameHash());
1533     ASSERT_EQ(0x000005d2u, ImmutableString("imageAtomicCompSwap(01a10D00D00D").mangledNameHash());
1534     ASSERT_EQ(0x000005d3u, ImmutableString("imageAtomicCompSwap(01I10D00D00D").mangledNameHash());
1535     ASSERT_EQ(0x000005d4u, ImmutableString("imageAtomicCompSwap(01T10D00D00D").mangledNameHash());
1536     ASSERT_EQ(0x000005d5u, ImmutableString("imageAtomicCompSwap(01e10D00D00D").mangledNameHash());
1537     ASSERT_EQ(0x000005d6u,
1538               ImmutableString("imageAtomicCompSwap(01F10D00D00D00D").mangledNameHash());
1539     ASSERT_EQ(0x000005d7u,
1540               ImmutableString("imageAtomicCompSwap(01Q10D00D00D00D").mangledNameHash());
1541     ASSERT_EQ(0x000005d8u,
1542               ImmutableString("imageAtomicCompSwap(01b10D00D00D00D").mangledNameHash());
1543     ASSERT_EQ(0x000005d9u,
1544               ImmutableString("imageAtomicCompSwap(01G20D00D00D00D").mangledNameHash());
1545     ASSERT_EQ(0x000005dau,
1546               ImmutableString("imageAtomicCompSwap(01R20D00D00D00D").mangledNameHash());
1547     ASSERT_EQ(0x000005dbu,
1548               ImmutableString("imageAtomicCompSwap(01c20D00D00D00D").mangledNameHash());
1549     ASSERT_EQ(0x000005dcu, ImmutableString("memoryBarrier(").mangledNameHash());
1550     ASSERT_EQ(0x000005ddu, ImmutableString("memoryBarrierAtomicCounter(").mangledNameHash());
1551     ASSERT_EQ(0x000005deu, ImmutableString("memoryBarrierBuffer(").mangledNameHash());
1552     ASSERT_EQ(0x000005dfu, ImmutableString("memoryBarrierImage(").mangledNameHash());
1553     ASSERT_EQ(0x000005e0u, ImmutableString("barrier(").mangledNameHash());
1554     ASSERT_EQ(0x000005e1u, ImmutableString("memoryBarrierShared(").mangledNameHash());
1555     ASSERT_EQ(0x000005e2u, ImmutableString("groupMemoryBarrier(").mangledNameHash());
1556     ASSERT_EQ(0x000005e3u, ImmutableString("EmitVertex(").mangledNameHash());
1557     ASSERT_EQ(0x000005e4u, ImmutableString("EndPrimitive(").mangledNameHash());
1558     ASSERT_EQ(0x000005e5u, ImmutableString("gl_DepthRangeParameters").mangledNameHash());
1559     ASSERT_EQ(0x000005e6u, ImmutableString("gl_DepthRange").mangledNameHash());
1560     ASSERT_EQ(0x000005e7u, ImmutableString("gl_NumSamples").mangledNameHash());
1561     ASSERT_EQ(0x000005e8u, ImmutableString("gl_MaxVertexAttribs").mangledNameHash());
1562     ASSERT_EQ(0x000005e9u, ImmutableString("gl_MaxVertexUniformVectors").mangledNameHash());
1563     ASSERT_EQ(0x000005eau, ImmutableString("gl_MaxVertexTextureImageUnits").mangledNameHash());
1564     ASSERT_EQ(0x000005ebu, ImmutableString("gl_MaxCombinedTextureImageUnits").mangledNameHash());
1565     ASSERT_EQ(0x000005ecu, ImmutableString("gl_MaxTextureImageUnits").mangledNameHash());
1566     ASSERT_EQ(0x000005edu, ImmutableString("gl_MaxFragmentUniformVectors").mangledNameHash());
1567     ASSERT_EQ(0x000005eeu, ImmutableString("gl_MaxVaryingVectors").mangledNameHash());
1568     ASSERT_EQ(0x000005efu, ImmutableString("gl_MaxDrawBuffers").mangledNameHash());
1569     ASSERT_EQ(0x000005f0u, ImmutableString("gl_MaxDualSourceDrawBuffersEXT").mangledNameHash());
1570     ASSERT_EQ(0x000005f1u, ImmutableString("gl_MaxVertexOutputVectors").mangledNameHash());
1571     ASSERT_EQ(0x000005f2u, ImmutableString("gl_MaxFragmentInputVectors").mangledNameHash());
1572     ASSERT_EQ(0x000005f3u, ImmutableString("gl_MinProgramTexelOffset").mangledNameHash());
1573     ASSERT_EQ(0x000005f4u, ImmutableString("gl_MaxProgramTexelOffset").mangledNameHash());
1574     ASSERT_EQ(0x000005f5u, ImmutableString("gl_MaxImageUnits").mangledNameHash());
1575     ASSERT_EQ(0x000005f6u, ImmutableString("gl_MaxVertexImageUniforms").mangledNameHash());
1576     ASSERT_EQ(0x000005f7u, ImmutableString("gl_MaxFragmentImageUniforms").mangledNameHash());
1577     ASSERT_EQ(0x000005f8u, ImmutableString("gl_MaxComputeImageUniforms").mangledNameHash());
1578     ASSERT_EQ(0x000005f9u, ImmutableString("gl_MaxCombinedImageUniforms").mangledNameHash());
1579     ASSERT_EQ(0x000005fau,
1580               ImmutableString("gl_MaxCombinedShaderOutputResources").mangledNameHash());
1581     ASSERT_EQ(0x000005fbu, ImmutableString("gl_MaxComputeWorkGroupCount").mangledNameHash());
1582     ASSERT_EQ(0x000005fcu, ImmutableString("gl_MaxComputeWorkGroupSize").mangledNameHash());
1583     ASSERT_EQ(0x000005fdu, ImmutableString("gl_MaxComputeUniformComponents").mangledNameHash());
1584     ASSERT_EQ(0x000005feu, ImmutableString("gl_MaxComputeTextureImageUnits").mangledNameHash());
1585     ASSERT_EQ(0x000005ffu, ImmutableString("gl_MaxComputeAtomicCounters").mangledNameHash());
1586     ASSERT_EQ(0x00000600u, ImmutableString("gl_MaxComputeAtomicCounterBuffers").mangledNameHash());
1587     ASSERT_EQ(0x00000601u, ImmutableString("gl_MaxVertexAtomicCounters").mangledNameHash());
1588     ASSERT_EQ(0x00000602u, ImmutableString("gl_MaxFragmentAtomicCounters").mangledNameHash());
1589     ASSERT_EQ(0x00000603u, ImmutableString("gl_MaxCombinedAtomicCounters").mangledNameHash());
1590     ASSERT_EQ(0x00000604u, ImmutableString("gl_MaxAtomicCounterBindings").mangledNameHash());
1591     ASSERT_EQ(0x00000605u, ImmutableString("gl_MaxVertexAtomicCounterBuffers").mangledNameHash());
1592     ASSERT_EQ(0x00000606u, ImmutableString("gl_MaxFragmentAtomicCounterBuffers").mangledNameHash());
1593     ASSERT_EQ(0x00000607u, ImmutableString("gl_MaxCombinedAtomicCounterBuffers").mangledNameHash());
1594     ASSERT_EQ(0x00000608u, ImmutableString("gl_MaxAtomicCounterBufferSize").mangledNameHash());
1595     ASSERT_EQ(0x00000609u, ImmutableString("gl_MaxGeometryInputComponents").mangledNameHash());
1596     ASSERT_EQ(0x0000060au, ImmutableString("gl_MaxGeometryOutputComponents").mangledNameHash());
1597     ASSERT_EQ(0x0000060bu, ImmutableString("gl_MaxGeometryImageUniforms").mangledNameHash());
1598     ASSERT_EQ(0x0000060cu, ImmutableString("gl_MaxGeometryTextureImageUnits").mangledNameHash());
1599     ASSERT_EQ(0x0000060du, ImmutableString("gl_MaxGeometryOutputVertices").mangledNameHash());
1600     ASSERT_EQ(0x0000060eu,
1601               ImmutableString("gl_MaxGeometryTotalOutputComponents").mangledNameHash());
1602     ASSERT_EQ(0x0000060fu, ImmutableString("gl_MaxGeometryUniformComponents").mangledNameHash());
1603     ASSERT_EQ(0x00000610u, ImmutableString("gl_MaxGeometryAtomicCounters").mangledNameHash());
1604     ASSERT_EQ(0x00000611u, ImmutableString("gl_MaxGeometryAtomicCounterBuffers").mangledNameHash());
1605     ASSERT_EQ(0x00000612u, ImmutableString("gl_MaxTessControlInputComponents").mangledNameHash());
1606     ASSERT_EQ(0x00000613u, ImmutableString("gl_MaxTessControlOutputComponents").mangledNameHash());
1607     ASSERT_EQ(0x00000614u, ImmutableString("gl_MaxTessControlTextureImageUnits").mangledNameHash());
1608     ASSERT_EQ(0x00000615u, ImmutableString("gl_MaxTessControlUniformComponents").mangledNameHash());
1609     ASSERT_EQ(0x00000616u,
1610               ImmutableString("gl_MaxTessControlTotalOutputComponents").mangledNameHash());
1611     ASSERT_EQ(0x00000617u, ImmutableString("gl_MaxTessControlImageUniforms").mangledNameHash());
1612     ASSERT_EQ(0x00000618u, ImmutableString("gl_MaxTessControlAtomicCounters").mangledNameHash());
1613     ASSERT_EQ(0x00000619u,
1614               ImmutableString("gl_MaxTessControlAtomicCounterBuffers").mangledNameHash());
1615     ASSERT_EQ(0x0000061au, ImmutableString("gl_MaxTessPatchComponents").mangledNameHash());
1616     ASSERT_EQ(0x0000061bu, ImmutableString("gl_MaxPatchVertices").mangledNameHash());
1617     ASSERT_EQ(0x0000061cu, ImmutableString("gl_MaxTessGenLevel").mangledNameHash());
1618     ASSERT_EQ(0x0000061du,
1619               ImmutableString("gl_MaxTessEvaluationInputComponents").mangledNameHash());
1620     ASSERT_EQ(0x0000061eu,
1621               ImmutableString("gl_MaxTessEvaluationOutputComponents").mangledNameHash());
1622     ASSERT_EQ(0x0000061fu,
1623               ImmutableString("gl_MaxTessEvaluationTextureImageUnits").mangledNameHash());
1624     ASSERT_EQ(0x00000620u,
1625               ImmutableString("gl_MaxTessEvaluationUniformComponents").mangledNameHash());
1626     ASSERT_EQ(0x00000621u, ImmutableString("gl_MaxTessEvaluationImageUniforms").mangledNameHash());
1627     ASSERT_EQ(0x00000622u, ImmutableString("gl_MaxTessEvaluationAtomicCounters").mangledNameHash());
1628     ASSERT_EQ(0x00000623u,
1629               ImmutableString("gl_MaxTessEvaluationAtomicCounterBuffers").mangledNameHash());
1630     ASSERT_EQ(0x00000624u, ImmutableString("gl_MaxSamples").mangledNameHash());
1631     ASSERT_EQ(0x00000625u, ImmutableString("gl_MaxClipDistances").mangledNameHash());
1632     ASSERT_EQ(0x00000626u, ImmutableString("gl_MaxCullDistances").mangledNameHash());
1633     ASSERT_EQ(0x00000627u, ImmutableString("gl_MaxCombinedClipAndCullDistances").mangledNameHash());
1634     ASSERT_EQ(0x00000628u, ImmutableString("gl_FragCoord").mangledNameHash());
1635     ASSERT_EQ(0x00000629u, ImmutableString("gl_FrontFacing").mangledNameHash());
1636     ASSERT_EQ(0x0000062au, ImmutableString("gl_PointCoord").mangledNameHash());
1637     ASSERT_EQ(0x0000062bu, ImmutableString("gl_FragColor").mangledNameHash());
1638     ASSERT_EQ(0x0000062cu, ImmutableString("gl_FragData").mangledNameHash());
1639     ASSERT_EQ(0x0000062du, ImmutableString("gl_FragDepth").mangledNameHash());
1640     ASSERT_EQ(0x0000062eu, ImmutableString("gl_HelperInvocation").mangledNameHash());
1641     ASSERT_EQ(0x0000062fu, ImmutableString("gl_SecondaryFragColorEXT").mangledNameHash());
1642     ASSERT_EQ(0x00000630u, ImmutableString("gl_SecondaryFragDataEXT").mangledNameHash());
1643     ASSERT_EQ(0x00000631u, ImmutableString("gl_FragDepthEXT").mangledNameHash());
1644     ASSERT_EQ(0x00000632u, ImmutableString("gl_LastFragData").mangledNameHash());
1645     ASSERT_EQ(0x00000633u, ImmutableString("gl_LastFragColor").mangledNameHash());
1646     ASSERT_EQ(0x00000634u, ImmutableString("gl_LastFragColorARM").mangledNameHash());
1647     ASSERT_EQ(0x00000635u, ImmutableString("gl_PrimitiveID").mangledNameHash());
1648     ASSERT_EQ(0x00000636u, ImmutableString("gl_Layer").mangledNameHash());
1649     ASSERT_EQ(0x00000637u, ImmutableString("gl_SampleID").mangledNameHash());
1650     ASSERT_EQ(0x00000638u, ImmutableString("gl_SamplePosition").mangledNameHash());
1651     ASSERT_EQ(0x00000639u, ImmutableString("gl_SampleMaskIn").mangledNameHash());
1652     ASSERT_EQ(0x0000063au, ImmutableString("gl_SampleMask").mangledNameHash());
1653     ASSERT_EQ(0x0000063bu, ImmutableString("gl_CullDistance").mangledNameHash());
1654     ASSERT_EQ(0x0000063cu, ImmutableString("gl_ClipDistance").mangledNameHash());
1655     ASSERT_EQ(0x0000063du, ImmutableString("gl_Position").mangledNameHash());
1656     ASSERT_EQ(0x0000063eu, ImmutableString("gl_PointSize").mangledNameHash());
1657     ASSERT_EQ(0x0000063fu, ImmutableString("gl_InstanceID").mangledNameHash());
1658     ASSERT_EQ(0x00000641u, ImmutableString("gl_VertexID").mangledNameHash());
1659     ASSERT_EQ(0x00000644u, ImmutableString("gl_DrawID").mangledNameHash());
1660     ASSERT_EQ(0x00000645u, ImmutableString("gl_BaseVertex").mangledNameHash());
1661     ASSERT_EQ(0x00000646u, ImmutableString("gl_BaseInstance").mangledNameHash());
1662     ASSERT_EQ(0x00000647u, ImmutableString("angle_BaseVertex").mangledNameHash());
1663     ASSERT_EQ(0x00000648u, ImmutableString("angle_BaseInstance").mangledNameHash());
1664     ASSERT_EQ(0x00000649u, ImmutableString("gl_NumWorkGroups").mangledNameHash());
1665     ASSERT_EQ(0x0000064au, ImmutableString("gl_WorkGroupSize").mangledNameHash());
1666     ASSERT_EQ(0x0000064bu, ImmutableString("gl_WorkGroupID").mangledNameHash());
1667     ASSERT_EQ(0x0000064cu, ImmutableString("gl_LocalInvocationID").mangledNameHash());
1668     ASSERT_EQ(0x0000064du, ImmutableString("gl_GlobalInvocationID").mangledNameHash());
1669     ASSERT_EQ(0x0000064eu, ImmutableString("gl_LocalInvocationIndex").mangledNameHash());
1670     ASSERT_EQ(0x0000064fu, ImmutableString("gl_PrimitiveIDIn").mangledNameHash());
1671     ASSERT_EQ(0x00000650u, ImmutableString("gl_InvocationID").mangledNameHash());
1672     ASSERT_EQ(0x00000651u, ImmutableString("gl_PerVertex").mangledNameHash());
1673     ASSERT_EQ(0x00000652u, ImmutableString("gl_in").mangledNameHash());
1674     ASSERT_EQ(0x00000653u, ImmutableString("gl_PatchVerticesIn").mangledNameHash());
1675     ASSERT_EQ(0x00000654u, ImmutableString("gl_TessLevelOuter").mangledNameHash());
1676     ASSERT_EQ(0x00000655u, ImmutableString("gl_TessLevelInner").mangledNameHash());
1677     ASSERT_EQ(0x00000656u, ImmutableString("gl_out").mangledNameHash());
1678     ASSERT_EQ(0x00000657u, ImmutableString("gl_TessCoord").mangledNameHash());
1679     ASSERT_EQ(0x00000658u, ImmutableString("gl_ViewID_OVR").mangledNameHash());
1680     ASSERT_EQ(0x00000000u, ImmutableString("radians").unmangledNameHash());
1681     ASSERT_EQ(0x00000001u, ImmutableString("degrees").unmangledNameHash());
1682     ASSERT_EQ(0x00000002u, ImmutableString("sin").unmangledNameHash());
1683     ASSERT_EQ(0x00000003u, ImmutableString("cos").unmangledNameHash());
1684     ASSERT_EQ(0x00000004u, ImmutableString("tan").unmangledNameHash());
1685     ASSERT_EQ(0x00000005u, ImmutableString("asin").unmangledNameHash());
1686     ASSERT_EQ(0x00000006u, ImmutableString("acos").unmangledNameHash());
1687     ASSERT_EQ(0x00000007u, ImmutableString("atan").unmangledNameHash());
1688     ASSERT_EQ(0x00000008u, ImmutableString("sinh").unmangledNameHash());
1689     ASSERT_EQ(0x00000009u, ImmutableString("cosh").unmangledNameHash());
1690     ASSERT_EQ(0x0000000au, ImmutableString("tanh").unmangledNameHash());
1691     ASSERT_EQ(0x0000000bu, ImmutableString("asinh").unmangledNameHash());
1692     ASSERT_EQ(0x0000000cu, ImmutableString("acosh").unmangledNameHash());
1693     ASSERT_EQ(0x0000000du, ImmutableString("atanh").unmangledNameHash());
1694     ASSERT_EQ(0x0000000eu, ImmutableString("pow").unmangledNameHash());
1695     ASSERT_EQ(0x0000000fu, ImmutableString("exp").unmangledNameHash());
1696     ASSERT_EQ(0x00000010u, ImmutableString("log").unmangledNameHash());
1697     ASSERT_EQ(0x00000011u, ImmutableString("exp2").unmangledNameHash());
1698     ASSERT_EQ(0x00000012u, ImmutableString("log2").unmangledNameHash());
1699     ASSERT_EQ(0x00000013u, ImmutableString("sqrt").unmangledNameHash());
1700     ASSERT_EQ(0x00000014u, ImmutableString("inversesqrt").unmangledNameHash());
1701     ASSERT_EQ(0x00000015u, ImmutableString("abs").unmangledNameHash());
1702     ASSERT_EQ(0x00000016u, ImmutableString("sign").unmangledNameHash());
1703     ASSERT_EQ(0x00000017u, ImmutableString("floor").unmangledNameHash());
1704     ASSERT_EQ(0x00000018u, ImmutableString("trunc").unmangledNameHash());
1705     ASSERT_EQ(0x00000019u, ImmutableString("round").unmangledNameHash());
1706     ASSERT_EQ(0x0000001au, ImmutableString("roundEven").unmangledNameHash());
1707     ASSERT_EQ(0x0000001bu, ImmutableString("ceil").unmangledNameHash());
1708     ASSERT_EQ(0x0000001cu, ImmutableString("fract").unmangledNameHash());
1709     ASSERT_EQ(0x0000001du, ImmutableString("mod").unmangledNameHash());
1710     ASSERT_EQ(0x0000001eu, ImmutableString("min").unmangledNameHash());
1711     ASSERT_EQ(0x0000001fu, ImmutableString("max").unmangledNameHash());
1712     ASSERT_EQ(0x00000020u, ImmutableString("clamp").unmangledNameHash());
1713     ASSERT_EQ(0x00000021u, ImmutableString("mix").unmangledNameHash());
1714     ASSERT_EQ(0x00000022u, ImmutableString("step").unmangledNameHash());
1715     ASSERT_EQ(0x00000023u, ImmutableString("smoothstep").unmangledNameHash());
1716     ASSERT_EQ(0x00000024u, ImmutableString("modf").unmangledNameHash());
1717     ASSERT_EQ(0x00000025u, ImmutableString("isnan").unmangledNameHash());
1718     ASSERT_EQ(0x00000026u, ImmutableString("isinf").unmangledNameHash());
1719     ASSERT_EQ(0x00000027u, ImmutableString("floatBitsToInt").unmangledNameHash());
1720     ASSERT_EQ(0x00000028u, ImmutableString("floatBitsToUint").unmangledNameHash());
1721     ASSERT_EQ(0x00000029u, ImmutableString("intBitsToFloat").unmangledNameHash());
1722     ASSERT_EQ(0x0000002au, ImmutableString("uintBitsToFloat").unmangledNameHash());
1723     ASSERT_EQ(0x0000002bu, ImmutableString("fma").unmangledNameHash());
1724     ASSERT_EQ(0x0000002cu, ImmutableString("frexp").unmangledNameHash());
1725     ASSERT_EQ(0x0000002du, ImmutableString("ldexp").unmangledNameHash());
1726     ASSERT_EQ(0x0000002eu, ImmutableString("packSnorm2x16").unmangledNameHash());
1727     ASSERT_EQ(0x0000002fu, ImmutableString("packHalf2x16").unmangledNameHash());
1728     ASSERT_EQ(0x00000030u, ImmutableString("unpackSnorm2x16").unmangledNameHash());
1729     ASSERT_EQ(0x00000031u, ImmutableString("unpackHalf2x16").unmangledNameHash());
1730     ASSERT_EQ(0x00000032u, ImmutableString("packUnorm2x16").unmangledNameHash());
1731     ASSERT_EQ(0x00000033u, ImmutableString("unpackUnorm2x16").unmangledNameHash());
1732     ASSERT_EQ(0x00000034u, ImmutableString("packUnorm4x8").unmangledNameHash());
1733     ASSERT_EQ(0x00000035u, ImmutableString("packSnorm4x8").unmangledNameHash());
1734     ASSERT_EQ(0x00000036u, ImmutableString("unpackUnorm4x8").unmangledNameHash());
1735     ASSERT_EQ(0x00000037u, ImmutableString("unpackSnorm4x8").unmangledNameHash());
1736     ASSERT_EQ(0x00000038u, ImmutableString("length").unmangledNameHash());
1737     ASSERT_EQ(0x00000039u, ImmutableString("distance").unmangledNameHash());
1738     ASSERT_EQ(0x0000003au, ImmutableString("dot").unmangledNameHash());
1739     ASSERT_EQ(0x0000003bu, ImmutableString("cross").unmangledNameHash());
1740     ASSERT_EQ(0x0000003cu, ImmutableString("normalize").unmangledNameHash());
1741     ASSERT_EQ(0x0000003du, ImmutableString("faceforward").unmangledNameHash());
1742     ASSERT_EQ(0x0000003eu, ImmutableString("reflect").unmangledNameHash());
1743     ASSERT_EQ(0x0000003fu, ImmutableString("refract").unmangledNameHash());
1744     ASSERT_EQ(0x00000040u, ImmutableString("matrixCompMult").unmangledNameHash());
1745     ASSERT_EQ(0x00000041u, ImmutableString("outerProduct").unmangledNameHash());
1746     ASSERT_EQ(0x00000042u, ImmutableString("transpose").unmangledNameHash());
1747     ASSERT_EQ(0x00000043u, ImmutableString("determinant").unmangledNameHash());
1748     ASSERT_EQ(0x00000044u, ImmutableString("inverse").unmangledNameHash());
1749     ASSERT_EQ(0x00000045u, ImmutableString("lessThan").unmangledNameHash());
1750     ASSERT_EQ(0x00000046u, ImmutableString("lessThanEqual").unmangledNameHash());
1751     ASSERT_EQ(0x00000047u, ImmutableString("greaterThan").unmangledNameHash());
1752     ASSERT_EQ(0x00000048u, ImmutableString("greaterThanEqual").unmangledNameHash());
1753     ASSERT_EQ(0x00000049u, ImmutableString("equal").unmangledNameHash());
1754     ASSERT_EQ(0x0000004au, ImmutableString("notEqual").unmangledNameHash());
1755     ASSERT_EQ(0x0000004bu, ImmutableString("any").unmangledNameHash());
1756     ASSERT_EQ(0x0000004cu, ImmutableString("all").unmangledNameHash());
1757     ASSERT_EQ(0x0000004du, ImmutableString("not").unmangledNameHash());
1758     ASSERT_EQ(0x0000004eu, ImmutableString("bitfieldExtract").unmangledNameHash());
1759     ASSERT_EQ(0x0000004fu, ImmutableString("bitfieldInsert").unmangledNameHash());
1760     ASSERT_EQ(0x00000050u, ImmutableString("bitfieldReverse").unmangledNameHash());
1761     ASSERT_EQ(0x00000051u, ImmutableString("bitCount").unmangledNameHash());
1762     ASSERT_EQ(0x00000052u, ImmutableString("findLSB").unmangledNameHash());
1763     ASSERT_EQ(0x00000053u, ImmutableString("findMSB").unmangledNameHash());
1764     ASSERT_EQ(0x00000054u, ImmutableString("uaddCarry").unmangledNameHash());
1765     ASSERT_EQ(0x00000055u, ImmutableString("usubBorrow").unmangledNameHash());
1766     ASSERT_EQ(0x00000056u, ImmutableString("umulExtended").unmangledNameHash());
1767     ASSERT_EQ(0x00000057u, ImmutableString("imulExtended").unmangledNameHash());
1768     ASSERT_EQ(0x00000058u, ImmutableString("texture2D").unmangledNameHash());
1769     ASSERT_EQ(0x00000059u, ImmutableString("texture2DProj").unmangledNameHash());
1770     ASSERT_EQ(0x0000005au, ImmutableString("textureCube").unmangledNameHash());
1771     ASSERT_EQ(0x0000005bu, ImmutableString("texture3D").unmangledNameHash());
1772     ASSERT_EQ(0x0000005cu, ImmutableString("texture3DProj").unmangledNameHash());
1773     ASSERT_EQ(0x0000005du, ImmutableString("shadow2DEXT").unmangledNameHash());
1774     ASSERT_EQ(0x0000005eu, ImmutableString("shadow2DProjEXT").unmangledNameHash());
1775     ASSERT_EQ(0x0000005fu, ImmutableString("texture2DRect").unmangledNameHash());
1776     ASSERT_EQ(0x00000060u, ImmutableString("texture2DRectProj").unmangledNameHash());
1777     ASSERT_EQ(0x00000061u, ImmutableString("texture2DGradEXT").unmangledNameHash());
1778     ASSERT_EQ(0x00000062u, ImmutableString("texture2DProjGradEXT").unmangledNameHash());
1779     ASSERT_EQ(0x00000063u, ImmutableString("textureCubeGradEXT").unmangledNameHash());
1780     ASSERT_EQ(0x00000064u, ImmutableString("textureVideoWEBGL").unmangledNameHash());
1781     ASSERT_EQ(0x00000065u, ImmutableString("texture3DLod").unmangledNameHash());
1782     ASSERT_EQ(0x00000066u, ImmutableString("texture3DProjLod").unmangledNameHash());
1783     ASSERT_EQ(0x00000067u, ImmutableString("texture2DLod").unmangledNameHash());
1784     ASSERT_EQ(0x00000068u, ImmutableString("texture2DProjLod").unmangledNameHash());
1785     ASSERT_EQ(0x00000069u, ImmutableString("textureCubeLod").unmangledNameHash());
1786     ASSERT_EQ(0x0000006au, ImmutableString("texture2DLodEXT").unmangledNameHash());
1787     ASSERT_EQ(0x0000006bu, ImmutableString("texture2DProjLodEXT").unmangledNameHash());
1788     ASSERT_EQ(0x0000006cu, ImmutableString("textureCubeLodEXT").unmangledNameHash());
1789     ASSERT_EQ(0x0000006du, ImmutableString("texture").unmangledNameHash());
1790     ASSERT_EQ(0x0000006eu, ImmutableString("textureProj").unmangledNameHash());
1791     ASSERT_EQ(0x0000006fu, ImmutableString("textureLod").unmangledNameHash());
1792     ASSERT_EQ(0x00000070u, ImmutableString("textureSize").unmangledNameHash());
1793     ASSERT_EQ(0x00000071u, ImmutableString("textureProjLod").unmangledNameHash());
1794     ASSERT_EQ(0x00000072u, ImmutableString("texelFetch").unmangledNameHash());
1795     ASSERT_EQ(0x00000073u, ImmutableString("textureGrad").unmangledNameHash());
1796     ASSERT_EQ(0x00000074u, ImmutableString("textureProjGrad").unmangledNameHash());
1797     ASSERT_EQ(0x00000075u, ImmutableString("textureOffset").unmangledNameHash());
1798     ASSERT_EQ(0x00000076u, ImmutableString("textureProjOffset").unmangledNameHash());
1799     ASSERT_EQ(0x00000077u, ImmutableString("textureLodOffset").unmangledNameHash());
1800     ASSERT_EQ(0x00000078u, ImmutableString("textureProjLodOffset").unmangledNameHash());
1801     ASSERT_EQ(0x00000079u, ImmutableString("texelFetchOffset").unmangledNameHash());
1802     ASSERT_EQ(0x0000007au, ImmutableString("textureGradOffset").unmangledNameHash());
1803     ASSERT_EQ(0x0000007bu, ImmutableString("textureProjGradOffset").unmangledNameHash());
1804     ASSERT_EQ(0x0000007cu, ImmutableString("textureGather").unmangledNameHash());
1805     ASSERT_EQ(0x0000007du, ImmutableString("textureGatherOffset").unmangledNameHash());
1806     ASSERT_EQ(0x0000007eu, ImmutableString("textureGatherOffsets").unmangledNameHash());
1807     ASSERT_EQ(0x0000007fu, ImmutableString("rgb_2_yuv").unmangledNameHash());
1808     ASSERT_EQ(0x00000080u, ImmutableString("yuv_2_rgb").unmangledNameHash());
1809     ASSERT_EQ(0x00000081u, ImmutableString("dFdx").unmangledNameHash());
1810     ASSERT_EQ(0x00000082u, ImmutableString("dFdy").unmangledNameHash());
1811     ASSERT_EQ(0x00000083u, ImmutableString("fwidth").unmangledNameHash());
1812     ASSERT_EQ(0x00000084u, ImmutableString("interpolateAtCentroid").unmangledNameHash());
1813     ASSERT_EQ(0x00000085u, ImmutableString("interpolateAtSample").unmangledNameHash());
1814     ASSERT_EQ(0x00000086u, ImmutableString("interpolateAtOffset").unmangledNameHash());
1815     ASSERT_EQ(0x00000087u, ImmutableString("atomicCounter").unmangledNameHash());
1816     ASSERT_EQ(0x00000088u, ImmutableString("atomicCounterIncrement").unmangledNameHash());
1817     ASSERT_EQ(0x00000089u, ImmutableString("atomicCounterDecrement").unmangledNameHash());
1818     ASSERT_EQ(0x0000008au, ImmutableString("atomicAdd").unmangledNameHash());
1819     ASSERT_EQ(0x0000008bu, ImmutableString("atomicMin").unmangledNameHash());
1820     ASSERT_EQ(0x0000008cu, ImmutableString("atomicMax").unmangledNameHash());
1821     ASSERT_EQ(0x0000008du, ImmutableString("atomicAnd").unmangledNameHash());
1822     ASSERT_EQ(0x0000008eu, ImmutableString("atomicOr").unmangledNameHash());
1823     ASSERT_EQ(0x0000008fu, ImmutableString("atomicXor").unmangledNameHash());
1824     ASSERT_EQ(0x00000090u, ImmutableString("atomicExchange").unmangledNameHash());
1825     ASSERT_EQ(0x00000091u, ImmutableString("atomicCompSwap").unmangledNameHash());
1826     ASSERT_EQ(0x00000092u, ImmutableString("imageSize").unmangledNameHash());
1827     ASSERT_EQ(0x00000093u, ImmutableString("imageStore").unmangledNameHash());
1828     ASSERT_EQ(0x00000094u, ImmutableString("imageLoad").unmangledNameHash());
1829     ASSERT_EQ(0x00000095u, ImmutableString("imageAtomicAdd").unmangledNameHash());
1830     ASSERT_EQ(0x00000096u, ImmutableString("imageAtomicMin").unmangledNameHash());
1831     ASSERT_EQ(0x00000097u, ImmutableString("imageAtomicMax").unmangledNameHash());
1832     ASSERT_EQ(0x00000098u, ImmutableString("imageAtomicAnd").unmangledNameHash());
1833     ASSERT_EQ(0x00000099u, ImmutableString("imageAtomicOr").unmangledNameHash());
1834     ASSERT_EQ(0x0000009au, ImmutableString("imageAtomicXor").unmangledNameHash());
1835     ASSERT_EQ(0x0000009bu, ImmutableString("imageAtomicExchange").unmangledNameHash());
1836     ASSERT_EQ(0x0000009cu, ImmutableString("imageAtomicCompSwap").unmangledNameHash());
1837     ASSERT_EQ(0x0000009du, ImmutableString("memoryBarrier").unmangledNameHash());
1838     ASSERT_EQ(0x0000009eu, ImmutableString("memoryBarrierAtomicCounter").unmangledNameHash());
1839     ASSERT_EQ(0x0000009fu, ImmutableString("memoryBarrierBuffer").unmangledNameHash());
1840     ASSERT_EQ(0x000000a0u, ImmutableString("memoryBarrierImage").unmangledNameHash());
1841     ASSERT_EQ(0x000000a1u, ImmutableString("barrier").unmangledNameHash());
1842     ASSERT_EQ(0x000000a2u, ImmutableString("memoryBarrierShared").unmangledNameHash());
1843     ASSERT_EQ(0x000000a3u, ImmutableString("groupMemoryBarrier").unmangledNameHash());
1844     ASSERT_EQ(0x000000a4u, ImmutableString("EmitVertex").unmangledNameHash());
1845     ASSERT_EQ(0x000000a5u, ImmutableString("EndPrimitive").unmangledNameHash());
1846 }
1847 
1848 }  // namespace sh
1849