// GENERATED FILE - DO NOT EDIT.
// Generated by gen_builtin_symbols.py using data from builtin_function_declarations.txt.
//
// Copyright 2018 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// ImmutableString_test_autogen.cpp:
//   Tests for matching script-generated hashes with runtime computed hashes.

#include "compiler/translator/ImmutableString.h"
#include "gtest/gtest.h"

namespace sh
{

TEST(ImmutableStringTest, ScriptGeneratedHashesMatch)
{
    ASSERT_EQ(0x1ca5f5cau, ImmutableString("radians(0B").mangledNameHash());
    ASSERT_EQ(0x1cab5cdcu, ImmutableString("radians(1B").mangledNameHash());
    ASSERT_EQ(0x1ca8f62bu, ImmutableString("radians(2B").mangledNameHash());
    ASSERT_EQ(0x1ca6dbf7u, ImmutableString("radians(3B").mangledNameHash());
    ASSERT_EQ(0x1ca5733au, ImmutableString("degrees(0B").mangledNameHash());
    ASSERT_EQ(0x1ca81c5eu, ImmutableString("degrees(1B").mangledNameHash());
    ASSERT_EQ(0x1ca0fdeeu, ImmutableString("degrees(2B").mangledNameHash());
    ASSERT_EQ(0x1ca3192cu, ImmutableString("degrees(3B").mangledNameHash());
    ASSERT_EQ(0x0c68a536u, ImmutableString("sin(0B").mangledNameHash());
    ASSERT_EQ(0x0c6604cbu, ImmutableString("sin(1B").mangledNameHash());
    ASSERT_EQ(0x0c6ba397u, ImmutableString("sin(2B").mangledNameHash());
    ASSERT_EQ(0x0c698f82u, ImmutableString("sin(3B").mangledNameHash());
    ASSERT_EQ(0x0c6cfa67u, ImmutableString("cos(0B").mangledNameHash());
    ASSERT_EQ(0x0c6f1633u, ImmutableString("cos(1B").mangledNameHash());
    ASSERT_EQ(0x0c617c1cu, ImmutableString("cos(2B").mangledNameHash());
    ASSERT_EQ(0x0c641ba1u, ImmutableString("cos(3B").mangledNameHash());
    ASSERT_EQ(0x0c6eec2au, ImmutableString("tan(0B").mangledNameHash());
    ASSERT_EQ(0x0c610070u, ImmutableString("tan(1B").mangledNameHash());
    ASSERT_EQ(0x0c6b658bu, ImmutableString("tan(2B").mangledNameHash());
    ASSERT_EQ(0x0c6e046eu, ImmutableString("tan(3B").mangledNameHash());
    ASSERT_EQ(0x1079530au, ImmutableString("asin(0B").mangledNameHash());
    ASSERT_EQ(0x107bf08fu, ImmutableString("asin(1B").mangledNameHash());
    ASSERT_EQ(0x107cde72u, ImmutableString("asin(2B").mangledNameHash());
    ASSERT_EQ(0x107ef228u, ImmutableString("asin(3B").mangledNameHash());
    ASSERT_EQ(0x1075f159u, ImmutableString("acos(0B").mangledNameHash());
    ASSERT_EQ(0x1073dcdcu, ImmutableString("acos(1B").mangledNameHash());
    ASSERT_EQ(0x1072f084u, ImmutableString("acos(2B").mangledNameHash());
    ASSERT_EQ(0x10705009u, ImmutableString("acos(3B").mangledNameHash());
    ASSERT_EQ(0x10982a8bu, ImmutableString("atan(0B0B").mangledNameHash());
    ASSERT_EQ(0x10954d55u, ImmutableString("atan(1B1B").mangledNameHash());
    ASSERT_EQ(0x109de66cu, ImmutableString("atan(2B2B").mangledNameHash());
    ASSERT_EQ(0x109056cfu, ImmutableString("atan(3B3B").mangledNameHash());
    ASSERT_EQ(0x1078e07eu, ImmutableString("atan(0B").mangledNameHash());
    ASSERT_EQ(0x1076cc3bu, ImmutableString("atan(1B").mangledNameHash());
    ASSERT_EQ(0x1075ec70u, ImmutableString("atan(2B").mangledNameHash());
    ASSERT_EQ(0x107b4a10u, ImmutableString("atan(3B").mangledNameHash());
    ASSERT_EQ(0x10755e8fu, ImmutableString("sinh(0B").mangledNameHash());
    ASSERT_EQ(0x1073328bu, ImmutableString("sinh(1B").mangledNameHash());
    ASSERT_EQ(0x10725bc1u, ImmutableString("sinh(2B").mangledNameHash());
    ASSERT_EQ(0x1077b440u, ImmutableString("sinh(3B").mangledNameHash());
    ASSERT_EQ(0x1076845du, ImmutableString("cosh(0B").mangledNameHash());
    ASSERT_EQ(0x1078bfd9u, ImmutableString("cosh(1B").mangledNameHash());
    ASSERT_EQ(0x107b1a06u, ImmutableString("cosh(2B").mangledNameHash());
    ASSERT_EQ(0x107dba8bu, ImmutableString("cosh(3B").mangledNameHash());
    ASSERT_EQ(0x1071119bu, ImmutableString("tanh(0B").mangledNameHash());
    ASSERT_EQ(0x10733497u, ImmutableString("tanh(1B").mangledNameHash());
    ASSERT_EQ(0x10759e30u, ImmutableString("tanh(2B").mangledNameHash());
    ASSERT_EQ(0x10703776u, ImmutableString("tanh(3B").mangledNameHash());
    ASSERT_EQ(0x148cac27u, ImmutableString("asinh(0B").mangledNameHash());
    ASSERT_EQ(0x148f4dfau, ImmutableString("asinh(1B").mangledNameHash());
    ASSERT_EQ(0x1480271fu, ImmutableString("asinh(2B").mangledNameHash());
    ASSERT_EQ(0x1482431bu, ImmutableString("asinh(3B").mangledNameHash());
    ASSERT_EQ(0x148c14feu, ImmutableString("acosh(0B").mangledNameHash());
    ASSERT_EQ(0x14897423u, ImmutableString("acosh(1B").mangledNameHash());
    ASSERT_EQ(0x148f151fu, ImmutableString("acosh(2B").mangledNameHash());
    ASSERT_EQ(0x148cff1au, ImmutableString("acosh(3B").mangledNameHash());
    ASSERT_EQ(0x148b1badu, ImmutableString("atanh(0B").mangledNameHash());
    ASSERT_EQ(0x148878f0u, ImmutableString("atanh(1B").mangledNameHash());
    ASSERT_EQ(0x14861f9fu, ImmutableString("atanh(2B").mangledNameHash());
    ASSERT_EQ(0x148bf514u, ImmutableString("atanh(3B").mangledNameHash());
    ASSERT_EQ(0x0c8d484cu, ImmutableString("pow(0B0B").mangledNameHash());
    ASSERT_EQ(0x0c87043eu, ImmutableString("pow(1B1B").mangledNameHash());
    ASSERT_EQ(0x0c860330u, ImmutableString("pow(2B2B").mangledNameHash());
    ASSERT_EQ(0x0c831999u, ImmutableString("pow(3B3B").mangledNameHash());
    ASSERT_EQ(0x0c6b32c8u, ImmutableString("exp(0B").mangledNameHash());
    ASSERT_EQ(0x0c6d5636u, ImmutableString("exp(1B").mangledNameHash());
    ASSERT_EQ(0x0c6fbdb1u, ImmutableString("exp(2B").mangledNameHash());
    ASSERT_EQ(0x0c6a5499u, ImmutableString("exp(3B").mangledNameHash());
    ASSERT_EQ(0x0c60bd37u, ImmutableString("log(0B").mangledNameHash());
    ASSERT_EQ(0x0c66131eu, ImmutableString("log(1B").mangledNameHash());
    ASSERT_EQ(0x0c63b949u, ImmutableString("log(2B").mangledNameHash());
    ASSERT_EQ(0x0c6194f5u, ImmutableString("log(3B").mangledNameHash());
    ASSERT_EQ(0x1073acd0u, ImmutableString("exp2(0B").mangledNameHash());
    ASSERT_EQ(0x10764dc5u, ImmutableString("exp2(1B").mangledNameHash());
    ASSERT_EQ(0x107f298bu, ImmutableString("exp2(2B").mangledNameHash());
    ASSERT_EQ(0x10714a97u, ImmutableString("exp2(3B").mangledNameHash());
    ASSERT_EQ(0x107eba44u, ImmutableString("log2(0B").mangledNameHash());
    ASSERT_EQ(0x107c1ab1u, ImmutableString("log2(1B").mangledNameHash());
    ASSERT_EQ(0x1079b7b6u, ImmutableString("log2(2B").mangledNameHash());
    ASSERT_EQ(0x107f9207u, ImmutableString("log2(3B").mangledNameHash());
    ASSERT_EQ(0x1071adbbu, ImmutableString("sqrt(0B").mangledNameHash());
    ASSERT_EQ(0x10778fc2u, ImmutableString("sqrt(1B").mangledNameHash());
    ASSERT_EQ(0x1076a689u, ImmutableString("sqrt(2B").mangledNameHash());
    ASSERT_EQ(0x10740614u, ImmutableString("sqrt(3B").mangledNameHash());
    ASSERT_EQ(0x2cee53ddu, ImmutableString("inversesqrt(0B").mangledNameHash());
    ASSERT_EQ(0x2ce3bb6cu, ImmutableString("inversesqrt(1B").mangledNameHash());
    ASSERT_EQ(0x2ce151f2u, ImmutableString("inversesqrt(2B").mangledNameHash());
    ASSERT_EQ(0x2cef3d27u, ImmutableString("inversesqrt(3B").mangledNameHash());
    ASSERT_EQ(0x0c6118f2u, ImmutableString("abs(0B").mangledNameHash());
    ASSERT_EQ(0x0c6efc3cu, ImmutableString("abs(1B").mangledNameHash());
    ASSERT_EQ(0x0c6e1694u, ImmutableString("abs(2B").mangledNameHash());
    ASSERT_EQ(0x0c637d95u, ImmutableString("abs(3B").mangledNameHash());
    ASSERT_EQ(0x0c610961u, ImmutableString("abs(0C").mangledNameHash());
    ASSERT_EQ(0x0c6f0a53u, ImmutableString("abs(1C").mangledNameHash());
    ASSERT_EQ(0x0c6e080au, ImmutableString("abs(2C").mangledNameHash());
    ASSERT_EQ(0x0c638c06u, ImmutableString("abs(3C").mangledNameHash());
    ASSERT_EQ(0x107ba052u, ImmutableString("sign(0B").mangledNameHash());
    ASSERT_EQ(0x1075c6d4u, ImmutableString("sign(1B").mangledNameHash());
    ASSERT_EQ(0x10782b2au, ImmutableString("sign(2B").mangledNameHash());
    ASSERT_EQ(0x107aca67u, ImmutableString("sign(3B").mangledNameHash());
    ASSERT_EQ(0x107bbfe5u, ImmutableString("sign(0C").mangledNameHash());
    ASSERT_EQ(0x1075b747u, ImmutableString("sign(1C").mangledNameHash());
    ASSERT_EQ(0x10783ab9u, ImmutableString("sign(2C").mangledNameHash());
    ASSERT_EQ(0x107abcf0u, ImmutableString("sign(3C").mangledNameHash());
    ASSERT_EQ(0x148688dbu, ImmutableString("floor(0B").mangledNameHash());
    ASSERT_EQ(0x148be379u, ImmutableString("floor(1B").mangledNameHash());
    ASSERT_EQ(0x14898596u, ImmutableString("floor(2B").mangledNameHash());
    ASSERT_EQ(0x148761a0u, ImmutableString("floor(3B").mangledNameHash());
    ASSERT_EQ(0x14826e42u, ImmutableString("trunc(0B").mangledNameHash());
    ASSERT_EQ(0x1487c3c2u, ImmutableString("trunc(1B").mangledNameHash());
    ASSERT_EQ(0x1485660du, ImmutableString("trunc(2B").mangledNameHash());
    ASSERT_EQ(0x14834209u, ImmutableString("trunc(3B").mangledNameHash());
    ASSERT_EQ(0x1480c808u, ImmutableString("round(0B").mangledNameHash());
    ASSERT_EQ(0x148eac12u, ImmutableString("round(1B").mangledNameHash());
    ASSERT_EQ(0x148dc6eeu, ImmutableString("round(2B").mangledNameHash());
    ASSERT_EQ(0x14832dbfu, ImmutableString("round(3B").mangledNameHash());
    ASSERT_EQ(0x24cdb8acu, ImmutableString("roundEven(0B").mangledNameHash());
    ASSERT_EQ(0x24cb958eu, ImmutableString("roundEven(1B").mangledNameHash());
    ASSERT_EQ(0x24c2b5deu, ImmutableString("roundEven(2B").mangledNameHash());
    ASSERT_EQ(0x24c016b3u, ImmutableString("roundEven(3B").mangledNameHash());
    ASSERT_EQ(0x1074db1fu, ImmutableString("ceil(0B").mangledNameHash());
    ASSERT_EQ(0x107ef88eu, ImmutableString("ceil(1B").mangledNameHash());
    ASSERT_EQ(0x107153b8u, ImmutableString("ceil(2B").mangledNameHash());
    ASSERT_EQ(0x1073f35du, ImmutableString("ceil(3B").mangledNameHash());
    ASSERT_EQ(0x14806be8u, ImmutableString("fract(0B").mangledNameHash());
    ASSERT_EQ(0x148e47b2u, ImmutableString("fract(1B").mangledNameHash());
    ASSERT_EQ(0x1485649au, ImmutableString("fract(2B").mangledNameHash());
    ASSERT_EQ(0x1482c577u, ImmutableString("fract(3B").mangledNameHash());
    ASSERT_EQ(0x0c8ed10eu, ImmutableString("mod(0B0B").mangledNameHash());
    ASSERT_EQ(0x0c8133bdu, ImmutableString("mod(1B0B").mangledNameHash());
    ASSERT_EQ(0x0c804dbau, ImmutableString("mod(2B0B").mangledNameHash());
    ASSERT_EQ(0x0c8bcf1bu, ImmutableString("mod(3B0B").mangledNameHash());
    ASSERT_EQ(0x0c83d010u, ImmutableString("mod(1B1B").mangledNameHash());
    ASSERT_EQ(0x0c8540c8u, ImmutableString("mod(2B2B").mangledNameHash());
    ASSERT_EQ(0x0c8ae761u, ImmutableString("mod(3B3B").mangledNameHash());
    ASSERT_EQ(0x0c83ba4au, ImmutableString("min(0B0B").mangledNameHash());
    ASSERT_EQ(0x0c82396bu, ImmutableString("min(1B0B").mangledNameHash());
    ASSERT_EQ(0x0c8c7030u, ImmutableString("min(2B0B").mangledNameHash());
    ASSERT_EQ(0x0c8cc54du, ImmutableString("min(3B0B").mangledNameHash());
    ASSERT_EQ(0x0c84da0eu, ImmutableString("min(1B1B").mangledNameHash());
    ASSERT_EQ(0x0c8175a2u, ImmutableString("min(2B2B").mangledNameHash());
    ASSERT_EQ(0x0c8bed0fu, ImmutableString("min(3B3B").mangledNameHash());
    ASSERT_EQ(0x0c8bd2a5u, ImmutableString("min(0C0C").mangledNameHash());
    ASSERT_EQ(0x0c880c7au, ImmutableString("min(1C1C").mangledNameHash());
    ASSERT_EQ(0x0c88171cu, ImmutableString("min(2C2C").mangledNameHash());
    ASSERT_EQ(0x0c859e3eu, ImmutableString("min(3C3C").mangledNameHash());
    ASSERT_EQ(0x0c8a0c9au, ImmutableString("min(1C0C").mangledNameHash());
    ASSERT_EQ(0x0c849cbeu, ImmutableString("min(2C0C").mangledNameHash());
    ASSERT_EQ(0x0c84903fu, ImmutableString("min(3C0C").mangledNameHash());
    ASSERT_EQ(0x0c840c87u, ImmutableString("min(0D0D").mangledNameHash());
    ASSERT_EQ(0x0c895321u, ImmutableString("min(1D1D").mangledNameHash());
    ASSERT_EQ(0x0c8470b5u, ImmutableString("min(2D2D").mangledNameHash());
    ASSERT_EQ(0x0c86138du, ImmutableString("min(3D3D").mangledNameHash());
    ASSERT_EQ(0x0c86f921u, ImmutableString("min(1D0D").mangledNameHash());
    ASSERT_EQ(0x0c813da4u, ImmutableString("min(2D0D").mangledNameHash());
    ASSERT_EQ(0x0c87fdd9u, ImmutableString("min(3D0D").mangledNameHash());
    ASSERT_EQ(0x0c8e7928u, ImmutableString("max(0B0B").mangledNameHash());
    ASSERT_EQ(0x0c8a02a9u, ImmutableString("max(1B0B").mangledNameHash());
    ASSERT_EQ(0x0c8d02a1u, ImmutableString("max(2B0B").mangledNameHash());
    ASSERT_EQ(0x0c86a229u, ImmutableString("max(3B0B").mangledNameHash());
    ASSERT_EQ(0x0c8c26cdu, ImmutableString("max(1B1B").mangledNameHash());
    ASSERT_EQ(0x0c800f27u, ImmutableString("max(2B2B").mangledNameHash());
    ASSERT_EQ(0x0c844fb5u, ImmutableString("max(3B3B").mangledNameHash());
    ASSERT_EQ(0x0c8aaf96u, ImmutableString("max(0C0C").mangledNameHash());
    ASSERT_EQ(0x0c8f6447u, ImmutableString("max(1C1C").mangledNameHash());
    ASSERT_EQ(0x0c89b596u, ImmutableString("max(2C2C").mangledNameHash());
    ASSERT_EQ(0x0c8912a9u, ImmutableString("max(3C3C").mangledNameHash());
    ASSERT_EQ(0x0c81f92eu, ImmutableString("max(1C0C").mangledNameHash());
    ASSERT_EQ(0x0c8536c3u, ImmutableString("max(2C0C").mangledNameHash());
    ASSERT_EQ(0x0c8e9eabu, ImmutableString("max(3C0C").mangledNameHash());
    ASSERT_EQ(0x0c8e4658u, ImmutableString("max(0D0D").mangledNameHash());
    ASSERT_EQ(0x0c8c2b46u, ImmutableString("max(1D1D").mangledNameHash());
    ASSERT_EQ(0x0c850224u, ImmutableString("max(2D2D").mangledNameHash());
    ASSERT_EQ(0x0c85921fu, ImmutableString("max(3D3D").mangledNameHash());
    ASSERT_EQ(0x0c8a492cu, ImmutableString("max(1D0D").mangledNameHash());
    ASSERT_EQ(0x0c884c7au, ImmutableString("max(2D0D").mangledNameHash());
    ASSERT_EQ(0x0c8e71adu, ImmutableString("max(3D0D").mangledNameHash());
    ASSERT_EQ(0x14cbe76eu, ImmutableString("clamp(0B0B0B").mangledNameHash());
    ASSERT_EQ(0x14c5e296u, ImmutableString("clamp(1B0B0B").mangledNameHash());
    ASSERT_EQ(0x14cccae5u, ImmutableString("clamp(2B0B0B").mangledNameHash());
    ASSERT_EQ(0x14cb1025u, ImmutableString("clamp(3B0B0B").mangledNameHash());
    ASSERT_EQ(0x14c6b919u, ImmutableString("clamp(1B1B1B").mangledNameHash());
    ASSERT_EQ(0x14cf0779u, ImmutableString("clamp(2B2B2B").mangledNameHash());
    ASSERT_EQ(0x14c33da1u, ImmutableString("clamp(3B3B3B").mangledNameHash());
    ASSERT_EQ(0x14c404a0u, ImmutableString("clamp(0C0C0C").mangledNameHash());
    ASSERT_EQ(0x14c1bf46u, ImmutableString("clamp(1C0C0C").mangledNameHash());
    ASSERT_EQ(0x14cc2e9au, ImmutableString("clamp(2C0C0C").mangledNameHash());
    ASSERT_EQ(0x14c4b865u, ImmutableString("clamp(3C0C0C").mangledNameHash());
    ASSERT_EQ(0x14c57085u, ImmutableString("clamp(1C1C1C").mangledNameHash());
    ASSERT_EQ(0x14c00d68u, ImmutableString("clamp(2C2C2C").mangledNameHash());
    ASSERT_EQ(0x14cae813u, ImmutableString("clamp(3C3C3C").mangledNameHash());
    ASSERT_EQ(0x14cc3941u, ImmutableString("clamp(0D0D0D").mangledNameHash());
    ASSERT_EQ(0x14c0acb1u, ImmutableString("clamp(1D0D0D").mangledNameHash());
    ASSERT_EQ(0x14c4515bu, ImmutableString("clamp(2D0D0D").mangledNameHash());
    ASSERT_EQ(0x14cb6e76u, ImmutableString("clamp(3D0D0D").mangledNameHash());
    ASSERT_EQ(0x14c61344u, ImmutableString("clamp(1D1D1D").mangledNameHash());
    ASSERT_EQ(0x14c9dd99u, ImmutableString("clamp(2D2D2D").mangledNameHash());
    ASSERT_EQ(0x14ceb43eu, ImmutableString("clamp(3D3D3D").mangledNameHash());
    ASSERT_EQ(0x0cab5c44u, ImmutableString("mix(0B0B0B").mangledNameHash());
    ASSERT_EQ(0x0ca1f57du, ImmutableString("mix(1B1B0B").mangledNameHash());
    ASSERT_EQ(0x0ca60671u, ImmutableString("mix(2B2B0B").mangledNameHash());
    ASSERT_EQ(0x0cac3e9fu, ImmutableString("mix(3B3B0B").mangledNameHash());
    ASSERT_EQ(0x0caf5440u, ImmutableString("mix(1B1B1B").mangledNameHash());
    ASSERT_EQ(0x0ca9009eu, ImmutableString("mix(2B2B2B").mangledNameHash());
    ASSERT_EQ(0x0cad187au, ImmutableString("mix(3B3B3B").mangledNameHash());
    ASSERT_EQ(0x0cab6df1u, ImmutableString("mix(0B0B0E").mangledNameHash());
    ASSERT_EQ(0x0cafcf44u, ImmutableString("mix(1B1B1E").mangledNameHash());
    ASSERT_EQ(0x0ca9587fu, ImmutableString("mix(2B2B2E").mangledNameHash());
    ASSERT_EQ(0x0cacc094u, ImmutableString("mix(3B3B3E").mangledNameHash());
    ASSERT_EQ(0x109cc0c6u, ImmutableString("step(0B0B").mangledNameHash());
    ASSERT_EQ(0x10992111u, ImmutableString("step(1B1B").mangledNameHash());
    ASSERT_EQ(0x10935054u, ImmutableString("step(2B2B").mangledNameHash());
    ASSERT_EQ(0x109cf7f1u, ImmutableString("step(3B3B").mangledNameHash());
    ASSERT_EQ(0x10922878u, ImmutableString("step(0B1B").mangledNameHash());
    ASSERT_EQ(0x109fc6e7u, ImmutableString("step(0B2B").mangledNameHash());
    ASSERT_EQ(0x109daa13u, ImmutableString("step(0B3B").mangledNameHash());
    ASSERT_EQ(0x291bdbcdu, ImmutableString("smoothstep(0B0B0B").mangledNameHash());
    ASSERT_EQ(0x29129286u, ImmutableString("smoothstep(1B1B1B").mangledNameHash());
    ASSERT_EQ(0x29145112u, ImmutableString("smoothstep(2B2B2B").mangledNameHash());
    ASSERT_EQ(0x29137486u, ImmutableString("smoothstep(3B3B3B").mangledNameHash());
    ASSERT_EQ(0x29113c5du, ImmutableString("smoothstep(0B0B1B").mangledNameHash());
    ASSERT_EQ(0x291ed9f2u, ImmutableString("smoothstep(0B0B2B").mangledNameHash());
    ASSERT_EQ(0x291cba04u, ImmutableString("smoothstep(0B0B3B").mangledNameHash());
    ASSERT_EQ(0x1097fab5u, ImmutableString("modf(0B0B").mangledNameHash());
    ASSERT_EQ(0x10951ffeu, ImmutableString("modf(1B1B").mangledNameHash());
    ASSERT_EQ(0x109f44f5u, ImmutableString("modf(2B2B").mangledNameHash());
    ASSERT_EQ(0x10901551u, ImmutableString("modf(3B3B").mangledNameHash());
    ASSERT_EQ(0x148d4956u, ImmutableString("isnan(0B").mangledNameHash());
    ASSERT_EQ(0x148fe84bu, ImmutableString("isnan(1B").mangledNameHash());
    ASSERT_EQ(0x1480c6aeu, ImmutableString("isnan(2B").mangledNameHash());
    ASSERT_EQ(0x148ae3f8u, ImmutableString("isnan(3B").mangledNameHash());
    ASSERT_EQ(0x14884407u, ImmutableString("isinf(0B").mangledNameHash());
    ASSERT_EQ(0x148a680au, ImmutableString("isinf(1B").mangledNameHash());
    ASSERT_EQ(0x1484c8c8u, ImmutableString("isinf(2B").mangledNameHash());
    ASSERT_EQ(0x148769adu, ImmutableString("isinf(3B").mangledNameHash());
    ASSERT_EQ(0x3915f628u, ImmutableString("floatBitsToInt(0B").mangledNameHash());
    ASSERT_EQ(0x3913568du, ImmutableString("floatBitsToInt(1B").mangledNameHash());
    ASSERT_EQ(0x3910f8b9u, ImmutableString("floatBitsToInt(2B").mangledNameHash());
    ASSERT_EQ(0x391ed774u, ImmutableString("floatBitsToInt(3B").mangledNameHash());
    ASSERT_EQ(0x3d204dd3u, ImmutableString("floatBitsToUint(0B").mangledNameHash());
    ASSERT_EQ(0x3d2a6fcau, ImmutableString("floatBitsToUint(1B").mangledNameHash());
    ASSERT_EQ(0x3d2cc57cu, ImmutableString("floatBitsToUint(2B").mangledNameHash());
    ASSERT_EQ(0x3d2f6a98u, ImmutableString("floatBitsToUint(3B").mangledNameHash());
    ASSERT_EQ(0x3913c3f6u, ImmutableString("intBitsToFloat(0C").mangledNameHash());
    ASSERT_EQ(0x3911c106u, ImmutableString("intBitsToFloat(1C").mangledNameHash());
    ASSERT_EQ(0x3910c5d7u, ImmutableString("intBitsToFloat(2C").mangledNameHash());
    ASSERT_EQ(0x39164139u, ImmutableString("intBitsToFloat(3C").mangledNameHash());
    ASSERT_EQ(0x3d27a145u, ImmutableString("uintBitsToFloat(0D").mangledNameHash());
    ASSERT_EQ(0x3d2a886cu, ImmutableString("uintBitsToFloat(1D").mangledNameHash());
    ASSERT_EQ(0x3d2b50abu, ImmutableString("uintBitsToFloat(2D").mangledNameHash());
    ASSERT_EQ(0x3d25c369u, ImmutableString("uintBitsToFloat(3D").mangledNameHash());
    ASSERT_EQ(0x14af3af7u, ImmutableString("frexp(0B0C").mangledNameHash());
    ASSERT_EQ(0x14aa386au, ImmutableString("frexp(1B1C").mangledNameHash());
    ASSERT_EQ(0x14a1711cu, ImmutableString("frexp(2B2C").mangledNameHash());
    ASSERT_EQ(0x14a7dfddu, ImmutableString("frexp(3B3C").mangledNameHash());
    ASSERT_EQ(0x14a5788fu, ImmutableString("ldexp(0B0C").mangledNameHash());
    ASSERT_EQ(0x14a125a4u, ImmutableString("ldexp(1B1C").mangledNameHash());
    ASSERT_EQ(0x14a941e1u, ImmutableString("ldexp(2B2C").mangledNameHash());
    ASSERT_EQ(0x14afab5au, ImmutableString("ldexp(3B3C").mangledNameHash());
    ASSERT_EQ(0x3509e2f1u, ImmutableString("packSnorm2x16(1B").mangledNameHash());
    ASSERT_EQ(0x350e7c49u, ImmutableString("packUnorm2x16(1B").mangledNameHash());
    ASSERT_EQ(0x30fbf415u, ImmutableString("packHalf2x16(1B").mangledNameHash());
    ASSERT_EQ(0x3d2abf41u, ImmutableString("unpackSnorm2x16(0D").mangledNameHash());
    ASSERT_EQ(0x3d2e13e6u, ImmutableString("unpackUnorm2x16(0D").mangledNameHash());
    ASSERT_EQ(0x391bbc13u, ImmutableString("unpackHalf2x16(0D").mangledNameHash());
    ASSERT_EQ(0x30f8217au, ImmutableString("packUnorm4x8(3B").mangledNameHash());
    ASSERT_EQ(0x30f6d757u, ImmutableString("packSnorm4x8(3B").mangledNameHash());
    ASSERT_EQ(0x3917e321u, ImmutableString("unpackUnorm4x8(0D").mangledNameHash());
    ASSERT_EQ(0x3912bd2du, ImmutableString("unpackSnorm4x8(0D").mangledNameHash());
    ASSERT_EQ(0x1891756bu, ImmutableString("length(0B").mangledNameHash());
    ASSERT_EQ(0x189ed736u, ImmutableString("length(1B").mangledNameHash());
    ASSERT_EQ(0x18947315u, ImmutableString("length(2B").mangledNameHash());
    ASSERT_EQ(0x18925f20u, ImmutableString("length(3B").mangledNameHash());
    ASSERT_EQ(0x20d979cdu, ImmutableString("distance(0B0B").mangledNameHash());
    ASSERT_EQ(0x20dfd70fu, ImmutableString("distance(1B1B").mangledNameHash());
    ASSERT_EQ(0x20d1a6f5u, ImmutableString("distance(2B2B").mangledNameHash());
    ASSERT_EQ(0x20d08e18u, ImmutableString("distance(3B3B").mangledNameHash());
    ASSERT_EQ(0x0c8a0e3eu, ImmutableString("dot(0B0B").mangledNameHash());
    ASSERT_EQ(0x0c8412a7u, ImmutableString("dot(1B1B").mangledNameHash());
    ASSERT_EQ(0x0c8c41a3u, ImmutableString("dot(2B2B").mangledNameHash());
    ASSERT_EQ(0x0c82ace0u, ImmutableString("dot(3B3B").mangledNameHash());
    ASSERT_EQ(0x14a4c07au, ImmutableString("cross(2B2B").mangledNameHash());
    ASSERT_EQ(0x24ca2b81u, ImmutableString("normalize(0B").mangledNameHash());
    ASSERT_EQ(0x24c44c28u, ImmutableString("normalize(1B").mangledNameHash());
    ASSERT_EQ(0x24c6a3d6u, ImmutableString("normalize(2B").mangledNameHash());
    ASSERT_EQ(0x24c942bbu, ImmutableString("normalize(3B").mangledNameHash());
    ASSERT_EQ(0x2d2fa1bau, ImmutableString("faceforward(0B0B0B").mangledNameHash());
    ASSERT_EQ(0x2d23a287u, ImmutableString("faceforward(1B1B1B").mangledNameHash());
    ASSERT_EQ(0x2d2d4250u, ImmutableString("faceforward(2B2B2B").mangledNameHash());
    ASSERT_EQ(0x2d216fbcu, ImmutableString("faceforward(3B3B3B").mangledNameHash());
    ASSERT_EQ(0x1cc64487u, ImmutableString("reflect(0B0B").mangledNameHash());
    ASSERT_EQ(0x1ccca9c8u, ImmutableString("reflect(1B1B").mangledNameHash());
    ASSERT_EQ(0x1cc408dau, ImmutableString("reflect(2B2B").mangledNameHash());
    ASSERT_EQ(0x1cc6193fu, ImmutableString("reflect(3B3B").mangledNameHash());
    ASSERT_EQ(0x1ce7660eu, ImmutableString("refract(0B0B0B").mangledNameHash());
    ASSERT_EQ(0x1ce0c06au, ImmutableString("refract(1B1B0B").mangledNameHash());
    ASSERT_EQ(0x1ce342a6u, ImmutableString("refract(2B2B0B").mangledNameHash());
    ASSERT_EQ(0x1ce34099u, ImmutableString("refract(3B3B0B").mangledNameHash());
    ASSERT_EQ(0x39325152u, ImmutableString("matrixCompMult(5B5B").mangledNameHash());
    ASSERT_EQ(0x393ce233u, ImmutableString("matrixCompMult(ABAB").mangledNameHash());
    ASSERT_EQ(0x393640c0u, ImmutableString("matrixCompMult(FBFB").mangledNameHash());
    ASSERT_EQ(0x3930f22du, ImmutableString("matrixCompMult(9B9B").mangledNameHash());
    ASSERT_EQ(0x39393016u, ImmutableString("matrixCompMult(6B6B").mangledNameHash());
    ASSERT_EQ(0x393d70dau, ImmutableString("matrixCompMult(DBDB").mangledNameHash());
    ASSERT_EQ(0x39334a4du, ImmutableString("matrixCompMult(7B7B").mangledNameHash());
    ASSERT_EQ(0x393f69ceu, ImmutableString("matrixCompMult(EBEB").mangledNameHash());
    ASSERT_EQ(0x3939896du, ImmutableString("matrixCompMult(BBBB").mangledNameHash());
    ASSERT_EQ(0x311128b0u, ImmutableString("outerProduct(1B1B").mangledNameHash());
    ASSERT_EQ(0x311b6bbfu, ImmutableString("outerProduct(2B2B").mangledNameHash());
    ASSERT_EQ(0x311c3faau, ImmutableString("outerProduct(3B3B").mangledNameHash());
    ASSERT_EQ(0x311c4162u, ImmutableString("outerProduct(2B1B").mangledNameHash());
    ASSERT_EQ(0x31120e21u, ImmutableString("outerProduct(1B2B").mangledNameHash());
    ASSERT_EQ(0x311f3234u, ImmutableString("outerProduct(3B1B").mangledNameHash());
    ASSERT_EQ(0x31142a15u, ImmutableString("outerProduct(1B3B").mangledNameHash());
    ASSERT_EQ(0x311199aau, ImmutableString("outerProduct(3B2B").mangledNameHash());
    ASSERT_EQ(0x3110c06fu, ImmutableString("outerProduct(2B3B").mangledNameHash());
    ASSERT_EQ(0x24cfb971u, ImmutableString("transpose(5B").mangledNameHash());
    ASSERT_EQ(0x24c04563u, ImmutableString("transpose(AB").mangledNameHash());
    ASSERT_EQ(0x24cc2056u, ImmutableString("transpose(FB").mangledNameHash());
    ASSERT_EQ(0x24ca150au, ImmutableString("transpose(6B").mangledNameHash());
    ASSERT_EQ(0x24cb384cu, ImmutableString("transpose(9B").mangledNameHash());
    ASSERT_EQ(0x24ccb677u, ImmutableString("transpose(7B").mangledNameHash());
    ASSERT_EQ(0x24cfa59eu, ImmutableString("transpose(DB").mangledNameHash());
    ASSERT_EQ(0x24caa0a8u, ImmutableString("transpose(BB").mangledNameHash());
    ASSERT_EQ(0x24c9ce28u, ImmutableString("transpose(EB").mangledNameHash());
    ASSERT_EQ(0x2ced705au, ImmutableString("determinant(5B").mangledNameHash());
    ASSERT_EQ(0x2cee0c54u, ImmutableString("determinant(AB").mangledNameHash());
    ASSERT_EQ(0x2ce9e97du, ImmutableString("determinant(FB").mangledNameHash());
    ASSERT_EQ(0x1ca06416u, ImmutableString("inverse(5B").mangledNameHash());
    ASSERT_EQ(0x1ca0f080u, ImmutableString("inverse(AB").mangledNameHash());
    ASSERT_EQ(0x1ca198d9u, ImmutableString("inverse(FB").mangledNameHash());
    ASSERT_EQ(0x20d3517eu, ImmutableString("lessThan(1B1B").mangledNameHash());
    ASSERT_EQ(0x20d4c66eu, ImmutableString("lessThan(2B2B").mangledNameHash());
    ASSERT_EQ(0x20da61d4u, ImmutableString("lessThan(3B3B").mangledNameHash());
    ASSERT_EQ(0x20d69913u, ImmutableString("lessThan(1C1C").mangledNameHash());
    ASSERT_EQ(0x20df72aau, ImmutableString("lessThan(2C2C").mangledNameHash());
    ASSERT_EQ(0x20d42037u, ImmutableString("lessThan(3C3C").mangledNameHash());
    ASSERT_EQ(0x20dae9e7u, ImmutableString("lessThan(1D1D").mangledNameHash());
    ASSERT_EQ(0x20d2c382u, ImmutableString("lessThan(2D2D").mangledNameHash());
    ASSERT_EQ(0x20d0bc8cu, ImmutableString("lessThan(3D3D").mangledNameHash());
    ASSERT_EQ(0x352bbb54u, ImmutableString("lessThanEqual(1B1B").mangledNameHash());
    ASSERT_EQ(0x352f913eu, ImmutableString("lessThanEqual(2B2B").mangledNameHash());
    ASSERT_EQ(0x352cacb6u, ImmutableString("lessThanEqual(3B3B").mangledNameHash());
    ASSERT_EQ(0x352eff39u, ImmutableString("lessThanEqual(1C1C").mangledNameHash());
    ASSERT_EQ(0x352938d0u, ImmutableString("lessThanEqual(2C2C").mangledNameHash());
    ASSERT_EQ(0x35296680u, ImmutableString("lessThanEqual(3C3C").mangledNameHash());
    ASSERT_EQ(0x352bc93du, ImmutableString("lessThanEqual(1D1D").mangledNameHash());
    ASSERT_EQ(0x35248d4eu, ImmutableString("lessThanEqual(2D2D").mangledNameHash());
    ASSERT_EQ(0x352df7d8u, ImmutableString("lessThanEqual(3D3D").mangledNameHash());
    ASSERT_EQ(0x2d02eb78u, ImmutableString("greaterThan(1B1B").mangledNameHash());
    ASSERT_EQ(0x2d0a449bu, ImmutableString("greaterThan(2B2B").mangledNameHash());
    ASSERT_EQ(0x2d052a50u, ImmutableString("greaterThan(3B3B").mangledNameHash());
    ASSERT_EQ(0x2d0b99c3u, ImmutableString("greaterThan(1C1C").mangledNameHash());
    ASSERT_EQ(0x2d0ba1a0u, ImmutableString("greaterThan(2C2C").mangledNameHash());
    ASSERT_EQ(0x2d0362a4u, ImmutableString("greaterThan(3C3C").mangledNameHash());
    ASSERT_EQ(0x2d02d8e9u, ImmutableString("greaterThan(1D1D").mangledNameHash());
    ASSERT_EQ(0x2d03b1f6u, ImmutableString("greaterThan(2D2D").mangledNameHash());
    ASSERT_EQ(0x2d026f5fu, ImmutableString("greaterThan(3D3D").mangledNameHash());
    ASSERT_EQ(0x41598af3u, ImmutableString("greaterThanEqual(1B1B").mangledNameHash());
    ASSERT_EQ(0x415cecbdu, ImmutableString("greaterThanEqual(2B2B").mangledNameHash());
    ASSERT_EQ(0x415bc9cbu, ImmutableString("greaterThanEqual(3B3B").mangledNameHash());
    ASSERT_EQ(0x415e3912u, ImmutableString("greaterThanEqual(1C1C").mangledNameHash());
    ASSERT_EQ(0x41563f06u, ImmutableString("greaterThanEqual(2C2C").mangledNameHash());
    ASSERT_EQ(0x415a0237u, ImmutableString("greaterThanEqual(3C3C").mangledNameHash());
    ASSERT_EQ(0x415d84abu, ImmutableString("greaterThanEqual(1D1D").mangledNameHash());
    ASSERT_EQ(0x415269b7u, ImmutableString("greaterThanEqual(2D2D").mangledNameHash());
    ASSERT_EQ(0x415d18d9u, ImmutableString("greaterThanEqual(3D3D").mangledNameHash());
    ASSERT_EQ(0x14af6410u, ImmutableString("equal(1B1B").mangledNameHash());
    ASSERT_EQ(0x14a99557u, ImmutableString("equal(2B2B").mangledNameHash());
    ASSERT_EQ(0x14a344cau, ImmutableString("equal(3B3B").mangledNameHash());
    ASSERT_EQ(0x14aabf32u, ImmutableString("equal(1C1C").mangledNameHash());
    ASSERT_EQ(0x14a841f7u, ImmutableString("equal(2C2C").mangledNameHash());
    ASSERT_EQ(0x14ad02bdu, ImmutableString("equal(3C3C").mangledNameHash());
    ASSERT_EQ(0x14ac0278u, ImmutableString("equal(1D1D").mangledNameHash());
    ASSERT_EQ(0x14a4b126u, ImmutableString("equal(2D2D").mangledNameHash());
    ASSERT_EQ(0x14ad7597u, ImmutableString("equal(3D3D").mangledNameHash());
    ASSERT_EQ(0x14aeb3fau, ImmutableString("equal(1E1E").mangledNameHash());
    ASSERT_EQ(0x14adc97au, ImmutableString("equal(2E2E").mangledNameHash());
    ASSERT_EQ(0x14a24982u, ImmutableString("equal(3E3E").mangledNameHash());
    ASSERT_EQ(0x20d58403u, ImmutableString("notEqual(1B1B").mangledNameHash());
    ASSERT_EQ(0x20db5cc6u, ImmutableString("notEqual(2B2B").mangledNameHash());
    ASSERT_EQ(0x20d71eb8u, ImmutableString("notEqual(3B3B").mangledNameHash());
    ASSERT_EQ(0x20d6513cu, ImmutableString("notEqual(1C1C").mangledNameHash());
    ASSERT_EQ(0x20d4c7eeu, ImmutableString("notEqual(2C2C").mangledNameHash());
    ASSERT_EQ(0x20dd5e88u, ImmutableString("notEqual(3C3C").mangledNameHash());
    ASSERT_EQ(0x20d59f47u, ImmutableString("notEqual(1D1D").mangledNameHash());
    ASSERT_EQ(0x20dcebb4u, ImmutableString("notEqual(2D2D").mangledNameHash());
    ASSERT_EQ(0x20dc53d0u, ImmutableString("notEqual(3D3D").mangledNameHash());
    ASSERT_EQ(0x20d1d723u, ImmutableString("notEqual(1E1E").mangledNameHash());
    ASSERT_EQ(0x20d2b884u, ImmutableString("notEqual(2E2E").mangledNameHash());
    ASSERT_EQ(0x20d7839eu, ImmutableString("notEqual(3E3E").mangledNameHash());
    ASSERT_EQ(0x0c632bd9u, ImmutableString("any(1E").mangledNameHash());
    ASSERT_EQ(0x0c682adeu, ImmutableString("any(2E").mangledNameHash());
    ASSERT_EQ(0x0c65e3b3u, ImmutableString("any(3E").mangledNameHash());
    ASSERT_EQ(0x0c60fbdau, ImmutableString("all(1E").mangledNameHash());
    ASSERT_EQ(0x0c6bff3cu, ImmutableString("all(2E").mangledNameHash());
    ASSERT_EQ(0x0c6db950u, ImmutableString("all(3E").mangledNameHash());
    ASSERT_EQ(0x0c6ded4fu, ImmutableString("not(1E").mangledNameHash());
    ASSERT_EQ(0x0c6ee660u, ImmutableString("not(2E").mangledNameHash());
    ASSERT_EQ(0x0c612efdu, ImmutableString("not(3E").mangledNameHash());
    ASSERT_EQ(0x3d62ca0du, ImmutableString("bitfieldExtract(0C0C0C").mangledNameHash());
    ASSERT_EQ(0x3d630b44u, ImmutableString("bitfieldExtract(1C0C0C").mangledNameHash());
    ASSERT_EQ(0x3d61b403u, ImmutableString("bitfieldExtract(2C0C0C").mangledNameHash());
    ASSERT_EQ(0x3d62ec45u, ImmutableString("bitfieldExtract(3C0C0C").mangledNameHash());
    ASSERT_EQ(0x3d61e101u, ImmutableString("bitfieldExtract(0D0C0C").mangledNameHash());
    ASSERT_EQ(0x3d6bea76u, ImmutableString("bitfieldExtract(1D0C0C").mangledNameHash());
    ASSERT_EQ(0x3d650769u, ImmutableString("bitfieldExtract(2D0C0C").mangledNameHash());
    ASSERT_EQ(0x3d62667bu, ImmutableString("bitfieldExtract(3D0C0C").mangledNameHash());
    ASSERT_EQ(0x397bc0a4u, ImmutableString("bitfieldInsert(0C0C0C0C").mangledNameHash());
    ASSERT_EQ(0x39722ea4u, ImmutableString("bitfieldInsert(1C1C0C0C").mangledNameHash());
    ASSERT_EQ(0x397f475fu, ImmutableString("bitfieldInsert(2C2C0C0C").mangledNameHash());
    ASSERT_EQ(0x3971001fu, ImmutableString("bitfieldInsert(3C3C0C0C").mangledNameHash());
    ASSERT_EQ(0x3976b0a6u, ImmutableString("bitfieldInsert(0D0D0C0C").mangledNameHash());
    ASSERT_EQ(0x3973d7eau, ImmutableString("bitfieldInsert(1D1D0C0C").mangledNameHash());
    ASSERT_EQ(0x3977057au, ImmutableString("bitfieldInsert(2D2D0C0C").mangledNameHash());
    ASSERT_EQ(0x3970aafcu, ImmutableString("bitfieldInsert(3D3D0C0C").mangledNameHash());
    ASSERT_EQ(0x3d2386cdu, ImmutableString("bitfieldReverse(0C").mangledNameHash());
    ASSERT_EQ(0x3d2e0c10u, ImmutableString("bitfieldReverse(1C").mangledNameHash());
    ASSERT_EQ(0x3d2f0702u, ImmutableString("bitfieldReverse(2C").mangledNameHash());
    ASSERT_EQ(0x3d210852u, ImmutableString("bitfieldReverse(3C").mangledNameHash());
    ASSERT_EQ(0x3d23deecu, ImmutableString("bitfieldReverse(0D").mangledNameHash());
    ASSERT_EQ(0x3d2db471u, ImmutableString("bitfieldReverse(1D").mangledNameHash());
    ASSERT_EQ(0x3d2e9c06u, ImmutableString("bitfieldReverse(2D").mangledNameHash());
    ASSERT_EQ(0x3d20f7c7u, ImmutableString("bitfieldReverse(3D").mangledNameHash());
    ASSERT_EQ(0x20b389afu, ImmutableString("bitCount(0C").mangledNameHash());
    ASSERT_EQ(0x20b18889u, ImmutableString("bitCount(1C").mangledNameHash());
    ASSERT_EQ(0x20b08fccu, ImmutableString("bitCount(2C").mangledNameHash());
    ASSERT_EQ(0x20b60bc0u, ImmutableString("bitCount(3C").mangledNameHash());
    ASSERT_EQ(0x20b3783au, ImmutableString("bitCount(0D").mangledNameHash());
    ASSERT_EQ(0x20b11d8bu, ImmutableString("bitCount(1D").mangledNameHash());
    ASSERT_EQ(0x20b0372du, ImmutableString("bitCount(2D").mangledNameHash());
    ASSERT_EQ(0x20b653e6u, ImmutableString("bitCount(3D").mangledNameHash());
    ASSERT_EQ(0x1cac1124u, ImmutableString("findLSB(0C").mangledNameHash());
    ASSERT_EQ(0x1caa1274u, ImmutableString("findLSB(1C").mangledNameHash());
    ASSERT_EQ(0x1ca9155eu, ImmutableString("findLSB(2C").mangledNameHash());
    ASSERT_EQ(0x1cae9c83u, ImmutableString("findLSB(3C").mangledNameHash());
    ASSERT_EQ(0x1cac8e20u, ImmutableString("findLSB(0D").mangledNameHash());
    ASSERT_EQ(0x1caa21e1u, ImmutableString("findLSB(1D").mangledNameHash());
    ASSERT_EQ(0x1ca94816u, ImmutableString("findLSB(2D").mangledNameHash());
    ASSERT_EQ(0x1cae685au, ImmutableString("findLSB(3D").mangledNameHash());
    ASSERT_EQ(0x1ca12df2u, ImmutableString("findMSB(0C").mangledNameHash());
    ASSERT_EQ(0x1ca32cc2u, ImmutableString("findMSB(1C").mangledNameHash());
    ASSERT_EQ(0x1cada0b2u, ImmutableString("findMSB(2C").mangledNameHash());
    ASSERT_EQ(0x1ca02eebu, ImmutableString("findMSB(3C").mangledNameHash());
    ASSERT_EQ(0x1ca13f87u, ImmutableString("findMSB(0D").mangledNameHash());
    ASSERT_EQ(0x1ca399c6u, ImmutableString("findMSB(1D").mangledNameHash());
    ASSERT_EQ(0x1cad7c7bu, ImmutableString("findMSB(2D").mangledNameHash());
    ASSERT_EQ(0x1ca05552u, ImmutableString("findMSB(3D").mangledNameHash());
    ASSERT_EQ(0x25076120u, ImmutableString("uaddCarry(0D0D0D").mangledNameHash());
    ASSERT_EQ(0x25086989u, ImmutableString("uaddCarry(1D1D1D").mangledNameHash());
    ASSERT_EQ(0x2508354bu, ImmutableString("uaddCarry(2D2D2D").mangledNameHash());
    ASSERT_EQ(0x250850e3u, ImmutableString("uaddCarry(3D3D3D").mangledNameHash());
    ASSERT_EQ(0x291eef4cu, ImmutableString("usubBorrow(0D0D0D").mangledNameHash());
    ASSERT_EQ(0x29156a3eu, ImmutableString("usubBorrow(1D1D1D").mangledNameHash());
    ASSERT_EQ(0x2912da4du, ImmutableString("usubBorrow(2D2D2D").mangledNameHash());
    ASSERT_EQ(0x2911ee24u, ImmutableString("usubBorrow(3D3D3D").mangledNameHash());
    ASSERT_EQ(0x3152664bu, ImmutableString("umulExtended(0D0D0D0D").mangledNameHash());
    ASSERT_EQ(0x3156b43eu, ImmutableString("umulExtended(1D1D1D1D").mangledNameHash());
    ASSERT_EQ(0x3154dbceu, ImmutableString("umulExtended(2D2D2D2D").mangledNameHash());
    ASSERT_EQ(0x31528895u, ImmutableString("umulExtended(3D3D3D3D").mangledNameHash());
    ASSERT_EQ(0x31584c20u, ImmutableString("imulExtended(0C0C0C0C").mangledNameHash());
    ASSERT_EQ(0x315ccad6u, ImmutableString("imulExtended(1C1C1C1C").mangledNameHash());
    ASSERT_EQ(0x3150a6a9u, ImmutableString("imulExtended(2C2C2C2C").mangledNameHash());
    ASSERT_EQ(0x31582937u, ImmutableString("imulExtended(3C3C3C3C").mangledNameHash());
    ASSERT_EQ(0x24e2c4e7u, ImmutableString("texture2D(0H1B").mangledNameHash());
    ASSERT_EQ(0x352d6339u, ImmutableString("texture2DProj(0H2B").mangledNameHash());
    ASSERT_EQ(0x352b4775u, ImmutableString("texture2DProj(0H3B").mangledNameHash());
    ASSERT_EQ(0x2d011380u, ImmutableString("textureCube(0J2B").mangledNameHash());
    ASSERT_EQ(0x24ee7b56u, ImmutableString("texture2D(0L1B").mangledNameHash());
    ASSERT_EQ(0x3525221bu, ImmutableString("texture2DProj(0L2B").mangledNameHash());
    ASSERT_EQ(0x352b0152u, ImmutableString("texture2DProj(0L3B").mangledNameHash());
    ASSERT_EQ(0x352056b3u, ImmutableString("texture2DRect(0N1B").mangledNameHash());
    ASSERT_EQ(0x456c9272u, ImmutableString("texture2DRectProj(0N2B").mangledNameHash());
    ASSERT_EQ(0x456a76c4u, ImmutableString("texture2DRectProj(0N3B").mangledNameHash());
    ASSERT_EQ(0x1ccc5cd8u, ImmutableString("texture(0N1B").mangledNameHash());
    ASSERT_EQ(0x2d0d917du, ImmutableString("textureProj(0N2B").mangledNameHash());
    ASSERT_EQ(0x2d0b7d30u, ImmutableString("textureProj(0N3B").mangledNameHash());
    ASSERT_EQ(0x41972dabu, ImmutableString("texture2DGradEXT(0H1B1B1B").mangledNameHash());
    ASSERT_EQ(0x51dab294u, ImmutableString("texture2DProjGradEXT(0H2B1B1B").mangledNameHash());
    ASSERT_EQ(0x51d33b0du, ImmutableString("texture2DProjGradEXT(0H3B1B1B").mangledNameHash());
    ASSERT_EQ(0x49b79cd7u, ImmutableString("textureCubeGradEXT(0J2B2B2B").mangledNameHash());
    ASSERT_EQ(0x2508e2a4u, ImmutableString("texture2D(0H1B0B").mangledNameHash());
    ASSERT_EQ(0x35488931u, ImmutableString("texture2DProj(0H2B0B").mangledNameHash());
    ASSERT_EQ(0x35430cdfu, ImmutableString("texture2DProj(0H3B0B").mangledNameHash());
    ASSERT_EQ(0x2d2d65c4u, ImmutableString("textureCube(0J2B0B").mangledNameHash());
    ASSERT_EQ(0x1073030fu, ImmutableString("dFdx(0B").mangledNameHash());
    ASSERT_EQ(0x1078ecffu, ImmutableString("dFdx(1B").mangledNameHash());
    ASSERT_EQ(0x1078043du, ImmutableString("dFdx(2B").mangledNameHash());
    ASSERT_EQ(0x10756758u, ImmutableString("dFdx(3B").mangledNameHash());
    ASSERT_EQ(0x1072a9fbu, ImmutableString("dFdy(0B").mangledNameHash());
    ASSERT_EQ(0x1074c546u, ImmutableString("dFdy(1B").mangledNameHash());
    ASSERT_EQ(0x10772880u, ImmutableString("dFdy(2B").mangledNameHash());
    ASSERT_EQ(0x1079c835u, ImmutableString("dFdy(3B").mangledNameHash());
    ASSERT_EQ(0x189a6fa9u, ImmutableString("fwidth(0B").mangledNameHash());
    ASSERT_EQ(0x189044e9u, ImmutableString("fwidth(1B").mangledNameHash());
    ASSERT_EQ(0x189f6338u, ImmutableString("fwidth(2B").mangledNameHash());
    ASSERT_EQ(0x189cc19du, ImmutableString("fwidth(3B").mangledNameHash());
    ASSERT_EQ(0x3d686753u, ImmutableString("texture2DLodEXT(0H1B0B").mangledNameHash());
    ASSERT_EQ(0x4dac1445u, ImmutableString("texture2DProjLodEXT(0H2B0B").mangledNameHash());
    ASSERT_EQ(0x4da39b8fu, ImmutableString("texture2DProjLodEXT(0H3B0B").mangledNameHash());
    ASSERT_EQ(0x458436e4u, ImmutableString("textureCubeLodEXT(0J2B0B").mangledNameHash());
    ASSERT_EQ(0x3130c76au, ImmutableString("texture2DLod(0H1B0B").mangledNameHash());
    ASSERT_EQ(0x4178ec55u, ImmutableString("texture2DProjLod(0H2B0B").mangledNameHash());
    ASSERT_EQ(0x41715cefu, ImmutableString("texture2DProjLod(0H3B0B").mangledNameHash());
    ASSERT_EQ(0x39582d02u, ImmutableString("textureCubeLod(0J2B0B").mangledNameHash());
    ASSERT_EQ(0x1ccbe1e6u, ImmutableString("texture(0H1B").mangledNameHash());
    ASSERT_EQ(0x1cce4cd6u, ImmutableString("texture(0P1B").mangledNameHash());
    ASSERT_EQ(0x1ccdb695u, ImmutableString("texture(0U1B").mangledNameHash());
    ASSERT_EQ(0x1cc4bc63u, ImmutableString("texture(0I2B").mangledNameHash());
    ASSERT_EQ(0x1cc71e2fu, ImmutableString("texture(0Q2B").mangledNameHash());
    ASSERT_EQ(0x1cc39501u, ImmutableString("texture(0V2B").mangledNameHash());
    ASSERT_EQ(0x1cc8e9a8u, ImmutableString("texture(0J2B").mangledNameHash());
    ASSERT_EQ(0x1ccf4520u, ImmutableString("texture(0R2B").mangledNameHash());
    ASSERT_EQ(0x1cc8f192u, ImmutableString("texture(0W2B").mangledNameHash());
    ASSERT_EQ(0x1cc25663u, ImmutableString("texture(0K2B").mangledNameHash());
    ASSERT_EQ(0x1cc0bf9eu, ImmutableString("texture(0S2B").mangledNameHash());
    ASSERT_EQ(0x1cc931d1u, ImmutableString("texture(0X2B").mangledNameHash());
    ASSERT_EQ(0x2d02de80u, ImmutableString("textureProj(0H2B").mangledNameHash());
    ASSERT_EQ(0x2d037c4cu, ImmutableString("textureProj(0P2B").mangledNameHash());
    ASSERT_EQ(0x2d0e3593u, ImmutableString("textureProj(0U2B").mangledNameHash());
    ASSERT_EQ(0x2d0836b9u, ImmutableString("textureProj(0H3B").mangledNameHash());
    ASSERT_EQ(0x2d00dc41u, ImmutableString("textureProj(0P3B").mangledNameHash());
    ASSERT_EQ(0x2d005187u, ImmutableString("textureProj(0U3B").mangledNameHash());
    ASSERT_EQ(0x2d0b9377u, ImmutableString("textureProj(0I3B").mangledNameHash());
    ASSERT_EQ(0x2d0c211cu, ImmutableString("textureProj(0Q3B").mangledNameHash());
    ASSERT_EQ(0x2d03fc9du, ImmutableString("textureProj(0V3B").mangledNameHash());
    ASSERT_EQ(0x29166bccu, ImmutableString("textureLod(0H1B0B").mangledNameHash());
    ASSERT_EQ(0x291f9c5du, ImmutableString("textureLod(0P1B0B").mangledNameHash());
    ASSERT_EQ(0x291eee75u, ImmutableString("textureLod(0U1B0B").mangledNameHash());
    ASSERT_EQ(0x291a77ccu, ImmutableString("textureLod(0I2B0B").mangledNameHash());
    ASSERT_EQ(0x29112a03u, ImmutableString("textureLod(0Q2B0B").mangledNameHash());
    ASSERT_EQ(0x29133cc9u, ImmutableString("textureLod(0V2B0B").mangledNameHash());
    ASSERT_EQ(0x2916234cu, ImmutableString("textureLod(0J2B0B").mangledNameHash());
    ASSERT_EQ(0x2919999du, ImmutableString("textureLod(0R2B0B").mangledNameHash());
    ASSERT_EQ(0x291a6956u, ImmutableString("textureLod(0W2B0B").mangledNameHash());
    ASSERT_EQ(0x291d8e21u, ImmutableString("textureLod(0K2B0B").mangledNameHash());
    ASSERT_EQ(0x2914cd7au, ImmutableString("textureLod(0S2B0B").mangledNameHash());
    ASSERT_EQ(0x2910700au, ImmutableString("textureLod(0X2B0B").mangledNameHash());
    ASSERT_EQ(0x1cc3d380u, ImmutableString("texture(0Z2B").mangledNameHash());
    ASSERT_EQ(0x1ccc3b2fu, ImmutableString("texture(0a3B").mangledNameHash());
    ASSERT_EQ(0x1cc8b086u, ImmutableString("texture(0b3B").mangledNameHash());
    ASSERT_EQ(0x2d084eecu, ImmutableString("textureProj(0Z3B").mangledNameHash());
    ASSERT_EQ(0x291fc149u, ImmutableString("textureLod(0Z2B0B").mangledNameHash());
    ASSERT_EQ(0x2d085b63u, ImmutableString("textureSize(0H0C").mangledNameHash());
    ASSERT_EQ(0x2d0cd4ecu, ImmutableString("textureSize(0P0C").mangledNameHash());
    ASSERT_EQ(0x2d015791u, ImmutableString("textureSize(0U0C").mangledNameHash());
    ASSERT_EQ(0x2d007125u, ImmutableString("textureSize(0I0C").mangledNameHash());
    ASSERT_EQ(0x2d0d00f6u, ImmutableString("textureSize(0Q0C").mangledNameHash());
    ASSERT_EQ(0x2d04b5f4u, ImmutableString("textureSize(0V0C").mangledNameHash());
    ASSERT_EQ(0x2d03e3dau, ImmutableString("textureSize(0J0C").mangledNameHash());
    ASSERT_EQ(0x2d0c7922u, ImmutableString("textureSize(0R0C").mangledNameHash());
    ASSERT_EQ(0x2d08e824u, ImmutableString("textureSize(0W0C").mangledNameHash());
    ASSERT_EQ(0x2d0c1458u, ImmutableString("textureSize(0K0C").mangledNameHash());
    ASSERT_EQ(0x2d04bd90u, ImmutableString("textureSize(0S0C").mangledNameHash());
    ASSERT_EQ(0x2d0d65fbu, ImmutableString("textureSize(0X0C").mangledNameHash());
    ASSERT_EQ(0x2d0908bdu, ImmutableString("textureSize(0Z0C").mangledNameHash());
    ASSERT_EQ(0x2d0db21du, ImmutableString("textureSize(0a0C").mangledNameHash());
    ASSERT_EQ(0x2d05209au, ImmutableString("textureSize(0b0C").mangledNameHash());
    ASSERT_EQ(0x2ce7c017u, ImmutableString("textureSize(0O").mangledNameHash());
    ASSERT_EQ(0x2ce73febu, ImmutableString("textureSize(0T").mangledNameHash());
    ASSERT_EQ(0x2ce6e60cu, ImmutableString("textureSize(0Y").mangledNameHash());
    ASSERT_EQ(0x3954274au, ImmutableString("textureProjLod(0H2B0B").mangledNameHash());
    ASSERT_EQ(0x39516b09u, ImmutableString("textureProjLod(0P2B0B").mangledNameHash());
    ASSERT_EQ(0x395794afu, ImmutableString("textureProjLod(0U2B0B").mangledNameHash());
    ASSERT_EQ(0x3951bcdau, ImmutableString("textureProjLod(0H3B0B").mangledNameHash());
    ASSERT_EQ(0x395bbd87u, ImmutableString("textureProjLod(0P3B0B").mangledNameHash());
    ASSERT_EQ(0x39564b1cu, ImmutableString("textureProjLod(0U3B0B").mangledNameHash());
    ASSERT_EQ(0x395f01e1u, ImmutableString("textureProjLod(0I3B0B").mangledNameHash());
    ASSERT_EQ(0x39509c5du, ImmutableString("textureProjLod(0Q3B0B").mangledNameHash());
    ASSERT_EQ(0x395b06aau, ImmutableString("textureProjLod(0V3B0B").mangledNameHash());
    ASSERT_EQ(0x395dfaedu, ImmutableString("textureProjLod(0Z3B0B").mangledNameHash());
    ASSERT_EQ(0x291fb96au, ImmutableString("texelFetch(0H1C0C").mangledNameHash());
    ASSERT_EQ(0x29128f3eu, ImmutableString("texelFetch(0P1C0C").mangledNameHash());
    ASSERT_EQ(0x291da4e1u, ImmutableString("texelFetch(0U1C0C").mangledNameHash());
    ASSERT_EQ(0x291771ddu, ImmutableString("texelFetch(0I2C0C").mangledNameHash());
    ASSERT_EQ(0x2911720eu, ImmutableString("texelFetch(0Q2C0C").mangledNameHash());
    ASSERT_EQ(0x29102cb2u, ImmutableString("texelFetch(0V2C0C").mangledNameHash());
    ASSERT_EQ(0x291a3c8bu, ImmutableString("texelFetch(0K2C0C").mangledNameHash());
    ASSERT_EQ(0x29144470u, ImmutableString("texelFetch(0S2C0C").mangledNameHash());
    ASSERT_EQ(0x291c010eu, ImmutableString("texelFetch(0X2C0C").mangledNameHash());
    ASSERT_EQ(0x2d4319eeu, ImmutableString("textureGrad(0H1B1B1B").mangledNameHash());
    ASSERT_EQ(0x2d48f0f3u, ImmutableString("textureGrad(0P1B1B1B").mangledNameHash());
    ASSERT_EQ(0x2d4e721cu, ImmutableString("textureGrad(0U1B1B1B").mangledNameHash());
    ASSERT_EQ(0x2d401271u, ImmutableString("textureGrad(0I2B2B2B").mangledNameHash());
    ASSERT_EQ(0x2d432b01u, ImmutableString("textureGrad(0Q2B2B2B").mangledNameHash());
    ASSERT_EQ(0x2d4fefbbu, ImmutableString("textureGrad(0V2B2B2B").mangledNameHash());
    ASSERT_EQ(0x2d43ef75u, ImmutableString("textureGrad(0J2B2B2B").mangledNameHash());
    ASSERT_EQ(0x2d468d96u, ImmutableString("textureGrad(0R2B2B2B").mangledNameHash());
    ASSERT_EQ(0x2d423ef7u, ImmutableString("textureGrad(0W2B2B2B").mangledNameHash());
    ASSERT_EQ(0x2d4d40c2u, ImmutableString("textureGrad(0Z2B1B1B").mangledNameHash());
    ASSERT_EQ(0x2d42a4a7u, ImmutableString("textureGrad(0a3B2B2B").mangledNameHash());
    ASSERT_EQ(0x2d4e1d2au, ImmutableString("textureGrad(0K2B1B1B").mangledNameHash());
    ASSERT_EQ(0x2d4add22u, ImmutableString("textureGrad(0S2B1B1B").mangledNameHash());
    ASSERT_EQ(0x2d447047u, ImmutableString("textureGrad(0X2B1B1B").mangledNameHash());
    ASSERT_EQ(0x2d4a4f6au, ImmutableString("textureGrad(0b3B1B1B").mangledNameHash());
    ASSERT_EQ(0x3d8b645cu, ImmutableString("textureProjGrad(0H2B1B1B").mangledNameHash());
    ASSERT_EQ(0x3d86f397u, ImmutableString("textureProjGrad(0P2B1B1B").mangledNameHash());
    ASSERT_EQ(0x3d8e064fu, ImmutableString("textureProjGrad(0U2B1B1B").mangledNameHash());
    ASSERT_EQ(0x3d865b2au, ImmutableString("textureProjGrad(0H3B1B1B").mangledNameHash());
    ASSERT_EQ(0x3d8a0862u, ImmutableString("textureProjGrad(0P3B1B1B").mangledNameHash());
    ASSERT_EQ(0x3d896556u, ImmutableString("textureProjGrad(0U3B1B1B").mangledNameHash());
    ASSERT_EQ(0x3d87ff0au, ImmutableString("textureProjGrad(0I3B2B2B").mangledNameHash());
    ASSERT_EQ(0x3d83cc77u, ImmutableString("textureProjGrad(0Q3B2B2B").mangledNameHash());
    ASSERT_EQ(0x3d832970u, ImmutableString("textureProjGrad(0V3B2B2B").mangledNameHash());
    ASSERT_EQ(0x3d8ca0b7u, ImmutableString("textureProjGrad(0Z3B1B1B").mangledNameHash());
    ASSERT_EQ(0x35422c30u, ImmutableString("textureOffset(0H1B1C").mangledNameHash());
    ASSERT_EQ(0x354102f7u, ImmutableString("textureOffset(0P1B1C").mangledNameHash());
    ASSERT_EQ(0x3543944fu, ImmutableString("textureOffset(0U1B1C").mangledNameHash());
    ASSERT_EQ(0x354cbe1cu, ImmutableString("textureOffset(0I2B2C").mangledNameHash());
    ASSERT_EQ(0x35478003u, ImmutableString("textureOffset(0Q2B2C").mangledNameHash());
    ASSERT_EQ(0x35413eedu, ImmutableString("textureOffset(0V2B2C").mangledNameHash());
    ASSERT_EQ(0x35473958u, ImmutableString("textureOffset(0Z2B1C").mangledNameHash());
    ASSERT_EQ(0x354801adu, ImmutableString("textureOffset(0K2B1C").mangledNameHash());
    ASSERT_EQ(0x35459cf8u, ImmutableString("textureOffset(0S2B1C").mangledNameHash());
    ASSERT_EQ(0x354706eau, ImmutableString("textureOffset(0X2B1C").mangledNameHash());
    ASSERT_EQ(0x458150bau, ImmutableString("textureProjOffset(0H2B1C").mangledNameHash());
    ASSERT_EQ(0x4589a875u, ImmutableString("textureProjOffset(0P2B1C").mangledNameHash());
    ASSERT_EQ(0x4580712au, ImmutableString("textureProjOffset(0U2B1C").mangledNameHash());
    ASSERT_EQ(0x4585bb13u, ImmutableString("textureProjOffset(0H3B1C").mangledNameHash());
    ASSERT_EQ(0x458df23bu, ImmutableString("textureProjOffset(0P3B1C").mangledNameHash());
    ASSERT_EQ(0x45801598u, ImmutableString("textureProjOffset(0U3B1C").mangledNameHash());
    ASSERT_EQ(0x45889762u, ImmutableString("textureProjOffset(0I3B2C").mangledNameHash());
    ASSERT_EQ(0x45859c54u, ImmutableString("textureProjOffset(0Q3B2C").mangledNameHash());
    ASSERT_EQ(0x458a50a0u, ImmutableString("textureProjOffset(0V3B2C").mangledNameHash());
    ASSERT_EQ(0x458be8b2u, ImmutableString("textureProjOffset(0Z3B1C").mangledNameHash());
    ASSERT_EQ(0x41992585u, ImmutableString("textureLodOffset(0H1B0B1C").mangledNameHash());
    ASSERT_EQ(0x41979f66u, ImmutableString("textureLodOffset(0P1B0B1C").mangledNameHash());
    ASSERT_EQ(0x419f4e4du, ImmutableString("textureLodOffset(0U1B0B1C").mangledNameHash());
    ASSERT_EQ(0x419bdc72u, ImmutableString("textureLodOffset(0I2B0B2C").mangledNameHash());
    ASSERT_EQ(0x41990c42u, ImmutableString("textureLodOffset(0Q2B0B2C").mangledNameHash());
    ASSERT_EQ(0x4194ea77u, ImmutableString("textureLodOffset(0V2B0B2C").mangledNameHash());
    ASSERT_EQ(0x4194ae35u, ImmutableString("textureLodOffset(0Z2B0B1C").mangledNameHash());
    ASSERT_EQ(0x419a009fu, ImmutableString("textureLodOffset(0K2B0B1C").mangledNameHash());
    ASSERT_EQ(0x41958afau, ImmutableString("textureLodOffset(0S2B0B1C").mangledNameHash());
    ASSERT_EQ(0x4192d547u, ImmutableString("textureLodOffset(0X2B0B1C").mangledNameHash());
    ASSERT_EQ(0x51d55102u, ImmutableString("textureProjLodOffset(0H2B0B1C").mangledNameHash());
    ASSERT_EQ(0x51ddd932u, ImmutableString("textureProjLodOffset(0P2B0B1C").mangledNameHash());
    ASSERT_EQ(0x51ded012u, ImmutableString("textureProjLodOffset(0U2B0B1C").mangledNameHash());
    ASSERT_EQ(0x51d7ccd1u, ImmutableString("textureProjLodOffset(0H3B0B1C").mangledNameHash());
    ASSERT_EQ(0x51dabe62u, ImmutableString("textureProjLodOffset(0P3B0B1C").mangledNameHash());
    ASSERT_EQ(0x51dfb7dcu, ImmutableString("textureProjLodOffset(0U3B0B1C").mangledNameHash());
    ASSERT_EQ(0x51d72007u, ImmutableString("textureProjLodOffset(0I3B0B2C").mangledNameHash());
    ASSERT_EQ(0x51d5cc8cu, ImmutableString("textureProjLodOffset(0Q3B0B2C").mangledNameHash());
    ASSERT_EQ(0x51d731fau, ImmutableString("textureProjLodOffset(0V3B0B2C").mangledNameHash());
    ASSERT_EQ(0x51d1a62du, ImmutableString("textureProjLodOffset(0Z3B0B1C").mangledNameHash());
    ASSERT_EQ(0x419641e4u, ImmutableString("texelFetchOffset(0H1C0C1C").mangledNameHash());
    ASSERT_EQ(0x41938a11u, ImmutableString("texelFetchOffset(0P1C0C1C").mangledNameHash());
    ASSERT_EQ(0x4198f5c0u, ImmutableString("texelFetchOffset(0U1C0C1C").mangledNameHash());
    ASSERT_EQ(0x4191cb81u, ImmutableString("texelFetchOffset(0I2C0C2C").mangledNameHash());
    ASSERT_EQ(0x419b1491u, ImmutableString("texelFetchOffset(0Q2C0C2C").mangledNameHash());
    ASSERT_EQ(0x419c6bc9u, ImmutableString("texelFetchOffset(0V2C0C2C").mangledNameHash());
    ASSERT_EQ(0x4195953fu, ImmutableString("texelFetchOffset(0K2C0C1C").mangledNameHash());
    ASSERT_EQ(0x419224bdu, ImmutableString("texelFetchOffset(0S2C0C1C").mangledNameHash());
    ASSERT_EQ(0x4190d486u, ImmutableString("texelFetchOffset(0X2C0C1C").mangledNameHash());
    ASSERT_EQ(0x45ce0193u, ImmutableString("textureGradOffset(0H1B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x45ce7db4u, ImmutableString("textureGradOffset(0P1B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x45c09d88u, ImmutableString("textureGradOffset(0U1B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x45c7de83u, ImmutableString("textureGradOffset(0I2B2B2B2C").mangledNameHash());
    ASSERT_EQ(0x45cafdcbu, ImmutableString("textureGradOffset(0Q2B2B2B2C").mangledNameHash());
    ASSERT_EQ(0x45cc5a72u, ImmutableString("textureGradOffset(0V2B2B2B2C").mangledNameHash());
    ASSERT_EQ(0x45cd0417u, ImmutableString("textureGradOffset(0Z2B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x45c2f605u, ImmutableString("textureGradOffset(0K2B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x45ca81ceu, ImmutableString("textureGradOffset(0S2B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x45c47453u, ImmutableString("textureGradOffset(0X2B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x45c59fedu, ImmutableString("textureGradOffset(0b3B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x560efc8au, ImmutableString("textureProjGradOffset(0H2B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x56045ff7u, ImmutableString("textureProjGradOffset(0P2B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x56096070u, ImmutableString("textureProjGradOffset(0U2B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x5604692eu, ImmutableString("textureProjGradOffset(0H3B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x560cb2ebu, ImmutableString("textureProjGradOffset(0P3B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x560144aau, ImmutableString("textureProjGradOffset(0U3B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x56057148u, ImmutableString("textureProjGradOffset(0I3B2B2B2C").mangledNameHash());
    ASSERT_EQ(0x56088480u, ImmutableString("textureProjGradOffset(0Q3B2B2B2C").mangledNameHash());
    ASSERT_EQ(0x560187dbu, ImmutableString("textureProjGradOffset(0V3B2B2B2C").mangledNameHash());
    ASSERT_EQ(0x5608e4edu, ImmutableString("textureProjGradOffset(0Z3B1B1B1C").mangledNameHash());
    ASSERT_EQ(0x356ae2a8u, ImmutableString("textureOffset(0H1B1C0B").mangledNameHash());
    ASSERT_EQ(0x356dff31u, ImmutableString("textureOffset(0P1B1C0B").mangledNameHash());
    ASSERT_EQ(0x3565646au, ImmutableString("textureOffset(0U1B1C0B").mangledNameHash());
    ASSERT_EQ(0x356b0f18u, ImmutableString("textureOffset(0I2B2C0B").mangledNameHash());
    ASSERT_EQ(0x35611ec2u, ImmutableString("textureOffset(0Q2B2C0B").mangledNameHash());
    ASSERT_EQ(0x35618a59u, ImmutableString("textureOffset(0V2B2C0B").mangledNameHash());
    ASSERT_EQ(0x356524a3u, ImmutableString("textureOffset(0Z2B1C0B").mangledNameHash());
    ASSERT_EQ(0x356c4537u, ImmutableString("textureOffset(0K2B1C0B").mangledNameHash());
    ASSERT_EQ(0x356dd6bdu, ImmutableString("textureOffset(0S2B1C0B").mangledNameHash());
    ASSERT_EQ(0x35630e76u, ImmutableString("textureOffset(0X2B1C0B").mangledNameHash());
    ASSERT_EQ(0x45adf315u, ImmutableString("textureProjOffset(0H2B1C0B").mangledNameHash());
    ASSERT_EQ(0x45aec1dcu, ImmutableString("textureProjOffset(0P2B1C0B").mangledNameHash());
    ASSERT_EQ(0x45aca531u, ImmutableString("textureProjOffset(0U2B1C0B").mangledNameHash());
    ASSERT_EQ(0x45ac482bu, ImmutableString("textureProjOffset(0H3B1C0B").mangledNameHash());
    ASSERT_EQ(0x45a7bc78u, ImmutableString("textureProjOffset(0P3B1C0B").mangledNameHash());
    ASSERT_EQ(0x45a5a09au, ImmutableString("textureProjOffset(0U3B1C0B").mangledNameHash());
    ASSERT_EQ(0x45ad4b1cu, ImmutableString("textureProjOffset(0I3B2C0B").mangledNameHash());
    ASSERT_EQ(0x45a7c263u, ImmutableString("textureProjOffset(0Q3B2C0B").mangledNameHash());
    ASSERT_EQ(0x45a13c18u, ImmutableString("textureProjOffset(0V3B2C0B").mangledNameHash());
    ASSERT_EQ(0x45ab195eu, ImmutableString("textureProjOffset(0Z3B1C0B").mangledNameHash());
    ASSERT_EQ(0x1ccc3cbfu, ImmutableString("texture(0L1B").mangledNameHash());
    ASSERT_EQ(0x2d0728a0u, ImmutableString("textureProj(0L2B").mangledNameHash());
    ASSERT_EQ(0x2d0c82e1u, ImmutableString("textureProj(0L3B").mangledNameHash());
    ASSERT_EQ(0x2d089a63u, ImmutableString("textureSize(0L0C").mangledNameHash());
    ASSERT_EQ(0x291dc663u, ImmutableString("texelFetch(0L1C0C").mangledNameHash());
    ASSERT_EQ(0x1cc75b2bu, ImmutableString("texture(0M1B").mangledNameHash());
    ASSERT_EQ(0x2d05b26eu, ImmutableString("textureProj(0M2B").mangledNameHash());
    ASSERT_EQ(0x2d07de2bu, ImmutableString("textureProj(0M3B").mangledNameHash());
    ASSERT_EQ(0x24eb3ad6u, ImmutableString("rgb_2_yuv(2B0G").mangledNameHash());
    ASSERT_EQ(0x24e7ca02u, ImmutableString("yuv_2_rgb(2B0G").mangledNameHash());
    ASSERT_EQ(0x2d00b7aau, ImmutableString("textureSize(0M0C").mangledNameHash());
    ASSERT_EQ(0x29140228u, ImmutableString("texelFetch(0M1C0C").mangledNameHash());
    ASSERT_EQ(0x1cede054u, ImmutableString("texture(0H1B0B").mangledNameHash());
    ASSERT_EQ(0x1ce386eeu, ImmutableString("texture(0P1B0B").mangledNameHash());
    ASSERT_EQ(0x1ce04aabu, ImmutableString("texture(0U1B0B").mangledNameHash());
    ASSERT_EQ(0x1cefb0f7u, ImmutableString("texture(0I2B0B").mangledNameHash());
    ASSERT_EQ(0x1ce6cb20u, ImmutableString("texture(0Q2B0B").mangledNameHash());
    ASSERT_EQ(0x1ce4390bu, ImmutableString("texture(0V2B0B").mangledNameHash());
    ASSERT_EQ(0x1ceb9abfu, ImmutableString("texture(0J2B0B").mangledNameHash());
    ASSERT_EQ(0x1cee54d8u, ImmutableString("texture(0R2B0B").mangledNameHash());
    ASSERT_EQ(0x1ce7ffc3u, ImmutableString("texture(0W2B0B").mangledNameHash());
    ASSERT_EQ(0x1ce87584u, ImmutableString("texture(0K2B0B").mangledNameHash());
    ASSERT_EQ(0x1cea71adu, ImmutableString("texture(0S2B0B").mangledNameHash());
    ASSERT_EQ(0x1ce1eb81u, ImmutableString("texture(0X2B0B").mangledNameHash());
    ASSERT_EQ(0x2d2df52bu, ImmutableString("textureProj(0H2B0B").mangledNameHash());
    ASSERT_EQ(0x2d2a8d3au, ImmutableString("textureProj(0P2B0B").mangledNameHash());
    ASSERT_EQ(0x2d23ba38u, ImmutableString("textureProj(0U2B0B").mangledNameHash());
    ASSERT_EQ(0x2d2ca6f8u, ImmutableString("textureProj(0H3B0B").mangledNameHash());
    ASSERT_EQ(0x2d220503u, ImmutableString("textureProj(0P3B0B").mangledNameHash());
    ASSERT_EQ(0x2d2534d7u, ImmutableString("textureProj(0U3B0B").mangledNameHash());
    ASSERT_EQ(0x2d269d32u, ImmutableString("textureProj(0I3B0B").mangledNameHash());
    ASSERT_EQ(0x2d24b561u, ImmutableString("textureProj(0Q3B0B").mangledNameHash());
    ASSERT_EQ(0x2d2a9c1cu, ImmutableString("textureProj(0V3B0B").mangledNameHash());
    ASSERT_EQ(0x1ce684a0u, ImmutableString("texture(0Z2B0B").mangledNameHash());
    ASSERT_EQ(0x1cef758fu, ImmutableString("texture(0a3B0B").mangledNameHash());
    ASSERT_EQ(0x2d2210bau, ImmutableString("textureProj(0Z3B0B").mangledNameHash());
    ASSERT_EQ(0x1ce445b0u, ImmutableString("texture(0L1B0B").mangledNameHash());
    ASSERT_EQ(0x2d2fc16fu, ImmutableString("textureProj(0L2B0B").mangledNameHash());
    ASSERT_EQ(0x2d202f3fu, ImmutableString("textureProj(0L3B0B").mangledNameHash());
    ASSERT_EQ(0x1ce319feu, ImmutableString("texture(0M1B0B").mangledNameHash());
    ASSERT_EQ(0x2d23be17u, ImmutableString("textureProj(0M2B0B").mangledNameHash());
    ASSERT_EQ(0x2d2141e1u, ImmutableString("textureProj(0M3B0B").mangledNameHash());
    ASSERT_EQ(0x2912ed46u, ImmutableString("texelFetch(0O1C0C").mangledNameHash());
    ASSERT_EQ(0x29183d18u, ImmutableString("texelFetch(0T1C0C").mangledNameHash());
    ASSERT_EQ(0x291bb1d9u, ImmutableString("texelFetch(0Y1C0C").mangledNameHash());
    ASSERT_EQ(0x35257bf7u, ImmutableString("textureGather(0H1B").mangledNameHash());
    ASSERT_EQ(0x3520f548u, ImmutableString("textureGather(0P1B").mangledNameHash());
    ASSERT_EQ(0x352183b6u, ImmutableString("textureGather(0U1B").mangledNameHash());
    ASSERT_EQ(0x35498b6fu, ImmutableString("textureGather(0H1B0C").mangledNameHash());
    ASSERT_EQ(0x35412442u, ImmutableString("textureGather(0P1B0C").mangledNameHash());
    ASSERT_EQ(0x354047f2u, ImmutableString("textureGather(0U1B0C").mangledNameHash());
    ASSERT_EQ(0x352889a7u, ImmutableString("textureGather(0K2B").mangledNameHash());
    ASSERT_EQ(0x35280d85u, ImmutableString("textureGather(0S2B").mangledNameHash());
    ASSERT_EQ(0x352776c1u, ImmutableString("textureGather(0X2B").mangledNameHash());
    ASSERT_EQ(0x354f052bu, ImmutableString("textureGather(0K2B0C").mangledNameHash());
    ASSERT_EQ(0x3547e2f2u, ImmutableString("textureGather(0S2B0C").mangledNameHash());
    ASSERT_EQ(0x35436508u, ImmutableString("textureGather(0X2B0C").mangledNameHash());
    ASSERT_EQ(0x352f0d8au, ImmutableString("textureGather(0J2B").mangledNameHash());
    ASSERT_EQ(0x352e6efdu, ImmutableString("textureGather(0R2B").mangledNameHash());
    ASSERT_EQ(0x3527b70eu, ImmutableString("textureGather(0W2B").mangledNameHash());
    ASSERT_EQ(0x3549192du, ImmutableString("textureGather(0J2B0C").mangledNameHash());
    ASSERT_EQ(0x354b0049u, ImmutableString("textureGather(0R2B0C").mangledNameHash());
    ASSERT_EQ(0x354d8e0fu, ImmutableString("textureGather(0W2B0C").mangledNameHash());
    ASSERT_EQ(0x352c3259u, ImmutableString("textureGather(0Z1B").mangledNameHash());
    ASSERT_EQ(0x354bc853u, ImmutableString("textureGather(0Z1B0B").mangledNameHash());
    ASSERT_EQ(0x352dc0eau, ImmutableString("textureGather(0b2B").mangledNameHash());
    ASSERT_EQ(0x35436214u, ImmutableString("textureGather(0b2B0B").mangledNameHash());
    ASSERT_EQ(0x3525e425u, ImmutableString("textureGather(0a2B").mangledNameHash());
    ASSERT_EQ(0x354af264u, ImmutableString("textureGather(0a2B0B").mangledNameHash());
    ASSERT_EQ(0x4dae3f95u, ImmutableString("textureGatherOffset(0H1B1C").mangledNameHash());
    ASSERT_EQ(0x4da38e3eu, ImmutableString("textureGatherOffset(0P1B1C").mangledNameHash());
    ASSERT_EQ(0x4daf95ffu, ImmutableString("textureGatherOffset(0U1B1C").mangledNameHash());
    ASSERT_EQ(0x4dc8f1feu, ImmutableString("textureGatherOffset(0H1B1C0C").mangledNameHash());
    ASSERT_EQ(0x4dcb704cu, ImmutableString("textureGatherOffset(0P1B1C0C").mangledNameHash());
    ASSERT_EQ(0x4dc59589u, ImmutableString("textureGatherOffset(0U1B1C0C").mangledNameHash());
    ASSERT_EQ(0x4da3f983u, ImmutableString("textureGatherOffset(0K2B1C").mangledNameHash());
    ASSERT_EQ(0x4da50052u, ImmutableString("textureGatherOffset(0S2B1C").mangledNameHash());
    ASSERT_EQ(0x4dae37ebu, ImmutableString("textureGatherOffset(0X2B1C").mangledNameHash());
    ASSERT_EQ(0x4dc89c91u, ImmutableString("textureGatherOffset(0K2B1C0C").mangledNameHash());
    ASSERT_EQ(0x4dc0120bu, ImmutableString("textureGatherOffset(0S2B1C0C").mangledNameHash());
    ASSERT_EQ(0x4dc38636u, ImmutableString("textureGatherOffset(0X2B1C0C").mangledNameHash());
    ASSERT_EQ(0x4dcb06fcu, ImmutableString("textureGatherOffset(0Z1B0B1C").mangledNameHash());
    ASSERT_EQ(0x4dcd2cb2u, ImmutableString("textureGatherOffset(0b2B0B1C").mangledNameHash());
    ASSERT_EQ(0x3500b5d6u, ImmutableString("atomicCounter(0F").mangledNameHash());
    ASSERT_EQ(0x599f07cfu, ImmutableString("atomicCounterIncrement(0F").mangledNameHash());
    ASSERT_EQ(0x599f5c0eu, ImmutableString("atomicCounterDecrement(0F").mangledNameHash());
    ASSERT_EQ(0x24e48542u, ImmutableString("atomicAdd(0D0D").mangledNameHash());
    ASSERT_EQ(0x24e17d9bu, ImmutableString("atomicAdd(0C0C").mangledNameHash());
    ASSERT_EQ(0x24e7d770u, ImmutableString("atomicMin(0D0D").mangledNameHash());
    ASSERT_EQ(0x24e2f67eu, ImmutableString("atomicMin(0C0C").mangledNameHash());
    ASSERT_EQ(0x24e7ac0cu, ImmutableString("atomicMax(0D0D").mangledNameHash());
    ASSERT_EQ(0x24ef375bu, ImmutableString("atomicMax(0C0C").mangledNameHash());
    ASSERT_EQ(0x24ec9041u, ImmutableString("atomicAnd(0D0D").mangledNameHash());
    ASSERT_EQ(0x24e8f7afu, ImmutableString("atomicAnd(0C0C").mangledNameHash());
    ASSERT_EQ(0x20d440ddu, ImmutableString("atomicOr(0D0D").mangledNameHash());
    ASSERT_EQ(0x20d79994u, ImmutableString("atomicOr(0C0C").mangledNameHash());
    ASSERT_EQ(0x24ee0a8au, ImmutableString("atomicXor(0D0D").mangledNameHash());
    ASSERT_EQ(0x24e16ffdu, ImmutableString("atomicXor(0C0C").mangledNameHash());
    ASSERT_EQ(0x39332d5cu, ImmutableString("atomicExchange(0D0D").mangledNameHash());
    ASSERT_EQ(0x39368640u, ImmutableString("atomicExchange(0C0C").mangledNameHash());
    ASSERT_EQ(0x39552df4u, ImmutableString("atomicCompSwap(0D0D0D").mangledNameHash());
    ASSERT_EQ(0x3950f760u, ImmutableString("atomicCompSwap(0C0C0C").mangledNameHash());
    ASSERT_EQ(0x24cb34d4u, ImmutableString("imageSize(0c").mangledNameHash());
    ASSERT_EQ(0x24cba3d0u, ImmutableString("imageSize(0d").mangledNameHash());
    ASSERT_EQ(0x24cb9d46u, ImmutableString("imageSize(0e").mangledNameHash());
    ASSERT_EQ(0x24cb8f2bu, ImmutableString("imageSize(0f").mangledNameHash());
    ASSERT_EQ(0x24cb7e98u, ImmutableString("imageSize(0g").mangledNameHash());
    ASSERT_EQ(0x24cbe5a4u, ImmutableString("imageSize(0h").mangledNameHash());
    ASSERT_EQ(0x24cbd70bu, ImmutableString("imageSize(0i").mangledNameHash());
    ASSERT_EQ(0x24cbc6feu, ImmutableString("imageSize(0j").mangledNameHash());
    ASSERT_EQ(0x24cbb06du, ImmutableString("imageSize(0k").mangledNameHash());
    ASSERT_EQ(0x24cc2f68u, ImmutableString("imageSize(0l").mangledNameHash());
    ASSERT_EQ(0x24cc1edfu, ImmutableString("imageSize(0m").mangledNameHash());
    ASSERT_EQ(0x24cc0842u, ImmutableString("imageSize(0n").mangledNameHash());
    ASSERT_EQ(0x24e6cf12u, ImmutableString("imageLoad(0c1C").mangledNameHash());
    ASSERT_EQ(0x24e752d1u, ImmutableString("imageLoad(0d1C").mangledNameHash());
    ASSERT_EQ(0x24ea98bbu, ImmutableString("imageLoad(0e1C").mangledNameHash());
    ASSERT_EQ(0x24e9aaedu, ImmutableString("imageLoad(0f2C").mangledNameHash());
    ASSERT_EQ(0x24e00501u, ImmutableString("imageLoad(0g2C").mangledNameHash());
    ASSERT_EQ(0x24e11051u, ImmutableString("imageLoad(0h2C").mangledNameHash());
    ASSERT_EQ(0x24ea7eeeu, ImmutableString("imageLoad(0i2C").mangledNameHash());
    ASSERT_EQ(0x24e2806eu, ImmutableString("imageLoad(0j2C").mangledNameHash());
    ASSERT_EQ(0x24e8de55u, ImmutableString("imageLoad(0k2C").mangledNameHash());
    ASSERT_EQ(0x24ece2e2u, ImmutableString("imageLoad(0l2C").mangledNameHash());
    ASSERT_EQ(0x24e6213eu, ImmutableString("imageLoad(0m2C").mangledNameHash());
    ASSERT_EQ(0x24e24455u, ImmutableString("imageLoad(0n2C").mangledNameHash());
    ASSERT_EQ(0x291af7dcu, ImmutableString("imageStore(0c1C3B").mangledNameHash());
    ASSERT_EQ(0x2915bd8cu, ImmutableString("imageStore(0d1C3C").mangledNameHash());
    ASSERT_EQ(0x291e4ebau, ImmutableString("imageStore(0e1C3D").mangledNameHash());
    ASSERT_EQ(0x29188a68u, ImmutableString("imageStore(0f2C3B").mangledNameHash());
    ASSERT_EQ(0x291b086bu, ImmutableString("imageStore(0g2C3C").mangledNameHash());
    ASSERT_EQ(0x291f0ca5u, ImmutableString("imageStore(0h2C3D").mangledNameHash());
    ASSERT_EQ(0x291fa1cau, ImmutableString("imageStore(0i2C3B").mangledNameHash());
    ASSERT_EQ(0x291cf877u, ImmutableString("imageStore(0j2C3C").mangledNameHash());
    ASSERT_EQ(0x29100bf8u, ImmutableString("imageStore(0k2C3D").mangledNameHash());
    ASSERT_EQ(0x291ba62eu, ImmutableString("imageStore(0l2C3B").mangledNameHash());
    ASSERT_EQ(0x291c4ce8u, ImmutableString("imageStore(0m2C3C").mangledNameHash());
    ASSERT_EQ(0x291d8e34u, ImmutableString("imageStore(0n2C3D").mangledNameHash());
    ASSERT_EQ(0x34ea7717u, ImmutableString("memoryBarrier(").mangledNameHash());
    ASSERT_EQ(0x69bd8347u, ImmutableString("memoryBarrierAtomicCounter(").mangledNameHash());
    ASSERT_EQ(0x4d4ffc7cu, ImmutableString("memoryBarrierBuffer(").mangledNameHash());
    ASSERT_EQ(0x493cdf59u, ImmutableString("memoryBarrierImage(").mangledNameHash());
    ASSERT_EQ(0x1c8349e8u, ImmutableString("barrier(").mangledNameHash());
    ASSERT_EQ(0x4d49a5a0u, ImmutableString("memoryBarrierShared(").mangledNameHash());
    ASSERT_EQ(0x493df1afu, ImmutableString("groupMemoryBarrier(").mangledNameHash());
    ASSERT_EQ(0x28bab062u, ImmutableString("EmitVertex(").mangledNameHash());
    ASSERT_EQ(0x30dfadf2u, ImmutableString("EndPrimitive(").mangledNameHash());
    ASSERT_EQ(0xfc5a3e39u, ImmutableString("frexp").mangledNameHash());
    ASSERT_EQ(0xfc58c75fu, ImmutableString("ldexp").mangledNameHash());
    ASSERT_EQ(0xfccaeea7u, ImmutableString("packUnorm4x8").mangledNameHash());
    ASSERT_EQ(0xfcc4dd14u, ImmutableString("packSnorm4x8").mangledNameHash());
    ASSERT_EQ(0xfce33074u, ImmutableString("unpackUnorm4x8").mangledNameHash());
    ASSERT_EQ(0xfce7c191u, ImmutableString("unpackSnorm4x8").mangledNameHash());
    ASSERT_EQ(0xfcff5885u, ImmutableString("bitfieldExtract").mangledNameHash());
    ASSERT_EQ(0xfcef8089u, ImmutableString("bitfieldInsert").mangledNameHash());
    ASSERT_EQ(0xfcfe5ecau, ImmutableString("bitfieldReverse").mangledNameHash());
    ASSERT_EQ(0xfc8255f7u, ImmutableString("bitCount").mangledNameHash());
    ASSERT_EQ(0xfc731d38u, ImmutableString("findLSB").mangledNameHash());
    ASSERT_EQ(0xfc77b8eeu, ImmutableString("findMSB").mangledNameHash());
    ASSERT_EQ(0xfc9ca01au, ImmutableString("uaddCarry").mangledNameHash());
    ASSERT_EQ(0xfcab8d28u, ImmutableString("usubBorrow").mangledNameHash());
    ASSERT_EQ(0xfcceb6ecu, ImmutableString("umulExtended").mangledNameHash());
    ASSERT_EQ(0xfcc55991u, ImmutableString("imulExtended").mangledNameHash());
    ASSERT_EQ(0xfca448b0u, ImmutableString("texelFetch").mangledNameHash());
    ASSERT_EQ(0xfcda3830u, ImmutableString("textureGather").mangledNameHash());
    ASSERT_EQ(0xfd3b2cf3u, ImmutableString("textureGatherOffset").mangledNameHash());
    ASSERT_EQ(0xfcdc11a6u, ImmutableString("atomicCounter").mangledNameHash());
    ASSERT_EQ(0xfd6666b0u, ImmutableString("atomicCounterIncrement").mangledNameHash());
    ASSERT_EQ(0xfd6d6946u, ImmutableString("atomicCounterDecrement").mangledNameHash());
    ASSERT_EQ(0xfc902522u, ImmutableString("atomicAdd").mangledNameHash());
    ASSERT_EQ(0xfc923b7bu, ImmutableString("atomicMin").mangledNameHash());
    ASSERT_EQ(0xfc911c23u, ImmutableString("atomicMax").mangledNameHash());
    ASSERT_EQ(0xfc9e6576u, ImmutableString("atomicAnd").mangledNameHash());
    ASSERT_EQ(0xfc8d2e21u, ImmutableString("atomicOr").mangledNameHash());
    ASSERT_EQ(0xfc9bf930u, ImmutableString("atomicXor").mangledNameHash());
    ASSERT_EQ(0xfceb9105u, ImmutableString("atomicExchange").mangledNameHash());
    ASSERT_EQ(0xfcef39c9u, ImmutableString("atomicCompSwap").mangledNameHash());
    ASSERT_EQ(0xfc96eee8u, ImmutableString("imageSize").mangledNameHash());
    ASSERT_EQ(0xfc949f9au, ImmutableString("imageLoad").mangledNameHash());
    ASSERT_EQ(0xfca4fe73u, ImmutableString("imageStore").mangledNameHash());
    ASSERT_EQ(0xfcd38128u, ImmutableString("memoryBarrier").mangledNameHash());
    ASSERT_EQ(0xfdab512bu, ImmutableString("memoryBarrierAtomicCounter").mangledNameHash());
    ASSERT_EQ(0xfd36fc39u, ImmutableString("memoryBarrierBuffer").mangledNameHash());
    ASSERT_EQ(0xfd24de50u, ImmutableString("memoryBarrierImage").mangledNameHash());
    ASSERT_EQ(0xfc73d933u, ImmutableString("barrier").mangledNameHash());
    ASSERT_EQ(0xfd3e8c1eu, ImmutableString("memoryBarrierShared").mangledNameHash());
    ASSERT_EQ(0xfd27aec1u, ImmutableString("groupMemoryBarrier").mangledNameHash());
    ASSERT_EQ(0xfcab5e6cu, ImmutableString("EmitVertex").mangledNameHash());
    ASSERT_EQ(0xfccb436cu, ImmutableString("EndPrimitive").mangledNameHash());
    ASSERT_EQ(0xfc41051au, ImmutableString("sinh").mangledNameHash());
    ASSERT_EQ(0xfc4f43d8u, ImmutableString("cosh").mangledNameHash());
    ASSERT_EQ(0xfc409755u, ImmutableString("tanh").mangledNameHash());
    ASSERT_EQ(0xfc5ba553u, ImmutableString("asinh").mangledNameHash());
    ASSERT_EQ(0xfc5ed779u, ImmutableString("acosh").mangledNameHash());
    ASSERT_EQ(0xfc507200u, ImmutableString("atanh").mangledNameHash());
    ASSERT_EQ(0xfc32a6bbu, ImmutableString("abs").mangledNameHash());
    ASSERT_EQ(0xfc40c06cu, ImmutableString("sign").mangledNameHash());
    ASSERT_EQ(0xfc5d5403u, ImmutableString("trunc").mangledNameHash());
    ASSERT_EQ(0xfc54f285u, ImmutableString("round").mangledNameHash());
    ASSERT_EQ(0xfc9a471eu, ImmutableString("roundEven").mangledNameHash());
    ASSERT_EQ(0xfc3c9da3u, ImmutableString("min").mangledNameHash());
    ASSERT_EQ(0xfc3d7937u, ImmutableString("max").mangledNameHash());
    ASSERT_EQ(0xfc5a8e53u, ImmutableString("clamp").mangledNameHash());
    ASSERT_EQ(0xfc3d7394u, ImmutableString("mix").mangledNameHash());
    ASSERT_EQ(0xfc4eb892u, ImmutableString("modf").mangledNameHash());
    ASSERT_EQ(0xfc5b1b56u, ImmutableString("isnan").mangledNameHash());
    ASSERT_EQ(0xfc526b19u, ImmutableString("isinf").mangledNameHash());
    ASSERT_EQ(0xfceb196au, ImmutableString("floatBitsToInt").mangledNameHash());
    ASSERT_EQ(0xfcfc86fdu, ImmutableString("floatBitsToUint").mangledNameHash());
    ASSERT_EQ(0xfcefcb16u, ImmutableString("intBitsToFloat").mangledNameHash());
    ASSERT_EQ(0xfcfc2381u, ImmutableString("uintBitsToFloat").mangledNameHash());
    ASSERT_EQ(0xfcd43a65u, ImmutableString("packSnorm2x16").mangledNameHash());
    ASSERT_EQ(0xfcd6f27cu, ImmutableString("packUnorm2x16").mangledNameHash());
    ASSERT_EQ(0xfcc5b90eu, ImmutableString("packHalf2x16").mangledNameHash());
    ASSERT_EQ(0xfcf6ea30u, ImmutableString("unpackSnorm2x16").mangledNameHash());
    ASSERT_EQ(0xfcf250f9u, ImmutableString("unpackUnorm2x16").mangledNameHash());
    ASSERT_EQ(0xfce2872eu, ImmutableString("unpackHalf2x16").mangledNameHash());
    ASSERT_EQ(0xfced5e20u, ImmutableString("matrixCompMult").mangledNameHash());
    ASSERT_EQ(0xfcc8ffcau, ImmutableString("outerProduct").mangledNameHash());
    ASSERT_EQ(0xfc9c00d8u, ImmutableString("transpose").mangledNameHash());
    ASSERT_EQ(0xfcb76123u, ImmutableString("determinant").mangledNameHash());
    ASSERT_EQ(0xfc7b229cu, ImmutableString("inverse").mangledNameHash());
    ASSERT_EQ(0xfc805a04u, ImmutableString("lessThan").mangledNameHash());
    ASSERT_EQ(0xfcd04816u, ImmutableString("lessThanEqual").mangledNameHash());
    ASSERT_EQ(0xfcb04a9au, ImmutableString("greaterThan").mangledNameHash());
    ASSERT_EQ(0xfd0ed0feu, ImmutableString("greaterThanEqual").mangledNameHash());
    ASSERT_EQ(0xfc52ffbfu, ImmutableString("equal").mangledNameHash());
    ASSERT_EQ(0xfc8243e5u, ImmutableString("notEqual").mangledNameHash());
    ASSERT_EQ(0xfc73ceb2u, ImmutableString("texture").mangledNameHash());
    ASSERT_EQ(0xfcb94477u, ImmutableString("textureProj").mangledNameHash());
    ASSERT_EQ(0xfca02c0du, ImmutableString("textureLod").mangledNameHash());
    ASSERT_EQ(0xfcbc7b6au, ImmutableString("textureSize").mangledNameHash());
    ASSERT_EQ(0xfceb71d9u, ImmutableString("textureProjLod").mangledNameHash());
    ASSERT_EQ(0xfcb3343au, ImmutableString("textureGrad").mangledNameHash());
    ASSERT_EQ(0xfcf7b1b6u, ImmutableString("textureProjGrad").mangledNameHash());
    ASSERT_EQ(0xfcd88b5eu, ImmutableString("textureOffset").mangledNameHash());
    ASSERT_EQ(0xfd1a5636u, ImmutableString("textureProjOffset").mangledNameHash());
    ASSERT_EQ(0xfd0394b4u, ImmutableString("textureLodOffset").mangledNameHash());
    ASSERT_EQ(0xfd4154feu, ImmutableString("textureProjLodOffset").mangledNameHash());
    ASSERT_EQ(0xfd012f28u, ImmutableString("texelFetchOffset").mangledNameHash());
    ASSERT_EQ(0xfd16b09du, ImmutableString("textureGradOffset").mangledNameHash());
    ASSERT_EQ(0xfd58b966u, ImmutableString("textureProjGradOffset").mangledNameHash());
    ASSERT_EQ(0xfc9a638fu, ImmutableString("rgb_2_yuv").mangledNameHash());
    ASSERT_EQ(0xfc9c77bau, ImmutableString("yuv_2_rgb").mangledNameHash());
    ASSERT_EQ(0xfc4c82d2u, ImmutableString("dFdx").mangledNameHash());
    ASSERT_EQ(0xfc4c70a1u, ImmutableString("dFdy").mangledNameHash());
    ASSERT_EQ(0xfc64b336u, ImmutableString("fwidth").mangledNameHash());
    ASSERT_EQ(0xfc918adeu, ImmutableString("texture2D").mangledNameHash());
    ASSERT_EQ(0xfcdc75d1u, ImmutableString("texture2DProj").mangledNameHash());
    ASSERT_EQ(0xfcbfe6dbu, ImmutableString("textureCube").mangledNameHash());
    ASSERT_EQ(0xfcd3dbbbu, ImmutableString("texture2DRect").mangledNameHash());
    ASSERT_EQ(0xfd16d4edu, ImmutableString("texture2DRectProj").mangledNameHash());
    ASSERT_EQ(0xfd0d1e0fu, ImmutableString("texture2DGradEXT").mangledNameHash());
    ASSERT_EQ(0xfd440d8au, ImmutableString("texture2DProjGradEXT").mangledNameHash());
    ASSERT_EQ(0xfd21d313u, ImmutableString("textureCubeGradEXT").mangledNameHash());
    ASSERT_EQ(0xfcf71bb4u, ImmutableString("texture2DLodEXT").mangledNameHash());
    ASSERT_EQ(0xfd3ba159u, ImmutableString("texture2DProjLodEXT").mangledNameHash());
    ASSERT_EQ(0xfd17391cu, ImmutableString("textureCubeLodEXT").mangledNameHash());
    ASSERT_EQ(0xfccfa39eu, ImmutableString("texture2DLod").mangledNameHash());
    ASSERT_EQ(0xfd030225u, ImmutableString("texture2DProjLod").mangledNameHash());
    ASSERT_EQ(0xfceb31cfu, ImmutableString("textureCubeLod").mangledNameHash());
    ASSERT_EQ(0xfc785144u, ImmutableString("radians").mangledNameHash());
    ASSERT_EQ(0xfc7af7aau, ImmutableString("degrees").mangledNameHash());
    ASSERT_EQ(0xfc3e094fu, ImmutableString("sin").mangledNameHash());
    ASSERT_EQ(0xfc3fba42u, ImmutableString("cos").mangledNameHash());
    ASSERT_EQ(0xfc39cbebu, ImmutableString("tan").mangledNameHash());
    ASSERT_EQ(0xfc4fe441u, ImmutableString("asin").mangledNameHash());
    ASSERT_EQ(0xfc43cf02u, ImmutableString("acos").mangledNameHash());
    ASSERT_EQ(0xfc406d33u, ImmutableString("atan").mangledNameHash());
    ASSERT_EQ(0xfc3589e3u, ImmutableString("pow").mangledNameHash());
    ASSERT_EQ(0xfc372d40u, ImmutableString("exp").mangledNameHash());
    ASSERT_EQ(0xfc33f444u, ImmutableString("log").mangledNameHash());
    ASSERT_EQ(0xfc496f84u, ImmutableString("exp2").mangledNameHash());
    ASSERT_EQ(0xfc410ee8u, ImmutableString("log2").mangledNameHash());
    ASSERT_EQ(0xfc47d52cu, ImmutableString("sqrt").mangledNameHash());
    ASSERT_EQ(0xfcbe83f1u, ImmutableString("inversesqrt").mangledNameHash());
    ASSERT_EQ(0xfc5b826du, ImmutableString("floor").mangledNameHash());
    ASSERT_EQ(0xfc462c46u, ImmutableString("ceil").mangledNameHash());
    ASSERT_EQ(0xfc5ee54eu, ImmutableString("fract").mangledNameHash());
    ASSERT_EQ(0xfc3dfb64u, ImmutableString("mod").mangledNameHash());
    ASSERT_EQ(0xfc4c7e4eu, ImmutableString("step").mangledNameHash());
    ASSERT_EQ(0xfca95719u, ImmutableString("smoothstep").mangledNameHash());
    ASSERT_EQ(0xfc683b16u, ImmutableString("length").mangledNameHash());
    ASSERT_EQ(0xfc82ef53u, ImmutableString("distance").mangledNameHash());
    ASSERT_EQ(0xfc3d39a9u, ImmutableString("dot").mangledNameHash());
    ASSERT_EQ(0xfc5297cau, ImmutableString("cross").mangledNameHash());
    ASSERT_EQ(0xfc9ceefeu, ImmutableString("normalize").mangledNameHash());
    ASSERT_EQ(0xfcb5f2b4u, ImmutableString("faceforward").mangledNameHash());
    ASSERT_EQ(0xfc7924ddu, ImmutableString("reflect").mangledNameHash());
    ASSERT_EQ(0xfc70669bu, ImmutableString("refract").mangledNameHash());
    ASSERT_EQ(0xfc32c2d2u, ImmutableString("any").mangledNameHash());
    ASSERT_EQ(0xfc313990u, ImmutableString("all").mangledNameHash());
    ASSERT_EQ(0xfc329793u, ImmutableString("not").mangledNameHash());
    ASSERT_EQ(0xfd02c057u, ImmutableString("gl_MaxImageUnits").mangledNameHash());
    ASSERT_EQ(0xfd9ea0aeu, ImmutableString("gl_MaxVertexImageUniforms").mangledNameHash());
    ASSERT_EQ(0xfdbe9e66u, ImmutableString("gl_MaxFragmentImageUniforms").mangledNameHash());
    ASSERT_EQ(0xfda554a5u, ImmutableString("gl_MaxComputeImageUniforms").mangledNameHash());
    ASSERT_EQ(0xfdb37edfu, ImmutableString("gl_MaxCombinedImageUniforms").mangledNameHash());
    ASSERT_EQ(0xfe38d36fu,
              ImmutableString("gl_MaxCombinedShaderOutputResources").mangledNameHash());
    ASSERT_EQ(0xfdbd5365u, ImmutableString("gl_MaxComputeWorkGroupCount").mangledNameHash());
    ASSERT_EQ(0xfdaec53cu, ImmutableString("gl_MaxComputeWorkGroupSize").mangledNameHash());
    ASSERT_EQ(0xfde6c67fu, ImmutableString("gl_MaxComputeUniformComponents").mangledNameHash());
    ASSERT_EQ(0xfde022f8u, ImmutableString("gl_MaxComputeTextureImageUnits").mangledNameHash());
    ASSERT_EQ(0xfdbc3a77u, ImmutableString("gl_MaxComputeAtomicCounters").mangledNameHash());
    ASSERT_EQ(0xfe1ac97cu, ImmutableString("gl_MaxComputeAtomicCounterBuffers").mangledNameHash());
    ASSERT_EQ(0xfda4cb4eu, ImmutableString("gl_MaxVertexAtomicCounters").mangledNameHash());
    ASSERT_EQ(0xfdc4585cu, ImmutableString("gl_MaxFragmentAtomicCounters").mangledNameHash());
    ASSERT_EQ(0xfdc82d47u, ImmutableString("gl_MaxCombinedAtomicCounters").mangledNameHash());
    ASSERT_EQ(0xfdb5a5efu, ImmutableString("gl_MaxAtomicCounterBindings").mangledNameHash());
    ASSERT_EQ(0xfe01078bu, ImmutableString("gl_MaxVertexAtomicCounterBuffers").mangledNameHash());
    ASSERT_EQ(0xfe2f6e03u, ImmutableString("gl_MaxFragmentAtomicCounterBuffers").mangledNameHash());
    ASSERT_EQ(0xfe23d724u, ImmutableString("gl_MaxCombinedAtomicCounterBuffers").mangledNameHash());
    ASSERT_EQ(0xfdd980a0u, ImmutableString("gl_MaxAtomicCounterBufferSize").mangledNameHash());
    ASSERT_EQ(0xfdd850b4u, ImmutableString("gl_MaxGeometryInputComponents").mangledNameHash());
    ASSERT_EQ(0xfded2f56u, ImmutableString("gl_MaxGeometryOutputComponents").mangledNameHash());
    ASSERT_EQ(0xfdb3d624u, ImmutableString("gl_MaxGeometryImageUniforms").mangledNameHash());
    ASSERT_EQ(0xfdf3607cu, ImmutableString("gl_MaxGeometryTextureImageUnits").mangledNameHash());
    ASSERT_EQ(0xfdc36735u, ImmutableString("gl_MaxGeometryOutputVertices").mangledNameHash());
    ASSERT_EQ(0xfe399b59u,
              ImmutableString("gl_MaxGeometryTotalOutputComponents").mangledNameHash());
    ASSERT_EQ(0xfdfc01c8u, ImmutableString("gl_MaxGeometryUniformComponents").mangledNameHash());
    ASSERT_EQ(0xfdcd9e6eu, ImmutableString("gl_MaxGeometryAtomicCounters").mangledNameHash());
    ASSERT_EQ(0xfe2e3022u, ImmutableString("gl_MaxGeometryAtomicCounterBuffers").mangledNameHash());
    ASSERT_EQ(0xfc57d894u, ImmutableString("gl_in").mangledNameHash());
    ASSERT_EQ(0xfd056470u, ImmutableString("gl_NumWorkGroups").mangledNameHash());
    ASSERT_EQ(0xfd012f8fu, ImmutableString("gl_WorkGroupSize").mangledNameHash());
    ASSERT_EQ(0xfce6f9f9u, ImmutableString("gl_WorkGroupID").mangledNameHash());
    ASSERT_EQ(0xfd44b7fdu, ImmutableString("gl_LocalInvocationID").mangledNameHash());
    ASSERT_EQ(0xfd5a3d85u, ImmutableString("gl_GlobalInvocationID").mangledNameHash());
    ASSERT_EQ(0xfd79936fu, ImmutableString("gl_LocalInvocationIndex").mangledNameHash());
    ASSERT_EQ(0xfd0c9b3bu, ImmutableString("gl_PrimitiveIDIn").mangledNameHash());
    ASSERT_EQ(0xfcffc55cu, ImmutableString("gl_InvocationID").mangledNameHash());
    ASSERT_EQ(0xfce8624au, ImmutableString("gl_PrimitiveID").mangledNameHash());
    ASSERT_EQ(0xfc802b2du, ImmutableString("gl_Layer").mangledNameHash());
    ASSERT_EQ(0xfcce2be4u, ImmutableString("gl_PerVertex").mangledNameHash());
    ASSERT_EQ(0xfcb021abu, ImmutableString("gl_Position").mangledNameHash());
    ASSERT_EQ(0xfd9190e7u, ImmutableString("gl_MaxVertexOutputVectors").mangledNameHash());
    ASSERT_EQ(0xfda34617u, ImmutableString("gl_MaxFragmentInputVectors").mangledNameHash());
    ASSERT_EQ(0xfd87bc19u, ImmutableString("gl_MinProgramTexelOffset").mangledNameHash());
    ASSERT_EQ(0xfd8203fcu, ImmutableString("gl_MaxProgramTexelOffset").mangledNameHash());
    ASSERT_EQ(0xfcc88d0bu, ImmutableString("gl_FragDepth").mangledNameHash());
    ASSERT_EQ(0xfcd7e888u, ImmutableString("gl_InstanceID").mangledNameHash());
    ASSERT_EQ(0xfcbf3cafu, ImmutableString("gl_VertexID").mangledNameHash());
    ASSERT_EQ(0xfcdecfa5u, ImmutableString("gl_ViewID_OVR").mangledNameHash());
    ASSERT_EQ(0xfd4d8991u, ImmutableString("gl_MaxVaryingVectors").mangledNameHash());
    ASSERT_EQ(0xfcb413a9u, ImmutableString("gl_FragData").mangledNameHash());
    ASSERT_EQ(0xfd79d316u, ImmutableString("gl_SecondaryFragDataEXT").mangledNameHash());
    ASSERT_EQ(0xfcf86783u, ImmutableString("gl_FragDepthEXT").mangledNameHash());
    ASSERT_EQ(0xfcc1acd3u, ImmutableString("gl_FragColor").mangledNameHash());
    ASSERT_EQ(0xfd8aea76u, ImmutableString("gl_SecondaryFragColorEXT").mangledNameHash());
    ASSERT_EQ(0xfcf2cf9cu, ImmutableString("gl_LastFragData").mangledNameHash());
    ASSERT_EQ(0xfd004caeu, ImmutableString("gl_LastFragColor").mangledNameHash());
    ASSERT_EQ(0xfd3e1d30u, ImmutableString("gl_LastFragColorARM").mangledNameHash());
    ASSERT_EQ(0xfd7dc4d6u, ImmutableString("gl_DepthRangeParameters").mangledNameHash());
    ASSERT_EQ(0xfcd5c51au, ImmutableString("gl_DepthRange").mangledNameHash());
    ASSERT_EQ(0xfd35ab48u, ImmutableString("gl_MaxVertexAttribs").mangledNameHash());
    ASSERT_EQ(0xfda6bc61u, ImmutableString("gl_MaxVertexUniformVectors").mangledNameHash());
    ASSERT_EQ(0xfdd42165u, ImmutableString("gl_MaxVertexTextureImageUnits").mangledNameHash());
    ASSERT_EQ(0xfdf08397u, ImmutableString("gl_MaxCombinedTextureImageUnits").mangledNameHash());
    ASSERT_EQ(0xfd756b95u, ImmutableString("gl_MaxTextureImageUnits").mangledNameHash());
    ASSERT_EQ(0xfdc89746u, ImmutableString("gl_MaxFragmentUniformVectors").mangledNameHash());
    ASSERT_EQ(0xfd1554f1u, ImmutableString("gl_MaxDrawBuffers").mangledNameHash());
    ASSERT_EQ(0xfde3d71cu, ImmutableString("gl_MaxDualSourceDrawBuffersEXT").mangledNameHash());
    ASSERT_EQ(0xfcc997bcu, ImmutableString("gl_FragCoord").mangledNameHash());
    ASSERT_EQ(0xfce60278u, ImmutableString("gl_FrontFacing").mangledNameHash());
    ASSERT_EQ(0xfcd86bd1u, ImmutableString("gl_PointCoord").mangledNameHash());
    ASSERT_EQ(0xfcc70d97u, ImmutableString("gl_PointSize").mangledNameHash());
}

}  // namespace sh
