From d7d425404bf416175cf5097e3d2b8429edd12983 Mon Sep 17 00:00:00 2001 From: Clemen Deng Date: Wed, 21 Aug 2019 15:22:49 -0400 Subject: [PATCH] Don't build symbol table for GLSL built-ins if on Android The GLSL + ESSL autogenerated symbol table is too large for android, and android also doesn't need desktop GL functionality If on android, compile the ESSL only symbol table Bug: chromium:996286 Change-Id: I14dfc7748dae389e78c35f82a390c67962665356 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1757372 Commit-Queue: Clemen Deng Reviewed-by: Shahbaz Youssefi Reviewed-by: Geoff Lang --- doc/WritingShaderASTTransformations.md | 2 +- .../ESSL_static_builtins.json | 20 - .../Emulated_HLSL_functions.json | 4 +- .../Static_builtins.json | 30 + scripts/run_code_generation.py | 4 +- src/compiler.gni | 21 +- .../BuiltInFunctionEmulatorGLSL.cpp | 2 +- .../BuiltInFunctionEmulatorHLSL.cpp | 2 +- src/compiler/translator/Compiler.cpp | 2 +- .../ImmutableString_ESSL_autogen.cpp | 247 + src/compiler/translator/ParseContext.cpp | 2 +- .../translator/ParseContext_ESSL_autogen.h | 66 + ...ogen.h => ParseContext_complete_autogen.h} | 2 +- src/compiler/translator/ParseContext_interm.h | 18 + .../translator/SymbolTable_ESSL_autogen.cpp | 26870 ++++++++++++++++ .../translator/SymbolTable_autogen.cpp | 2 +- src/compiler/translator/TranslatorVulkan.cpp | 30 +- ...mulated_builtin_functions_hlsl_autogen.cpp | 2 +- .../translator/gen_builtin_symbols.py | 160 +- .../gen_emulated_builtin_function_tables.py | 2 +- .../translator/tree_ops/ClampFragDepth.cpp | 2 +- .../translator/tree_ops/ClampPointSize.cpp | 2 +- ...reAndInitBuiltinsForInstancedMultiview.cpp | 2 +- .../EmulateMultiDrawShaderBuiltins.cpp | 2 +- src/compiler/translator/tree_util/BuiltIn.h | 18 + .../tree_util/BuiltIn_ESSL_autogen.h | 1386 + ...n_autogen.h => BuiltIn_complete_autogen.h} | 2 +- .../translator/tree_util/IntermNode_util.h | 2 +- src/tests/angle_unittests.gni | 9 +- .../ImmutableString_test_ESSL_autogen.cpp | 4 +- 30 files changed, 28794 insertions(+), 123 deletions(-) delete mode 100644 scripts/code_generation_hashes/ESSL_static_builtins.json create mode 100644 scripts/code_generation_hashes/Static_builtins.json create mode 100644 src/compiler/translator/ImmutableString_ESSL_autogen.cpp create mode 100644 src/compiler/translator/ParseContext_ESSL_autogen.h rename src/compiler/translator/{ParseContext_autogen.h => ParseContext_complete_autogen.h} (97%) create mode 100644 src/compiler/translator/ParseContext_interm.h create mode 100644 src/compiler/translator/SymbolTable_ESSL_autogen.cpp create mode 100644 src/compiler/translator/tree_util/BuiltIn.h create mode 100644 src/compiler/translator/tree_util/BuiltIn_ESSL_autogen.h rename src/compiler/translator/tree_util/{BuiltIn_autogen.h => BuiltIn_complete_autogen.h} (99%) diff --git a/doc/WritingShaderASTTransformations.md b/doc/WritingShaderASTTransformations.md index fed9b4451..2bcacc611 100644 --- a/doc/WritingShaderASTTransformations.md +++ b/doc/WritingShaderASTTransformations.md @@ -21,7 +21,7 @@ If you're only interested in function declarations or global variables, they're TIntermTraverser has member functions to insert and replace nodes. To remove a node, replace it with an empty list. Usually visit functions queue replacements and then updateTree() is called after the traversal is complete - this way the replacement doesn't affect the current traversal. For some transformations of nested AST structures you may need to do multiple traversals. -**BuiltIn_autogen.h**: With the helpers here you can easily and cheaply create references to built-in variables that are stored as constexpr. +**BuiltIn.h**: With the helpers here you can easily and cheaply create references to built-in variables that are stored as constexpr. **IntermNode_utils.h**: These utilities can do things like create a zero node with an arbitrary type, create bool nodes, index nodes, or operations on temporary variables. diff --git a/scripts/code_generation_hashes/ESSL_static_builtins.json b/scripts/code_generation_hashes/ESSL_static_builtins.json deleted file mode 100644 index f2031977a..000000000 --- a/scripts/code_generation_hashes/ESSL_static_builtins.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "src/compiler/translator/ImmutableString_autogen.cpp": - "81004ecca353bdce6999ba864615e10f", - "src/compiler/translator/ParseContext_autogen.h": - "48f878f5878e8ab239af7c14e5878b62", - "src/compiler/translator/SymbolTable_autogen.cpp": - "e101aa202c0397caf48482853bb90d02", - "src/compiler/translator/SymbolTable_autogen.h": - "3b7cc472d076136a048d6b6f9c28460c", - "src/compiler/translator/builtin_function_declarations.txt": - "fc9b0b050448d015482c9f13cab1df67", - "src/compiler/translator/builtin_variables.json": - "34906b1c84fe40824e412607f9f1c501", - "src/compiler/translator/gen_builtin_symbols.py": - "a671720ef20bf7d7a7f719a42f9ae7b6", - "src/compiler/translator/tree_util/BuiltIn_autogen.h": - "80a911c6701baded2fd8d5567c605669", - "src/tests/compiler_tests/ImmutableString_test_autogen.cpp": - "181c3209ad287d1a9477313ea0332445" -} \ No newline at end of file diff --git a/scripts/code_generation_hashes/Emulated_HLSL_functions.json b/scripts/code_generation_hashes/Emulated_HLSL_functions.json index 0b2a19a25..2517926f1 100644 --- a/scripts/code_generation_hashes/Emulated_HLSL_functions.json +++ b/scripts/code_generation_hashes/Emulated_HLSL_functions.json @@ -2,7 +2,7 @@ "src/compiler/translator/emulated_builtin_function_data_hlsl.json": "002ad46d144c51fe98d73478aa554ba7", "src/compiler/translator/emulated_builtin_functions_hlsl_autogen.cpp": - "1c759ffdd27a86fd8f2d590b2f3dcb56", + "2d43e80d277a8fcc05212a94438883f2", "src/compiler/translator/gen_emulated_builtin_function_tables.py": - "5991de4f43758f59d9d042581ae04eab" + "1c51fee50b5431779b1cdbfd910c3aca" } \ No newline at end of file diff --git a/scripts/code_generation_hashes/Static_builtins.json b/scripts/code_generation_hashes/Static_builtins.json new file mode 100644 index 000000000..bbe87eb04 --- /dev/null +++ b/scripts/code_generation_hashes/Static_builtins.json @@ -0,0 +1,30 @@ +{ + "src/compiler/translator/ImmutableString_ESSL_autogen.cpp": + "0a6f36eed915883baf3cb9f864905823", + "src/compiler/translator/ImmutableString_autogen.cpp": + "81004ecca353bdce6999ba864615e10f", + "src/compiler/translator/ParseContext_ESSL_autogen.h": + "dadb27b8d2dc56310e448ad131d651dd", + "src/compiler/translator/ParseContext_complete_autogen.h": + "a4209c68899e9cf3bcce81be2cb5f39f", + "src/compiler/translator/SymbolTable_ESSL_autogen.cpp": + "2a7b72848c39b080bd561068ea17f7a2", + "src/compiler/translator/SymbolTable_autogen.cpp": + "787c440bd5b5eaf27abdcd571a71cce9", + "src/compiler/translator/SymbolTable_autogen.h": + "3b7cc472d076136a048d6b6f9c28460c", + "src/compiler/translator/builtin_function_declarations.txt": + "fc9b0b050448d015482c9f13cab1df67", + "src/compiler/translator/builtin_variables.json": + "34906b1c84fe40824e412607f9f1c501", + "src/compiler/translator/gen_builtin_symbols.py": + "3c867ef8bd6d80fa3d237c601b98407d", + "src/compiler/translator/tree_util/BuiltIn_ESSL_autogen.h": + "3a69c3e1090d1b38f193e481aba976fb", + "src/compiler/translator/tree_util/BuiltIn_complete_autogen.h": + "f3ec88a26be22805453fd711910f2040", + "src/tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp": + "b8c43b7c4825633f275c7c0bc1f597ad", + "src/tests/compiler_tests/ImmutableString_test_autogen.cpp": + "181c3209ad287d1a9477313ea0332445" +} \ No newline at end of file diff --git a/scripts/run_code_generation.py b/scripts/run_code_generation.py index 904324cf7..2210933d4 100755 --- a/scripts/run_code_generation.py +++ b/scripts/run_code_generation.py @@ -107,8 +107,8 @@ generators = { 'src/libANGLE/renderer/vulkan/gen_vk_internal_shaders.py', 'Emulated HLSL functions': 'src/compiler/translator/gen_emulated_builtin_function_tables.py', - 'ESSL static builtins': - 'src/compiler/translator/gen_builtin_symbols.py', + 'Static builtins': + 'src/compiler/translator/gen_builtin_symbols.py' } diff --git a/src/compiler.gni b/src/compiler.gni index 089fe2b80..8edfbbb08 100644 --- a/src/compiler.gni +++ b/src/compiler.gni @@ -44,7 +44,6 @@ angle_translator_sources = [ "src/compiler/translator/FunctionLookup.h", "src/compiler/translator/HashNames.cpp", "src/compiler/translator/HashNames.h", - "src/compiler/translator/ImmutableString_autogen.cpp", "src/compiler/translator/ImmutableString.h", "src/compiler/translator/ImmutableStringBuilder.cpp", "src/compiler/translator/ImmutableStringBuilder.h", @@ -65,7 +64,9 @@ angle_translator_sources = [ "src/compiler/translator/OutputTree.h", "src/compiler/translator/ParseContext.cpp", "src/compiler/translator/ParseContext.h", - "src/compiler/translator/ParseContext_autogen.h", + "src/compiler/translator/ParseContext_interm.h", + "src/compiler/translator/ParseContext_complete_autogen.h", + "src/compiler/translator/ParseContext_ESSL_autogen.h", "src/compiler/translator/PoolAlloc.cpp", "src/compiler/translator/PoolAlloc.h", "src/compiler/translator/Pragma.h", @@ -79,7 +80,6 @@ angle_translator_sources = [ "src/compiler/translator/Symbol.h", "src/compiler/translator/SymbolTable.cpp", "src/compiler/translator/SymbolTable.h", - "src/compiler/translator/SymbolTable_autogen.cpp", "src/compiler/translator/SymbolTable_autogen.h", "src/compiler/translator/SymbolUniqueId.cpp", "src/compiler/translator/SymbolUniqueId.h", @@ -193,7 +193,9 @@ angle_translator_sources = [ "src/compiler/translator/tree_ops/UseInterfaceBlockFields.h", "src/compiler/translator/tree_ops/VectorizeVectorScalarArithmetic.cpp", "src/compiler/translator/tree_ops/VectorizeVectorScalarArithmetic.h", - "src/compiler/translator/tree_util/BuiltIn_autogen.h", + "src/compiler/translator/tree_util/BuiltIn.h", + "src/compiler/translator/tree_util/BuiltIn_complete_autogen.h", + "src/compiler/translator/tree_util/BuiltIn_ESSL_autogen.h", "src/compiler/translator/tree_util/FindFunction.cpp", "src/compiler/translator/tree_util/FindFunction.h", "src/compiler/translator/tree_util/FindMain.cpp", @@ -292,6 +294,17 @@ angle_translator_lib_vulkan_sources = [ "src/compiler/translator/TranslatorVulkan.cpp", "src/compiler/translator/TranslatorVulkan.h", ] +if (is_android) { + angle_translator_sources += [ + "src/compiler/translator/ImmutableString_ESSL_autogen.cpp", + "src/compiler/translator/SymbolTable_ESSL_autogen.cpp", + ] +} else { + angle_translator_sources += [ + "src/compiler/translator/ImmutableString_autogen.cpp", + "src/compiler/translator/SymbolTable_autogen.cpp", + ] +} angle_preprocessor_sources = [ "src/compiler/preprocessor/DiagnosticsBase.cpp", "src/compiler/preprocessor/DiagnosticsBase.h", diff --git a/src/compiler/translator/BuiltInFunctionEmulatorGLSL.cpp b/src/compiler/translator/BuiltInFunctionEmulatorGLSL.cpp index 45617be43..921233658 100644 --- a/src/compiler/translator/BuiltInFunctionEmulatorGLSL.cpp +++ b/src/compiler/translator/BuiltInFunctionEmulatorGLSL.cpp @@ -9,7 +9,7 @@ #include "angle_gl.h" #include "compiler/translator/BuiltInFunctionEmulator.h" #include "compiler/translator/VersionGLSL.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" namespace sh { diff --git a/src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp b/src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp index 11e0ed7e7..66a0be39e 100644 --- a/src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp +++ b/src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp @@ -8,7 +8,7 @@ #include "angle_gl.h" #include "compiler/translator/BuiltInFunctionEmulator.h" #include "compiler/translator/VersionGLSL.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" namespace sh { diff --git a/src/compiler/translator/Compiler.cpp b/src/compiler/translator/Compiler.cpp index dd0c768d6..3a9743372 100644 --- a/src/compiler/translator/Compiler.cpp +++ b/src/compiler/translator/Compiler.cpp @@ -47,7 +47,7 @@ #include "compiler/translator/tree_ops/UnfoldShortCircuitAST.h" #include "compiler/translator/tree_ops/UseInterfaceBlockFields.h" #include "compiler/translator/tree_ops/VectorizeVectorScalarArithmetic.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" #include "compiler/translator/tree_util/IntermNodePatternMatcher.h" #include "compiler/translator/tree_util/ReplaceShadowingVariables.h" #include "compiler/translator/util.h" diff --git a/src/compiler/translator/ImmutableString_ESSL_autogen.cpp b/src/compiler/translator/ImmutableString_ESSL_autogen.cpp new file mode 100644 index 000000000..36147fb93 --- /dev/null +++ b/src/compiler/translator/ImmutableString_ESSL_autogen.cpp @@ -0,0 +1,247 @@ +// GENERATED FILE - DO NOT EDIT. +// Generated by gen_builtin_symbols.py using data from builtin_variables.json and +// builtin_function_declarations.txt. +// +// Copyright 2019 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_ESSL_autogen.cpp: Wrapper for static or pool allocated char arrays, that are +// guaranteed to be valid and unchanged for the duration of the compilation. Implements +// mangledNameHash using perfect hash function from gen_builtin_symbols.py + +#include "compiler/translator/ImmutableString.h" + +std::ostream &operator<<(std::ostream &os, const sh::ImmutableString &str) +{ + return os.write(str.data(), str.length()); +} + +#if defined(_MSC_VER) +# pragma warning(disable : 4309) // truncation of constant value +#endif + +namespace +{ + +constexpr int mangledkT1[] = {1565, 313, 287, 949, 1140, 1423, 508, 548, 1149, 1607, + 810, 340, 1456, 1143, 1562, 1788, 172, 1529, 1200, 1567, + 56, 1802, 216, 1101, 1543, 1842, 75, 732, 732, 474, + 903, 1146, 792, 329, 101, 1318, 1200}; +constexpr int mangledkT2[] = {1578, 1819, 453, 619, 1394, 30, 646, 34, 1060, 790, + 1071, 30, 1008, 1597, 1733, 413, 119, 1557, 912, 548, + 98, 237, 1013, 1863, 886, 599, 76, 674, 729, 550, + 1426, 1318, 233, 1220, 1858, 584, 1130}; +constexpr int mangledkG[] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 454, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1905, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 472, 0, 0, 0, 0, 0, 0, 0, 0, 0, 526, 0, 0, 0, + 0, 172, 369, 0, 430, 925, 0, 0, 0, 0, 0, 110, 108, 165, 0, 0, + 0, 0, 0, 0, 1185, 293, 0, 0, 0, 0, 0, 425, 0, 0, 1713, 0, + 0, 0, 0, 711, 0, 0, 0, 0, 0, 40, 1877, 0, 1918, 863, 0, 0, + 0, 0, 223, 0, 0, 871, 0, 0, 0, 0, 0, 0, 0, 1492, 1066, 0, + 0, 0, 1611, 1627, 0, 764, 0, 657, 179, 1758, 0, 0, 0, 0, 0, 0, + 0, 0, 576, 0, 0, 0, 0, 0, 0, 0, 0, 198, 0, 0, 0, 1784, + 0, 1552, 0, 0, 690, 0, 730, 0, 254, 0, 0, 0, 793, 1273, 0, 0, + 204, 0, 0, 0, 0, 0, 1739, 0, 238, 321, 0, 240, 189, 0, 239, 0, + 0, 0, 970, 0, 681, 0, 0, 0, 680, 0, 541, 1832, 0, 0, 0, 1083, + 1725, 0, 0, 0, 0, 0, 837, 156, 0, 0, 0, 1112, 0, 358, 108, 0, + 0, 0, 187, 821, 0, 105, 0, 0, 514, 54, 1739, 1588, 504, 1533, 0, 0, + 1737, 0, 0, 0, 0, 309, 0, 1710, 902, 0, 0, 1567, 0, 1570, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 45, 790, 0, 967, 0, 818, 77, 0, + 975, 0, 1063, 0, 0, 0, 0, 0, 0, 387, 1862, 0, 0, 0, 0, 0, + 0, 0, 797, 0, 1138, 0, 31, 1457, 0, 0, 1077, 0, 0, 315, 0, 0, + 0, 0, 236, 0, 897, 0, 0, 0, 0, 0, 492, 0, 0, 710, 1414, 0, + 175, 0, 0, 0, 47, 0, 74, 210, 0, 629, 1564, 473, 0, 177, 1867, 1630, + 355, 0, 0, 153, 357, 0, 852, 0, 0, 0, 1244, 0, 0, 0, 0, 967, + 0, 0, 68, 0, 0, 0, 0, 1502, 1837, 0, 0, 1086, 228, 0, 0, 964, + 0, 0, 0, 0, 0, 0, 0, 973, 0, 402, 382, 0, 725, 0, 1097, 0, + 0, 760, 0, 81, 0, 1610, 402, 0, 457, 0, 0, 83, 0, 515, 176, 0, + 331, 0, 0, 1754, 374, 1888, 0, 0, 0, 0, 1378, 0, 0, 178, 118, 0, + 0, 899, 0, 822, 832, 0, 0, 14, 0, 0, 0, 0, 515, 630, 0, 0, + 0, 0, 0, 0, 0, 146, 684, 0, 0, 1269, 1785, 0, 627, 0, 1622, 587, + 152, 659, 0, 958, 0, 1491, 1036, 147, 697, 1081, 0, 0, 0, 0, 0, 0, + 327, 0, 0, 1174, 811, 0, 0, 0, 0, 294, 0, 1584, 626, 0, 0, 0, + 0, 90, 0, 857, 0, 0, 309, 1652, 0, 1759, 0, 655, 0, 1864, 0, 337, + 0, 0, 0, 0, 796, 220, 0, 0, 297, 234, 0, 0, 163, 0, 0, 0, + 0, 1723, 848, 0, 0, 0, 0, 0, 0, 0, 889, 1667, 127, 0, 0, 856, + 698, 0, 0, 0, 0, 708, 0, 672, 118, 0, 0, 0, 0, 1676, 0, 0, + 0, 0, 121, 0, 0, 337, 0, 701, 0, 0, 0, 0, 0, 282, 254, 0, + 559, 1714, 1555, 556, 650, 0, 0, 1439, 0, 51, 0, 0, 1112, 309, 85, 0, + 987, 965, 0, 711, 0, 443, 1613, 0, 378, 378, 646, 0, 0, 476, 744, 1755, + 0, 0, 451, 79, 0, 140, 0, 0, 0, 0, 150, 477, 0, 0, 0, 0, + 0, 0, 1921, 0, 0, 0, 684, 0, 0, 226, 0, 1281, 332, 67, 225, 1415, + 1471, 0, 243, 0, 0, 0, 140, 1622, 0, 238, 0, 432, 425, 109, 397, 0, + 1803, 602, 631, 0, 59, 1642, 0, 824, 1500, 643, 0, 0, 1659, 190, 0, 0, + 144, 0, 18, 766, 0, 120, 0, 0, 0, 0, 477, 0, 854, 409, 0, 1632, + 203, 0, 286, 679, 375, 0, 0, 201, 1575, 0, 173, 0, 0, 0, 626, 0, + 0, 802, 0, 0, 0, 799, 0, 0, 0, 736, 0, 568, 480, 0, 0, 0, + 988, 1406, 1831, 0, 0, 452, 363, 0, 0, 905, 1191, 592, 594, 0, 0, 581, + 39, 489, 0, 70, 1637, 364, 385, 0, 399, 0, 1816, 0, 0, 0, 0, 0, + 0, 0, 254, 531, 1000, 1355, 1727, 0, 238, 0, 0, 832, 847, 1883, 1836, 0, + 0, 328, 365, 11, 0, 0, 0, 0, 0, 0, 0, 277, 0, 0, 750, 75, + 0, 72, 260, 0, 0, 0, 0, 1489, 669, 0, 299, 0, 236, 918, 0, 0, + 0, 1575, 0, 691, 0, 0, 0, 467, 0, 0, 0, 0, 0, 209, 1140, 586, + 183, 0, 0, 552, 0, 113, 83, 0, 1901, 0, 0, 1557, 714, 1865, 223, 1439, + 177, 0, 261, 862, 1834, 437, 0, 0, 0, 0, 0, 0, 0, 366, 0, 560, + 0, 1810, 0, 1416, 515, 0, 47, 1037, 892, 213, 569, 1734, 0, 571, 1614, 0, + 414, 1687, 276, 0, 0, 0, 0, 548, 541, 1489, 0, 0, 0, 1437, 0, 1097, + 0, 552, 1359, 0, 0, 0, 60, 174, 0, 0, 0, 0, 707, 0, 221, 0, + 0, 807, 0, 0, 816, 0, 96, 0, 953, 1803, 843, 32, 1586, 872, 212, 1922, + 0, 0, 0, 0, 746, 0, 1356, 1921, 154, 0, 71, 162, 0, 0, 0, 398, + 438, 0, 577, 620, 0, 550, 1724, 916, 816, 371, 0, 903, 204, 0, 0, 0, + 0, 0, 0, 913, 0, 0, 535, 1641, 1777, 432, 0, 550, 0, 0, 618, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 827, 0, 0, 0, 622, 607, 0, 1336, + 34, 36, 0, 455, 187, 1323, 316, 0, 0, 347, 333, 39, 782, 1747, 0, 0, + 0, 1191, 0, 1237, 424, 250, 1887, 0, 1706, 0, 621, 1657, 362, 0, 0, 667, + 0, 0, 133, 223, 891, 0, 0, 0, 902, 354, 1242, 0, 0, 0, 0, 0, + 485, 555, 720, 558, 0, 229, 373, 573, 0, 0, 0, 0, 1779, 4, 0, 0, + 0, 120, 0, 0, 58, 440, 1918, 830, 0, 0, 1510, 272, 0, 351, 0, 0, + 321, 0, 1683, 262, 0, 459, 0, 0, 0, 1259, 728, 0, 23, 502, 15, 0, + 707, 0, 0, 772, 268, 1875, 0, 0, 0, 1246, 53, 0, 988, 88, 475, 0, + 0, 496, 0, 781, 338, 78, 0, 0, 0, 0, 464, 0, 446, 510, 1862, 347, + 740, 865, 147, 0, 0, 514, 908, 97, 508, 0, 0, 573, 0, 0, 1260, 0, + 0, 0, 0, 616, 1870, 103, 1828, 842, 1104, 0, 0, 0, 1850, 303, 420, 760, + 0, 0, 0, 0, 0, 0, 2, 1877, 0, 878, 1867, 0, 0, 439, 0, 0, + 201, 165, 400, 0, 1084, 0, 1100, 0, 597, 0, 22, 278, 460, 0, 1058, 920, + 1586, 0, 0, 131, 475, 596, 0, 0, 602, 0, 0, 1562, 0, 873, 42, 0, + 380, 376, 345, 1785, 0, 474, 0, 0, 0, 1189, 1680, 263, 0, 1904, 0, 99, + 0, 0, 36, 513, 0, 117, 821, 0, 341, 733, 1293, 86, 191, 1669, 448, 0, + 588, 673, 0, 95, 0, 0, 0, 649, 1192, 0, 0, 0, 0, 0, 504, 0, + 647, 1350, 398, 0, 1594, 0, 0, 557, 0, 726, 0, 1675, 0, 0, 0, 1672, + 733, 0, 1773, 0, 853, 0, 0, 0, 0, 0, 28, 1540, 0, 0, 0, 379, + 149, 809, 763, 0, 0, 964, 0, 504, 247, 130, 0, 0, 188, 396, 0, 1193, + 0, 0, 556, 511, 0, 0, 0, 0, 3, 417, 0, 171, 0, 0, 0, 0, + 0, 340, 1358, 644, 923, 750, 0, 0, 238, 66, 320, 278, 1706, 0, 805, 0, + 447, 523, 74, 465, 540, 1896, 466, 0, 0, 207, 0, 633, 78, 0, 0, 753, + 0, 0, 0, 410, 0, 0, 0, 1512, 0, 224, 728, 557, 0, 0, 1752, 1727, + 822, 0, 0, 0, 0, 0, 1841, 683, 590, 1914, 0, 0, 979, 795, 1290, 333, + 0, 0, 1410, 0, 0, 238, 0, 1453, 0, 617, 0, 1879, 1827, 0, 1820, 659, + 0, 345, 770, 325, 0, 0, 800, 253, 0, 0, 514, 158, 0, 1417, 100, 329, + 1869, 0, 917, 609, 0, 0, 0, 856, 1751, 277, 123, 0, 0, 889, 544, 0, + 0, 1719, 353, 525, 402, 1366, 1289, 0, 0, 0, 0, 721, 241, 1564, 0, 422, + 0, 0, 1557, 0, 1686, 106, 373, 0, 313, 1479, 386, 0, 746, 655, 0, 454, + 1547, 0, 0, 0, 0, 0, 0, 86, 0, 696, 189, 0, 163, 405, 719, 1267, + 0, 66, 1477, 0, 2, 1159, 1539, 0, 1915, 132, 0, 51, 0, 625, 0, 697, + 575, 0, 782, 0, 0, 0, 0, 0, 299, 284, 726, 206, 0, 266, 0, 0, + 0, 21, 0, 737, 0, 0, 1806, 1780, 699, 0, 740, 0, 195, 0, 1550, 1716, + 0, 350, 0, 0, 295, 87, 0, 0, 1798, 1860, 316, 0, 200, 670, 0, 1879, + 352, 0, 910, 0, 0, 1475, 1740, 0, 1875, 27, 0, 534, 0, 703, 0, 0, + 1900, 0, 0, 0, 0, 0, 415, 0, 163, 1778, 106, 1291, 664, 0, 1207, 1315, + 182, 387, 0, 168, 84, 0, 0, 0, 458, 0, 0, 656, 237, 264, 307, 0, + 0, 1604, 1086, 228, 1788, 0, 0, 1049, 0, 1734, 0, 1859, 0, 416, 0, 531, + 0, 202, 0, 204, 0, 0, 0, 0, 708, 0, 196, 1923, 0, 0, 1037, 1464, + 359, 86, 0, 1856, 0, 97, 882, 0, 1741, 734, 0, 0, 0, 0, 0, 828, + 0, 0, 0, 925, 0, 737, 390, 0, 362, 363, 967, 889, 550, 457, 0, 42, + 0, 705, 0, 1655, 875, 649, 0, 0, 1822, 0, 0, 0, 1347, 1689, 0, 412, + 0, 0, 715, 0, 269, 0, 235, 1076, 0, 578, 280, 193, 396, 748, 0, 149, + 0, 894, 0, 1311, 7, 0, 856, 0, 0, 0, 601, 1878, 0, 0, 411, 0, + 176, 1407, 0, 223, 1732, 0, 194, 411, 0, 0, 167, 342, 0, 0, 18, 269, + 515, 357, 456, 615, 0, 673, 756, 1283, 841, 259, 702, 556, 0, 0, 0, 388, + 0, 748, 220, 0, 0, 1772, 0, 0, 0, 763, 751, 158, 0, 0, 532, 692, + 178, 0, 0, 1635, 0, 0, 835, 0, 0, 810, 0, 1876, 0, 0, 1869, 1673, + 0, 0, 683, 425, 0, 432, 378, 57, 427, 289, 0, 0, 742, 0, 0, 736, + 16, 1189, 680, 0, 630, 282, 1084, 168, 151, 0, 909, 0, 0, 0, 617, 113, + 0, 0, 0, 863, 1829, 367, 0, 89, 0, 348, 0, 1554, 0, 545, 427, 0, + 0, 0, 417, 0, 0, 17, 0, 0, 518, 56, 436, 20, 143, 429, 25, 345, + 557, 0, 645, 724, 328, 0, 0, 312, 1295, 0, 0, 563, 0, 212, 0, 0, + 430, 1733, 398, 1697, 0, 1861, 1558, 1763, 469, 847, 0, 0, 505, 0, 0, 0, + 217, 0, 675, 0, 661, 1351, 443, 0, 1857, 157, 579, 0, 1798, 0, 428, 658, + 1502, 463, 249, 193, 0, 0, 118, 0, 299, 0, 0, 788, 0, 841, 271, 0, + 1335, 0, 229, 831, 0, 677, 1158, 0, 0, 1855, 605, 482, 1210, 0, 1780, 1468, + 0, 0, 415, 652, 0, 1887, 442, 1481, 1239, 0, 294, 0, 0, 0, 1766, 0, + 159, 172, 0, 0, 96, 876, 218, 0, 1153, 171, 0, 0, 0, 1267, 1810, 15, + 0, 156, 230, 0, 735, 0, 0, 1478, 342, 0, 722, 304, 393, 0, 578, 1886, + 0, 1163, 0, 1877, 794}; + +int MangledHashG(const char *key, const int *T) +{ + int sum = 0; + + for (int i = 0; key[i] != '\0'; i++) + { + sum += T[i] * key[i]; + sum %= 1925; + } + return mangledkG[sum]; +} + +int MangledPerfectHash(const char *key) +{ + if (strlen(key) > 37) + return 0; + + return (MangledHashG(key, mangledkT1) + MangledHashG(key, mangledkT2)) % 1925; +} + +constexpr int unmangledkT1[] = {104, 115, 230, 189, 197, 210, 40, 117, 33, 19, 181, 77, 107, + 245, 52, 101, 9, 54, 143, 164, 147, 179, 128, 95, 103, 208}; +constexpr int unmangledkT2[] = {84, 175, 47, 86, 124, 216, 4, 84, 180, 105, 242, 139, 223, + 26, 238, 229, 223, 88, 240, 48, 210, 76, 78, 73, 73, 57}; +constexpr int unmangledkG[] = { + 0, 0, 0, 0, 0, 0, 107, 0, 0, 0, 94, 36, 239, 0, 1, 116, 0, 217, + 0, 0, 0, 0, 0, 0, 0, 242, 0, 19, 11, 101, 0, 0, 193, 37, 0, 0, + 0, 0, 0, 0, 242, 0, 69, 37, 0, 100, 0, 0, 136, 0, 64, 10, 0, 0, + 119, 0, 0, 0, 0, 0, 121, 0, 0, 19, 36, 0, 0, 0, 63, 191, 80, 14, + 44, 18, 67, 0, 52, 132, 189, 0, 102, 209, 0, 20, 168, 231, 189, 0, 88, 24, + 0, 0, 0, 101, 40, 0, 183, 111, 0, 109, 68, 0, 235, 88, 0, 0, 0, 0, + 0, 0, 0, 9, 0, 220, 18, 139, 55, 88, 79, 0, 0, 56, 130, 0, 114, 22, + 230, 0, 86, 203, 0, 216, 0, 0, 0, 0, 153, 28, 193, 124, 95, 72, 60, 0, + 0, 32, 0, 0, 233, 149, 110, 137, 12, 0, 35, 0, 141, 152, 112, 0, 49, 246, + 80, 0, 33, 0, 83, 82, 118, 0, 16, 31, 116, 166, 0, 136, 156, 5, 0, 26, + 166, 34, 156, 0, 71, 134, 238, 0, 81, 0, 121, 27, 128, 0, 41, 0, 51, 0, + 63, 212, 104, 200, 94, 142, 89, 0, 0, 0, 1, 214, 0, 90, 131, 146, 113, 5, + 209, 115, 0, 39, 218, 1, 133, 85, 60, 214, 0, 94, 0, 235, 1, 227, 69, 0, + 69, 161, 0, 151, 120, 1, 42, 167, 72, 17, 0, 0, 40, 162, 36}; + +int UnmangledHashG(const char *key, const int *T) +{ + int sum = 0; + + for (int i = 0; key[i] != '\0'; i++) + { + sum += T[i] * key[i]; + sum %= 249; + } + return unmangledkG[sum]; +} + +int UnmangledPerfectHash(const char *key) +{ + if (strlen(key) > 26) + return 0; + + return (UnmangledHashG(key, unmangledkT1) + UnmangledHashG(key, unmangledkT2)) % 249; +} + +} // namespace + +namespace sh +{ + +template <> +const size_t ImmutableString::FowlerNollVoHash<4>::kFnvPrime = 16777619u; + +template <> +const size_t ImmutableString::FowlerNollVoHash<4>::kFnvOffsetBasis = 0x811c9dc5u; + +template <> +const size_t ImmutableString::FowlerNollVoHash<8>::kFnvPrime = + static_cast(1099511628211ull); + +template <> +const size_t ImmutableString::FowlerNollVoHash<8>::kFnvOffsetBasis = + static_cast(0xcbf29ce484222325ull); + +uint32_t ImmutableString::mangledNameHash() const +{ + return MangledPerfectHash(data()); +} + +uint32_t ImmutableString::unmangledNameHash() const +{ + return UnmangledPerfectHash(data()); +} + +} // namespace sh diff --git a/src/compiler/translator/ParseContext.cpp b/src/compiler/translator/ParseContext.cpp index 6522706c8..cac4ae6a9 100644 --- a/src/compiler/translator/ParseContext.cpp +++ b/src/compiler/translator/ParseContext.cpp @@ -12,7 +12,7 @@ #include "common/mathutil.h" #include "compiler/preprocessor/SourceLocation.h" #include "compiler/translator/Declarator.h" -#include "compiler/translator/ParseContext_autogen.h" +#include "compiler/translator/ParseContext_interm.h" #include "compiler/translator/StaticType.h" #include "compiler/translator/ValidateGlobalInitializer.h" #include "compiler/translator/ValidateSwitch.h" diff --git a/src/compiler/translator/ParseContext_ESSL_autogen.h b/src/compiler/translator/ParseContext_ESSL_autogen.h new file mode 100644 index 000000000..024c30bcf --- /dev/null +++ b/src/compiler/translator/ParseContext_ESSL_autogen.h @@ -0,0 +1,66 @@ +// GENERATED FILE - DO NOT EDIT. +// Generated by gen_builtin_symbols.py using data from builtin_variables.json and +// builtin_function_declarations.txt. +// +// Copyright 2019 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. +// +// ParseContext_ESSL_autogen.h: +// Helpers for built-in related checks. + +#ifndef COMPILER_TRANSLATOR_PARSECONTEXT_AUTOGEN_H_ +#define COMPILER_TRANSLATOR_PARSECONTEXT_AUTOGEN_H_ + +namespace sh +{ + +namespace BuiltInGroup +{ + +bool isTextureOffsetNoBias(const TFunction *func) +{ + int id = func->uniqueId().get(); + return id >= 3012 && id <= 3081; +} +bool isTextureOffsetBias(const TFunction *func) +{ + int id = func->uniqueId().get(); + return id >= 3082 && id <= 3101; +} +bool isTextureGatherOffset(const TFunction *func) +{ + int id = func->uniqueId().get(); + return id >= 3139 && id <= 3152; +} +bool isTextureGather(const TFunction *func) +{ + int id = func->uniqueId().get(); + return id >= 3115 && id <= 3152; +} +bool isAtomicMemory(const TFunction *func) +{ + int id = func->uniqueId().get(); + return id >= 3169 && id <= 3186; +} +bool isImageLoad(const TFunction *func) +{ + int id = func->uniqueId().get(); + return id >= 3211 && id <= 3222; +} +bool isImageStore(const TFunction *func) +{ + int id = func->uniqueId().get(); + return id >= 3223 && id <= 3234; +} +bool isImage(const TFunction *func) +{ + int id = func->uniqueId().get(); + return id >= 3187 && id <= 3234; +} + +} // namespace BuiltInGroup + +} // namespace sh + +#endif // COMPILER_TRANSLATOR_PARSECONTEXT_AUTOGEN_H_ diff --git a/src/compiler/translator/ParseContext_autogen.h b/src/compiler/translator/ParseContext_complete_autogen.h similarity index 97% rename from src/compiler/translator/ParseContext_autogen.h rename to src/compiler/translator/ParseContext_complete_autogen.h index 4371cfbcd..652a2d780 100644 --- a/src/compiler/translator/ParseContext_autogen.h +++ b/src/compiler/translator/ParseContext_complete_autogen.h @@ -6,7 +6,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // -// ParseContext_autogen.h: +// ParseContext_complete_autogen.h: // Helpers for built-in related checks. #ifndef COMPILER_TRANSLATOR_PARSECONTEXT_AUTOGEN_H_ diff --git a/src/compiler/translator/ParseContext_interm.h b/src/compiler/translator/ParseContext_interm.h new file mode 100644 index 000000000..6a8bc54df --- /dev/null +++ b/src/compiler/translator/ParseContext_interm.h @@ -0,0 +1,18 @@ +// Copyright 2019 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. +// +// ParseContext_interm.h: +// Chooses ParseContext_complete_autogen.h or ParseContext_ESSL_autogen.h +// depending on whether platform is android + +#ifndef COMPILER_TRANSLATOR_PARSECONTEXT_INTERM_H_ +#define COMPILER_TRANSLATOR_PARSECONTEXT_INTERM_H_ + +#if defined(ANDROID) +# include "ParseContext_ESSL_autogen.h" +#else +# include "ParseContext_complete_autogen.h" +#endif + +#endif // COMPILER_TRANSLATOR_PARSECONTEXT_INTERM_H_ diff --git a/src/compiler/translator/SymbolTable_ESSL_autogen.cpp b/src/compiler/translator/SymbolTable_ESSL_autogen.cpp new file mode 100644 index 000000000..f23fc9b3c --- /dev/null +++ b/src/compiler/translator/SymbolTable_ESSL_autogen.cpp @@ -0,0 +1,26870 @@ +// GENERATED FILE - DO NOT EDIT. +// Generated by gen_builtin_symbols.py using data from builtin_variables.json and +// builtin_function_declarations.txt. +// +// Copyright 2019 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. +// +// SymbolTable_ESSL_autogen.cpp: +// Compile-time initialized built-ins. + +#include "compiler/translator/SymbolTable.h" + +#include "angle_gl.h" +#include "compiler/translator/ImmutableString.h" +#include "compiler/translator/StaticType.h" +#include "compiler/translator/Symbol.h" +#include "compiler/translator/SymbolTable.h" +#include "compiler/translator/tree_util/BuiltIn.h" + +namespace sh +{ + +// Since some of the BuiltInId declarations are used outside of constexpr expressions, we need to +// have these definitions without an initializer. C++17 should eventually remove the need for this. +constexpr const TSymbolUniqueId BuiltInId::radians_Float1; +constexpr const TSymbolUniqueId BuiltInId::radians_Float2; +constexpr const TSymbolUniqueId BuiltInId::radians_Float3; +constexpr const TSymbolUniqueId BuiltInId::radians_Float4; +constexpr const TSymbolUniqueId BuiltInId::degrees_Float1; +constexpr const TSymbolUniqueId BuiltInId::degrees_Float2; +constexpr const TSymbolUniqueId BuiltInId::degrees_Float3; +constexpr const TSymbolUniqueId BuiltInId::degrees_Float4; +constexpr const TSymbolUniqueId BuiltInId::sin_Float1; +constexpr const TSymbolUniqueId BuiltInId::sin_Float2; +constexpr const TSymbolUniqueId BuiltInId::sin_Float3; +constexpr const TSymbolUniqueId BuiltInId::sin_Float4; +constexpr const TSymbolUniqueId BuiltInId::cos_Float1; +constexpr const TSymbolUniqueId BuiltInId::cos_Float2; +constexpr const TSymbolUniqueId BuiltInId::cos_Float3; +constexpr const TSymbolUniqueId BuiltInId::cos_Float4; +constexpr const TSymbolUniqueId BuiltInId::tan_Float1; +constexpr const TSymbolUniqueId BuiltInId::tan_Float2; +constexpr const TSymbolUniqueId BuiltInId::tan_Float3; +constexpr const TSymbolUniqueId BuiltInId::tan_Float4; +constexpr const TSymbolUniqueId BuiltInId::asin_Float1; +constexpr const TSymbolUniqueId BuiltInId::asin_Float2; +constexpr const TSymbolUniqueId BuiltInId::asin_Float3; +constexpr const TSymbolUniqueId BuiltInId::asin_Float4; +constexpr const TSymbolUniqueId BuiltInId::acos_Float1; +constexpr const TSymbolUniqueId BuiltInId::acos_Float2; +constexpr const TSymbolUniqueId BuiltInId::acos_Float3; +constexpr const TSymbolUniqueId BuiltInId::acos_Float4; +constexpr const TSymbolUniqueId BuiltInId::atan_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::atan_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::atan_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::atan_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::atan_Float1; +constexpr const TSymbolUniqueId BuiltInId::atan_Float2; +constexpr const TSymbolUniqueId BuiltInId::atan_Float3; +constexpr const TSymbolUniqueId BuiltInId::atan_Float4; +constexpr const TSymbolUniqueId BuiltInId::sinh_Float1; +constexpr const TSymbolUniqueId BuiltInId::sinh_Float2; +constexpr const TSymbolUniqueId BuiltInId::sinh_Float3; +constexpr const TSymbolUniqueId BuiltInId::sinh_Float4; +constexpr const TSymbolUniqueId BuiltInId::cosh_Float1; +constexpr const TSymbolUniqueId BuiltInId::cosh_Float2; +constexpr const TSymbolUniqueId BuiltInId::cosh_Float3; +constexpr const TSymbolUniqueId BuiltInId::cosh_Float4; +constexpr const TSymbolUniqueId BuiltInId::tanh_Float1; +constexpr const TSymbolUniqueId BuiltInId::tanh_Float2; +constexpr const TSymbolUniqueId BuiltInId::tanh_Float3; +constexpr const TSymbolUniqueId BuiltInId::tanh_Float4; +constexpr const TSymbolUniqueId BuiltInId::asinh_Float1; +constexpr const TSymbolUniqueId BuiltInId::asinh_Float2; +constexpr const TSymbolUniqueId BuiltInId::asinh_Float3; +constexpr const TSymbolUniqueId BuiltInId::asinh_Float4; +constexpr const TSymbolUniqueId BuiltInId::acosh_Float1; +constexpr const TSymbolUniqueId BuiltInId::acosh_Float2; +constexpr const TSymbolUniqueId BuiltInId::acosh_Float3; +constexpr const TSymbolUniqueId BuiltInId::acosh_Float4; +constexpr const TSymbolUniqueId BuiltInId::atanh_Float1; +constexpr const TSymbolUniqueId BuiltInId::atanh_Float2; +constexpr const TSymbolUniqueId BuiltInId::atanh_Float3; +constexpr const TSymbolUniqueId BuiltInId::atanh_Float4; +constexpr const TSymbolUniqueId BuiltInId::pow_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::pow_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::pow_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::pow_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::exp_Float1; +constexpr const TSymbolUniqueId BuiltInId::exp_Float2; +constexpr const TSymbolUniqueId BuiltInId::exp_Float3; +constexpr const TSymbolUniqueId BuiltInId::exp_Float4; +constexpr const TSymbolUniqueId BuiltInId::log_Float1; +constexpr const TSymbolUniqueId BuiltInId::log_Float2; +constexpr const TSymbolUniqueId BuiltInId::log_Float3; +constexpr const TSymbolUniqueId BuiltInId::log_Float4; +constexpr const TSymbolUniqueId BuiltInId::exp2_Float1; +constexpr const TSymbolUniqueId BuiltInId::exp2_Float2; +constexpr const TSymbolUniqueId BuiltInId::exp2_Float3; +constexpr const TSymbolUniqueId BuiltInId::exp2_Float4; +constexpr const TSymbolUniqueId BuiltInId::log2_Float1; +constexpr const TSymbolUniqueId BuiltInId::log2_Float2; +constexpr const TSymbolUniqueId BuiltInId::log2_Float3; +constexpr const TSymbolUniqueId BuiltInId::log2_Float4; +constexpr const TSymbolUniqueId BuiltInId::sqrt_Float1; +constexpr const TSymbolUniqueId BuiltInId::sqrt_Float2; +constexpr const TSymbolUniqueId BuiltInId::sqrt_Float3; +constexpr const TSymbolUniqueId BuiltInId::sqrt_Float4; +constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Float1; +constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Float2; +constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Float3; +constexpr const TSymbolUniqueId BuiltInId::inversesqrt_Float4; +constexpr const TSymbolUniqueId BuiltInId::abs_Float1; +constexpr const TSymbolUniqueId BuiltInId::abs_Float2; +constexpr const TSymbolUniqueId BuiltInId::abs_Float3; +constexpr const TSymbolUniqueId BuiltInId::abs_Float4; +constexpr const TSymbolUniqueId BuiltInId::abs_Int1; +constexpr const TSymbolUniqueId BuiltInId::abs_Int2; +constexpr const TSymbolUniqueId BuiltInId::abs_Int3; +constexpr const TSymbolUniqueId BuiltInId::abs_Int4; +constexpr const TSymbolUniqueId BuiltInId::sign_Float1; +constexpr const TSymbolUniqueId BuiltInId::sign_Float2; +constexpr const TSymbolUniqueId BuiltInId::sign_Float3; +constexpr const TSymbolUniqueId BuiltInId::sign_Float4; +constexpr const TSymbolUniqueId BuiltInId::sign_Int1; +constexpr const TSymbolUniqueId BuiltInId::sign_Int2; +constexpr const TSymbolUniqueId BuiltInId::sign_Int3; +constexpr const TSymbolUniqueId BuiltInId::sign_Int4; +constexpr const TSymbolUniqueId BuiltInId::floor_Float1; +constexpr const TSymbolUniqueId BuiltInId::floor_Float2; +constexpr const TSymbolUniqueId BuiltInId::floor_Float3; +constexpr const TSymbolUniqueId BuiltInId::floor_Float4; +constexpr const TSymbolUniqueId BuiltInId::trunc_Float1; +constexpr const TSymbolUniqueId BuiltInId::trunc_Float2; +constexpr const TSymbolUniqueId BuiltInId::trunc_Float3; +constexpr const TSymbolUniqueId BuiltInId::trunc_Float4; +constexpr const TSymbolUniqueId BuiltInId::round_Float1; +constexpr const TSymbolUniqueId BuiltInId::round_Float2; +constexpr const TSymbolUniqueId BuiltInId::round_Float3; +constexpr const TSymbolUniqueId BuiltInId::round_Float4; +constexpr const TSymbolUniqueId BuiltInId::roundEven_Float1; +constexpr const TSymbolUniqueId BuiltInId::roundEven_Float2; +constexpr const TSymbolUniqueId BuiltInId::roundEven_Float3; +constexpr const TSymbolUniqueId BuiltInId::roundEven_Float4; +constexpr const TSymbolUniqueId BuiltInId::ceil_Float1; +constexpr const TSymbolUniqueId BuiltInId::ceil_Float2; +constexpr const TSymbolUniqueId BuiltInId::ceil_Float3; +constexpr const TSymbolUniqueId BuiltInId::ceil_Float4; +constexpr const TSymbolUniqueId BuiltInId::fract_Float1; +constexpr const TSymbolUniqueId BuiltInId::fract_Float2; +constexpr const TSymbolUniqueId BuiltInId::fract_Float3; +constexpr const TSymbolUniqueId BuiltInId::fract_Float4; +constexpr const TSymbolUniqueId BuiltInId::mod_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::mod_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::mod_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::mod_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::mod_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::mod_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::mod_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::min_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::min_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::min_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::min_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::min_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::min_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::min_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::min_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::min_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::min_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::min_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::min_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::min_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::min_Int4_Int1; +constexpr const TSymbolUniqueId BuiltInId::min_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::min_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::min_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::min_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::min_UInt2_UInt1; +constexpr const TSymbolUniqueId BuiltInId::min_UInt3_UInt1; +constexpr const TSymbolUniqueId BuiltInId::min_UInt4_UInt1; +constexpr const TSymbolUniqueId BuiltInId::max_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::max_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::max_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::max_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::max_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::max_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::max_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::max_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::max_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::max_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::max_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::max_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::max_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::max_Int4_Int1; +constexpr const TSymbolUniqueId BuiltInId::max_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::max_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::max_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::max_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::max_UInt2_UInt1; +constexpr const TSymbolUniqueId BuiltInId::max_UInt3_UInt1; +constexpr const TSymbolUniqueId BuiltInId::max_UInt4_UInt1; +constexpr const TSymbolUniqueId BuiltInId::clamp_Float1_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::clamp_Float2_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::clamp_Float3_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::clamp_Float4_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::clamp_Float2_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::clamp_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::clamp_Float4_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::clamp_Int1_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::clamp_Int2_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::clamp_Int3_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::clamp_Int4_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::clamp_Int2_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::clamp_Int3_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::clamp_Int4_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::clamp_UInt1_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::clamp_UInt2_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::clamp_UInt3_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::clamp_UInt4_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::clamp_UInt2_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::clamp_UInt3_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::clamp_UInt4_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::mix_Float1_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::mix_Float2_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::mix_Float3_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::mix_Float4_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::mix_Float2_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::mix_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::mix_Float4_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::mix_Float1_Float1_Bool1; +constexpr const TSymbolUniqueId BuiltInId::mix_Float2_Float2_Bool2; +constexpr const TSymbolUniqueId BuiltInId::mix_Float3_Float3_Bool3; +constexpr const TSymbolUniqueId BuiltInId::mix_Float4_Float4_Bool4; +constexpr const TSymbolUniqueId BuiltInId::step_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::step_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::step_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::step_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::step_Float1_Float2; +constexpr const TSymbolUniqueId BuiltInId::step_Float1_Float3; +constexpr const TSymbolUniqueId BuiltInId::step_Float1_Float4; +constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float1_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float2_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float4_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float1_Float1_Float2; +constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float1_Float1_Float3; +constexpr const TSymbolUniqueId BuiltInId::smoothstep_Float1_Float1_Float4; +constexpr const TSymbolUniqueId BuiltInId::modf_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::modf_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::modf_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::modf_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::isnan_Float1; +constexpr const TSymbolUniqueId BuiltInId::isnan_Float2; +constexpr const TSymbolUniqueId BuiltInId::isnan_Float3; +constexpr const TSymbolUniqueId BuiltInId::isnan_Float4; +constexpr const TSymbolUniqueId BuiltInId::isinf_Float1; +constexpr const TSymbolUniqueId BuiltInId::isinf_Float2; +constexpr const TSymbolUniqueId BuiltInId::isinf_Float3; +constexpr const TSymbolUniqueId BuiltInId::isinf_Float4; +constexpr const TSymbolUniqueId BuiltInId::floatBitsToInt_Float1; +constexpr const TSymbolUniqueId BuiltInId::floatBitsToInt_Float2; +constexpr const TSymbolUniqueId BuiltInId::floatBitsToInt_Float3; +constexpr const TSymbolUniqueId BuiltInId::floatBitsToInt_Float4; +constexpr const TSymbolUniqueId BuiltInId::floatBitsToUint_Float1; +constexpr const TSymbolUniqueId BuiltInId::floatBitsToUint_Float2; +constexpr const TSymbolUniqueId BuiltInId::floatBitsToUint_Float3; +constexpr const TSymbolUniqueId BuiltInId::floatBitsToUint_Float4; +constexpr const TSymbolUniqueId BuiltInId::intBitsToFloat_Int1; +constexpr const TSymbolUniqueId BuiltInId::intBitsToFloat_Int2; +constexpr const TSymbolUniqueId BuiltInId::intBitsToFloat_Int3; +constexpr const TSymbolUniqueId BuiltInId::intBitsToFloat_Int4; +constexpr const TSymbolUniqueId BuiltInId::uintBitsToFloat_UInt1; +constexpr const TSymbolUniqueId BuiltInId::uintBitsToFloat_UInt2; +constexpr const TSymbolUniqueId BuiltInId::uintBitsToFloat_UInt3; +constexpr const TSymbolUniqueId BuiltInId::uintBitsToFloat_UInt4; +constexpr const TSymbolUniqueId BuiltInId::frexp_Float1_Int1; +constexpr const TSymbolUniqueId BuiltInId::frexp_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::frexp_Float3_Int3; +constexpr const TSymbolUniqueId BuiltInId::frexp_Float4_Int4; +constexpr const TSymbolUniqueId BuiltInId::ldexp_Float1_Int1; +constexpr const TSymbolUniqueId BuiltInId::ldexp_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::ldexp_Float3_Int3; +constexpr const TSymbolUniqueId BuiltInId::ldexp_Float4_Int4; +constexpr const TSymbolUniqueId BuiltInId::packSnorm2x16_Float2; +constexpr const TSymbolUniqueId BuiltInId::packHalf2x16_Float2; +constexpr const TSymbolUniqueId BuiltInId::unpackSnorm2x16_UInt1; +constexpr const TSymbolUniqueId BuiltInId::unpackHalf2x16_UInt1; +constexpr const TSymbolUniqueId BuiltInId::packUnorm2x16_Float2; +constexpr const TSymbolUniqueId BuiltInId::unpackUnorm2x16_UInt1; +constexpr const TSymbolUniqueId BuiltInId::packUnorm4x8_Float4; +constexpr const TSymbolUniqueId BuiltInId::packSnorm4x8_Float4; +constexpr const TSymbolUniqueId BuiltInId::unpackUnorm4x8_UInt1; +constexpr const TSymbolUniqueId BuiltInId::unpackSnorm4x8_UInt1; +constexpr const TSymbolUniqueId BuiltInId::length_Float1; +constexpr const TSymbolUniqueId BuiltInId::length_Float2; +constexpr const TSymbolUniqueId BuiltInId::length_Float3; +constexpr const TSymbolUniqueId BuiltInId::length_Float4; +constexpr const TSymbolUniqueId BuiltInId::distance_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::distance_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::distance_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::distance_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::dot_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::dot_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::dot_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::dot_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::cross_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::normalize_Float1; +constexpr const TSymbolUniqueId BuiltInId::normalize_Float2; +constexpr const TSymbolUniqueId BuiltInId::normalize_Float3; +constexpr const TSymbolUniqueId BuiltInId::normalize_Float4; +constexpr const TSymbolUniqueId BuiltInId::faceforward_Float1_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::faceforward_Float2_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::faceforward_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::faceforward_Float4_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::reflect_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::reflect_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::reflect_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::reflect_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::refract_Float1_Float1_Float1; +constexpr const TSymbolUniqueId BuiltInId::refract_Float2_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::refract_Float3_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::refract_Float4_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float2x2_Float2x2; +constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float3x3_Float3x3; +constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float4x4_Float4x4; +constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float2x3_Float2x3; +constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float3x2_Float3x2; +constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float2x4_Float2x4; +constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float4x2_Float4x2; +constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float3x4_Float3x4; +constexpr const TSymbolUniqueId BuiltInId::matrixCompMult_Float4x3_Float4x3; +constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float3_Float2; +constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float2_Float3; +constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float4_Float2; +constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float2_Float4; +constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float4_Float3; +constexpr const TSymbolUniqueId BuiltInId::outerProduct_Float3_Float4; +constexpr const TSymbolUniqueId BuiltInId::transpose_Float2x2; +constexpr const TSymbolUniqueId BuiltInId::transpose_Float3x3; +constexpr const TSymbolUniqueId BuiltInId::transpose_Float4x4; +constexpr const TSymbolUniqueId BuiltInId::transpose_Float3x2; +constexpr const TSymbolUniqueId BuiltInId::transpose_Float2x3; +constexpr const TSymbolUniqueId BuiltInId::transpose_Float4x2; +constexpr const TSymbolUniqueId BuiltInId::transpose_Float2x4; +constexpr const TSymbolUniqueId BuiltInId::transpose_Float4x3; +constexpr const TSymbolUniqueId BuiltInId::transpose_Float3x4; +constexpr const TSymbolUniqueId BuiltInId::determinant_Float2x2; +constexpr const TSymbolUniqueId BuiltInId::determinant_Float3x3; +constexpr const TSymbolUniqueId BuiltInId::determinant_Float4x4; +constexpr const TSymbolUniqueId BuiltInId::inverse_Float2x2; +constexpr const TSymbolUniqueId BuiltInId::inverse_Float3x3; +constexpr const TSymbolUniqueId BuiltInId::inverse_Float4x4; +constexpr const TSymbolUniqueId BuiltInId::lessThan_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::lessThan_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::lessThan_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::lessThan_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::lessThan_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::lessThan_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::lessThan_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::lessThan_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::lessThan_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::lessThanEqual_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::greaterThan_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::greaterThan_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::greaterThan_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::greaterThan_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::greaterThan_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::greaterThan_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::greaterThan_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::greaterThan_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::greaterThan_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::greaterThanEqual_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::equal_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::equal_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::equal_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::equal_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::equal_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::equal_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::equal_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::equal_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::equal_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::equal_Bool2_Bool2; +constexpr const TSymbolUniqueId BuiltInId::equal_Bool3_Bool3; +constexpr const TSymbolUniqueId BuiltInId::equal_Bool4_Bool4; +constexpr const TSymbolUniqueId BuiltInId::notEqual_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::notEqual_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::notEqual_Float4_Float4; +constexpr const TSymbolUniqueId BuiltInId::notEqual_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::notEqual_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::notEqual_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::notEqual_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::notEqual_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::notEqual_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::notEqual_Bool2_Bool2; +constexpr const TSymbolUniqueId BuiltInId::notEqual_Bool3_Bool3; +constexpr const TSymbolUniqueId BuiltInId::notEqual_Bool4_Bool4; +constexpr const TSymbolUniqueId BuiltInId::any_Bool2; +constexpr const TSymbolUniqueId BuiltInId::any_Bool3; +constexpr const TSymbolUniqueId BuiltInId::any_Bool4; +constexpr const TSymbolUniqueId BuiltInId::all_Bool2; +constexpr const TSymbolUniqueId BuiltInId::all_Bool3; +constexpr const TSymbolUniqueId BuiltInId::all_Bool4; +constexpr const TSymbolUniqueId BuiltInId::notFunc_Bool2; +constexpr const TSymbolUniqueId BuiltInId::notFunc_Bool3; +constexpr const TSymbolUniqueId BuiltInId::notFunc_Bool4; +constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_Int1_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_Int2_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_Int3_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_Int4_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_UInt1_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_UInt2_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_UInt3_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldExtract_UInt4_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_Int1_Int1_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_Int2_Int2_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_Int3_Int3_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_Int4_Int4_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_UInt1_UInt1_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_UInt2_UInt2_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_UInt3_UInt3_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldInsert_UInt4_UInt4_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_Int2; +constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_Int3; +constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_Int4; +constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_UInt1; +constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_UInt2; +constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_UInt3; +constexpr const TSymbolUniqueId BuiltInId::bitfieldReverse_UInt4; +constexpr const TSymbolUniqueId BuiltInId::bitCount_Int1; +constexpr const TSymbolUniqueId BuiltInId::bitCount_Int2; +constexpr const TSymbolUniqueId BuiltInId::bitCount_Int3; +constexpr const TSymbolUniqueId BuiltInId::bitCount_Int4; +constexpr const TSymbolUniqueId BuiltInId::bitCount_UInt1; +constexpr const TSymbolUniqueId BuiltInId::bitCount_UInt2; +constexpr const TSymbolUniqueId BuiltInId::bitCount_UInt3; +constexpr const TSymbolUniqueId BuiltInId::bitCount_UInt4; +constexpr const TSymbolUniqueId BuiltInId::findLSB_Int1; +constexpr const TSymbolUniqueId BuiltInId::findLSB_Int2; +constexpr const TSymbolUniqueId BuiltInId::findLSB_Int3; +constexpr const TSymbolUniqueId BuiltInId::findLSB_Int4; +constexpr const TSymbolUniqueId BuiltInId::findLSB_UInt1; +constexpr const TSymbolUniqueId BuiltInId::findLSB_UInt2; +constexpr const TSymbolUniqueId BuiltInId::findLSB_UInt3; +constexpr const TSymbolUniqueId BuiltInId::findLSB_UInt4; +constexpr const TSymbolUniqueId BuiltInId::findMSB_Int1; +constexpr const TSymbolUniqueId BuiltInId::findMSB_Int2; +constexpr const TSymbolUniqueId BuiltInId::findMSB_Int3; +constexpr const TSymbolUniqueId BuiltInId::findMSB_Int4; +constexpr const TSymbolUniqueId BuiltInId::findMSB_UInt1; +constexpr const TSymbolUniqueId BuiltInId::findMSB_UInt2; +constexpr const TSymbolUniqueId BuiltInId::findMSB_UInt3; +constexpr const TSymbolUniqueId BuiltInId::findMSB_UInt4; +constexpr const TSymbolUniqueId BuiltInId::uaddCarry_UInt1_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::uaddCarry_UInt2_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::uaddCarry_UInt3_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::uaddCarry_UInt4_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::usubBorrow_UInt1_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::usubBorrow_UInt2_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::usubBorrow_UInt3_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::usubBorrow_UInt4_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::umulExtended_UInt1_UInt1_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::umulExtended_UInt2_UInt2_UInt2_UInt2; +constexpr const TSymbolUniqueId BuiltInId::umulExtended_UInt3_UInt3_UInt3_UInt3; +constexpr const TSymbolUniqueId BuiltInId::umulExtended_UInt4_UInt4_UInt4_UInt4; +constexpr const TSymbolUniqueId BuiltInId::imulExtended_Int1_Int1_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::imulExtended_Int2_Int2_Int2_Int2; +constexpr const TSymbolUniqueId BuiltInId::imulExtended_Int3_Int3_Int3_Int3; +constexpr const TSymbolUniqueId BuiltInId::imulExtended_Int4_Int4_Int4_Int4; +constexpr const TSymbolUniqueId BuiltInId::texture2D_Sampler2D1_Float2; +constexpr const TSymbolUniqueId BuiltInId::texture2DProj_Sampler2D1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture2DProj_Sampler2D1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureCube_SamplerCube1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture2D_SamplerExternalOES1_Float2; +constexpr const TSymbolUniqueId BuiltInId::texture2DProj_SamplerExternalOES1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture2DProj_SamplerExternalOES1_Float4; +constexpr const TSymbolUniqueId BuiltInId::texture2DRect_Sampler2DRect1_Float2; +constexpr const TSymbolUniqueId BuiltInId::texture2DRectProj_Sampler2DRect1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture2DRectProj_Sampler2DRect1_Float4; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DRect1_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2DRect1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2DRect1_Float4; +constexpr const TSymbolUniqueId BuiltInId::texture2DGradEXT_Sampler2D1_Float2_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::texture2DProjGradEXT_Sampler2D1_Float3_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::texture2DProjGradEXT_Sampler2D1_Float4_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureCubeGradEXT_SamplerCube1_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture2D_Sampler2D1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture2DProj_Sampler2D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture2DProj_Sampler2D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureCube_SamplerCube1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::dFdxExt_Float1; +constexpr const TSymbolUniqueId BuiltInId::dFdxExt_Float2; +constexpr const TSymbolUniqueId BuiltInId::dFdxExt_Float3; +constexpr const TSymbolUniqueId BuiltInId::dFdxExt_Float4; +constexpr const TSymbolUniqueId BuiltInId::dFdyExt_Float1; +constexpr const TSymbolUniqueId BuiltInId::dFdyExt_Float2; +constexpr const TSymbolUniqueId BuiltInId::dFdyExt_Float3; +constexpr const TSymbolUniqueId BuiltInId::dFdyExt_Float4; +constexpr const TSymbolUniqueId BuiltInId::fwidthExt_Float1; +constexpr const TSymbolUniqueId BuiltInId::fwidthExt_Float2; +constexpr const TSymbolUniqueId BuiltInId::fwidthExt_Float3; +constexpr const TSymbolUniqueId BuiltInId::fwidthExt_Float4; +constexpr const TSymbolUniqueId BuiltInId::texture2DLodEXT_Sampler2D1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture2DProjLodEXT_Sampler2D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture2DProjLodEXT_Sampler2D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureCubeLodEXT_SamplerCube1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture3D_Sampler3D1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture3DProj_Sampler3D1_Float4; +constexpr const TSymbolUniqueId BuiltInId::texture3D_Sampler3D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture3DProj_Sampler3D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture3DLod_Sampler3D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture3DProjLod_Sampler3D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture2DLod_Sampler2D1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture2DProjLod_Sampler2D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture2DProjLod_Sampler2D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureCubeLod_SamplerCube1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2D1_Float2; +constexpr const TSymbolUniqueId BuiltInId::texture_ISampler2D1_Float2; +constexpr const TSymbolUniqueId BuiltInId::texture_USampler2D1_Float2; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler3D1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_ISampler3D1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_USampler3D1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCube1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_ISamplerCube1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_USamplerCube1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DArray1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_ISampler2DArray1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_USampler2DArray1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DShadow1_Float3; +constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCubeShadow1_Float4; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DArrayShadow1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2D1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2D1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2D1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2D1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2D1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2D1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler3D1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler3D1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler3D1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2DShadow1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler2D1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_ISampler2D1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_USampler2D1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler3D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_ISampler3D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_USampler3D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_SamplerCube1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_ISamplerCube1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_USamplerCube1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler2DArray1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_ISampler2DArray1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_USampler2DArray1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureLod_Sampler2DShadow1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2D1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler2D1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler2D1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler3D1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler3D1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler3D1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerCube1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_ISamplerCube1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_USamplerCube1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DArray1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler2DArray1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler2DArray1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DShadow1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerCubeShadow1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DArrayShadow1_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler2D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_ISampler2D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_USampler2D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler2D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_ISampler2D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_USampler2D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler3D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_ISampler3D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_USampler3D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjLod_Sampler2DShadow1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler2D1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler2D1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler2D1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler3D1_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler3D1_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler3D1_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler2DArray1_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler2DArray1_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler2DArray1_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2D1_Float2_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISampler2D1_Float2_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_USampler2D1_Float2_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler3D1_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISampler3D1_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_USampler3D1_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_SamplerCube1_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISamplerCube1_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_USamplerCube1_Float3_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2DShadow1_Float3_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_SamplerCubeShadow1_Float4_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2DArray1_Float3_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_ISampler2DArray1_Float3_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_USampler2DArray1_Float3_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGrad_Sampler2DArrayShadow1_Float4_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler2D1_Float3_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler2D1_Float3_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler2D1_Float3_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler2D1_Float4_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler2D1_Float4_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler2D1_Float4_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler3D1_Float4_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_ISampler3D1_Float4_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_USampler3D1_Float4_Float3_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureProjGrad_Sampler2DShadow1_Float4_Float2_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureSize_Sampler2DMS1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_ISampler2DMS1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_USampler2DMS1; +constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_Sampler2DMS1; +constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_ISampler2DMS1; +constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_USampler2DMS1; +constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_Sampler2DMSArray1; +constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_ISampler2DMSArray1; +constexpr const TSymbolUniqueId BuiltInId::textureSizeExt_USampler2DMSArray1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_Sampler2DMS1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_ISampler2DMS1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_USampler2DMS1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_Sampler2DMS1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_ISampler2DMS1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_USampler2DMS1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_Sampler2DMSArray1_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_ISampler2DMSArray1_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetchExt_USampler2DMSArray1_Int3_Int1; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2D1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_ISampler2D1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_USampler2D1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler3D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_ISampler3D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_USampler3D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCube1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_ISamplerCube1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_USamplerCube1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DArray1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_ISampler2DArray1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_USampler2DArray1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2D1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler2D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler2D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler3D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_ISampler3D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_USampler3D1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_Sampler2DShadow1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_SamplerCubeShadow1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_Sampler2DShadow1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_SamplerExternalOES1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternalOES1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternalOES1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_SamplerExternal2DY2YEXT1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float4_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2D1_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler2D1_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler2D1_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler3D1_Float3_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler3D1_Float3_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler3D1_Float3_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DShadow1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DArray1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler2DArray1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler2DArray1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2D1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2D1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2D1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2D1_Float4_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2D1_Float4_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2D1_Float4_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler3D1_Float4_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler3D1_Float4_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler3D1_Float4_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2DShadow1_Float4_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler2D1_Float2_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_ISampler2D1_Float2_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_USampler2D1_Float2_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler3D1_Float3_Float1_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_ISampler3D1_Float3_Float1_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_USampler3D1_Float3_Float1_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler2DShadow1_Float3_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_Sampler2DArray1_Float3_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_ISampler2DArray1_Float3_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureLodOffset_USampler2DArray1_Float3_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler2D1_Float3_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_ISampler2D1_Float3_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_USampler2D1_Float3_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler2D1_Float4_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_ISampler2D1_Float4_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_USampler2D1_Float4_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler3D1_Float4_Float1_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_ISampler3D1_Float4_Float1_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_USampler3D1_Float4_Float1_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureProjLodOffset_Sampler2DShadow1_Float4_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_Sampler2D1_Int2_Int1_Int2; +constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_ISampler2D1_Int2_Int1_Int2; +constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_USampler2D1_Int2_Int1_Int2; +constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_Sampler3D1_Int3_Int1_Int3; +constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_ISampler3D1_Int3_Int1_Int3; +constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_USampler3D1_Int3_Int1_Int3; +constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_Sampler2DArray1_Int3_Int1_Int2; +constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_ISampler2DArray1_Int3_Int1_Int2; +constexpr const TSymbolUniqueId BuiltInId::texelFetchOffset_USampler2DArray1_Int3_Int1_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_Sampler2D1_Float2_Float2_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_ISampler2D1_Float2_Float2_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_USampler2D1_Float2_Float2_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_Sampler3D1_Float3_Float3_Float3_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_ISampler3D1_Float3_Float3_Float3_Int3; +constexpr const TSymbolUniqueId BuiltInId::textureGradOffset_USampler3D1_Float3_Float3_Float3_Int3; +constexpr const TSymbolUniqueId + BuiltInId::textureGradOffset_Sampler2DShadow1_Float3_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureGradOffset_Sampler2DArray1_Float3_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureGradOffset_ISampler2DArray1_Float3_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureGradOffset_USampler2DArray1_Float3_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureGradOffset_Sampler2DArrayShadow1_Float4_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_Sampler2D1_Float3_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_ISampler2D1_Float3_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_USampler2D1_Float3_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_Sampler2D1_Float4_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_ISampler2D1_Float4_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_USampler2D1_Float4_Float2_Float2_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_Sampler3D1_Float4_Float3_Float3_Int3; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_ISampler3D1_Float4_Float3_Float3_Int3; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_USampler3D1_Float4_Float3_Float3_Int3; +constexpr const TSymbolUniqueId + BuiltInId::textureProjGradOffset_Sampler2DShadow1_Float4_Float2_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2D1_Float2_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler2D1_Float2_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler2D1_Float2_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler3D1_Float3_Int3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler3D1_Float3_Int3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler3D1_Float3_Int3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DShadow1_Float3_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_Sampler2DArray1_Float3_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_ISampler2DArray1_Float3_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureOffset_USampler2DArray1_Float3_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2D1_Float3_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2D1_Float3_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2D1_Float3_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2D1_Float4_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler2D1_Float4_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler2D1_Float4_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler3D1_Float4_Int3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_ISampler3D1_Float4_Int3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_USampler3D1_Float4_Int3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureProjOffset_Sampler2DShadow1_Float4_Int2_Float1; +constexpr const TSymbolUniqueId BuiltInId::texture_SamplerExternalOES1_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternalOES1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternalOES1_Float4; +constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerExternalOES1_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_SamplerExternalOES1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::texture_SamplerExternal2DY2YEXT1_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float4; +constexpr const TSymbolUniqueId BuiltInId::rgb_2_yuv_Float3_YuvCscStandardEXT1; +constexpr const TSymbolUniqueId BuiltInId::yuv_2_rgb_Float3_YuvCscStandardEXT1; +constexpr const TSymbolUniqueId BuiltInId::textureSize_SamplerExternal2DY2YEXT1_Int1; +constexpr const TSymbolUniqueId BuiltInId::texelFetch_SamplerExternal2DY2YEXT1_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2D1_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2D1_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2D1_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2D1_Float2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2D1_Float2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2D1_Float2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DArray1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2DArray1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2DArray1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DArray1_Float3_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_ISampler2DArray1_Float3_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_USampler2DArray1_Float3_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCube1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGather_ISamplerCube1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGather_USamplerCube1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCube1_Float3_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_ISamplerCube1_Float3_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_USamplerCube1_Float3_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DShadow1_Float2; +constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DShadow1_Float2_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DArrayShadow1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGather_Sampler2DArrayShadow1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCubeShadow1_Float3; +constexpr const TSymbolUniqueId BuiltInId::textureGather_SamplerCubeShadow1_Float3_Float1; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2D1_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2D1_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2D1_Float2_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2D1_Float2_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2D1_Float2_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2D1_Float2_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2DArray1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2DArray1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2DArray1_Float3_Int2; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2DArray1_Float3_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_ISampler2DArray1_Float3_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_USampler2DArray1_Float3_Int2_Int1; +constexpr const TSymbolUniqueId BuiltInId::textureGatherOffset_Sampler2DShadow1_Float2_Float1_Int2; +constexpr const TSymbolUniqueId + BuiltInId::textureGatherOffset_Sampler2DArrayShadow1_Float3_Float1_Int2; +constexpr const TSymbolUniqueId BuiltInId::dFdx_Float1; +constexpr const TSymbolUniqueId BuiltInId::dFdx_Float2; +constexpr const TSymbolUniqueId BuiltInId::dFdx_Float3; +constexpr const TSymbolUniqueId BuiltInId::dFdx_Float4; +constexpr const TSymbolUniqueId BuiltInId::dFdy_Float1; +constexpr const TSymbolUniqueId BuiltInId::dFdy_Float2; +constexpr const TSymbolUniqueId BuiltInId::dFdy_Float3; +constexpr const TSymbolUniqueId BuiltInId::dFdy_Float4; +constexpr const TSymbolUniqueId BuiltInId::fwidth_Float1; +constexpr const TSymbolUniqueId BuiltInId::fwidth_Float2; +constexpr const TSymbolUniqueId BuiltInId::fwidth_Float3; +constexpr const TSymbolUniqueId BuiltInId::fwidth_Float4; +constexpr const TSymbolUniqueId BuiltInId::atomicCounter_AtomicCounter1; +constexpr const TSymbolUniqueId BuiltInId::atomicCounterIncrement_AtomicCounter1; +constexpr const TSymbolUniqueId BuiltInId::atomicCounterDecrement_AtomicCounter1; +constexpr const TSymbolUniqueId BuiltInId::atomicAdd_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::atomicAdd_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::atomicMin_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::atomicMin_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::atomicMax_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::atomicMax_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::atomicAnd_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::atomicAnd_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::atomicOr_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::atomicOr_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::atomicXor_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::atomicXor_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::atomicExchange_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::atomicExchange_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::atomicCompSwap_UInt1_UInt1_UInt1; +constexpr const TSymbolUniqueId BuiltInId::atomicCompSwap_Int1_Int1_Int1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_Image2D1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage2D1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage2D1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_Image3D1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage3D1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage3D1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_Image2DArray1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_IImage2DArray1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_UImage2DArray1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_ImageCube1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_IImageCube1; +constexpr const TSymbolUniqueId BuiltInId::imageSize_UImageCube1; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image2D1_Int2; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage2D1_Int2; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage2D1_Int2; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image3D1_Int3; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage3D1_Int3; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage3D1_Int3; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_Image2DArray1_Int3; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImage2DArray1_Int3; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImage2DArray1_Int3; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_ImageCube1_Int3; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_IImageCube1_Int3; +constexpr const TSymbolUniqueId BuiltInId::imageLoad_UImageCube1_Int3; +constexpr const TSymbolUniqueId BuiltInId::imageStore_Image2D1_Int2_Float4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage2D1_Int2_Int4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage2D1_Int2_UInt4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_Image3D1_Int3_Float4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage3D1_Int3_Int4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage3D1_Int3_UInt4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_Image2DArray1_Int3_Float4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_IImage2DArray1_Int3_Int4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_UImage2DArray1_Int3_UInt4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_ImageCube1_Int3_Float4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_IImageCube1_Int3_Int4; +constexpr const TSymbolUniqueId BuiltInId::imageStore_UImageCube1_Int3_UInt4; +constexpr const TSymbolUniqueId BuiltInId::memoryBarrier; +constexpr const TSymbolUniqueId BuiltInId::memoryBarrierAtomicCounter; +constexpr const TSymbolUniqueId BuiltInId::memoryBarrierBuffer; +constexpr const TSymbolUniqueId BuiltInId::memoryBarrierImage; +constexpr const TSymbolUniqueId BuiltInId::barrier; +constexpr const TSymbolUniqueId BuiltInId::memoryBarrierShared; +constexpr const TSymbolUniqueId BuiltInId::groupMemoryBarrier; +constexpr const TSymbolUniqueId BuiltInId::EmitVertex; +constexpr const TSymbolUniqueId BuiltInId::EndPrimitive; +constexpr const TSymbolUniqueId BuiltInId::gl_DepthRangeParameters; +constexpr const TSymbolUniqueId BuiltInId::gl_DepthRange; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexAttribs; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexUniformVectors; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexTextureImageUnits; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedTextureImageUnits; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxTextureImageUnits; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentUniformVectors; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxVaryingVectors; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxDrawBuffers; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxDualSourceDrawBuffersEXT; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexOutputVectors; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentInputVectors; +constexpr const TSymbolUniqueId BuiltInId::gl_MinProgramTexelOffset; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxProgramTexelOffset; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxImageUnits; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexImageUniforms; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentImageUniforms; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeImageUniforms; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedImageUniforms; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedShaderOutputResources; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeWorkGroupCount; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeWorkGroupSize; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeUniformComponents; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeTextureImageUnits; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeAtomicCounters; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxComputeAtomicCounterBuffers; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexAtomicCounters; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentAtomicCounters; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedAtomicCounters; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxAtomicCounterBindings; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxVertexAtomicCounterBuffers; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxFragmentAtomicCounterBuffers; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxCombinedAtomicCounterBuffers; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxAtomicCounterBufferSize; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryInputComponents; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryOutputComponents; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryImageUniforms; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryTextureImageUnits; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryOutputVertices; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryTotalOutputComponents; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryUniformComponents; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryAtomicCounters; +constexpr const TSymbolUniqueId BuiltInId::gl_MaxGeometryAtomicCounterBuffers; +constexpr const TSymbolUniqueId BuiltInId::gl_FragCoord; +constexpr const TSymbolUniqueId BuiltInId::gl_FrontFacing; +constexpr const TSymbolUniqueId BuiltInId::gl_PointCoord; +constexpr const TSymbolUniqueId BuiltInId::gl_FragColor; +constexpr const TSymbolUniqueId BuiltInId::gl_FragData; +constexpr const TSymbolUniqueId BuiltInId::gl_FragDepth; +constexpr const TSymbolUniqueId BuiltInId::gl_SecondaryFragColorEXT; +constexpr const TSymbolUniqueId BuiltInId::gl_SecondaryFragDataEXT; +constexpr const TSymbolUniqueId BuiltInId::gl_FragDepthEXT; +constexpr const TSymbolUniqueId BuiltInId::gl_LastFragData; +constexpr const TSymbolUniqueId BuiltInId::gl_LastFragColor; +constexpr const TSymbolUniqueId BuiltInId::gl_LastFragDataNV; +constexpr const TSymbolUniqueId BuiltInId::gl_LastFragColorARM; +constexpr const TSymbolUniqueId BuiltInId::gl_PrimitiveID; +constexpr const TSymbolUniqueId BuiltInId::gl_Layer; +constexpr const TSymbolUniqueId BuiltInId::gl_Position; +constexpr const TSymbolUniqueId BuiltInId::gl_PointSize; +constexpr const TSymbolUniqueId BuiltInId::gl_InstanceID; +constexpr const TSymbolUniqueId BuiltInId::gl_VertexID; +constexpr const TSymbolUniqueId BuiltInId::gl_ViewportIndex; +constexpr const TSymbolUniqueId BuiltInId::gl_LayerVS; +constexpr const TSymbolUniqueId BuiltInId::gl_DrawID; +constexpr const TSymbolUniqueId BuiltInId::gl_BaseVertex; +constexpr const TSymbolUniqueId BuiltInId::gl_BaseInstance; +constexpr const TSymbolUniqueId BuiltInId::gl_NumWorkGroups; +constexpr const TSymbolUniqueId BuiltInId::gl_WorkGroupSize; +constexpr const TSymbolUniqueId BuiltInId::gl_WorkGroupID; +constexpr const TSymbolUniqueId BuiltInId::gl_LocalInvocationID; +constexpr const TSymbolUniqueId BuiltInId::gl_GlobalInvocationID; +constexpr const TSymbolUniqueId BuiltInId::gl_LocalInvocationIndex; +constexpr const TSymbolUniqueId BuiltInId::gl_PrimitiveIDIn; +constexpr const TSymbolUniqueId BuiltInId::gl_InvocationID; +constexpr const TSymbolUniqueId BuiltInId::gl_PrimitiveIDGS; +constexpr const TSymbolUniqueId BuiltInId::gl_LayerGS; +constexpr const TSymbolUniqueId BuiltInId::gl_PerVertex; +constexpr const TSymbolUniqueId BuiltInId::gl_in; +constexpr const TSymbolUniqueId BuiltInId::gl_PerVertexOutBlock; +constexpr const TSymbolUniqueId BuiltInId::gl_PositionGS; +constexpr const TSymbolUniqueId BuiltInId::gl_ViewID_OVR; + +const int TSymbolTable::kLastBuiltInId = 3326; + +namespace BuiltInName +{ + +constexpr const ImmutableString _empty(""); +constexpr const ImmutableString EmitVertex("EmitVertex"); +constexpr const ImmutableString EndPrimitive("EndPrimitive"); +constexpr const ImmutableString abs("abs"); +constexpr const ImmutableString acos("acos"); +constexpr const ImmutableString acosh("acosh"); +constexpr const ImmutableString all("all"); +constexpr const ImmutableString any("any"); +constexpr const ImmutableString asin("asin"); +constexpr const ImmutableString asinh("asinh"); +constexpr const ImmutableString atan("atan"); +constexpr const ImmutableString atanh("atanh"); +constexpr const ImmutableString atomicAdd("atomicAdd"); +constexpr const ImmutableString atomicAnd("atomicAnd"); +constexpr const ImmutableString atomicCompSwap("atomicCompSwap"); +constexpr const ImmutableString atomicCounter("atomicCounter"); +constexpr const ImmutableString atomicCounterDecrement("atomicCounterDecrement"); +constexpr const ImmutableString atomicCounterIncrement("atomicCounterIncrement"); +constexpr const ImmutableString atomicExchange("atomicExchange"); +constexpr const ImmutableString atomicMax("atomicMax"); +constexpr const ImmutableString atomicMin("atomicMin"); +constexpr const ImmutableString atomicOr("atomicOr"); +constexpr const ImmutableString atomicXor("atomicXor"); +constexpr const ImmutableString barrier("barrier"); +constexpr const ImmutableString bitCount("bitCount"); +constexpr const ImmutableString bitfieldExtract("bitfieldExtract"); +constexpr const ImmutableString bitfieldInsert("bitfieldInsert"); +constexpr const ImmutableString bitfieldReverse("bitfieldReverse"); +constexpr const ImmutableString ceil("ceil"); +constexpr const ImmutableString clamp("clamp"); +constexpr const ImmutableString cos("cos"); +constexpr const ImmutableString cosh("cosh"); +constexpr const ImmutableString cross("cross"); +constexpr const ImmutableString dFdx("dFdx"); +constexpr const ImmutableString dFdxExt("dFdx"); +constexpr const ImmutableString dFdy("dFdy"); +constexpr const ImmutableString dFdyExt("dFdy"); +constexpr const ImmutableString degrees("degrees"); +constexpr const ImmutableString determinant("determinant"); +constexpr const ImmutableString diff("diff"); +constexpr const ImmutableString distance("distance"); +constexpr const ImmutableString dot("dot"); +constexpr const ImmutableString equal("equal"); +constexpr const ImmutableString exp("exp"); +constexpr const ImmutableString exp2("exp2"); +constexpr const ImmutableString faceforward("faceforward"); +constexpr const ImmutableString far("far"); +constexpr const ImmutableString findLSB("findLSB"); +constexpr const ImmutableString findMSB("findMSB"); +constexpr const ImmutableString floatBitsToInt("floatBitsToInt"); +constexpr const ImmutableString floatBitsToUint("floatBitsToUint"); +constexpr const ImmutableString floor("floor"); +constexpr const ImmutableString fract("fract"); +constexpr const ImmutableString frexp("frexp"); +constexpr const ImmutableString fwidth("fwidth"); +constexpr const ImmutableString fwidthExt("fwidth"); +constexpr const ImmutableString gl_BaseInstance("gl_BaseInstance"); +constexpr const ImmutableString gl_BaseVertex("gl_BaseVertex"); +constexpr const ImmutableString gl_DepthRange("gl_DepthRange"); +constexpr const ImmutableString gl_DepthRangeParameters("gl_DepthRangeParameters"); +constexpr const ImmutableString gl_DrawID("gl_DrawID"); +constexpr const ImmutableString gl_FragColor("gl_FragColor"); +constexpr const ImmutableString gl_FragCoord("gl_FragCoord"); +constexpr const ImmutableString gl_FragData("gl_FragData"); +constexpr const ImmutableString gl_FragDepth("gl_FragDepth"); +constexpr const ImmutableString gl_FragDepthEXT("gl_FragDepthEXT"); +constexpr const ImmutableString gl_FrontFacing("gl_FrontFacing"); +constexpr const ImmutableString gl_GlobalInvocationID("gl_GlobalInvocationID"); +constexpr const ImmutableString gl_InstanceID("gl_InstanceID"); +constexpr const ImmutableString gl_InvocationID("gl_InvocationID"); +constexpr const ImmutableString gl_LastFragColor("gl_LastFragColor"); +constexpr const ImmutableString gl_LastFragColorARM("gl_LastFragColorARM"); +constexpr const ImmutableString gl_LastFragData("gl_LastFragData"); +constexpr const ImmutableString gl_Layer("gl_Layer"); +constexpr const ImmutableString gl_LocalInvocationID("gl_LocalInvocationID"); +constexpr const ImmutableString gl_LocalInvocationIndex("gl_LocalInvocationIndex"); +constexpr const ImmutableString gl_MaxAtomicCounterBindings("gl_MaxAtomicCounterBindings"); +constexpr const ImmutableString gl_MaxAtomicCounterBufferSize("gl_MaxAtomicCounterBufferSize"); +constexpr const ImmutableString gl_MaxCombinedAtomicCounterBuffers( + "gl_MaxCombinedAtomicCounterBuffers"); +constexpr const ImmutableString gl_MaxCombinedAtomicCounters("gl_MaxCombinedAtomicCounters"); +constexpr const ImmutableString gl_MaxCombinedImageUniforms("gl_MaxCombinedImageUniforms"); +constexpr const ImmutableString gl_MaxCombinedShaderOutputResources( + "gl_MaxCombinedShaderOutputResources"); +constexpr const ImmutableString gl_MaxCombinedTextureImageUnits("gl_MaxCombinedTextureImageUnits"); +constexpr const ImmutableString gl_MaxComputeAtomicCounterBuffers( + "gl_MaxComputeAtomicCounterBuffers"); +constexpr const ImmutableString gl_MaxComputeAtomicCounters("gl_MaxComputeAtomicCounters"); +constexpr const ImmutableString gl_MaxComputeImageUniforms("gl_MaxComputeImageUniforms"); +constexpr const ImmutableString gl_MaxComputeTextureImageUnits("gl_MaxComputeTextureImageUnits"); +constexpr const ImmutableString gl_MaxComputeUniformComponents("gl_MaxComputeUniformComponents"); +constexpr const ImmutableString gl_MaxComputeWorkGroupCount("gl_MaxComputeWorkGroupCount"); +constexpr const ImmutableString gl_MaxComputeWorkGroupSize("gl_MaxComputeWorkGroupSize"); +constexpr const ImmutableString gl_MaxDrawBuffers("gl_MaxDrawBuffers"); +constexpr const ImmutableString gl_MaxDualSourceDrawBuffersEXT("gl_MaxDualSourceDrawBuffersEXT"); +constexpr const ImmutableString gl_MaxFragmentAtomicCounterBuffers( + "gl_MaxFragmentAtomicCounterBuffers"); +constexpr const ImmutableString gl_MaxFragmentAtomicCounters("gl_MaxFragmentAtomicCounters"); +constexpr const ImmutableString gl_MaxFragmentImageUniforms("gl_MaxFragmentImageUniforms"); +constexpr const ImmutableString gl_MaxFragmentInputVectors("gl_MaxFragmentInputVectors"); +constexpr const ImmutableString gl_MaxFragmentUniformVectors("gl_MaxFragmentUniformVectors"); +constexpr const ImmutableString gl_MaxGeometryAtomicCounterBuffers( + "gl_MaxGeometryAtomicCounterBuffers"); +constexpr const ImmutableString gl_MaxGeometryAtomicCounters("gl_MaxGeometryAtomicCounters"); +constexpr const ImmutableString gl_MaxGeometryImageUniforms("gl_MaxGeometryImageUniforms"); +constexpr const ImmutableString gl_MaxGeometryInputComponents("gl_MaxGeometryInputComponents"); +constexpr const ImmutableString gl_MaxGeometryOutputComponents("gl_MaxGeometryOutputComponents"); +constexpr const ImmutableString gl_MaxGeometryOutputVertices("gl_MaxGeometryOutputVertices"); +constexpr const ImmutableString gl_MaxGeometryTextureImageUnits("gl_MaxGeometryTextureImageUnits"); +constexpr const ImmutableString gl_MaxGeometryTotalOutputComponents( + "gl_MaxGeometryTotalOutputComponents"); +constexpr const ImmutableString gl_MaxGeometryUniformComponents("gl_MaxGeometryUniformComponents"); +constexpr const ImmutableString gl_MaxImageUnits("gl_MaxImageUnits"); +constexpr const ImmutableString gl_MaxProgramTexelOffset("gl_MaxProgramTexelOffset"); +constexpr const ImmutableString gl_MaxTextureImageUnits("gl_MaxTextureImageUnits"); +constexpr const ImmutableString gl_MaxVaryingVectors("gl_MaxVaryingVectors"); +constexpr const ImmutableString gl_MaxVertexAtomicCounterBuffers( + "gl_MaxVertexAtomicCounterBuffers"); +constexpr const ImmutableString gl_MaxVertexAtomicCounters("gl_MaxVertexAtomicCounters"); +constexpr const ImmutableString gl_MaxVertexAttribs("gl_MaxVertexAttribs"); +constexpr const ImmutableString gl_MaxVertexImageUniforms("gl_MaxVertexImageUniforms"); +constexpr const ImmutableString gl_MaxVertexOutputVectors("gl_MaxVertexOutputVectors"); +constexpr const ImmutableString gl_MaxVertexTextureImageUnits("gl_MaxVertexTextureImageUnits"); +constexpr const ImmutableString gl_MaxVertexUniformVectors("gl_MaxVertexUniformVectors"); +constexpr const ImmutableString gl_MinProgramTexelOffset("gl_MinProgramTexelOffset"); +constexpr const ImmutableString gl_NumWorkGroups("gl_NumWorkGroups"); +constexpr const ImmutableString gl_PerVertex("gl_PerVertex"); +constexpr const ImmutableString gl_PointCoord("gl_PointCoord"); +constexpr const ImmutableString gl_PointSize("gl_PointSize"); +constexpr const ImmutableString gl_Position("gl_Position"); +constexpr const ImmutableString gl_PrimitiveID("gl_PrimitiveID"); +constexpr const ImmutableString gl_PrimitiveIDIn("gl_PrimitiveIDIn"); +constexpr const ImmutableString gl_SecondaryFragColorEXT("gl_SecondaryFragColorEXT"); +constexpr const ImmutableString gl_SecondaryFragDataEXT("gl_SecondaryFragDataEXT"); +constexpr const ImmutableString gl_VertexID("gl_VertexID"); +constexpr const ImmutableString gl_ViewID_OVR("gl_ViewID_OVR"); +constexpr const ImmutableString gl_ViewportIndex("gl_ViewportIndex"); +constexpr const ImmutableString gl_WorkGroupID("gl_WorkGroupID"); +constexpr const ImmutableString gl_WorkGroupSize("gl_WorkGroupSize"); +constexpr const ImmutableString gl_in("gl_in"); +constexpr const ImmutableString greaterThan("greaterThan"); +constexpr const ImmutableString greaterThanEqual("greaterThanEqual"); +constexpr const ImmutableString groupMemoryBarrier("groupMemoryBarrier"); +constexpr const ImmutableString imageLoad("imageLoad"); +constexpr const ImmutableString imageSize("imageSize"); +constexpr const ImmutableString imageStore("imageStore"); +constexpr const ImmutableString imulExtended("imulExtended"); +constexpr const ImmutableString intBitsToFloat("intBitsToFloat"); +constexpr const ImmutableString inverse("inverse"); +constexpr const ImmutableString inversesqrt("inversesqrt"); +constexpr const ImmutableString isinf("isinf"); +constexpr const ImmutableString isnan("isnan"); +constexpr const ImmutableString ldexp("ldexp"); +constexpr const ImmutableString length("length"); +constexpr const ImmutableString lessThan("lessThan"); +constexpr const ImmutableString lessThanEqual("lessThanEqual"); +constexpr const ImmutableString log("log"); +constexpr const ImmutableString log2("log2"); +constexpr const ImmutableString matrixCompMult("matrixCompMult"); +constexpr const ImmutableString max("max"); +constexpr const ImmutableString memoryBarrier("memoryBarrier"); +constexpr const ImmutableString memoryBarrierAtomicCounter("memoryBarrierAtomicCounter"); +constexpr const ImmutableString memoryBarrierBuffer("memoryBarrierBuffer"); +constexpr const ImmutableString memoryBarrierImage("memoryBarrierImage"); +constexpr const ImmutableString memoryBarrierShared("memoryBarrierShared"); +constexpr const ImmutableString min("min"); +constexpr const ImmutableString mix("mix"); +constexpr const ImmutableString mod("mod"); +constexpr const ImmutableString modf("modf"); +constexpr const ImmutableString near("near"); +constexpr const ImmutableString normalize("normalize"); +constexpr const ImmutableString notEqual("notEqual"); +constexpr const ImmutableString notFunc("not"); +constexpr const ImmutableString outerProduct("outerProduct"); +constexpr const ImmutableString packHalf2x16("packHalf2x16"); +constexpr const ImmutableString packSnorm2x16("packSnorm2x16"); +constexpr const ImmutableString packSnorm4x8("packSnorm4x8"); +constexpr const ImmutableString packUnorm2x16("packUnorm2x16"); +constexpr const ImmutableString packUnorm4x8("packUnorm4x8"); +constexpr const ImmutableString pow("pow"); +constexpr const ImmutableString radians("radians"); +constexpr const ImmutableString reflect("reflect"); +constexpr const ImmutableString refract("refract"); +constexpr const ImmutableString rgb_2_yuv("rgb_2_yuv"); +constexpr const ImmutableString round("round"); +constexpr const ImmutableString roundEven("roundEven"); +constexpr const ImmutableString sign("sign"); +constexpr const ImmutableString sin("sin"); +constexpr const ImmutableString sinh("sinh"); +constexpr const ImmutableString smoothstep("smoothstep"); +constexpr const ImmutableString sqrt("sqrt"); +constexpr const ImmutableString step("step"); +constexpr const ImmutableString tan("tan"); +constexpr const ImmutableString tanh("tanh"); +constexpr const ImmutableString texelFetch("texelFetch"); +constexpr const ImmutableString texelFetchExt("texelFetch"); +constexpr const ImmutableString texelFetchOffset("texelFetchOffset"); +constexpr const ImmutableString texture("texture"); +constexpr const ImmutableString texture2D("texture2D"); +constexpr const ImmutableString texture2DGradEXT("texture2DGradEXT"); +constexpr const ImmutableString texture2DLod("texture2DLod"); +constexpr const ImmutableString texture2DLodEXT("texture2DLodEXT"); +constexpr const ImmutableString texture2DProj("texture2DProj"); +constexpr const ImmutableString texture2DProjGradEXT("texture2DProjGradEXT"); +constexpr const ImmutableString texture2DProjLod("texture2DProjLod"); +constexpr const ImmutableString texture2DProjLodEXT("texture2DProjLodEXT"); +constexpr const ImmutableString texture2DRect("texture2DRect"); +constexpr const ImmutableString texture2DRectProj("texture2DRectProj"); +constexpr const ImmutableString texture3D("texture3D"); +constexpr const ImmutableString texture3DLod("texture3DLod"); +constexpr const ImmutableString texture3DProj("texture3DProj"); +constexpr const ImmutableString texture3DProjLod("texture3DProjLod"); +constexpr const ImmutableString textureCube("textureCube"); +constexpr const ImmutableString textureCubeGradEXT("textureCubeGradEXT"); +constexpr const ImmutableString textureCubeLod("textureCubeLod"); +constexpr const ImmutableString textureCubeLodEXT("textureCubeLodEXT"); +constexpr const ImmutableString textureGather("textureGather"); +constexpr const ImmutableString textureGatherOffset("textureGatherOffset"); +constexpr const ImmutableString textureGrad("textureGrad"); +constexpr const ImmutableString textureGradOffset("textureGradOffset"); +constexpr const ImmutableString textureLod("textureLod"); +constexpr const ImmutableString textureLodOffset("textureLodOffset"); +constexpr const ImmutableString textureOffset("textureOffset"); +constexpr const ImmutableString textureProj("textureProj"); +constexpr const ImmutableString textureProjGrad("textureProjGrad"); +constexpr const ImmutableString textureProjGradOffset("textureProjGradOffset"); +constexpr const ImmutableString textureProjLod("textureProjLod"); +constexpr const ImmutableString textureProjLodOffset("textureProjLodOffset"); +constexpr const ImmutableString textureProjOffset("textureProjOffset"); +constexpr const ImmutableString textureSize("textureSize"); +constexpr const ImmutableString textureSizeExt("textureSize"); +constexpr const ImmutableString transpose("transpose"); +constexpr const ImmutableString trunc("trunc"); +constexpr const ImmutableString uaddCarry("uaddCarry"); +constexpr const ImmutableString uintBitsToFloat("uintBitsToFloat"); +constexpr const ImmutableString umulExtended("umulExtended"); +constexpr const ImmutableString unpackHalf2x16("unpackHalf2x16"); +constexpr const ImmutableString unpackSnorm2x16("unpackSnorm2x16"); +constexpr const ImmutableString unpackSnorm4x8("unpackSnorm4x8"); +constexpr const ImmutableString unpackUnorm2x16("unpackUnorm2x16"); +constexpr const ImmutableString unpackUnorm4x8("unpackUnorm4x8"); +constexpr const ImmutableString usubBorrow("usubBorrow"); +constexpr const ImmutableString yuv_2_rgb("yuv_2_rgb"); + +} // namespace BuiltInName + +// TODO(oetuaho): Would be nice to make this a class instead of a namespace so that we could friend +// this from TVariable. Now symbol constructors taking an id have to be public even though they're +// not supposed to be accessible from outside of here. http://anglebug.com/2390 +namespace BuiltInVariable +{ + +constexpr const TVariable kVar_gl_BaseInstance( + BuiltInId::gl_BaseInstance, + BuiltInName::gl_BaseInstance, + SymbolType::BuiltIn, + TExtension::ANGLE_base_vertex_base_instance, + StaticType::Get()); +constexpr const TVariable kVar_gl_BaseVertex( + BuiltInId::gl_BaseVertex, + BuiltInName::gl_BaseVertex, + SymbolType::BuiltIn, + TExtension::ANGLE_base_vertex_base_instance, + StaticType::Get()); +constexpr const TVariable kVar_gl_DrawID(BuiltInId::gl_DrawID, + BuiltInName::gl_DrawID, + SymbolType::BuiltIn, + TExtension::ANGLE_multi_draw, + StaticType::Get()); +constexpr const TVariable kVar_gl_FragColor( + BuiltInId::gl_FragColor, + BuiltInName::gl_FragColor, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_FragCoord( + BuiltInId::gl_FragCoord, + BuiltInName::gl_FragCoord, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_FragDepth( + BuiltInId::gl_FragDepth, + BuiltInName::gl_FragDepth, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_FrontFacing( + BuiltInId::gl_FrontFacing, + BuiltInName::gl_FrontFacing, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_GlobalInvocationID( + BuiltInId::gl_GlobalInvocationID, + BuiltInName::gl_GlobalInvocationID, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_InstanceID( + BuiltInId::gl_InstanceID, + BuiltInName::gl_InstanceID, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_InvocationID( + BuiltInId::gl_InvocationID, + BuiltInName::gl_InvocationID, + SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, + StaticType::Get()); +constexpr const TVariable kVar_gl_LastFragColor( + BuiltInId::gl_LastFragColor, + BuiltInName::gl_LastFragColor, + SymbolType::BuiltIn, + TExtension::NV_shader_framebuffer_fetch, + StaticType::Get()); +constexpr const TVariable kVar_gl_LastFragColorARM( + BuiltInId::gl_LastFragColorARM, + BuiltInName::gl_LastFragColorARM, + SymbolType::BuiltIn, + TExtension::ARM_shader_framebuffer_fetch, + StaticType::Get()); +constexpr const TVariable kVar_gl_Layer(BuiltInId::gl_Layer, + BuiltInName::gl_Layer, + SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, + StaticType::Get()); +constexpr const TVariable kVar_gl_LayerGS(BuiltInId::gl_LayerGS, + BuiltInName::gl_Layer, + SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, + StaticType::Get()); +constexpr const TVariable kVar_gl_LayerVS(BuiltInId::gl_LayerVS, + BuiltInName::gl_Layer, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_LocalInvocationID( + BuiltInId::gl_LocalInvocationID, + BuiltInName::gl_LocalInvocationID, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_LocalInvocationIndex( + BuiltInId::gl_LocalInvocationIndex, + BuiltInName::gl_LocalInvocationIndex, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_NumWorkGroups( + BuiltInId::gl_NumWorkGroups, + BuiltInName::gl_NumWorkGroups, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_PointCoord( + BuiltInId::gl_PointCoord, + BuiltInName::gl_PointCoord, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_PointSize( + BuiltInId::gl_PointSize, + BuiltInName::gl_PointSize, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_Position(BuiltInId::gl_Position, + BuiltInName::gl_Position, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_PrimitiveID( + BuiltInId::gl_PrimitiveID, + BuiltInName::gl_PrimitiveID, + SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, + StaticType::Get()); +constexpr const TVariable kVar_gl_PrimitiveIDGS( + BuiltInId::gl_PrimitiveIDGS, + BuiltInName::gl_PrimitiveID, + SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, + StaticType::Get()); +constexpr const TVariable kVar_gl_PrimitiveIDIn( + BuiltInId::gl_PrimitiveIDIn, + BuiltInName::gl_PrimitiveIDIn, + SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, + StaticType::Get()); +constexpr const TVariable kVar_gl_SecondaryFragColorEXT( + BuiltInId::gl_SecondaryFragColorEXT, + BuiltInName::gl_SecondaryFragColorEXT, + SymbolType::BuiltIn, + TExtension::EXT_blend_func_extended, + StaticType::Get()); +constexpr const TVariable kVar_gl_VertexID(BuiltInId::gl_VertexID, + BuiltInName::gl_VertexID, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_ViewID_OVR( + BuiltInId::gl_ViewID_OVR, + BuiltInName::gl_ViewID_OVR, + SymbolType::BuiltIn, + TExtension::OVR_multiview, + StaticType::Get()); +constexpr const TVariable kVar_gl_ViewportIndex( + BuiltInId::gl_ViewportIndex, + BuiltInName::gl_ViewportIndex, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_WorkGroupID( + BuiltInId::gl_WorkGroupID, + BuiltInName::gl_WorkGroupID, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_gl_WorkGroupSize( + BuiltInId::gl_WorkGroupSize, + BuiltInName::gl_WorkGroupSize, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00B(BuiltInId::pt00B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00D(BuiltInId::pt00D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00E(BuiltInId::pt00E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00F(BuiltInId::pt00F, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00G( + BuiltInId::pt00G, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00H( + BuiltInId::pt00H, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00I( + BuiltInId::pt00I, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00J( + BuiltInId::pt00J, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00K( + BuiltInId::pt00K, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00L( + BuiltInId::pt00L, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00M( + BuiltInId::pt00M, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00N( + BuiltInId::pt00N, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00O( + BuiltInId::pt00O, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00P( + BuiltInId::pt00P, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00Q( + BuiltInId::pt00Q, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00R( + BuiltInId::pt00R, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00S( + BuiltInId::pt00S, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00T( + BuiltInId::pt00T, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00U( + BuiltInId::pt00U, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00V( + BuiltInId::pt00V, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00W( + BuiltInId::pt00W, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00X( + BuiltInId::pt00X, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00Y( + BuiltInId::pt00Y, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00Z( + BuiltInId::pt00Z, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00a( + BuiltInId::pt00a, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00b( + BuiltInId::pt00b, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00c( + BuiltInId::pt00c, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00d( + BuiltInId::pt00d, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00e( + BuiltInId::pt00e, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00f( + BuiltInId::pt00f, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00y(BuiltInId::pt00y, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt00z(BuiltInId::pt00z, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01A(BuiltInId::pt01A, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01B(BuiltInId::pt01B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01C(BuiltInId::pt01C, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01D(BuiltInId::pt01D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01E( + BuiltInId::pt01E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01F( + BuiltInId::pt01F, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01G( + BuiltInId::pt01G, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01H( + BuiltInId::pt01H, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01I( + BuiltInId::pt01I, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt01J( + BuiltInId::pt01J, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt10B(BuiltInId::pt10B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt10D(BuiltInId::pt10D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt10E(BuiltInId::pt10E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt10F(BuiltInId::pt10F, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt20B(BuiltInId::pt20B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt20D(BuiltInId::pt20D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt20E(BuiltInId::pt20E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt20F(BuiltInId::pt20F, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt30B(BuiltInId::pt30B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt30D(BuiltInId::pt30D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt30E(BuiltInId::pt30E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt30F(BuiltInId::pt30F, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt50B(BuiltInId::pt50B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt60B(BuiltInId::pt60B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt70B(BuiltInId::pt70B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt90B(BuiltInId::pt90B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_ptA0B(BuiltInId::ptA0B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_ptB0B(BuiltInId::ptB0B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_ptD0B(BuiltInId::ptD0B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_ptE0B(BuiltInId::ptE0B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_ptF0B(BuiltInId::ptF0B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_io_00D(BuiltInId::pt_io_00D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_io_00E(BuiltInId::pt_io_00E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_00B(BuiltInId::pt_o_00B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_00D(BuiltInId::pt_o_00D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_00E(BuiltInId::pt_o_00E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_10B(BuiltInId::pt_o_10B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_10D(BuiltInId::pt_o_10D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_10E(BuiltInId::pt_o_10E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_20B(BuiltInId::pt_o_20B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_20D(BuiltInId::pt_o_20D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_20E(BuiltInId::pt_o_20E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_30B(BuiltInId::pt_o_30B, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_30D(BuiltInId::pt_o_30D, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); +constexpr const TVariable kVar_pt_o_30E(BuiltInId::pt_o_30E, + BuiltInName::_empty, + SymbolType::BuiltIn, + TExtension::UNDEFINED, + StaticType::Get()); + +const TVariable *gl_BaseInstance() +{ + return &kVar_gl_BaseInstance; +} + +const TVariable *gl_BaseVertex() +{ + return &kVar_gl_BaseVertex; +} + +const TVariable *gl_DrawID() +{ + return &kVar_gl_DrawID; +} + +const TVariable *gl_FragColor() +{ + return &kVar_gl_FragColor; +} + +const TVariable *gl_FragCoord() +{ + return &kVar_gl_FragCoord; +} + +const TVariable *gl_FragDepth() +{ + return &kVar_gl_FragDepth; +} + +const TVariable *gl_FrontFacing() +{ + return &kVar_gl_FrontFacing; +} + +const TVariable *gl_GlobalInvocationID() +{ + return &kVar_gl_GlobalInvocationID; +} + +const TVariable *gl_InstanceID() +{ + return &kVar_gl_InstanceID; +} + +const TVariable *gl_InvocationID() +{ + return &kVar_gl_InvocationID; +} + +const TVariable *gl_LastFragColor() +{ + return &kVar_gl_LastFragColor; +} + +const TVariable *gl_LastFragColorARM() +{ + return &kVar_gl_LastFragColorARM; +} + +const TVariable *gl_Layer() +{ + return &kVar_gl_Layer; +} + +const TVariable *gl_LayerGS() +{ + return &kVar_gl_LayerGS; +} + +const TVariable *gl_LayerVS() +{ + return &kVar_gl_LayerVS; +} + +const TVariable *gl_LocalInvocationID() +{ + return &kVar_gl_LocalInvocationID; +} + +const TVariable *gl_LocalInvocationIndex() +{ + return &kVar_gl_LocalInvocationIndex; +} + +const TVariable *gl_NumWorkGroups() +{ + return &kVar_gl_NumWorkGroups; +} + +const TVariable *gl_PointCoord() +{ + return &kVar_gl_PointCoord; +} + +const TVariable *gl_PointSize() +{ + return &kVar_gl_PointSize; +} + +const TVariable *gl_Position() +{ + return &kVar_gl_Position; +} + +const TVariable *gl_PrimitiveID() +{ + return &kVar_gl_PrimitiveID; +} + +const TVariable *gl_PrimitiveIDGS() +{ + return &kVar_gl_PrimitiveIDGS; +} + +const TVariable *gl_PrimitiveIDIn() +{ + return &kVar_gl_PrimitiveIDIn; +} + +const TVariable *gl_SecondaryFragColorEXT() +{ + return &kVar_gl_SecondaryFragColorEXT; +} + +const TVariable *gl_VertexID() +{ + return &kVar_gl_VertexID; +} + +const TVariable *gl_ViewID_OVR() +{ + return &kVar_gl_ViewID_OVR; +} + +const TVariable *gl_ViewportIndex() +{ + return &kVar_gl_ViewportIndex; +} + +const TVariable *gl_WorkGroupID() +{ + return &kVar_gl_WorkGroupID; +} + +const TVariable *gl_WorkGroupSize() +{ + return &kVar_gl_WorkGroupSize; +} + +} // namespace BuiltInVariable + +namespace BuiltInParameters +{ + +constexpr const TVariable **empty = nullptr; +constexpr const TVariable *p00B00B00B[3] = { + &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00B00B00F[3] = { + &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00F}; +constexpr const TVariable *p00B00B10B[3] = { + &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt10B}; +constexpr const TVariable *p00B00B20B[3] = { + &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p00B00B30B[3] = { + &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p00B00D[2] = {&BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00B10B[2] = {&BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10B}; +constexpr const TVariable *p00B20B[2] = {&BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p00B30B[2] = {&BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p00B_o_00B[2] = {&BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt_o_00B}; +constexpr const TVariable *p00B_o_00D[2] = {&BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt_o_00D}; +constexpr const TVariable *p00D00D00D00D[4] = { + &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00D00D_o_00D_o_00D[4] = { + &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt_o_00D, + &BuiltInVariable::kVar_pt_o_00D}; +constexpr const TVariable *p00E00D00D[3] = { + &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00E00E00D00D[4] = { + &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00E00E00E[3] = { + &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00E}; +constexpr const TVariable *p00E00E_o_00E_o_00E[4] = { + &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt_o_00E, + &BuiltInVariable::kVar_pt_o_00E}; +constexpr const TVariable *p00G[1] = {&BuiltInVariable::kVar_pt00G}; +constexpr const TVariable *p00I00D[2] = {&BuiltInVariable::kVar_pt00I, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00I10B00B10D[4] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00I10B00D[3] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00I10B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00I10B10D00B[4] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00I10B10D00D[4] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00I10D00D10D[4] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00I20B00B10D[4] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00I20B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00I20B10D00B[4] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00I30B00B10D[4] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00I30B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00I30B10D00B[4] = { + &BuiltInVariable::kVar_pt00I, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00J00D[2] = {&BuiltInVariable::kVar_pt00J, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00J20B00B20D[4] = { + &BuiltInVariable::kVar_pt00J, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00J20B20B20B20D[5] = { + &BuiltInVariable::kVar_pt00J, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00J20B20D00B[4] = { + &BuiltInVariable::kVar_pt00J, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00J20D00D20D[4] = { + &BuiltInVariable::kVar_pt00J, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00J30B00B20D[4] = { + &BuiltInVariable::kVar_pt00J, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00J30B20B20B20D[5] = { + &BuiltInVariable::kVar_pt00J, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00J30B20D00B[4] = { + &BuiltInVariable::kVar_pt00J, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt20D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00K00D[2] = {&BuiltInVariable::kVar_pt00K, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00K20B00B[3] = { + &BuiltInVariable::kVar_pt00K, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00K20B00D[3] = { + &BuiltInVariable::kVar_pt00K, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00K20B20B20B[4] = { + &BuiltInVariable::kVar_pt00K, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p00L00D[2] = {&BuiltInVariable::kVar_pt00L, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00L20B00B10D[4] = { + &BuiltInVariable::kVar_pt00L, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00L20B00D[3] = { + &BuiltInVariable::kVar_pt00L, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00L20B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00L, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00L20B10D00B[4] = { + &BuiltInVariable::kVar_pt00L, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00L20B10D00D[4] = { + &BuiltInVariable::kVar_pt00L, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00L20D00D10D[4] = { + &BuiltInVariable::kVar_pt00L, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00M00D[2] = {&BuiltInVariable::kVar_pt00M, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00M10B00B[3] = { + &BuiltInVariable::kVar_pt00M, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00M10D00D[3] = { + &BuiltInVariable::kVar_pt00M, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00M20B00B[3] = { + &BuiltInVariable::kVar_pt00M, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00M30B00B[3] = { + &BuiltInVariable::kVar_pt00M, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00N00D[2] = {&BuiltInVariable::kVar_pt00N, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00N10B00B[3] = { + &BuiltInVariable::kVar_pt00N, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00N10D00D[3] = { + &BuiltInVariable::kVar_pt00N, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00N20B00B[3] = { + &BuiltInVariable::kVar_pt00N, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00N30B00B[3] = { + &BuiltInVariable::kVar_pt00N, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00O10B[2] = {&BuiltInVariable::kVar_pt00O, + &BuiltInVariable::kVar_pt10B}; +constexpr const TVariable *p00O20B[2] = {&BuiltInVariable::kVar_pt00O, + &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p00O30B[2] = {&BuiltInVariable::kVar_pt00O, + &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p00P10D00D[3] = { + &BuiltInVariable::kVar_pt00P, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00Q20D00D[3] = { + &BuiltInVariable::kVar_pt00Q, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00R00D[2] = {&BuiltInVariable::kVar_pt00R, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00R10B00B10D[4] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00R10B00D[3] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00R10B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00R10B10D00B[4] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00R10B10D00D[4] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00R10D00D10D[4] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00R20B00B10D[4] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00R20B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00R20B10D00B[4] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00R30B00B10D[4] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00R30B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00R30B10D00B[4] = { + &BuiltInVariable::kVar_pt00R, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00S00D[2] = {&BuiltInVariable::kVar_pt00S, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00S20B00B20D[4] = { + &BuiltInVariable::kVar_pt00S, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00S20B20B20B20D[5] = { + &BuiltInVariable::kVar_pt00S, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00S20B20D00B[4] = { + &BuiltInVariable::kVar_pt00S, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00S20D00D20D[4] = { + &BuiltInVariable::kVar_pt00S, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00S30B00B20D[4] = { + &BuiltInVariable::kVar_pt00S, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00S30B20B20B20D[5] = { + &BuiltInVariable::kVar_pt00S, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00S30B20D00B[4] = { + &BuiltInVariable::kVar_pt00S, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt20D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00T00D[2] = {&BuiltInVariable::kVar_pt00T, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00T20B00B[3] = { + &BuiltInVariable::kVar_pt00T, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00T20B00D[3] = { + &BuiltInVariable::kVar_pt00T, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00T20B20B20B[4] = { + &BuiltInVariable::kVar_pt00T, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p00U00D[2] = {&BuiltInVariable::kVar_pt00U, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00U20B00B10D[4] = { + &BuiltInVariable::kVar_pt00U, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00U20B00D[3] = { + &BuiltInVariable::kVar_pt00U, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00U20B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00U, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00U20B10D00B[4] = { + &BuiltInVariable::kVar_pt00U, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00U20B10D00D[4] = { + &BuiltInVariable::kVar_pt00U, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00U20D00D10D[4] = { + &BuiltInVariable::kVar_pt00U, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00V10D00D[3] = { + &BuiltInVariable::kVar_pt00V, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00W20D00D[3] = { + &BuiltInVariable::kVar_pt00W, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00X00D[2] = {&BuiltInVariable::kVar_pt00X, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00X10B00B10D[4] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00X10B00D[3] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00X10B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00X10B10D00B[4] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00X10B10D00D[4] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00X10D00D10D[4] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00X20B00B10D[4] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00X20B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00X20B10D00B[4] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00X30B00B10D[4] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00X30B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00X30B10D00B[4] = { + &BuiltInVariable::kVar_pt00X, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00Y00D[2] = {&BuiltInVariable::kVar_pt00Y, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00Y20B00B20D[4] = { + &BuiltInVariable::kVar_pt00Y, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00Y20B20B20B20D[5] = { + &BuiltInVariable::kVar_pt00Y, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00Y20B20D00B[4] = { + &BuiltInVariable::kVar_pt00Y, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00Y20D00D20D[4] = { + &BuiltInVariable::kVar_pt00Y, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00Y30B00B20D[4] = { + &BuiltInVariable::kVar_pt00Y, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00Y30B20B20B20D[5] = { + &BuiltInVariable::kVar_pt00Y, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p00Y30B20D00B[4] = { + &BuiltInVariable::kVar_pt00Y, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt20D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00Z00D[2] = {&BuiltInVariable::kVar_pt00Z, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00Z20B00B[3] = { + &BuiltInVariable::kVar_pt00Z, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00Z20B00D[3] = { + &BuiltInVariable::kVar_pt00Z, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00Z20B20B20B[4] = { + &BuiltInVariable::kVar_pt00Z, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p00a00D[2] = {&BuiltInVariable::kVar_pt00a, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00a20B00B10D[4] = { + &BuiltInVariable::kVar_pt00a, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00a20B00D[3] = { + &BuiltInVariable::kVar_pt00a, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00a20B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00a, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00a20B10D00B[4] = { + &BuiltInVariable::kVar_pt00a, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00a20B10D00D[4] = { + &BuiltInVariable::kVar_pt00a, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00a20D00D10D[4] = { + &BuiltInVariable::kVar_pt00a, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00b10D00D[3] = { + &BuiltInVariable::kVar_pt00b, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00c20D00D[3] = { + &BuiltInVariable::kVar_pt00c, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00d00D[2] = {&BuiltInVariable::kVar_pt00d, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00d10B00B10D[4] = { + &BuiltInVariable::kVar_pt00d, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00d20B00B10D[4] = { + &BuiltInVariable::kVar_pt00d, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00d20B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00d, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00d20B10D00B[4] = { + &BuiltInVariable::kVar_pt00d, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00d30B00B10D[4] = { + &BuiltInVariable::kVar_pt00d, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00d30B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00d, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00d30B10D00B[4] = { + &BuiltInVariable::kVar_pt00d, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt10D, + &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00e00D[2] = {&BuiltInVariable::kVar_pt00e, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00e20B00B[3] = { + &BuiltInVariable::kVar_pt00e, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00e30B00B[3] = { + &BuiltInVariable::kVar_pt00e, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p00e30B20B20B[4] = { + &BuiltInVariable::kVar_pt00e, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p00f00D[2] = {&BuiltInVariable::kVar_pt00f, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p00f20B00B10D[4] = { + &BuiltInVariable::kVar_pt00f, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00f30B10B10B10D[5] = { + &BuiltInVariable::kVar_pt00f, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p00y10D30B[3] = { + &BuiltInVariable::kVar_pt00y, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p00z10D30D[3] = { + &BuiltInVariable::kVar_pt00z, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt30D}; +constexpr const TVariable *p01A10D30E[3] = { + &BuiltInVariable::kVar_pt01A, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt30E}; +constexpr const TVariable *p01B20D30B[3] = { + &BuiltInVariable::kVar_pt01B, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p01C20D30D[3] = { + &BuiltInVariable::kVar_pt01C, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt30D}; +constexpr const TVariable *p01D20D30E[3] = { + &BuiltInVariable::kVar_pt01D, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt30E}; +constexpr const TVariable *p01E20D30B[3] = { + &BuiltInVariable::kVar_pt01E, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p01F20D30D[3] = { + &BuiltInVariable::kVar_pt01F, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt30D}; +constexpr const TVariable *p01G20D30E[3] = { + &BuiltInVariable::kVar_pt01G, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt30E}; +constexpr const TVariable *p01H20D30B[3] = { + &BuiltInVariable::kVar_pt01H, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p01I20D30D[3] = { + &BuiltInVariable::kVar_pt01I, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt30D}; +constexpr const TVariable *p01J20D30E[3] = { + &BuiltInVariable::kVar_pt01J, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt30E}; +constexpr const TVariable *p10B00B00B[3] = { + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p10B10B00B[3] = { + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p10B10B10B[3] = { + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10B}; +constexpr const TVariable *p10B10B10F[3] = { + &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10B, &BuiltInVariable::kVar_pt10F}; +constexpr const TVariable *p10B10D[2] = {&BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p10B20B[2] = {&BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p10B30B[2] = {&BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p10B_o_10B[2] = {&BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt_o_10B}; +constexpr const TVariable *p10B_o_10D[2] = {&BuiltInVariable::kVar_pt10B, + &BuiltInVariable::kVar_pt_o_10D}; +constexpr const TVariable *p10D00D00D[3] = { + &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p10D10D00D00D[4] = { + &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p10D10D10D[3] = { + &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt10D}; +constexpr const TVariable *p10D10D_o_10D_o_10D[4] = { + &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt10D, &BuiltInVariable::kVar_pt_o_10D, + &BuiltInVariable::kVar_pt_o_10D}; +constexpr const TVariable *p10E00D00D[3] = { + &BuiltInVariable::kVar_pt10E, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p10E00E00E[3] = { + &BuiltInVariable::kVar_pt10E, &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00E}; +constexpr const TVariable *p10E10E00D00D[4] = { + &BuiltInVariable::kVar_pt10E, &BuiltInVariable::kVar_pt10E, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p10E10E10E[3] = { + &BuiltInVariable::kVar_pt10E, &BuiltInVariable::kVar_pt10E, &BuiltInVariable::kVar_pt10E}; +constexpr const TVariable *p10E10E_o_10E_o_10E[4] = { + &BuiltInVariable::kVar_pt10E, &BuiltInVariable::kVar_pt10E, &BuiltInVariable::kVar_pt_o_10E, + &BuiltInVariable::kVar_pt_o_10E}; +constexpr const TVariable *p10F10F[2] = {&BuiltInVariable::kVar_pt10F, + &BuiltInVariable::kVar_pt10F}; +constexpr const TVariable *p20B00B00B[3] = { + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p20B00H[2] = {&BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt00H}; +constexpr const TVariable *p20B10B[2] = {&BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt10B}; +constexpr const TVariable *p20B20B00B[3] = { + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p20B20B20B[3] = { + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p20B20B20F[3] = { + &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20B, &BuiltInVariable::kVar_pt20F}; +constexpr const TVariable *p20B20D[2] = {&BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p20B30B[2] = {&BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p20B_o_20B[2] = {&BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt_o_20B}; +constexpr const TVariable *p20B_o_20D[2] = {&BuiltInVariable::kVar_pt20B, + &BuiltInVariable::kVar_pt_o_20D}; +constexpr const TVariable *p20D00D00D[3] = { + &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p20D20D00D00D[4] = { + &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p20D20D20D[3] = { + &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt20D}; +constexpr const TVariable *p20D20D_o_20D_o_20D[4] = { + &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt20D, &BuiltInVariable::kVar_pt_o_20D, + &BuiltInVariable::kVar_pt_o_20D}; +constexpr const TVariable *p20E00D00D[3] = { + &BuiltInVariable::kVar_pt20E, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p20E00E00E[3] = { + &BuiltInVariable::kVar_pt20E, &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00E}; +constexpr const TVariable *p20E20E00D00D[4] = { + &BuiltInVariable::kVar_pt20E, &BuiltInVariable::kVar_pt20E, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p20E20E20E[3] = { + &BuiltInVariable::kVar_pt20E, &BuiltInVariable::kVar_pt20E, &BuiltInVariable::kVar_pt20E}; +constexpr const TVariable *p20E20E_o_20E_o_20E[4] = { + &BuiltInVariable::kVar_pt20E, &BuiltInVariable::kVar_pt20E, &BuiltInVariable::kVar_pt_o_20E, + &BuiltInVariable::kVar_pt_o_20E}; +constexpr const TVariable *p20F20F[2] = {&BuiltInVariable::kVar_pt20F, + &BuiltInVariable::kVar_pt20F}; +constexpr const TVariable *p30B00B00B[3] = { + &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p30B10B[2] = {&BuiltInVariable::kVar_pt30B, + &BuiltInVariable::kVar_pt10B}; +constexpr const TVariable *p30B20B[2] = {&BuiltInVariable::kVar_pt30B, + &BuiltInVariable::kVar_pt20B}; +constexpr const TVariable *p30B30B00B[3] = { + &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt00B}; +constexpr const TVariable *p30B30B30B[3] = { + &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt30B}; +constexpr const TVariable *p30B30B30F[3] = { + &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt30B, &BuiltInVariable::kVar_pt30F}; +constexpr const TVariable *p30B30D[2] = {&BuiltInVariable::kVar_pt30B, + &BuiltInVariable::kVar_pt30D}; +constexpr const TVariable *p30B_o_30B[2] = {&BuiltInVariable::kVar_pt30B, + &BuiltInVariable::kVar_pt_o_30B}; +constexpr const TVariable *p30B_o_30D[2] = {&BuiltInVariable::kVar_pt30B, + &BuiltInVariable::kVar_pt_o_30D}; +constexpr const TVariable *p30D00D00D[3] = { + &BuiltInVariable::kVar_pt30D, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p30D30D00D00D[4] = { + &BuiltInVariable::kVar_pt30D, &BuiltInVariable::kVar_pt30D, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p30D30D30D[3] = { + &BuiltInVariable::kVar_pt30D, &BuiltInVariable::kVar_pt30D, &BuiltInVariable::kVar_pt30D}; +constexpr const TVariable *p30D30D_o_30D_o_30D[4] = { + &BuiltInVariable::kVar_pt30D, &BuiltInVariable::kVar_pt30D, &BuiltInVariable::kVar_pt_o_30D, + &BuiltInVariable::kVar_pt_o_30D}; +constexpr const TVariable *p30E00D00D[3] = { + &BuiltInVariable::kVar_pt30E, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p30E00E00E[3] = { + &BuiltInVariable::kVar_pt30E, &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00E}; +constexpr const TVariable *p30E30E00D00D[4] = { + &BuiltInVariable::kVar_pt30E, &BuiltInVariable::kVar_pt30E, &BuiltInVariable::kVar_pt00D, + &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p30E30E30E[3] = { + &BuiltInVariable::kVar_pt30E, &BuiltInVariable::kVar_pt30E, &BuiltInVariable::kVar_pt30E}; +constexpr const TVariable *p30E30E_o_30E_o_30E[4] = { + &BuiltInVariable::kVar_pt30E, &BuiltInVariable::kVar_pt30E, &BuiltInVariable::kVar_pt_o_30E, + &BuiltInVariable::kVar_pt_o_30E}; +constexpr const TVariable *p30F30F[2] = {&BuiltInVariable::kVar_pt30F, + &BuiltInVariable::kVar_pt30F}; +constexpr const TVariable *p50B50B[2] = {&BuiltInVariable::kVar_pt50B, + &BuiltInVariable::kVar_pt50B}; +constexpr const TVariable *p60B60B[2] = {&BuiltInVariable::kVar_pt60B, + &BuiltInVariable::kVar_pt60B}; +constexpr const TVariable *p70B70B[2] = {&BuiltInVariable::kVar_pt70B, + &BuiltInVariable::kVar_pt70B}; +constexpr const TVariable *p90B90B[2] = {&BuiltInVariable::kVar_pt90B, + &BuiltInVariable::kVar_pt90B}; +constexpr const TVariable *pA0BA0B[2] = {&BuiltInVariable::kVar_ptA0B, + &BuiltInVariable::kVar_ptA0B}; +constexpr const TVariable *pB0BB0B[2] = {&BuiltInVariable::kVar_ptB0B, + &BuiltInVariable::kVar_ptB0B}; +constexpr const TVariable *pD0BD0B[2] = {&BuiltInVariable::kVar_ptD0B, + &BuiltInVariable::kVar_ptD0B}; +constexpr const TVariable *pE0BE0B[2] = {&BuiltInVariable::kVar_ptE0B, + &BuiltInVariable::kVar_ptE0B}; +constexpr const TVariable *pF0BF0B[2] = {&BuiltInVariable::kVar_ptF0B, + &BuiltInVariable::kVar_ptF0B}; +constexpr const TVariable *p_io_00D00D00D[3] = { + &BuiltInVariable::kVar_pt_io_00D, &BuiltInVariable::kVar_pt00D, &BuiltInVariable::kVar_pt00D}; +constexpr const TVariable *p_io_00E00E00E[3] = { + &BuiltInVariable::kVar_pt_io_00E, &BuiltInVariable::kVar_pt00E, &BuiltInVariable::kVar_pt00E}; + +} // namespace BuiltInParameters + +namespace UnmangledBuiltIns +{ + +constexpr const UnmangledBuiltIn ARB_texture_rectangle(TExtension::ARB_texture_rectangle); +constexpr const UnmangledBuiltIn EXT_YUV_target(TExtension::EXT_YUV_target); +constexpr const UnmangledBuiltIn EXT_geometry_shader(TExtension::EXT_geometry_shader); +constexpr const UnmangledBuiltIn EXT_shader_texture_lod(TExtension::EXT_shader_texture_lod); +constexpr const UnmangledBuiltIn OES_EGL_image_external_essl3( + TExtension::OES_EGL_image_external_essl3); +constexpr const UnmangledBuiltIn OES_texture_3D(TExtension::OES_texture_3D); +constexpr const UnmangledBuiltIn UNDEFINED(TExtension::UNDEFINED); + +} // namespace UnmangledBuiltIns + +// TODO(oetuaho): Would be nice to make this a class instead of a namespace so that we could friend +// this from TFunction. Now symbol constructors taking an id have to be public even though they're +// not supposed to be accessible from outside of here. http://anglebug.com/2390 +namespace BuiltInFunction +{ + +constexpr const TFunction function_radians_00B( + BuiltInId::radians_Float1, + BuiltInName::radians, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpRadians, + true); +constexpr const TFunction function_radians_10B( + BuiltInId::radians_Float2, + BuiltInName::radians, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpRadians, + true); +constexpr const TFunction function_radians_20B( + BuiltInId::radians_Float3, + BuiltInName::radians, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpRadians, + true); +constexpr const TFunction function_radians_30B( + BuiltInId::radians_Float4, + BuiltInName::radians, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpRadians, + true); +constexpr const TFunction function_degrees_00B( + BuiltInId::degrees_Float1, + BuiltInName::degrees, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpDegrees, + true); +constexpr const TFunction function_degrees_10B( + BuiltInId::degrees_Float2, + BuiltInName::degrees, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpDegrees, + true); +constexpr const TFunction function_degrees_20B( + BuiltInId::degrees_Float3, + BuiltInName::degrees, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpDegrees, + true); +constexpr const TFunction function_degrees_30B( + BuiltInId::degrees_Float4, + BuiltInName::degrees, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpDegrees, + true); +constexpr const TFunction function_sin_00B( + BuiltInId::sin_Float1, + BuiltInName::sin, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpSin, + true); +constexpr const TFunction function_sin_10B( + BuiltInId::sin_Float2, + BuiltInName::sin, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpSin, + true); +constexpr const TFunction function_sin_20B( + BuiltInId::sin_Float3, + BuiltInName::sin, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpSin, + true); +constexpr const TFunction function_sin_30B( + BuiltInId::sin_Float4, + BuiltInName::sin, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpSin, + true); +constexpr const TFunction function_cos_00B( + BuiltInId::cos_Float1, + BuiltInName::cos, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpCos, + true); +constexpr const TFunction function_cos_10B( + BuiltInId::cos_Float2, + BuiltInName::cos, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpCos, + true); +constexpr const TFunction function_cos_20B( + BuiltInId::cos_Float3, + BuiltInName::cos, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpCos, + true); +constexpr const TFunction function_cos_30B( + BuiltInId::cos_Float4, + BuiltInName::cos, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpCos, + true); +constexpr const TFunction function_tan_00B( + BuiltInId::tan_Float1, + BuiltInName::tan, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpTan, + true); +constexpr const TFunction function_tan_10B( + BuiltInId::tan_Float2, + BuiltInName::tan, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpTan, + true); +constexpr const TFunction function_tan_20B( + BuiltInId::tan_Float3, + BuiltInName::tan, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpTan, + true); +constexpr const TFunction function_tan_30B( + BuiltInId::tan_Float4, + BuiltInName::tan, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpTan, + true); +constexpr const TFunction function_asin_00B( + BuiltInId::asin_Float1, + BuiltInName::asin, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpAsin, + true); +constexpr const TFunction function_asin_10B( + BuiltInId::asin_Float2, + BuiltInName::asin, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpAsin, + true); +constexpr const TFunction function_asin_20B( + BuiltInId::asin_Float3, + BuiltInName::asin, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpAsin, + true); +constexpr const TFunction function_asin_30B( + BuiltInId::asin_Float4, + BuiltInName::asin, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpAsin, + true); +constexpr const TFunction function_acos_00B( + BuiltInId::acos_Float1, + BuiltInName::acos, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpAcos, + true); +constexpr const TFunction function_acos_10B( + BuiltInId::acos_Float2, + BuiltInName::acos, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpAcos, + true); +constexpr const TFunction function_acos_20B( + BuiltInId::acos_Float3, + BuiltInName::acos, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpAcos, + true); +constexpr const TFunction function_acos_30B( + BuiltInId::acos_Float4, + BuiltInName::acos, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpAcos, + true); +constexpr const TFunction function_atan_00B00B( + BuiltInId::atan_Float1_Float1, + BuiltInName::atan, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 2, + StaticType::Get(), + EOpAtan, + true); +constexpr const TFunction function_atan_10B10B( + BuiltInId::atan_Float2_Float2, + BuiltInName::atan, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpAtan, + true); +constexpr const TFunction function_atan_20B20B( + BuiltInId::atan_Float3_Float3, + BuiltInName::atan, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpAtan, + true); +constexpr const TFunction function_atan_30B30B( + BuiltInId::atan_Float4_Float4, + BuiltInName::atan, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpAtan, + true); +constexpr const TFunction function_atan_00B( + BuiltInId::atan_Float1, + BuiltInName::atan, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpAtan, + true); +constexpr const TFunction function_atan_10B( + BuiltInId::atan_Float2, + BuiltInName::atan, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpAtan, + true); +constexpr const TFunction function_atan_20B( + BuiltInId::atan_Float3, + BuiltInName::atan, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpAtan, + true); +constexpr const TFunction function_atan_30B( + BuiltInId::atan_Float4, + BuiltInName::atan, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpAtan, + true); +constexpr const TFunction function_sinh_00B( + BuiltInId::sinh_Float1, + BuiltInName::sinh, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpSinh, + true); +constexpr const TFunction function_sinh_10B( + BuiltInId::sinh_Float2, + BuiltInName::sinh, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpSinh, + true); +constexpr const TFunction function_sinh_20B( + BuiltInId::sinh_Float3, + BuiltInName::sinh, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpSinh, + true); +constexpr const TFunction function_sinh_30B( + BuiltInId::sinh_Float4, + BuiltInName::sinh, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpSinh, + true); +constexpr const TFunction function_cosh_00B( + BuiltInId::cosh_Float1, + BuiltInName::cosh, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpCosh, + true); +constexpr const TFunction function_cosh_10B( + BuiltInId::cosh_Float2, + BuiltInName::cosh, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpCosh, + true); +constexpr const TFunction function_cosh_20B( + BuiltInId::cosh_Float3, + BuiltInName::cosh, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpCosh, + true); +constexpr const TFunction function_cosh_30B( + BuiltInId::cosh_Float4, + BuiltInName::cosh, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpCosh, + true); +constexpr const TFunction function_tanh_00B( + BuiltInId::tanh_Float1, + BuiltInName::tanh, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpTanh, + true); +constexpr const TFunction function_tanh_10B( + BuiltInId::tanh_Float2, + BuiltInName::tanh, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpTanh, + true); +constexpr const TFunction function_tanh_20B( + BuiltInId::tanh_Float3, + BuiltInName::tanh, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpTanh, + true); +constexpr const TFunction function_tanh_30B( + BuiltInId::tanh_Float4, + BuiltInName::tanh, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpTanh, + true); +constexpr const TFunction function_asinh_00B( + BuiltInId::asinh_Float1, + BuiltInName::asinh, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpAsinh, + true); +constexpr const TFunction function_asinh_10B( + BuiltInId::asinh_Float2, + BuiltInName::asinh, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpAsinh, + true); +constexpr const TFunction function_asinh_20B( + BuiltInId::asinh_Float3, + BuiltInName::asinh, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpAsinh, + true); +constexpr const TFunction function_asinh_30B( + BuiltInId::asinh_Float4, + BuiltInName::asinh, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpAsinh, + true); +constexpr const TFunction function_acosh_00B( + BuiltInId::acosh_Float1, + BuiltInName::acosh, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpAcosh, + true); +constexpr const TFunction function_acosh_10B( + BuiltInId::acosh_Float2, + BuiltInName::acosh, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpAcosh, + true); +constexpr const TFunction function_acosh_20B( + BuiltInId::acosh_Float3, + BuiltInName::acosh, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpAcosh, + true); +constexpr const TFunction function_acosh_30B( + BuiltInId::acosh_Float4, + BuiltInName::acosh, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpAcosh, + true); +constexpr const TFunction function_atanh_00B( + BuiltInId::atanh_Float1, + BuiltInName::atanh, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpAtanh, + true); +constexpr const TFunction function_atanh_10B( + BuiltInId::atanh_Float2, + BuiltInName::atanh, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpAtanh, + true); +constexpr const TFunction function_atanh_20B( + BuiltInId::atanh_Float3, + BuiltInName::atanh, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpAtanh, + true); +constexpr const TFunction function_atanh_30B( + BuiltInId::atanh_Float4, + BuiltInName::atanh, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpAtanh, + true); +constexpr const TFunction function_pow_00B00B( + BuiltInId::pow_Float1_Float1, + BuiltInName::pow, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 2, + StaticType::Get(), + EOpPow, + true); +constexpr const TFunction function_pow_10B10B( + BuiltInId::pow_Float2_Float2, + BuiltInName::pow, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpPow, + true); +constexpr const TFunction function_pow_20B20B( + BuiltInId::pow_Float3_Float3, + BuiltInName::pow, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpPow, + true); +constexpr const TFunction function_pow_30B30B( + BuiltInId::pow_Float4_Float4, + BuiltInName::pow, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpPow, + true); +constexpr const TFunction function_exp_00B( + BuiltInId::exp_Float1, + BuiltInName::exp, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpExp, + true); +constexpr const TFunction function_exp_10B( + BuiltInId::exp_Float2, + BuiltInName::exp, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpExp, + true); +constexpr const TFunction function_exp_20B( + BuiltInId::exp_Float3, + BuiltInName::exp, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpExp, + true); +constexpr const TFunction function_exp_30B( + BuiltInId::exp_Float4, + BuiltInName::exp, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpExp, + true); +constexpr const TFunction function_log_00B( + BuiltInId::log_Float1, + BuiltInName::log, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpLog, + true); +constexpr const TFunction function_log_10B( + BuiltInId::log_Float2, + BuiltInName::log, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpLog, + true); +constexpr const TFunction function_log_20B( + BuiltInId::log_Float3, + BuiltInName::log, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpLog, + true); +constexpr const TFunction function_log_30B( + BuiltInId::log_Float4, + BuiltInName::log, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpLog, + true); +constexpr const TFunction function_exp2_00B( + BuiltInId::exp2_Float1, + BuiltInName::exp2, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpExp2, + true); +constexpr const TFunction function_exp2_10B( + BuiltInId::exp2_Float2, + BuiltInName::exp2, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpExp2, + true); +constexpr const TFunction function_exp2_20B( + BuiltInId::exp2_Float3, + BuiltInName::exp2, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpExp2, + true); +constexpr const TFunction function_exp2_30B( + BuiltInId::exp2_Float4, + BuiltInName::exp2, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpExp2, + true); +constexpr const TFunction function_log2_00B( + BuiltInId::log2_Float1, + BuiltInName::log2, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpLog2, + true); +constexpr const TFunction function_log2_10B( + BuiltInId::log2_Float2, + BuiltInName::log2, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpLog2, + true); +constexpr const TFunction function_log2_20B( + BuiltInId::log2_Float3, + BuiltInName::log2, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpLog2, + true); +constexpr const TFunction function_log2_30B( + BuiltInId::log2_Float4, + BuiltInName::log2, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpLog2, + true); +constexpr const TFunction function_sqrt_00B( + BuiltInId::sqrt_Float1, + BuiltInName::sqrt, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpSqrt, + true); +constexpr const TFunction function_sqrt_10B( + BuiltInId::sqrt_Float2, + BuiltInName::sqrt, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpSqrt, + true); +constexpr const TFunction function_sqrt_20B( + BuiltInId::sqrt_Float3, + BuiltInName::sqrt, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpSqrt, + true); +constexpr const TFunction function_sqrt_30B( + BuiltInId::sqrt_Float4, + BuiltInName::sqrt, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpSqrt, + true); +constexpr const TFunction function_inversesqrt_00B( + BuiltInId::inversesqrt_Float1, + BuiltInName::inversesqrt, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpInversesqrt, + true); +constexpr const TFunction function_inversesqrt_10B( + BuiltInId::inversesqrt_Float2, + BuiltInName::inversesqrt, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpInversesqrt, + true); +constexpr const TFunction function_inversesqrt_20B( + BuiltInId::inversesqrt_Float3, + BuiltInName::inversesqrt, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpInversesqrt, + true); +constexpr const TFunction function_inversesqrt_30B( + BuiltInId::inversesqrt_Float4, + BuiltInName::inversesqrt, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpInversesqrt, + true); +constexpr const TFunction function_abs_00B( + BuiltInId::abs_Float1, + BuiltInName::abs, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpAbs, + true); +constexpr const TFunction function_abs_10B( + BuiltInId::abs_Float2, + BuiltInName::abs, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpAbs, + true); +constexpr const TFunction function_abs_20B( + BuiltInId::abs_Float3, + BuiltInName::abs, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpAbs, + true); +constexpr const TFunction function_abs_30B( + BuiltInId::abs_Float4, + BuiltInName::abs, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpAbs, + true); +constexpr const TFunction function_abs_00D(BuiltInId::abs_Int1, + BuiltInName::abs, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 1, + StaticType::Get(), + EOpAbs, + true); +constexpr const TFunction function_abs_10D(BuiltInId::abs_Int2, + BuiltInName::abs, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 1, + StaticType::Get(), + EOpAbs, + true); +constexpr const TFunction function_abs_20D(BuiltInId::abs_Int3, + BuiltInName::abs, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 1, + StaticType::Get(), + EOpAbs, + true); +constexpr const TFunction function_abs_30D(BuiltInId::abs_Int4, + BuiltInName::abs, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 1, + StaticType::Get(), + EOpAbs, + true); +constexpr const TFunction function_sign_00B( + BuiltInId::sign_Float1, + BuiltInName::sign, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpSign, + true); +constexpr const TFunction function_sign_10B( + BuiltInId::sign_Float2, + BuiltInName::sign, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpSign, + true); +constexpr const TFunction function_sign_20B( + BuiltInId::sign_Float3, + BuiltInName::sign, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpSign, + true); +constexpr const TFunction function_sign_30B( + BuiltInId::sign_Float4, + BuiltInName::sign, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpSign, + true); +constexpr const TFunction function_sign_00D( + BuiltInId::sign_Int1, + BuiltInName::sign, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 1, + StaticType::Get(), + EOpSign, + true); +constexpr const TFunction function_sign_10D( + BuiltInId::sign_Int2, + BuiltInName::sign, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 1, + StaticType::Get(), + EOpSign, + true); +constexpr const TFunction function_sign_20D( + BuiltInId::sign_Int3, + BuiltInName::sign, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 1, + StaticType::Get(), + EOpSign, + true); +constexpr const TFunction function_sign_30D( + BuiltInId::sign_Int4, + BuiltInName::sign, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 1, + StaticType::Get(), + EOpSign, + true); +constexpr const TFunction function_floor_00B( + BuiltInId::floor_Float1, + BuiltInName::floor, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpFloor, + true); +constexpr const TFunction function_floor_10B( + BuiltInId::floor_Float2, + BuiltInName::floor, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpFloor, + true); +constexpr const TFunction function_floor_20B( + BuiltInId::floor_Float3, + BuiltInName::floor, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpFloor, + true); +constexpr const TFunction function_floor_30B( + BuiltInId::floor_Float4, + BuiltInName::floor, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpFloor, + true); +constexpr const TFunction function_trunc_00B( + BuiltInId::trunc_Float1, + BuiltInName::trunc, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpTrunc, + true); +constexpr const TFunction function_trunc_10B( + BuiltInId::trunc_Float2, + BuiltInName::trunc, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpTrunc, + true); +constexpr const TFunction function_trunc_20B( + BuiltInId::trunc_Float3, + BuiltInName::trunc, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpTrunc, + true); +constexpr const TFunction function_trunc_30B( + BuiltInId::trunc_Float4, + BuiltInName::trunc, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpTrunc, + true); +constexpr const TFunction function_round_00B( + BuiltInId::round_Float1, + BuiltInName::round, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpRound, + true); +constexpr const TFunction function_round_10B( + BuiltInId::round_Float2, + BuiltInName::round, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpRound, + true); +constexpr const TFunction function_round_20B( + BuiltInId::round_Float3, + BuiltInName::round, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpRound, + true); +constexpr const TFunction function_round_30B( + BuiltInId::round_Float4, + BuiltInName::round, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpRound, + true); +constexpr const TFunction function_roundEven_00B( + BuiltInId::roundEven_Float1, + BuiltInName::roundEven, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpRoundEven, + true); +constexpr const TFunction function_roundEven_10B( + BuiltInId::roundEven_Float2, + BuiltInName::roundEven, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpRoundEven, + true); +constexpr const TFunction function_roundEven_20B( + BuiltInId::roundEven_Float3, + BuiltInName::roundEven, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpRoundEven, + true); +constexpr const TFunction function_roundEven_30B( + BuiltInId::roundEven_Float4, + BuiltInName::roundEven, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpRoundEven, + true); +constexpr const TFunction function_ceil_00B( + BuiltInId::ceil_Float1, + BuiltInName::ceil, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpCeil, + true); +constexpr const TFunction function_ceil_10B( + BuiltInId::ceil_Float2, + BuiltInName::ceil, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpCeil, + true); +constexpr const TFunction function_ceil_20B( + BuiltInId::ceil_Float3, + BuiltInName::ceil, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpCeil, + true); +constexpr const TFunction function_ceil_30B( + BuiltInId::ceil_Float4, + BuiltInName::ceil, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpCeil, + true); +constexpr const TFunction function_fract_00B( + BuiltInId::fract_Float1, + BuiltInName::fract, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpFract, + true); +constexpr const TFunction function_fract_10B( + BuiltInId::fract_Float2, + BuiltInName::fract, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpFract, + true); +constexpr const TFunction function_fract_20B( + BuiltInId::fract_Float3, + BuiltInName::fract, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpFract, + true); +constexpr const TFunction function_fract_30B( + BuiltInId::fract_Float4, + BuiltInName::fract, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpFract, + true); +constexpr const TFunction function_mod_00B00B( + BuiltInId::mod_Float1_Float1, + BuiltInName::mod, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 2, + StaticType::Get(), + EOpMod, + true); +constexpr const TFunction function_mod_10B00B( + BuiltInId::mod_Float2_Float1, + BuiltInName::mod, + TExtension::UNDEFINED, + BuiltInParameters::p10B00B00B, + 2, + StaticType::Get(), + EOpMod, + true); +constexpr const TFunction function_mod_20B00B( + BuiltInId::mod_Float3_Float1, + BuiltInName::mod, + TExtension::UNDEFINED, + BuiltInParameters::p20B00B00B, + 2, + StaticType::Get(), + EOpMod, + true); +constexpr const TFunction function_mod_30B00B( + BuiltInId::mod_Float4_Float1, + BuiltInName::mod, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 2, + StaticType::Get(), + EOpMod, + true); +constexpr const TFunction function_mod_10B10B( + BuiltInId::mod_Float2_Float2, + BuiltInName::mod, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpMod, + true); +constexpr const TFunction function_mod_20B20B( + BuiltInId::mod_Float3_Float3, + BuiltInName::mod, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpMod, + true); +constexpr const TFunction function_mod_30B30B( + BuiltInId::mod_Float4_Float4, + BuiltInName::mod, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpMod, + true); +constexpr const TFunction function_min_00B00B( + BuiltInId::min_Float1_Float1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_10B00B( + BuiltInId::min_Float2_Float1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p10B00B00B, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_20B00B( + BuiltInId::min_Float3_Float1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p20B00B00B, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_30B00B( + BuiltInId::min_Float4_Float1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_10B10B( + BuiltInId::min_Float2_Float2, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_20B20B( + BuiltInId::min_Float3_Float3, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_30B30B( + BuiltInId::min_Float4_Float4, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_00D00D( + BuiltInId::min_Int1_Int1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_10D10D( + BuiltInId::min_Int2_Int2, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D10D, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_20D20D( + BuiltInId::min_Int3_Int3, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_30D30D( + BuiltInId::min_Int4_Int4, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D30D, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_10D00D( + BuiltInId::min_Int2_Int1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_20D00D( + BuiltInId::min_Int3_Int1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p20D00D00D, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_30D00D( + BuiltInId::min_Int4_Int1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_00E00E( + BuiltInId::min_UInt1_UInt1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_10E10E( + BuiltInId::min_UInt2_UInt2, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E10E, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_20E20E( + BuiltInId::min_UInt3_UInt3, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_30E30E( + BuiltInId::min_UInt4_UInt4, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_10E00E( + BuiltInId::min_UInt2_UInt1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p10E00E00E, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_20E00E( + BuiltInId::min_UInt3_UInt1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p20E00E00E, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_min_30E00E( + BuiltInId::min_UInt4_UInt1, + BuiltInName::min, + TExtension::UNDEFINED, + BuiltInParameters::p30E00E00E, + 2, + StaticType::Get(), + EOpMin, + true); +constexpr const TFunction function_max_00B00B( + BuiltInId::max_Float1_Float1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_10B00B( + BuiltInId::max_Float2_Float1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p10B00B00B, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_20B00B( + BuiltInId::max_Float3_Float1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p20B00B00B, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_30B00B( + BuiltInId::max_Float4_Float1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_10B10B( + BuiltInId::max_Float2_Float2, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_20B20B( + BuiltInId::max_Float3_Float3, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_30B30B( + BuiltInId::max_Float4_Float4, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_00D00D( + BuiltInId::max_Int1_Int1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_10D10D( + BuiltInId::max_Int2_Int2, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D10D, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_20D20D( + BuiltInId::max_Int3_Int3, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_30D30D( + BuiltInId::max_Int4_Int4, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D30D, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_10D00D( + BuiltInId::max_Int2_Int1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_20D00D( + BuiltInId::max_Int3_Int1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p20D00D00D, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_30D00D( + BuiltInId::max_Int4_Int1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_00E00E( + BuiltInId::max_UInt1_UInt1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_10E10E( + BuiltInId::max_UInt2_UInt2, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E10E, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_20E20E( + BuiltInId::max_UInt3_UInt3, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_30E30E( + BuiltInId::max_UInt4_UInt4, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_10E00E( + BuiltInId::max_UInt2_UInt1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p10E00E00E, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_20E00E( + BuiltInId::max_UInt3_UInt1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p20E00E00E, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_max_30E00E( + BuiltInId::max_UInt4_UInt1, + BuiltInName::max, + TExtension::UNDEFINED, + BuiltInParameters::p30E00E00E, + 2, + StaticType::Get(), + EOpMax, + true); +constexpr const TFunction function_clamp_00B00B00B( + BuiltInId::clamp_Float1_Float1_Float1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00B, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_10B00B00B( + BuiltInId::clamp_Float2_Float1_Float1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p10B00B00B, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_20B00B00B( + BuiltInId::clamp_Float3_Float1_Float1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p20B00B00B, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_30B00B00B( + BuiltInId::clamp_Float4_Float1_Float1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_10B10B10B( + BuiltInId::clamp_Float2_Float2_Float2, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10B, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_20B20B20B( + BuiltInId::clamp_Float3_Float3_Float3, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20B, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_30B30B30B( + BuiltInId::clamp_Float4_Float4_Float4, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30B, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_00D00D00D( + BuiltInId::clamp_Int1_Int1_Int1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_10D00D00D( + BuiltInId::clamp_Int2_Int1_Int1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_20D00D00D( + BuiltInId::clamp_Int3_Int1_Int1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p20D00D00D, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_30D00D00D( + BuiltInId::clamp_Int4_Int1_Int1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_10D10D10D( + BuiltInId::clamp_Int2_Int2_Int2, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D10D, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_20D20D20D( + BuiltInId::clamp_Int3_Int3_Int3, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D20D, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_30D30D30D( + BuiltInId::clamp_Int4_Int4_Int4, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D30D, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_00E00E00E( + BuiltInId::clamp_UInt1_UInt1_UInt1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_10E00E00E( + BuiltInId::clamp_UInt2_UInt1_UInt1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p10E00E00E, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_20E00E00E( + BuiltInId::clamp_UInt3_UInt1_UInt1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p20E00E00E, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_30E00E00E( + BuiltInId::clamp_UInt4_UInt1_UInt1, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p30E00E00E, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_10E10E10E( + BuiltInId::clamp_UInt2_UInt2_UInt2, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E10E, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_20E20E20E( + BuiltInId::clamp_UInt3_UInt3_UInt3, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E20E, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_clamp_30E30E30E( + BuiltInId::clamp_UInt4_UInt4_UInt4, + BuiltInName::clamp, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E30E, + 3, + StaticType::Get(), + EOpClamp, + true); +constexpr const TFunction function_mix_00B00B00B( + BuiltInId::mix_Float1_Float1_Float1, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00B, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_10B10B00B( + BuiltInId::mix_Float2_Float2_Float1, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B00B, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_20B20B00B( + BuiltInId::mix_Float3_Float3_Float1, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B00B, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_30B30B00B( + BuiltInId::mix_Float4_Float4_Float1, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B00B, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_10B10B10B( + BuiltInId::mix_Float2_Float2_Float2, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10B, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_20B20B20B( + BuiltInId::mix_Float3_Float3_Float3, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20B, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_30B30B30B( + BuiltInId::mix_Float4_Float4_Float4, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30B, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_00B00B00F( + BuiltInId::mix_Float1_Float1_Bool1, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_10B10B10F( + BuiltInId::mix_Float2_Float2_Bool2, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_20B20B20F( + BuiltInId::mix_Float3_Float3_Bool3, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_mix_30B30B30F( + BuiltInId::mix_Float4_Float4_Bool4, + BuiltInName::mix, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 3, + StaticType::Get(), + EOpMix, + true); +constexpr const TFunction function_step_00B00B( + BuiltInId::step_Float1_Float1, + BuiltInName::step, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 2, + StaticType::Get(), + EOpStep, + true); +constexpr const TFunction function_step_10B10B( + BuiltInId::step_Float2_Float2, + BuiltInName::step, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpStep, + true); +constexpr const TFunction function_step_20B20B( + BuiltInId::step_Float3_Float3, + BuiltInName::step, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpStep, + true); +constexpr const TFunction function_step_30B30B( + BuiltInId::step_Float4_Float4, + BuiltInName::step, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpStep, + true); +constexpr const TFunction function_step_00B10B( + BuiltInId::step_Float1_Float2, + BuiltInName::step, + TExtension::UNDEFINED, + BuiltInParameters::p00B10B, + 2, + StaticType::Get(), + EOpStep, + true); +constexpr const TFunction function_step_00B20B( + BuiltInId::step_Float1_Float3, + BuiltInName::step, + TExtension::UNDEFINED, + BuiltInParameters::p00B20B, + 2, + StaticType::Get(), + EOpStep, + true); +constexpr const TFunction function_step_00B30B( + BuiltInId::step_Float1_Float4, + BuiltInName::step, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 2, + StaticType::Get(), + EOpStep, + true); +constexpr const TFunction function_smoothstep_00B00B00B( + BuiltInId::smoothstep_Float1_Float1_Float1, + BuiltInName::smoothstep, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00B, + 3, + StaticType::Get(), + EOpSmoothstep, + true); +constexpr const TFunction function_smoothstep_10B10B10B( + BuiltInId::smoothstep_Float2_Float2_Float2, + BuiltInName::smoothstep, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10B, + 3, + StaticType::Get(), + EOpSmoothstep, + true); +constexpr const TFunction function_smoothstep_20B20B20B( + BuiltInId::smoothstep_Float3_Float3_Float3, + BuiltInName::smoothstep, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20B, + 3, + StaticType::Get(), + EOpSmoothstep, + true); +constexpr const TFunction function_smoothstep_30B30B30B( + BuiltInId::smoothstep_Float4_Float4_Float4, + BuiltInName::smoothstep, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30B, + 3, + StaticType::Get(), + EOpSmoothstep, + true); +constexpr const TFunction function_smoothstep_00B00B10B( + BuiltInId::smoothstep_Float1_Float1_Float2, + BuiltInName::smoothstep, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B10B, + 3, + StaticType::Get(), + EOpSmoothstep, + true); +constexpr const TFunction function_smoothstep_00B00B20B( + BuiltInId::smoothstep_Float1_Float1_Float3, + BuiltInName::smoothstep, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B20B, + 3, + StaticType::Get(), + EOpSmoothstep, + true); +constexpr const TFunction function_smoothstep_00B00B30B( + BuiltInId::smoothstep_Float1_Float1_Float4, + BuiltInName::smoothstep, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B30B, + 3, + StaticType::Get(), + EOpSmoothstep, + true); +constexpr const TFunction function_modf_00B00B( + BuiltInId::modf_Float1_Float1, + BuiltInName::modf, + TExtension::UNDEFINED, + BuiltInParameters::p00B_o_00B, + 2, + StaticType::Get(), + EOpModf, + false); +constexpr const TFunction function_modf_10B10B( + BuiltInId::modf_Float2_Float2, + BuiltInName::modf, + TExtension::UNDEFINED, + BuiltInParameters::p10B_o_10B, + 2, + StaticType::Get(), + EOpModf, + false); +constexpr const TFunction function_modf_20B20B( + BuiltInId::modf_Float3_Float3, + BuiltInName::modf, + TExtension::UNDEFINED, + BuiltInParameters::p20B_o_20B, + 2, + StaticType::Get(), + EOpModf, + false); +constexpr const TFunction function_modf_30B30B( + BuiltInId::modf_Float4_Float4, + BuiltInName::modf, + TExtension::UNDEFINED, + BuiltInParameters::p30B_o_30B, + 2, + StaticType::Get(), + EOpModf, + false); +constexpr const TFunction function_isnan_00B( + BuiltInId::isnan_Float1, + BuiltInName::isnan, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpIsnan, + true); +constexpr const TFunction function_isnan_10B( + BuiltInId::isnan_Float2, + BuiltInName::isnan, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpIsnan, + true); +constexpr const TFunction function_isnan_20B( + BuiltInId::isnan_Float3, + BuiltInName::isnan, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpIsnan, + true); +constexpr const TFunction function_isnan_30B( + BuiltInId::isnan_Float4, + BuiltInName::isnan, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpIsnan, + true); +constexpr const TFunction function_isinf_00B( + BuiltInId::isinf_Float1, + BuiltInName::isinf, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpIsinf, + true); +constexpr const TFunction function_isinf_10B( + BuiltInId::isinf_Float2, + BuiltInName::isinf, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpIsinf, + true); +constexpr const TFunction function_isinf_20B( + BuiltInId::isinf_Float3, + BuiltInName::isinf, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpIsinf, + true); +constexpr const TFunction function_isinf_30B( + BuiltInId::isinf_Float4, + BuiltInName::isinf, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpIsinf, + true); +constexpr const TFunction function_floatBitsToInt_00B( + BuiltInId::floatBitsToInt_Float1, + BuiltInName::floatBitsToInt, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpFloatBitsToInt, + true); +constexpr const TFunction function_floatBitsToInt_10B( + BuiltInId::floatBitsToInt_Float2, + BuiltInName::floatBitsToInt, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpFloatBitsToInt, + true); +constexpr const TFunction function_floatBitsToInt_20B( + BuiltInId::floatBitsToInt_Float3, + BuiltInName::floatBitsToInt, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpFloatBitsToInt, + true); +constexpr const TFunction function_floatBitsToInt_30B( + BuiltInId::floatBitsToInt_Float4, + BuiltInName::floatBitsToInt, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpFloatBitsToInt, + true); +constexpr const TFunction function_floatBitsToUint_00B( + BuiltInId::floatBitsToUint_Float1, + BuiltInName::floatBitsToUint, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpFloatBitsToUint, + true); +constexpr const TFunction function_floatBitsToUint_10B( + BuiltInId::floatBitsToUint_Float2, + BuiltInName::floatBitsToUint, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpFloatBitsToUint, + true); +constexpr const TFunction function_floatBitsToUint_20B( + BuiltInId::floatBitsToUint_Float3, + BuiltInName::floatBitsToUint, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpFloatBitsToUint, + true); +constexpr const TFunction function_floatBitsToUint_30B( + BuiltInId::floatBitsToUint_Float4, + BuiltInName::floatBitsToUint, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpFloatBitsToUint, + true); +constexpr const TFunction function_intBitsToFloat_00D( + BuiltInId::intBitsToFloat_Int1, + BuiltInName::intBitsToFloat, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 1, + StaticType::Get(), + EOpIntBitsToFloat, + true); +constexpr const TFunction function_intBitsToFloat_10D( + BuiltInId::intBitsToFloat_Int2, + BuiltInName::intBitsToFloat, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 1, + StaticType::Get(), + EOpIntBitsToFloat, + true); +constexpr const TFunction function_intBitsToFloat_20D( + BuiltInId::intBitsToFloat_Int3, + BuiltInName::intBitsToFloat, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 1, + StaticType::Get(), + EOpIntBitsToFloat, + true); +constexpr const TFunction function_intBitsToFloat_30D( + BuiltInId::intBitsToFloat_Int4, + BuiltInName::intBitsToFloat, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 1, + StaticType::Get(), + EOpIntBitsToFloat, + true); +constexpr const TFunction function_uintBitsToFloat_00E( + BuiltInId::uintBitsToFloat_UInt1, + BuiltInName::uintBitsToFloat, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpUintBitsToFloat, + true); +constexpr const TFunction function_uintBitsToFloat_10E( + BuiltInId::uintBitsToFloat_UInt2, + BuiltInName::uintBitsToFloat, + TExtension::UNDEFINED, + BuiltInParameters::p10E00D00D, + 1, + StaticType::Get(), + EOpUintBitsToFloat, + true); +constexpr const TFunction function_uintBitsToFloat_20E( + BuiltInId::uintBitsToFloat_UInt3, + BuiltInName::uintBitsToFloat, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 1, + StaticType::Get(), + EOpUintBitsToFloat, + true); +constexpr const TFunction function_uintBitsToFloat_30E( + BuiltInId::uintBitsToFloat_UInt4, + BuiltInName::uintBitsToFloat, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 1, + StaticType::Get(), + EOpUintBitsToFloat, + true); +constexpr const TFunction function_frexp_00B00D( + BuiltInId::frexp_Float1_Int1, + BuiltInName::frexp, + TExtension::UNDEFINED, + BuiltInParameters::p00B_o_00D, + 2, + StaticType::Get(), + EOpFrexp, + false); +constexpr const TFunction function_frexp_10B10D( + BuiltInId::frexp_Float2_Int2, + BuiltInName::frexp, + TExtension::UNDEFINED, + BuiltInParameters::p10B_o_10D, + 2, + StaticType::Get(), + EOpFrexp, + false); +constexpr const TFunction function_frexp_20B20D( + BuiltInId::frexp_Float3_Int3, + BuiltInName::frexp, + TExtension::UNDEFINED, + BuiltInParameters::p20B_o_20D, + 2, + StaticType::Get(), + EOpFrexp, + false); +constexpr const TFunction function_frexp_30B30D( + BuiltInId::frexp_Float4_Int4, + BuiltInName::frexp, + TExtension::UNDEFINED, + BuiltInParameters::p30B_o_30D, + 2, + StaticType::Get(), + EOpFrexp, + false); +constexpr const TFunction function_ldexp_00B00D( + BuiltInId::ldexp_Float1_Int1, + BuiltInName::ldexp, + TExtension::UNDEFINED, + BuiltInParameters::p00B00D, + 2, + StaticType::Get(), + EOpLdexp, + true); +constexpr const TFunction function_ldexp_10B10D( + BuiltInId::ldexp_Float2_Int2, + BuiltInName::ldexp, + TExtension::UNDEFINED, + BuiltInParameters::p10B10D, + 2, + StaticType::Get(), + EOpLdexp, + true); +constexpr const TFunction function_ldexp_20B20D( + BuiltInId::ldexp_Float3_Int3, + BuiltInName::ldexp, + TExtension::UNDEFINED, + BuiltInParameters::p20B20D, + 2, + StaticType::Get(), + EOpLdexp, + true); +constexpr const TFunction function_ldexp_30B30D( + BuiltInId::ldexp_Float4_Int4, + BuiltInName::ldexp, + TExtension::UNDEFINED, + BuiltInParameters::p30B30D, + 2, + StaticType::Get(), + EOpLdexp, + true); +constexpr const TFunction function_packSnorm2x16_10B( + BuiltInId::packSnorm2x16_Float2, + BuiltInName::packSnorm2x16, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpPackSnorm2x16, + true); +constexpr const TFunction function_packHalf2x16_10B( + BuiltInId::packHalf2x16_Float2, + BuiltInName::packHalf2x16, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpPackHalf2x16, + true); +constexpr const TFunction function_unpackSnorm2x16_00E( + BuiltInId::unpackSnorm2x16_UInt1, + BuiltInName::unpackSnorm2x16, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpUnpackSnorm2x16, + true); +constexpr const TFunction function_unpackHalf2x16_00E( + BuiltInId::unpackHalf2x16_UInt1, + BuiltInName::unpackHalf2x16, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpUnpackHalf2x16, + true); +constexpr const TFunction function_packUnorm2x16_10B( + BuiltInId::packUnorm2x16_Float2, + BuiltInName::packUnorm2x16, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpPackUnorm2x16, + true); +constexpr const TFunction function_unpackUnorm2x16_00E( + BuiltInId::unpackUnorm2x16_UInt1, + BuiltInName::unpackUnorm2x16, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpUnpackUnorm2x16, + true); +constexpr const TFunction function_packUnorm4x8_30B( + BuiltInId::packUnorm4x8_Float4, + BuiltInName::packUnorm4x8, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpPackUnorm4x8, + true); +constexpr const TFunction function_packSnorm4x8_30B( + BuiltInId::packSnorm4x8_Float4, + BuiltInName::packSnorm4x8, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpPackSnorm4x8, + true); +constexpr const TFunction function_unpackUnorm4x8_00E( + BuiltInId::unpackUnorm4x8_UInt1, + BuiltInName::unpackUnorm4x8, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpUnpackUnorm4x8, + true); +constexpr const TFunction function_unpackSnorm4x8_00E( + BuiltInId::unpackSnorm4x8_UInt1, + BuiltInName::unpackSnorm4x8, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpUnpackSnorm4x8, + true); +constexpr const TFunction function_length_00B( + BuiltInId::length_Float1, + BuiltInName::length, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpLength, + true); +constexpr const TFunction function_length_10B( + BuiltInId::length_Float2, + BuiltInName::length, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpLength, + true); +constexpr const TFunction function_length_20B( + BuiltInId::length_Float3, + BuiltInName::length, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpLength, + true); +constexpr const TFunction function_length_30B( + BuiltInId::length_Float4, + BuiltInName::length, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpLength, + true); +constexpr const TFunction function_distance_00B00B( + BuiltInId::distance_Float1_Float1, + BuiltInName::distance, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 2, + StaticType::Get(), + EOpDistance, + true); +constexpr const TFunction function_distance_10B10B( + BuiltInId::distance_Float2_Float2, + BuiltInName::distance, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpDistance, + true); +constexpr const TFunction function_distance_20B20B( + BuiltInId::distance_Float3_Float3, + BuiltInName::distance, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpDistance, + true); +constexpr const TFunction function_distance_30B30B( + BuiltInId::distance_Float4_Float4, + BuiltInName::distance, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpDistance, + true); +constexpr const TFunction function_dot_00B00B( + BuiltInId::dot_Float1_Float1, + BuiltInName::dot, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 2, + StaticType::Get(), + EOpDot, + true); +constexpr const TFunction function_dot_10B10B( + BuiltInId::dot_Float2_Float2, + BuiltInName::dot, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpDot, + true); +constexpr const TFunction function_dot_20B20B( + BuiltInId::dot_Float3_Float3, + BuiltInName::dot, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpDot, + true); +constexpr const TFunction function_dot_30B30B( + BuiltInId::dot_Float4_Float4, + BuiltInName::dot, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpDot, + true); +constexpr const TFunction function_cross_20B20B( + BuiltInId::cross_Float3_Float3, + BuiltInName::cross, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpCross, + true); +constexpr const TFunction function_normalize_00B( + BuiltInId::normalize_Float1, + BuiltInName::normalize, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpNormalize, + true); +constexpr const TFunction function_normalize_10B( + BuiltInId::normalize_Float2, + BuiltInName::normalize, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpNormalize, + true); +constexpr const TFunction function_normalize_20B( + BuiltInId::normalize_Float3, + BuiltInName::normalize, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpNormalize, + true); +constexpr const TFunction function_normalize_30B( + BuiltInId::normalize_Float4, + BuiltInName::normalize, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpNormalize, + true); +constexpr const TFunction function_faceforward_00B00B00B( + BuiltInId::faceforward_Float1_Float1_Float1, + BuiltInName::faceforward, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00B, + 3, + StaticType::Get(), + EOpFaceforward, + true); +constexpr const TFunction function_faceforward_10B10B10B( + BuiltInId::faceforward_Float2_Float2_Float2, + BuiltInName::faceforward, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10B, + 3, + StaticType::Get(), + EOpFaceforward, + true); +constexpr const TFunction function_faceforward_20B20B20B( + BuiltInId::faceforward_Float3_Float3_Float3, + BuiltInName::faceforward, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20B, + 3, + StaticType::Get(), + EOpFaceforward, + true); +constexpr const TFunction function_faceforward_30B30B30B( + BuiltInId::faceforward_Float4_Float4_Float4, + BuiltInName::faceforward, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30B, + 3, + StaticType::Get(), + EOpFaceforward, + true); +constexpr const TFunction function_reflect_00B00B( + BuiltInId::reflect_Float1_Float1, + BuiltInName::reflect, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00F, + 2, + StaticType::Get(), + EOpReflect, + true); +constexpr const TFunction function_reflect_10B10B( + BuiltInId::reflect_Float2_Float2, + BuiltInName::reflect, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpReflect, + true); +constexpr const TFunction function_reflect_20B20B( + BuiltInId::reflect_Float3_Float3, + BuiltInName::reflect, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpReflect, + true); +constexpr const TFunction function_reflect_30B30B( + BuiltInId::reflect_Float4_Float4, + BuiltInName::reflect, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpReflect, + true); +constexpr const TFunction function_refract_00B00B00B( + BuiltInId::refract_Float1_Float1_Float1, + BuiltInName::refract, + TExtension::UNDEFINED, + BuiltInParameters::p00B00B00B, + 3, + StaticType::Get(), + EOpRefract, + true); +constexpr const TFunction function_refract_10B10B00B( + BuiltInId::refract_Float2_Float2_Float1, + BuiltInName::refract, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B00B, + 3, + StaticType::Get(), + EOpRefract, + true); +constexpr const TFunction function_refract_20B20B00B( + BuiltInId::refract_Float3_Float3_Float1, + BuiltInName::refract, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B00B, + 3, + StaticType::Get(), + EOpRefract, + true); +constexpr const TFunction function_refract_30B30B00B( + BuiltInId::refract_Float4_Float4_Float1, + BuiltInName::refract, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B00B, + 3, + StaticType::Get(), + EOpRefract, + true); +constexpr const TFunction function_matrixCompMult_50B50B( + BuiltInId::matrixCompMult_Float2x2_Float2x2, + BuiltInName::matrixCompMult, + TExtension::UNDEFINED, + BuiltInParameters::p50B50B, + 2, + StaticType::Get(), + EOpMulMatrixComponentWise, + true); +constexpr const TFunction function_matrixCompMult_A0BA0B( + BuiltInId::matrixCompMult_Float3x3_Float3x3, + BuiltInName::matrixCompMult, + TExtension::UNDEFINED, + BuiltInParameters::pA0BA0B, + 2, + StaticType::Get(), + EOpMulMatrixComponentWise, + true); +constexpr const TFunction function_matrixCompMult_F0BF0B( + BuiltInId::matrixCompMult_Float4x4_Float4x4, + BuiltInName::matrixCompMult, + TExtension::UNDEFINED, + BuiltInParameters::pF0BF0B, + 2, + StaticType::Get(), + EOpMulMatrixComponentWise, + true); +constexpr const TFunction function_matrixCompMult_90B90B( + BuiltInId::matrixCompMult_Float2x3_Float2x3, + BuiltInName::matrixCompMult, + TExtension::UNDEFINED, + BuiltInParameters::p90B90B, + 2, + StaticType::Get(), + EOpMulMatrixComponentWise, + true); +constexpr const TFunction function_matrixCompMult_60B60B( + BuiltInId::matrixCompMult_Float3x2_Float3x2, + BuiltInName::matrixCompMult, + TExtension::UNDEFINED, + BuiltInParameters::p60B60B, + 2, + StaticType::Get(), + EOpMulMatrixComponentWise, + true); +constexpr const TFunction function_matrixCompMult_D0BD0B( + BuiltInId::matrixCompMult_Float2x4_Float2x4, + BuiltInName::matrixCompMult, + TExtension::UNDEFINED, + BuiltInParameters::pD0BD0B, + 2, + StaticType::Get(), + EOpMulMatrixComponentWise, + true); +constexpr const TFunction function_matrixCompMult_70B70B( + BuiltInId::matrixCompMult_Float4x2_Float4x2, + BuiltInName::matrixCompMult, + TExtension::UNDEFINED, + BuiltInParameters::p70B70B, + 2, + StaticType::Get(), + EOpMulMatrixComponentWise, + true); +constexpr const TFunction function_matrixCompMult_E0BE0B( + BuiltInId::matrixCompMult_Float3x4_Float3x4, + BuiltInName::matrixCompMult, + TExtension::UNDEFINED, + BuiltInParameters::pE0BE0B, + 2, + StaticType::Get(), + EOpMulMatrixComponentWise, + true); +constexpr const TFunction function_matrixCompMult_B0BB0B( + BuiltInId::matrixCompMult_Float4x3_Float4x3, + BuiltInName::matrixCompMult, + TExtension::UNDEFINED, + BuiltInParameters::pB0BB0B, + 2, + StaticType::Get(), + EOpMulMatrixComponentWise, + true); +constexpr const TFunction function_outerProduct_10B10B( + BuiltInId::outerProduct_Float2_Float2, + BuiltInName::outerProduct, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpOuterProduct, + true); +constexpr const TFunction function_outerProduct_20B20B( + BuiltInId::outerProduct_Float3_Float3, + BuiltInName::outerProduct, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpOuterProduct, + true); +constexpr const TFunction function_outerProduct_30B30B( + BuiltInId::outerProduct_Float4_Float4, + BuiltInName::outerProduct, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpOuterProduct, + true); +constexpr const TFunction function_outerProduct_20B10B( + BuiltInId::outerProduct_Float3_Float2, + BuiltInName::outerProduct, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 2, + StaticType::Get(), + EOpOuterProduct, + true); +constexpr const TFunction function_outerProduct_10B20B( + BuiltInId::outerProduct_Float2_Float3, + BuiltInName::outerProduct, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 2, + StaticType::Get(), + EOpOuterProduct, + true); +constexpr const TFunction function_outerProduct_30B10B( + BuiltInId::outerProduct_Float4_Float2, + BuiltInName::outerProduct, + TExtension::UNDEFINED, + BuiltInParameters::p30B10B, + 2, + StaticType::Get(), + EOpOuterProduct, + true); +constexpr const TFunction function_outerProduct_10B30B( + BuiltInId::outerProduct_Float2_Float4, + BuiltInName::outerProduct, + TExtension::UNDEFINED, + BuiltInParameters::p10B30B, + 2, + StaticType::Get(), + EOpOuterProduct, + true); +constexpr const TFunction function_outerProduct_30B20B( + BuiltInId::outerProduct_Float4_Float3, + BuiltInName::outerProduct, + TExtension::UNDEFINED, + BuiltInParameters::p30B20B, + 2, + StaticType::Get(), + EOpOuterProduct, + true); +constexpr const TFunction function_outerProduct_20B30B( + BuiltInId::outerProduct_Float3_Float4, + BuiltInName::outerProduct, + TExtension::UNDEFINED, + BuiltInParameters::p20B30B, + 2, + StaticType::Get(), + EOpOuterProduct, + true); +constexpr const TFunction function_transpose_50B( + BuiltInId::transpose_Float2x2, + BuiltInName::transpose, + TExtension::UNDEFINED, + BuiltInParameters::p50B50B, + 1, + StaticType::Get(), + EOpTranspose, + true); +constexpr const TFunction function_transpose_A0B( + BuiltInId::transpose_Float3x3, + BuiltInName::transpose, + TExtension::UNDEFINED, + BuiltInParameters::pA0BA0B, + 1, + StaticType::Get(), + EOpTranspose, + true); +constexpr const TFunction function_transpose_F0B( + BuiltInId::transpose_Float4x4, + BuiltInName::transpose, + TExtension::UNDEFINED, + BuiltInParameters::pF0BF0B, + 1, + StaticType::Get(), + EOpTranspose, + true); +constexpr const TFunction function_transpose_60B( + BuiltInId::transpose_Float3x2, + BuiltInName::transpose, + TExtension::UNDEFINED, + BuiltInParameters::p60B60B, + 1, + StaticType::Get(), + EOpTranspose, + true); +constexpr const TFunction function_transpose_90B( + BuiltInId::transpose_Float2x3, + BuiltInName::transpose, + TExtension::UNDEFINED, + BuiltInParameters::p90B90B, + 1, + StaticType::Get(), + EOpTranspose, + true); +constexpr const TFunction function_transpose_70B( + BuiltInId::transpose_Float4x2, + BuiltInName::transpose, + TExtension::UNDEFINED, + BuiltInParameters::p70B70B, + 1, + StaticType::Get(), + EOpTranspose, + true); +constexpr const TFunction function_transpose_D0B( + BuiltInId::transpose_Float2x4, + BuiltInName::transpose, + TExtension::UNDEFINED, + BuiltInParameters::pD0BD0B, + 1, + StaticType::Get(), + EOpTranspose, + true); +constexpr const TFunction function_transpose_B0B( + BuiltInId::transpose_Float4x3, + BuiltInName::transpose, + TExtension::UNDEFINED, + BuiltInParameters::pB0BB0B, + 1, + StaticType::Get(), + EOpTranspose, + true); +constexpr const TFunction function_transpose_E0B( + BuiltInId::transpose_Float3x4, + BuiltInName::transpose, + TExtension::UNDEFINED, + BuiltInParameters::pE0BE0B, + 1, + StaticType::Get(), + EOpTranspose, + true); +constexpr const TFunction function_determinant_50B( + BuiltInId::determinant_Float2x2, + BuiltInName::determinant, + TExtension::UNDEFINED, + BuiltInParameters::p50B50B, + 1, + StaticType::Get(), + EOpDeterminant, + true); +constexpr const TFunction function_determinant_A0B( + BuiltInId::determinant_Float3x3, + BuiltInName::determinant, + TExtension::UNDEFINED, + BuiltInParameters::pA0BA0B, + 1, + StaticType::Get(), + EOpDeterminant, + true); +constexpr const TFunction function_determinant_F0B( + BuiltInId::determinant_Float4x4, + BuiltInName::determinant, + TExtension::UNDEFINED, + BuiltInParameters::pF0BF0B, + 1, + StaticType::Get(), + EOpDeterminant, + true); +constexpr const TFunction function_inverse_50B( + BuiltInId::inverse_Float2x2, + BuiltInName::inverse, + TExtension::UNDEFINED, + BuiltInParameters::p50B50B, + 1, + StaticType::Get(), + EOpInverse, + true); +constexpr const TFunction function_inverse_A0B( + BuiltInId::inverse_Float3x3, + BuiltInName::inverse, + TExtension::UNDEFINED, + BuiltInParameters::pA0BA0B, + 1, + StaticType::Get(), + EOpInverse, + true); +constexpr const TFunction function_inverse_F0B( + BuiltInId::inverse_Float4x4, + BuiltInName::inverse, + TExtension::UNDEFINED, + BuiltInParameters::pF0BF0B, + 1, + StaticType::Get(), + EOpInverse, + true); +constexpr const TFunction function_lessThan_10B10B( + BuiltInId::lessThan_Float2_Float2, + BuiltInName::lessThan, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpLessThanComponentWise, + true); +constexpr const TFunction function_lessThan_20B20B( + BuiltInId::lessThan_Float3_Float3, + BuiltInName::lessThan, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpLessThanComponentWise, + true); +constexpr const TFunction function_lessThan_30B30B( + BuiltInId::lessThan_Float4_Float4, + BuiltInName::lessThan, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpLessThanComponentWise, + true); +constexpr const TFunction function_lessThan_10D10D( + BuiltInId::lessThan_Int2_Int2, + BuiltInName::lessThan, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D10D, + 2, + StaticType::Get(), + EOpLessThanComponentWise, + true); +constexpr const TFunction function_lessThan_20D20D( + BuiltInId::lessThan_Int3_Int3, + BuiltInName::lessThan, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 2, + StaticType::Get(), + EOpLessThanComponentWise, + true); +constexpr const TFunction function_lessThan_30D30D( + BuiltInId::lessThan_Int4_Int4, + BuiltInName::lessThan, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D30D, + 2, + StaticType::Get(), + EOpLessThanComponentWise, + true); +constexpr const TFunction function_lessThan_10E10E( + BuiltInId::lessThan_UInt2_UInt2, + BuiltInName::lessThan, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E10E, + 2, + StaticType::Get(), + EOpLessThanComponentWise, + true); +constexpr const TFunction function_lessThan_20E20E( + BuiltInId::lessThan_UInt3_UInt3, + BuiltInName::lessThan, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 2, + StaticType::Get(), + EOpLessThanComponentWise, + true); +constexpr const TFunction function_lessThan_30E30E( + BuiltInId::lessThan_UInt4_UInt4, + BuiltInName::lessThan, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 2, + StaticType::Get(), + EOpLessThanComponentWise, + true); +constexpr const TFunction function_lessThanEqual_10B10B( + BuiltInId::lessThanEqual_Float2_Float2, + BuiltInName::lessThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpLessThanEqualComponentWise, + true); +constexpr const TFunction function_lessThanEqual_20B20B( + BuiltInId::lessThanEqual_Float3_Float3, + BuiltInName::lessThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpLessThanEqualComponentWise, + true); +constexpr const TFunction function_lessThanEqual_30B30B( + BuiltInId::lessThanEqual_Float4_Float4, + BuiltInName::lessThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpLessThanEqualComponentWise, + true); +constexpr const TFunction function_lessThanEqual_10D10D( + BuiltInId::lessThanEqual_Int2_Int2, + BuiltInName::lessThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D10D, + 2, + StaticType::Get(), + EOpLessThanEqualComponentWise, + true); +constexpr const TFunction function_lessThanEqual_20D20D( + BuiltInId::lessThanEqual_Int3_Int3, + BuiltInName::lessThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 2, + StaticType::Get(), + EOpLessThanEqualComponentWise, + true); +constexpr const TFunction function_lessThanEqual_30D30D( + BuiltInId::lessThanEqual_Int4_Int4, + BuiltInName::lessThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D30D, + 2, + StaticType::Get(), + EOpLessThanEqualComponentWise, + true); +constexpr const TFunction function_lessThanEqual_10E10E( + BuiltInId::lessThanEqual_UInt2_UInt2, + BuiltInName::lessThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E10E, + 2, + StaticType::Get(), + EOpLessThanEqualComponentWise, + true); +constexpr const TFunction function_lessThanEqual_20E20E( + BuiltInId::lessThanEqual_UInt3_UInt3, + BuiltInName::lessThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 2, + StaticType::Get(), + EOpLessThanEqualComponentWise, + true); +constexpr const TFunction function_lessThanEqual_30E30E( + BuiltInId::lessThanEqual_UInt4_UInt4, + BuiltInName::lessThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 2, + StaticType::Get(), + EOpLessThanEqualComponentWise, + true); +constexpr const TFunction function_greaterThan_10B10B( + BuiltInId::greaterThan_Float2_Float2, + BuiltInName::greaterThan, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpGreaterThanComponentWise, + true); +constexpr const TFunction function_greaterThan_20B20B( + BuiltInId::greaterThan_Float3_Float3, + BuiltInName::greaterThan, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpGreaterThanComponentWise, + true); +constexpr const TFunction function_greaterThan_30B30B( + BuiltInId::greaterThan_Float4_Float4, + BuiltInName::greaterThan, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpGreaterThanComponentWise, + true); +constexpr const TFunction function_greaterThan_10D10D( + BuiltInId::greaterThan_Int2_Int2, + BuiltInName::greaterThan, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D10D, + 2, + StaticType::Get(), + EOpGreaterThanComponentWise, + true); +constexpr const TFunction function_greaterThan_20D20D( + BuiltInId::greaterThan_Int3_Int3, + BuiltInName::greaterThan, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 2, + StaticType::Get(), + EOpGreaterThanComponentWise, + true); +constexpr const TFunction function_greaterThan_30D30D( + BuiltInId::greaterThan_Int4_Int4, + BuiltInName::greaterThan, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D30D, + 2, + StaticType::Get(), + EOpGreaterThanComponentWise, + true); +constexpr const TFunction function_greaterThan_10E10E( + BuiltInId::greaterThan_UInt2_UInt2, + BuiltInName::greaterThan, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E10E, + 2, + StaticType::Get(), + EOpGreaterThanComponentWise, + true); +constexpr const TFunction function_greaterThan_20E20E( + BuiltInId::greaterThan_UInt3_UInt3, + BuiltInName::greaterThan, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 2, + StaticType::Get(), + EOpGreaterThanComponentWise, + true); +constexpr const TFunction function_greaterThan_30E30E( + BuiltInId::greaterThan_UInt4_UInt4, + BuiltInName::greaterThan, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 2, + StaticType::Get(), + EOpGreaterThanComponentWise, + true); +constexpr const TFunction function_greaterThanEqual_10B10B( + BuiltInId::greaterThanEqual_Float2_Float2, + BuiltInName::greaterThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpGreaterThanEqualComponentWise, + true); +constexpr const TFunction function_greaterThanEqual_20B20B( + BuiltInId::greaterThanEqual_Float3_Float3, + BuiltInName::greaterThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpGreaterThanEqualComponentWise, + true); +constexpr const TFunction function_greaterThanEqual_30B30B( + BuiltInId::greaterThanEqual_Float4_Float4, + BuiltInName::greaterThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpGreaterThanEqualComponentWise, + true); +constexpr const TFunction function_greaterThanEqual_10D10D( + BuiltInId::greaterThanEqual_Int2_Int2, + BuiltInName::greaterThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D10D, + 2, + StaticType::Get(), + EOpGreaterThanEqualComponentWise, + true); +constexpr const TFunction function_greaterThanEqual_20D20D( + BuiltInId::greaterThanEqual_Int3_Int3, + BuiltInName::greaterThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 2, + StaticType::Get(), + EOpGreaterThanEqualComponentWise, + true); +constexpr const TFunction function_greaterThanEqual_30D30D( + BuiltInId::greaterThanEqual_Int4_Int4, + BuiltInName::greaterThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D30D, + 2, + StaticType::Get(), + EOpGreaterThanEqualComponentWise, + true); +constexpr const TFunction function_greaterThanEqual_10E10E( + BuiltInId::greaterThanEqual_UInt2_UInt2, + BuiltInName::greaterThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E10E, + 2, + StaticType::Get(), + EOpGreaterThanEqualComponentWise, + true); +constexpr const TFunction function_greaterThanEqual_20E20E( + BuiltInId::greaterThanEqual_UInt3_UInt3, + BuiltInName::greaterThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 2, + StaticType::Get(), + EOpGreaterThanEqualComponentWise, + true); +constexpr const TFunction function_greaterThanEqual_30E30E( + BuiltInId::greaterThanEqual_UInt4_UInt4, + BuiltInName::greaterThanEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 2, + StaticType::Get(), + EOpGreaterThanEqualComponentWise, + true); +constexpr const TFunction function_equal_10B10B( + BuiltInId::equal_Float2_Float2, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_20B20B( + BuiltInId::equal_Float3_Float3, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_30B30B( + BuiltInId::equal_Float4_Float4, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_10D10D( + BuiltInId::equal_Int2_Int2, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D10D, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_20D20D( + BuiltInId::equal_Int3_Int3, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_30D30D( + BuiltInId::equal_Int4_Int4, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D30D, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_10E10E( + BuiltInId::equal_UInt2_UInt2, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E10E, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_20E20E( + BuiltInId::equal_UInt3_UInt3, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_30E30E( + BuiltInId::equal_UInt4_UInt4, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_10F10F( + BuiltInId::equal_Bool2_Bool2, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p10F10F, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_20F20F( + BuiltInId::equal_Bool3_Bool3, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p20F20F, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_equal_30F30F( + BuiltInId::equal_Bool4_Bool4, + BuiltInName::equal, + TExtension::UNDEFINED, + BuiltInParameters::p30F30F, + 2, + StaticType::Get(), + EOpEqualComponentWise, + true); +constexpr const TFunction function_notEqual_10B10B( + BuiltInId::notEqual_Float2_Float2, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10B10B10F, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_20B20B( + BuiltInId::notEqual_Float3_Float3, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20B20B20F, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_30B30B( + BuiltInId::notEqual_Float4_Float4, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30B30B30F, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_10D10D( + BuiltInId::notEqual_Int2_Int2, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D10D, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_20D20D( + BuiltInId::notEqual_Int3_Int3, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_30D30D( + BuiltInId::notEqual_Int4_Int4, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D30D, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_10E10E( + BuiltInId::notEqual_UInt2_UInt2, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E10E, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_20E20E( + BuiltInId::notEqual_UInt3_UInt3, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_30E30E( + BuiltInId::notEqual_UInt4_UInt4, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_10F10F( + BuiltInId::notEqual_Bool2_Bool2, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p10F10F, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_20F20F( + BuiltInId::notEqual_Bool3_Bool3, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p20F20F, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_notEqual_30F30F( + BuiltInId::notEqual_Bool4_Bool4, + BuiltInName::notEqual, + TExtension::UNDEFINED, + BuiltInParameters::p30F30F, + 2, + StaticType::Get(), + EOpNotEqualComponentWise, + true); +constexpr const TFunction function_any_10F( + BuiltInId::any_Bool2, + BuiltInName::any, + TExtension::UNDEFINED, + BuiltInParameters::p10F10F, + 1, + StaticType::Get(), + EOpAny, + true); +constexpr const TFunction function_any_20F( + BuiltInId::any_Bool3, + BuiltInName::any, + TExtension::UNDEFINED, + BuiltInParameters::p20F20F, + 1, + StaticType::Get(), + EOpAny, + true); +constexpr const TFunction function_any_30F( + BuiltInId::any_Bool4, + BuiltInName::any, + TExtension::UNDEFINED, + BuiltInParameters::p30F30F, + 1, + StaticType::Get(), + EOpAny, + true); +constexpr const TFunction function_all_10F( + BuiltInId::all_Bool2, + BuiltInName::all, + TExtension::UNDEFINED, + BuiltInParameters::p10F10F, + 1, + StaticType::Get(), + EOpAll, + true); +constexpr const TFunction function_all_20F( + BuiltInId::all_Bool3, + BuiltInName::all, + TExtension::UNDEFINED, + BuiltInParameters::p20F20F, + 1, + StaticType::Get(), + EOpAll, + true); +constexpr const TFunction function_all_30F( + BuiltInId::all_Bool4, + BuiltInName::all, + TExtension::UNDEFINED, + BuiltInParameters::p30F30F, + 1, + StaticType::Get(), + EOpAll, + true); +constexpr const TFunction function_notFunc_10F( + BuiltInId::notFunc_Bool2, + BuiltInName::notFunc, + TExtension::UNDEFINED, + BuiltInParameters::p10F10F, + 1, + StaticType::Get(), + EOpLogicalNotComponentWise, + true); +constexpr const TFunction function_notFunc_20F( + BuiltInId::notFunc_Bool3, + BuiltInName::notFunc, + TExtension::UNDEFINED, + BuiltInParameters::p20F20F, + 1, + StaticType::Get(), + EOpLogicalNotComponentWise, + true); +constexpr const TFunction function_notFunc_30F( + BuiltInId::notFunc_Bool4, + BuiltInName::notFunc, + TExtension::UNDEFINED, + BuiltInParameters::p30F30F, + 1, + StaticType::Get(), + EOpLogicalNotComponentWise, + true); +constexpr const TFunction function_bitfieldExtract_00D00D00D( + BuiltInId::bitfieldExtract_Int1_Int1_Int1, + BuiltInName::bitfieldExtract, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 3, + StaticType::Get(), + EOpBitfieldExtract, + true); +constexpr const TFunction function_bitfieldExtract_10D00D00D( + BuiltInId::bitfieldExtract_Int2_Int1_Int1, + BuiltInName::bitfieldExtract, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 3, + StaticType::Get(), + EOpBitfieldExtract, + true); +constexpr const TFunction function_bitfieldExtract_20D00D00D( + BuiltInId::bitfieldExtract_Int3_Int1_Int1, + BuiltInName::bitfieldExtract, + TExtension::UNDEFINED, + BuiltInParameters::p20D00D00D, + 3, + StaticType::Get(), + EOpBitfieldExtract, + true); +constexpr const TFunction function_bitfieldExtract_30D00D00D( + BuiltInId::bitfieldExtract_Int4_Int1_Int1, + BuiltInName::bitfieldExtract, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 3, + StaticType::Get(), + EOpBitfieldExtract, + true); +constexpr const TFunction function_bitfieldExtract_00E00D00D( + BuiltInId::bitfieldExtract_UInt1_Int1_Int1, + BuiltInName::bitfieldExtract, + TExtension::UNDEFINED, + BuiltInParameters::p00E00D00D, + 3, + StaticType::Get(), + EOpBitfieldExtract, + true); +constexpr const TFunction function_bitfieldExtract_10E00D00D( + BuiltInId::bitfieldExtract_UInt2_Int1_Int1, + BuiltInName::bitfieldExtract, + TExtension::UNDEFINED, + BuiltInParameters::p10E00D00D, + 3, + StaticType::Get(), + EOpBitfieldExtract, + true); +constexpr const TFunction function_bitfieldExtract_20E00D00D( + BuiltInId::bitfieldExtract_UInt3_Int1_Int1, + BuiltInName::bitfieldExtract, + TExtension::UNDEFINED, + BuiltInParameters::p20E00D00D, + 3, + StaticType::Get(), + EOpBitfieldExtract, + true); +constexpr const TFunction function_bitfieldExtract_30E00D00D( + BuiltInId::bitfieldExtract_UInt4_Int1_Int1, + BuiltInName::bitfieldExtract, + TExtension::UNDEFINED, + BuiltInParameters::p30E00D00D, + 3, + StaticType::Get(), + EOpBitfieldExtract, + true); +constexpr const TFunction function_bitfieldInsert_00D00D00D00D( + BuiltInId::bitfieldInsert_Int1_Int1_Int1_Int1, + BuiltInName::bitfieldInsert, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 4, + StaticType::Get(), + EOpBitfieldInsert, + true); +constexpr const TFunction function_bitfieldInsert_10D10D00D00D( + BuiltInId::bitfieldInsert_Int2_Int2_Int1_Int1, + BuiltInName::bitfieldInsert, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D00D00D, + 4, + StaticType::Get(), + EOpBitfieldInsert, + true); +constexpr const TFunction function_bitfieldInsert_20D20D00D00D( + BuiltInId::bitfieldInsert_Int3_Int3_Int1_Int1, + BuiltInName::bitfieldInsert, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 4, + StaticType::Get(), + EOpBitfieldInsert, + true); +constexpr const TFunction function_bitfieldInsert_30D30D00D00D( + BuiltInId::bitfieldInsert_Int4_Int4_Int1_Int1, + BuiltInName::bitfieldInsert, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D00D00D, + 4, + StaticType::Get(), + EOpBitfieldInsert, + true); +constexpr const TFunction function_bitfieldInsert_00E00E00D00D( + BuiltInId::bitfieldInsert_UInt1_UInt1_Int1_Int1, + BuiltInName::bitfieldInsert, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00D00D, + 4, + StaticType::Get(), + EOpBitfieldInsert, + true); +constexpr const TFunction function_bitfieldInsert_10E10E00D00D( + BuiltInId::bitfieldInsert_UInt2_UInt2_Int1_Int1, + BuiltInName::bitfieldInsert, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E00D00D, + 4, + StaticType::Get(), + EOpBitfieldInsert, + true); +constexpr const TFunction function_bitfieldInsert_20E20E00D00D( + BuiltInId::bitfieldInsert_UInt3_UInt3_Int1_Int1, + BuiltInName::bitfieldInsert, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 4, + StaticType::Get(), + EOpBitfieldInsert, + true); +constexpr const TFunction function_bitfieldInsert_30E30E00D00D( + BuiltInId::bitfieldInsert_UInt4_UInt4_Int1_Int1, + BuiltInName::bitfieldInsert, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 4, + StaticType::Get(), + EOpBitfieldInsert, + true); +constexpr const TFunction function_bitfieldReverse_00D( + BuiltInId::bitfieldReverse_Int1, + BuiltInName::bitfieldReverse, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 1, + StaticType::Get(), + EOpBitfieldReverse, + true); +constexpr const TFunction function_bitfieldReverse_10D( + BuiltInId::bitfieldReverse_Int2, + BuiltInName::bitfieldReverse, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 1, + StaticType::Get(), + EOpBitfieldReverse, + true); +constexpr const TFunction function_bitfieldReverse_20D( + BuiltInId::bitfieldReverse_Int3, + BuiltInName::bitfieldReverse, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 1, + StaticType::Get(), + EOpBitfieldReverse, + true); +constexpr const TFunction function_bitfieldReverse_30D( + BuiltInId::bitfieldReverse_Int4, + BuiltInName::bitfieldReverse, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 1, + StaticType::Get(), + EOpBitfieldReverse, + true); +constexpr const TFunction function_bitfieldReverse_00E( + BuiltInId::bitfieldReverse_UInt1, + BuiltInName::bitfieldReverse, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpBitfieldReverse, + true); +constexpr const TFunction function_bitfieldReverse_10E( + BuiltInId::bitfieldReverse_UInt2, + BuiltInName::bitfieldReverse, + TExtension::UNDEFINED, + BuiltInParameters::p10E00D00D, + 1, + StaticType::Get(), + EOpBitfieldReverse, + true); +constexpr const TFunction function_bitfieldReverse_20E( + BuiltInId::bitfieldReverse_UInt3, + BuiltInName::bitfieldReverse, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 1, + StaticType::Get(), + EOpBitfieldReverse, + true); +constexpr const TFunction function_bitfieldReverse_30E( + BuiltInId::bitfieldReverse_UInt4, + BuiltInName::bitfieldReverse, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 1, + StaticType::Get(), + EOpBitfieldReverse, + true); +constexpr const TFunction function_bitCount_00D( + BuiltInId::bitCount_Int1, + BuiltInName::bitCount, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 1, + StaticType::Get(), + EOpBitCount, + true); +constexpr const TFunction function_bitCount_10D( + BuiltInId::bitCount_Int2, + BuiltInName::bitCount, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 1, + StaticType::Get(), + EOpBitCount, + true); +constexpr const TFunction function_bitCount_20D( + BuiltInId::bitCount_Int3, + BuiltInName::bitCount, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 1, + StaticType::Get(), + EOpBitCount, + true); +constexpr const TFunction function_bitCount_30D( + BuiltInId::bitCount_Int4, + BuiltInName::bitCount, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 1, + StaticType::Get(), + EOpBitCount, + true); +constexpr const TFunction function_bitCount_00E( + BuiltInId::bitCount_UInt1, + BuiltInName::bitCount, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpBitCount, + true); +constexpr const TFunction function_bitCount_10E( + BuiltInId::bitCount_UInt2, + BuiltInName::bitCount, + TExtension::UNDEFINED, + BuiltInParameters::p10E00D00D, + 1, + StaticType::Get(), + EOpBitCount, + true); +constexpr const TFunction function_bitCount_20E( + BuiltInId::bitCount_UInt3, + BuiltInName::bitCount, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 1, + StaticType::Get(), + EOpBitCount, + true); +constexpr const TFunction function_bitCount_30E( + BuiltInId::bitCount_UInt4, + BuiltInName::bitCount, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 1, + StaticType::Get(), + EOpBitCount, + true); +constexpr const TFunction function_findLSB_00D( + BuiltInId::findLSB_Int1, + BuiltInName::findLSB, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 1, + StaticType::Get(), + EOpFindLSB, + true); +constexpr const TFunction function_findLSB_10D( + BuiltInId::findLSB_Int2, + BuiltInName::findLSB, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 1, + StaticType::Get(), + EOpFindLSB, + true); +constexpr const TFunction function_findLSB_20D( + BuiltInId::findLSB_Int3, + BuiltInName::findLSB, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 1, + StaticType::Get(), + EOpFindLSB, + true); +constexpr const TFunction function_findLSB_30D( + BuiltInId::findLSB_Int4, + BuiltInName::findLSB, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 1, + StaticType::Get(), + EOpFindLSB, + true); +constexpr const TFunction function_findLSB_00E( + BuiltInId::findLSB_UInt1, + BuiltInName::findLSB, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpFindLSB, + true); +constexpr const TFunction function_findLSB_10E( + BuiltInId::findLSB_UInt2, + BuiltInName::findLSB, + TExtension::UNDEFINED, + BuiltInParameters::p10E00D00D, + 1, + StaticType::Get(), + EOpFindLSB, + true); +constexpr const TFunction function_findLSB_20E( + BuiltInId::findLSB_UInt3, + BuiltInName::findLSB, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 1, + StaticType::Get(), + EOpFindLSB, + true); +constexpr const TFunction function_findLSB_30E( + BuiltInId::findLSB_UInt4, + BuiltInName::findLSB, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 1, + StaticType::Get(), + EOpFindLSB, + true); +constexpr const TFunction function_findMSB_00D( + BuiltInId::findMSB_Int1, + BuiltInName::findMSB, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D00D00D, + 1, + StaticType::Get(), + EOpFindMSB, + true); +constexpr const TFunction function_findMSB_10D( + BuiltInId::findMSB_Int2, + BuiltInName::findMSB, + TExtension::UNDEFINED, + BuiltInParameters::p10D00D00D, + 1, + StaticType::Get(), + EOpFindMSB, + true); +constexpr const TFunction function_findMSB_20D( + BuiltInId::findMSB_Int3, + BuiltInName::findMSB, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D00D00D, + 1, + StaticType::Get(), + EOpFindMSB, + true); +constexpr const TFunction function_findMSB_30D( + BuiltInId::findMSB_Int4, + BuiltInName::findMSB, + TExtension::UNDEFINED, + BuiltInParameters::p30D00D00D, + 1, + StaticType::Get(), + EOpFindMSB, + true); +constexpr const TFunction function_findMSB_00E( + BuiltInId::findMSB_UInt1, + BuiltInName::findMSB, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E00E, + 1, + StaticType::Get(), + EOpFindMSB, + true); +constexpr const TFunction function_findMSB_10E( + BuiltInId::findMSB_UInt2, + BuiltInName::findMSB, + TExtension::UNDEFINED, + BuiltInParameters::p10E00D00D, + 1, + StaticType::Get(), + EOpFindMSB, + true); +constexpr const TFunction function_findMSB_20E( + BuiltInId::findMSB_UInt3, + BuiltInName::findMSB, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E00D00D, + 1, + StaticType::Get(), + EOpFindMSB, + true); +constexpr const TFunction function_findMSB_30E( + BuiltInId::findMSB_UInt4, + BuiltInName::findMSB, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E00D00D, + 1, + StaticType::Get(), + EOpFindMSB, + true); +constexpr const TFunction function_uaddCarry_00E00E00E( + BuiltInId::uaddCarry_UInt1_UInt1_UInt1, + BuiltInName::uaddCarry, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E_o_00E_o_00E, + 3, + StaticType::Get(), + EOpUaddCarry, + false); +constexpr const TFunction function_uaddCarry_10E10E10E( + BuiltInId::uaddCarry_UInt2_UInt2_UInt2, + BuiltInName::uaddCarry, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E_o_10E_o_10E, + 3, + StaticType::Get(), + EOpUaddCarry, + false); +constexpr const TFunction function_uaddCarry_20E20E20E( + BuiltInId::uaddCarry_UInt3_UInt3_UInt3, + BuiltInName::uaddCarry, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E_o_20E_o_20E, + 3, + StaticType::Get(), + EOpUaddCarry, + false); +constexpr const TFunction function_uaddCarry_30E30E30E( + BuiltInId::uaddCarry_UInt4_UInt4_UInt4, + BuiltInName::uaddCarry, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E_o_30E_o_30E, + 3, + StaticType::Get(), + EOpUaddCarry, + false); +constexpr const TFunction function_usubBorrow_00E00E00E( + BuiltInId::usubBorrow_UInt1_UInt1_UInt1, + BuiltInName::usubBorrow, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E_o_00E_o_00E, + 3, + StaticType::Get(), + EOpUsubBorrow, + false); +constexpr const TFunction function_usubBorrow_10E10E10E( + BuiltInId::usubBorrow_UInt2_UInt2_UInt2, + BuiltInName::usubBorrow, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E_o_10E_o_10E, + 3, + StaticType::Get(), + EOpUsubBorrow, + false); +constexpr const TFunction function_usubBorrow_20E20E20E( + BuiltInId::usubBorrow_UInt3_UInt3_UInt3, + BuiltInName::usubBorrow, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E_o_20E_o_20E, + 3, + StaticType::Get(), + EOpUsubBorrow, + false); +constexpr const TFunction function_usubBorrow_30E30E30E( + BuiltInId::usubBorrow_UInt4_UInt4_UInt4, + BuiltInName::usubBorrow, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E_o_30E_o_30E, + 3, + StaticType::Get(), + EOpUsubBorrow, + false); +constexpr const TFunction function_umulExtended_00E00E00E00E( + BuiltInId::umulExtended_UInt1_UInt1_UInt1_UInt1, + BuiltInName::umulExtended, + TExtension::UNDEFINED, + BuiltInParameters::p00E00E_o_00E_o_00E, + 4, + StaticType::Get(), + EOpUmulExtended, + false); +constexpr const TFunction function_umulExtended_10E10E10E10E( + BuiltInId::umulExtended_UInt2_UInt2_UInt2_UInt2, + BuiltInName::umulExtended, + TExtension::UNDEFINED, + BuiltInParameters::p10E10E_o_10E_o_10E, + 4, + StaticType::Get(), + EOpUmulExtended, + false); +constexpr const TFunction function_umulExtended_20E20E20E20E( + BuiltInId::umulExtended_UInt3_UInt3_UInt3_UInt3, + BuiltInName::umulExtended, + TExtension::UNDEFINED, + BuiltInParameters::p20E20E_o_20E_o_20E, + 4, + StaticType::Get(), + EOpUmulExtended, + false); +constexpr const TFunction function_umulExtended_30E30E30E30E( + BuiltInId::umulExtended_UInt4_UInt4_UInt4_UInt4, + BuiltInName::umulExtended, + TExtension::UNDEFINED, + BuiltInParameters::p30E30E_o_30E_o_30E, + 4, + StaticType::Get(), + EOpUmulExtended, + false); +constexpr const TFunction function_imulExtended_00D00D00D00D( + BuiltInId::imulExtended_Int1_Int1_Int1_Int1, + BuiltInName::imulExtended, + TExtension::UNDEFINED, + BuiltInParameters::p00D00D_o_00D_o_00D, + 4, + StaticType::Get(), + EOpImulExtended, + false); +constexpr const TFunction function_imulExtended_10D10D10D10D( + BuiltInId::imulExtended_Int2_Int2_Int2_Int2, + BuiltInName::imulExtended, + TExtension::UNDEFINED, + BuiltInParameters::p10D10D_o_10D_o_10D, + 4, + StaticType::Get(), + EOpImulExtended, + false); +constexpr const TFunction function_imulExtended_20D20D20D20D( + BuiltInId::imulExtended_Int3_Int3_Int3_Int3, + BuiltInName::imulExtended, + TExtension::UNDEFINED, + BuiltInParameters::p20D20D_o_20D_o_20D, + 4, + StaticType::Get(), + EOpImulExtended, + false); +constexpr const TFunction function_imulExtended_30D30D30D30D( + BuiltInId::imulExtended_Int4_Int4_Int4_Int4, + BuiltInName::imulExtended, + TExtension::UNDEFINED, + BuiltInParameters::p30D30D_o_30D_o_30D, + 4, + StaticType::Get(), + EOpImulExtended, + false); +constexpr const TFunction function_texture2D_00I10B( + BuiltInId::texture2D_Sampler2D1_Float2, + BuiltInName::texture2D, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProj_00I20B( + BuiltInId::texture2DProj_Sampler2D1_Float3, + BuiltInName::texture2DProj, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B10B10B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProj_00I30B( + BuiltInId::texture2DProj_Sampler2D1_Float4, + BuiltInName::texture2DProj, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B10D00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureCube_00K20B( + BuiltInId::textureCube_SamplerCube1_Float3, + BuiltInName::textureCube, + TExtension::UNDEFINED, + BuiltInParameters::p00K20B20B20B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2D_00M10B( + BuiltInId::texture2D_SamplerExternalOES1_Float2, + BuiltInName::texture2D, + TExtension::UNDEFINED, + BuiltInParameters::p00M10B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProj_00M20B( + BuiltInId::texture2DProj_SamplerExternalOES1_Float3, + BuiltInName::texture2DProj, + TExtension::UNDEFINED, + BuiltInParameters::p00M20B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProj_00M30B( + BuiltInId::texture2DProj_SamplerExternalOES1_Float4, + BuiltInName::texture2DProj, + TExtension::UNDEFINED, + BuiltInParameters::p00M30B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DRect_00O10B( + BuiltInId::texture2DRect_Sampler2DRect1_Float2, + BuiltInName::texture2DRect, + TExtension::ARB_texture_rectangle, + BuiltInParameters::p00O10B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DRectProj_00O20B( + BuiltInId::texture2DRectProj_Sampler2DRect1_Float3, + BuiltInName::texture2DRectProj, + TExtension::ARB_texture_rectangle, + BuiltInParameters::p00O20B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DRectProj_00O30B( + BuiltInId::texture2DRectProj_Sampler2DRect1_Float4, + BuiltInName::texture2DRectProj, + TExtension::ARB_texture_rectangle, + BuiltInParameters::p00O30B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00O10B( + BuiltInId::texture_Sampler2DRect1_Float2, + BuiltInName::texture, + TExtension::ARB_texture_rectangle, + BuiltInParameters::p00O10B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00O20B( + BuiltInId::textureProj_Sampler2DRect1_Float3, + BuiltInName::textureProj, + TExtension::ARB_texture_rectangle, + BuiltInParameters::p00O20B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00O30B( + BuiltInId::textureProj_Sampler2DRect1_Float4, + BuiltInName::textureProj, + TExtension::ARB_texture_rectangle, + BuiltInParameters::p00O30B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DGradEXT_00I10B10B10B( + BuiltInId::texture2DGradEXT_Sampler2D1_Float2_Float2_Float2, + BuiltInName::texture2DGradEXT, + TExtension::EXT_shader_texture_lod, + BuiltInParameters::p00I10B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProjGradEXT_00I20B10B10B( + BuiltInId::texture2DProjGradEXT_Sampler2D1_Float3_Float2_Float2, + BuiltInName::texture2DProjGradEXT, + TExtension::EXT_shader_texture_lod, + BuiltInParameters::p00I20B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProjGradEXT_00I30B10B10B( + BuiltInId::texture2DProjGradEXT_Sampler2D1_Float4_Float2_Float2, + BuiltInName::texture2DProjGradEXT, + TExtension::EXT_shader_texture_lod, + BuiltInParameters::p00I30B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureCubeGradEXT_00K20B20B20B( + BuiltInId::textureCubeGradEXT_SamplerCube1_Float3_Float3_Float3, + BuiltInName::textureCubeGradEXT, + TExtension::EXT_shader_texture_lod, + BuiltInParameters::p00K20B20B20B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2D_00I10B00B( + BuiltInId::texture2D_Sampler2D1_Float2_Float1, + BuiltInName::texture2D, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProj_00I20B00B( + BuiltInId::texture2DProj_Sampler2D1_Float3_Float1, + BuiltInName::texture2DProj, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProj_00I30B00B( + BuiltInId::texture2DProj_Sampler2D1_Float4_Float1, + BuiltInName::texture2DProj, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureCube_00K20B00B( + BuiltInId::textureCube_SamplerCube1_Float3_Float1, + BuiltInName::textureCube, + TExtension::UNDEFINED, + BuiltInParameters::p00K20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_dFdxExt_00B( + BuiltInId::dFdxExt_Float1, + BuiltInName::dFdxExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpDFdx, + false); +constexpr const TFunction function_dFdxExt_10B( + BuiltInId::dFdxExt_Float2, + BuiltInName::dFdxExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpDFdx, + false); +constexpr const TFunction function_dFdxExt_20B( + BuiltInId::dFdxExt_Float3, + BuiltInName::dFdxExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpDFdx, + false); +constexpr const TFunction function_dFdxExt_30B( + BuiltInId::dFdxExt_Float4, + BuiltInName::dFdxExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpDFdx, + false); +constexpr const TFunction function_dFdyExt_00B( + BuiltInId::dFdyExt_Float1, + BuiltInName::dFdyExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpDFdy, + false); +constexpr const TFunction function_dFdyExt_10B( + BuiltInId::dFdyExt_Float2, + BuiltInName::dFdyExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpDFdy, + false); +constexpr const TFunction function_dFdyExt_20B( + BuiltInId::dFdyExt_Float3, + BuiltInName::dFdyExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpDFdy, + false); +constexpr const TFunction function_dFdyExt_30B( + BuiltInId::dFdyExt_Float4, + BuiltInName::dFdyExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpDFdy, + false); +constexpr const TFunction function_fwidthExt_00B( + BuiltInId::fwidthExt_Float1, + BuiltInName::fwidthExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpFwidth, + false); +constexpr const TFunction function_fwidthExt_10B( + BuiltInId::fwidthExt_Float2, + BuiltInName::fwidthExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpFwidth, + false); +constexpr const TFunction function_fwidthExt_20B( + BuiltInId::fwidthExt_Float3, + BuiltInName::fwidthExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpFwidth, + false); +constexpr const TFunction function_fwidthExt_30B( + BuiltInId::fwidthExt_Float4, + BuiltInName::fwidthExt, + TExtension::OES_standard_derivatives, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpFwidth, + false); +constexpr const TFunction function_texture2DLodEXT_00I10B00B( + BuiltInId::texture2DLodEXT_Sampler2D1_Float2_Float1, + BuiltInName::texture2DLodEXT, + TExtension::EXT_shader_texture_lod, + BuiltInParameters::p00I10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProjLodEXT_00I20B00B( + BuiltInId::texture2DProjLodEXT_Sampler2D1_Float3_Float1, + BuiltInName::texture2DProjLodEXT, + TExtension::EXT_shader_texture_lod, + BuiltInParameters::p00I20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProjLodEXT_00I30B00B( + BuiltInId::texture2DProjLodEXT_Sampler2D1_Float4_Float1, + BuiltInName::texture2DProjLodEXT, + TExtension::EXT_shader_texture_lod, + BuiltInParameters::p00I30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureCubeLodEXT_00K20B00B( + BuiltInId::textureCubeLodEXT_SamplerCube1_Float3_Float1, + BuiltInName::textureCubeLodEXT, + TExtension::EXT_shader_texture_lod, + BuiltInParameters::p00K20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture3D_00J20B( + BuiltInId::texture3D_Sampler3D1_Float3, + BuiltInName::texture3D, + TExtension::OES_texture_3D, + BuiltInParameters::p00J20B20D00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture3DProj_00J30B( + BuiltInId::texture3DProj_Sampler3D1_Float4, + BuiltInName::texture3DProj, + TExtension::OES_texture_3D, + BuiltInParameters::p00J30B20B20B20D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture3D_00J20B00B( + BuiltInId::texture3D_Sampler3D1_Float3_Float1, + BuiltInName::texture3D, + TExtension::OES_texture_3D, + BuiltInParameters::p00J20B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture3DProj_00J30B00B( + BuiltInId::texture3DProj_Sampler3D1_Float4_Float1, + BuiltInName::texture3DProj, + TExtension::OES_texture_3D, + BuiltInParameters::p00J30B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture3DLod_00J20B00B( + BuiltInId::texture3DLod_Sampler3D1_Float3_Float1, + BuiltInName::texture3DLod, + TExtension::OES_texture_3D, + BuiltInParameters::p00J20B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture3DProjLod_00J30B00B( + BuiltInId::texture3DProjLod_Sampler3D1_Float4_Float1, + BuiltInName::texture3DProjLod, + TExtension::OES_texture_3D, + BuiltInParameters::p00J30B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DLod_00I10B00B( + BuiltInId::texture2DLod_Sampler2D1_Float2_Float1, + BuiltInName::texture2DLod, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProjLod_00I20B00B( + BuiltInId::texture2DProjLod_Sampler2D1_Float3_Float1, + BuiltInName::texture2DProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture2DProjLod_00I30B00B( + BuiltInId::texture2DProjLod_Sampler2D1_Float4_Float1, + BuiltInName::texture2DProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureCubeLod_00K20B00B( + BuiltInId::textureCubeLod_SamplerCube1_Float3_Float1, + BuiltInName::textureCubeLod, + TExtension::UNDEFINED, + BuiltInParameters::p00K20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00I10B( + BuiltInId::texture_Sampler2D1_Float2, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00R10B( + BuiltInId::texture_ISampler2D1_Float2, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B00B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00X10B( + BuiltInId::texture_USampler2D1_Float2, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B10B10B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00J20B( + BuiltInId::texture_Sampler3D1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00J20B20D00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00S20B( + BuiltInId::texture_ISampler3D1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00S20B20D00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00Y20B( + BuiltInId::texture_USampler3D1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20B20B20B20D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00K20B( + BuiltInId::texture_SamplerCube1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00K20B20B20B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00T20B( + BuiltInId::texture_ISamplerCube1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00T20B00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00Z20B( + BuiltInId::texture_USamplerCube1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00Z20B00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00L20B( + BuiltInId::texture_Sampler2DArray1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B10D00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00U20B( + BuiltInId::texture_ISampler2DArray1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B10D00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00a20B( + BuiltInId::texture_USampler2DArray1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B10B10B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00d20B( + BuiltInId::texture_Sampler2DShadow1_Float3, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00d20B00B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00e30B( + BuiltInId::texture_SamplerCubeShadow1_Float4, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00e30B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00f30B( + BuiltInId::texture_Sampler2DArrayShadow1_Float4, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00f30B10B10B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00I20B( + BuiltInId::textureProj_Sampler2D1_Float3, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B10B10B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00R20B( + BuiltInId::textureProj_ISampler2D1_Float3, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00R20B00B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00X20B( + BuiltInId::textureProj_USampler2D1_Float3, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00X20B00B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00I30B( + BuiltInId::textureProj_Sampler2D1_Float4, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B10D00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00R30B( + BuiltInId::textureProj_ISampler2D1_Float4, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00R30B10D00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00X30B( + BuiltInId::textureProj_USampler2D1_Float4, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00X30B10D00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00J30B( + BuiltInId::textureProj_Sampler3D1_Float4, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00J30B20B20B20D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00S30B( + BuiltInId::textureProj_ISampler3D1_Float4, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00S30B20D00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00Y30B( + BuiltInId::textureProj_USampler3D1_Float4, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00Y30B20B20B20D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00d30B( + BuiltInId::textureProj_Sampler2DShadow1_Float4, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00d30B00B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00I10B00B( + BuiltInId::textureLod_Sampler2D1_Float2_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00R10B00B( + BuiltInId::textureLod_ISampler2D1_Float2_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00X10B00B( + BuiltInId::textureLod_USampler2D1_Float2_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00J20B00B( + BuiltInId::textureLod_Sampler3D1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00J20B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00S20B00B( + BuiltInId::textureLod_ISampler3D1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00S20B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00Y20B00B( + BuiltInId::textureLod_USampler3D1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00K20B00B( + BuiltInId::textureLod_SamplerCube1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00K20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00T20B00B( + BuiltInId::textureLod_ISamplerCube1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00T20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00Z20B00B( + BuiltInId::textureLod_USamplerCube1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00Z20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00L20B00B( + BuiltInId::textureLod_Sampler2DArray1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00U20B00B( + BuiltInId::textureLod_ISampler2DArray1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00a20B00B( + BuiltInId::textureLod_USampler2DArray1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLod_00d20B00B( + BuiltInId::textureLod_Sampler2DShadow1_Float3_Float1, + BuiltInName::textureLod, + TExtension::UNDEFINED, + BuiltInParameters::p00d20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00I00D( + BuiltInId::textureSize_Sampler2D1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00I00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00R00D( + BuiltInId::textureSize_ISampler2D1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00R00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00X00D( + BuiltInId::textureSize_USampler2D1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00X00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00J00D( + BuiltInId::textureSize_Sampler3D1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00J00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00S00D( + BuiltInId::textureSize_ISampler3D1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00S00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00Y00D( + BuiltInId::textureSize_USampler3D1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00Y00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00K00D( + BuiltInId::textureSize_SamplerCube1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00K00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00T00D( + BuiltInId::textureSize_ISamplerCube1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00T00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00Z00D( + BuiltInId::textureSize_USamplerCube1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00Z00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00L00D( + BuiltInId::textureSize_Sampler2DArray1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00L00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00U00D( + BuiltInId::textureSize_ISampler2DArray1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00U00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00a00D( + BuiltInId::textureSize_USampler2DArray1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00a00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00d00D( + BuiltInId::textureSize_Sampler2DShadow1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00d00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00e00D( + BuiltInId::textureSize_SamplerCubeShadow1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00e00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00f00D( + BuiltInId::textureSize_Sampler2DArrayShadow1_Int1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00f00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00I20B00B( + BuiltInId::textureProjLod_Sampler2D1_Float3_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00R20B00B( + BuiltInId::textureProjLod_ISampler2D1_Float3_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00R20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00X20B00B( + BuiltInId::textureProjLod_USampler2D1_Float3_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00X20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00I30B00B( + BuiltInId::textureProjLod_Sampler2D1_Float4_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00R30B00B( + BuiltInId::textureProjLod_ISampler2D1_Float4_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00R30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00X30B00B( + BuiltInId::textureProjLod_USampler2D1_Float4_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00X30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00J30B00B( + BuiltInId::textureProjLod_Sampler3D1_Float4_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00J30B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00S30B00B( + BuiltInId::textureProjLod_ISampler3D1_Float4_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00S30B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00Y30B00B( + BuiltInId::textureProjLod_USampler3D1_Float4_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00Y30B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLod_00d30B00B( + BuiltInId::textureProjLod_Sampler2DShadow1_Float4_Float1, + BuiltInName::textureProjLod, + TExtension::UNDEFINED, + BuiltInParameters::p00d30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00I10D00D( + BuiltInId::texelFetch_Sampler2D1_Int2_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00I10D00D10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00R10D00D( + BuiltInId::texelFetch_ISampler2D1_Int2_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00R10D00D10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00X10D00D( + BuiltInId::texelFetch_USampler2D1_Int2_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00X10D00D10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00J20D00D( + BuiltInId::texelFetch_Sampler3D1_Int3_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00J20D00D20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00S20D00D( + BuiltInId::texelFetch_ISampler3D1_Int3_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00S20D00D20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00Y20D00D( + BuiltInId::texelFetch_USampler3D1_Int3_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20D00D20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00L20D00D( + BuiltInId::texelFetch_Sampler2DArray1_Int3_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00L20D00D10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00U20D00D( + BuiltInId::texelFetch_ISampler2DArray1_Int3_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00U20D00D10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00a20D00D( + BuiltInId::texelFetch_USampler2DArray1_Int3_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00a20D00D10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00I10B10B10B( + BuiltInId::textureGrad_Sampler2D1_Float2_Float2_Float2, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00R10B10B10B( + BuiltInId::textureGrad_ISampler2D1_Float2_Float2_Float2, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00X10B10B10B( + BuiltInId::textureGrad_USampler2D1_Float2_Float2_Float2, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00J20B20B20B( + BuiltInId::textureGrad_Sampler3D1_Float3_Float3_Float3, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00J20B20B20B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00S20B20B20B( + BuiltInId::textureGrad_ISampler3D1_Float3_Float3_Float3, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00S20B20B20B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00Y20B20B20B( + BuiltInId::textureGrad_USampler3D1_Float3_Float3_Float3, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20B20B20B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00K20B20B20B( + BuiltInId::textureGrad_SamplerCube1_Float3_Float3_Float3, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00K20B20B20B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00T20B20B20B( + BuiltInId::textureGrad_ISamplerCube1_Float3_Float3_Float3, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00T20B20B20B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00Z20B20B20B( + BuiltInId::textureGrad_USamplerCube1_Float3_Float3_Float3, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00Z20B20B20B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00d20B10B10B( + BuiltInId::textureGrad_Sampler2DShadow1_Float3_Float2_Float2, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00d20B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00e30B20B20B( + BuiltInId::textureGrad_SamplerCubeShadow1_Float4_Float3_Float3, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00e30B20B20B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00L20B10B10B( + BuiltInId::textureGrad_Sampler2DArray1_Float3_Float2_Float2, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00U20B10B10B( + BuiltInId::textureGrad_ISampler2DArray1_Float3_Float2_Float2, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00a20B10B10B( + BuiltInId::textureGrad_USampler2DArray1_Float3_Float2_Float2, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGrad_00f30B10B10B( + BuiltInId::textureGrad_Sampler2DArrayShadow1_Float4_Float2_Float2, + BuiltInName::textureGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00f30B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00I20B10B10B( + BuiltInId::textureProjGrad_Sampler2D1_Float3_Float2_Float2, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00R20B10B10B( + BuiltInId::textureProjGrad_ISampler2D1_Float3_Float2_Float2, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00R20B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00X20B10B10B( + BuiltInId::textureProjGrad_USampler2D1_Float3_Float2_Float2, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00X20B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00I30B10B10B( + BuiltInId::textureProjGrad_Sampler2D1_Float4_Float2_Float2, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00R30B10B10B( + BuiltInId::textureProjGrad_ISampler2D1_Float4_Float2_Float2, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00R30B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00X30B10B10B( + BuiltInId::textureProjGrad_USampler2D1_Float4_Float2_Float2, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00X30B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00J30B20B20B( + BuiltInId::textureProjGrad_Sampler3D1_Float4_Float3_Float3, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00J30B20B20B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00S30B20B20B( + BuiltInId::textureProjGrad_ISampler3D1_Float4_Float3_Float3, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00S30B20B20B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00Y30B20B20B( + BuiltInId::textureProjGrad_USampler3D1_Float4_Float3_Float3, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00Y30B20B20B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGrad_00d30B10B10B( + BuiltInId::textureProjGrad_Sampler2DShadow1_Float4_Float2_Float2, + BuiltInName::textureProjGrad, + TExtension::UNDEFINED, + BuiltInParameters::p00d30B10B10B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00P( + BuiltInId::textureSize_Sampler2DMS1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00P10D00D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00V( + BuiltInId::textureSize_ISampler2DMS1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00V10D00D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00b( + BuiltInId::textureSize_USampler2DMS1, + BuiltInName::textureSize, + TExtension::UNDEFINED, + BuiltInParameters::p00b10D00D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSizeExt_00P( + BuiltInId::textureSizeExt_Sampler2DMS1, + BuiltInName::textureSizeExt, + TExtension::ANGLE_texture_multisample, + BuiltInParameters::p00P10D00D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSizeExt_00V( + BuiltInId::textureSizeExt_ISampler2DMS1, + BuiltInName::textureSizeExt, + TExtension::ANGLE_texture_multisample, + BuiltInParameters::p00V10D00D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSizeExt_00b( + BuiltInId::textureSizeExt_USampler2DMS1, + BuiltInName::textureSizeExt, + TExtension::ANGLE_texture_multisample, + BuiltInParameters::p00b10D00D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSizeExt_00Q( + BuiltInId::textureSizeExt_Sampler2DMSArray1, + BuiltInName::textureSizeExt, + TExtension::OES_texture_storage_multisample_2d_array, + BuiltInParameters::p00Q20D00D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSizeExt_00W( + BuiltInId::textureSizeExt_ISampler2DMSArray1, + BuiltInName::textureSizeExt, + TExtension::OES_texture_storage_multisample_2d_array, + BuiltInParameters::p00W20D00D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSizeExt_00c( + BuiltInId::textureSizeExt_USampler2DMSArray1, + BuiltInName::textureSizeExt, + TExtension::OES_texture_storage_multisample_2d_array, + BuiltInParameters::p00c20D00D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00P10D00D( + BuiltInId::texelFetch_Sampler2DMS1_Int2_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00P10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00V10D00D( + BuiltInId::texelFetch_ISampler2DMS1_Int2_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00V10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00b10D00D( + BuiltInId::texelFetch_USampler2DMS1_Int2_Int1, + BuiltInName::texelFetch, + TExtension::UNDEFINED, + BuiltInParameters::p00b10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchExt_00P10D00D( + BuiltInId::texelFetchExt_Sampler2DMS1_Int2_Int1, + BuiltInName::texelFetchExt, + TExtension::ANGLE_texture_multisample, + BuiltInParameters::p00P10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchExt_00V10D00D( + BuiltInId::texelFetchExt_ISampler2DMS1_Int2_Int1, + BuiltInName::texelFetchExt, + TExtension::ANGLE_texture_multisample, + BuiltInParameters::p00V10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchExt_00b10D00D( + BuiltInId::texelFetchExt_USampler2DMS1_Int2_Int1, + BuiltInName::texelFetchExt, + TExtension::ANGLE_texture_multisample, + BuiltInParameters::p00b10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchExt_00Q20D00D( + BuiltInId::texelFetchExt_Sampler2DMSArray1_Int3_Int1, + BuiltInName::texelFetchExt, + TExtension::OES_texture_storage_multisample_2d_array, + BuiltInParameters::p00Q20D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchExt_00W20D00D( + BuiltInId::texelFetchExt_ISampler2DMSArray1_Int3_Int1, + BuiltInName::texelFetchExt, + TExtension::OES_texture_storage_multisample_2d_array, + BuiltInParameters::p00W20D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchExt_00c20D00D( + BuiltInId::texelFetchExt_USampler2DMSArray1_Int3_Int1, + BuiltInName::texelFetchExt, + TExtension::OES_texture_storage_multisample_2d_array, + BuiltInParameters::p00c20D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00I10B00B( + BuiltInId::texture_Sampler2D1_Float2_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00R10B00B( + BuiltInId::texture_ISampler2D1_Float2_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00X10B00B( + BuiltInId::texture_USampler2D1_Float2_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00J20B00B( + BuiltInId::texture_Sampler3D1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00J20B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00S20B00B( + BuiltInId::texture_ISampler3D1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00S20B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00Y20B00B( + BuiltInId::texture_USampler3D1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00K20B00B( + BuiltInId::texture_SamplerCube1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00K20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00T20B00B( + BuiltInId::texture_ISamplerCube1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00T20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00Z20B00B( + BuiltInId::texture_USamplerCube1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00Z20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00L20B00B( + BuiltInId::texture_Sampler2DArray1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00U20B00B( + BuiltInId::texture_ISampler2DArray1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00a20B00B( + BuiltInId::texture_USampler2DArray1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00I20B00B( + BuiltInId::textureProj_Sampler2D1_Float3_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00R20B00B( + BuiltInId::textureProj_ISampler2D1_Float3_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00R20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00X20B00B( + BuiltInId::textureProj_USampler2D1_Float3_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00X20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00I30B00B( + BuiltInId::textureProj_Sampler2D1_Float4_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00R30B00B( + BuiltInId::textureProj_ISampler2D1_Float4_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00R30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00X30B00B( + BuiltInId::textureProj_USampler2D1_Float4_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00X30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00J30B00B( + BuiltInId::textureProj_Sampler3D1_Float4_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00J30B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00S30B00B( + BuiltInId::textureProj_ISampler3D1_Float4_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00S30B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00Y30B00B( + BuiltInId::textureProj_USampler3D1_Float4_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00Y30B00B20D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00d20B00B( + BuiltInId::texture_Sampler2DShadow1_Float3_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00d20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00e30B00B( + BuiltInId::texture_SamplerCubeShadow1_Float4_Float1, + BuiltInName::texture, + TExtension::UNDEFINED, + BuiltInParameters::p00e30B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00d30B00B( + BuiltInId::textureProj_Sampler2DShadow1_Float4_Float1, + BuiltInName::textureProj, + TExtension::UNDEFINED, + BuiltInParameters::p00d30B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00M10B00B( + BuiltInId::texture_SamplerExternalOES1_Float2_Float1, + BuiltInName::texture, + TExtension::OES_EGL_image_external_essl3, + BuiltInParameters::p00M10B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00M20B00B( + BuiltInId::textureProj_SamplerExternalOES1_Float3_Float1, + BuiltInName::textureProj, + TExtension::OES_EGL_image_external_essl3, + BuiltInParameters::p00M20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00M30B00B( + BuiltInId::textureProj_SamplerExternalOES1_Float4_Float1, + BuiltInName::textureProj, + TExtension::OES_EGL_image_external_essl3, + BuiltInParameters::p00M30B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00N10B00B( + BuiltInId::texture_SamplerExternal2DY2YEXT1_Float2_Float1, + BuiltInName::texture, + TExtension::EXT_YUV_target, + BuiltInParameters::p00N10B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00N20B00B( + BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float3_Float1, + BuiltInName::textureProj, + TExtension::EXT_YUV_target, + BuiltInParameters::p00N20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00N30B00B( + BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float4_Float1, + BuiltInName::textureProj, + TExtension::EXT_YUV_target, + BuiltInParameters::p00N30B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00I10B10D( + BuiltInId::textureOffset_Sampler2D1_Float2_Int2, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00R10B10D( + BuiltInId::textureOffset_ISampler2D1_Float2_Int2, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00X10B10D( + BuiltInId::textureOffset_USampler2D1_Float2_Int2, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00J20B20D( + BuiltInId::textureOffset_Sampler3D1_Float3_Int3, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00J20B20D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00S20B20D( + BuiltInId::textureOffset_ISampler3D1_Float3_Int3, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00S20B20D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00Y20B20D( + BuiltInId::textureOffset_USampler3D1_Float3_Int3, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20B20D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00d20B10D( + BuiltInId::textureOffset_Sampler2DShadow1_Float3_Int2, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00d20B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00L20B10D( + BuiltInId::textureOffset_Sampler2DArray1_Float3_Int2, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00U20B10D( + BuiltInId::textureOffset_ISampler2DArray1_Float3_Int2, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00a20B10D( + BuiltInId::textureOffset_USampler2DArray1_Float3_Int2, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00I20B10D( + BuiltInId::textureProjOffset_Sampler2D1_Float3_Int2, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00R20B10D( + BuiltInId::textureProjOffset_ISampler2D1_Float3_Int2, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R20B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00X20B10D( + BuiltInId::textureProjOffset_USampler2D1_Float3_Int2, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X20B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00I30B10D( + BuiltInId::textureProjOffset_Sampler2D1_Float4_Int2, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00R30B10D( + BuiltInId::textureProjOffset_ISampler2D1_Float4_Int2, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R30B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00X30B10D( + BuiltInId::textureProjOffset_USampler2D1_Float4_Int2, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X30B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00J30B20D( + BuiltInId::textureProjOffset_Sampler3D1_Float4_Int3, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00J30B20D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00S30B20D( + BuiltInId::textureProjOffset_ISampler3D1_Float4_Int3, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00S30B20D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00Y30B20D( + BuiltInId::textureProjOffset_USampler3D1_Float4_Int3, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00Y30B20D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00d30B10D( + BuiltInId::textureProjOffset_Sampler2DShadow1_Float4_Int2, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00d30B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00I10B00B10D( + BuiltInId::textureLodOffset_Sampler2D1_Float2_Float1_Int2, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00R10B00B10D( + BuiltInId::textureLodOffset_ISampler2D1_Float2_Float1_Int2, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00X10B00B10D( + BuiltInId::textureLodOffset_USampler2D1_Float2_Float1_Int2, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00J20B00B20D( + BuiltInId::textureLodOffset_Sampler3D1_Float3_Float1_Int3, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00J20B00B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00S20B00B20D( + BuiltInId::textureLodOffset_ISampler3D1_Float3_Float1_Int3, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00S20B00B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00Y20B00B20D( + BuiltInId::textureLodOffset_USampler3D1_Float3_Float1_Int3, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20B00B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00d20B00B10D( + BuiltInId::textureLodOffset_Sampler2DShadow1_Float3_Float1_Int2, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00d20B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00L20B00B10D( + BuiltInId::textureLodOffset_Sampler2DArray1_Float3_Float1_Int2, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00U20B00B10D( + BuiltInId::textureLodOffset_ISampler2DArray1_Float3_Float1_Int2, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureLodOffset_00a20B00B10D( + BuiltInId::textureLodOffset_USampler2DArray1_Float3_Float1_Int2, + BuiltInName::textureLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00I20B00B10D( + BuiltInId::textureProjLodOffset_Sampler2D1_Float3_Float1_Int2, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00R20B00B10D( + BuiltInId::textureProjLodOffset_ISampler2D1_Float3_Float1_Int2, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R20B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00X20B00B10D( + BuiltInId::textureProjLodOffset_USampler2D1_Float3_Float1_Int2, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X20B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00I30B00B10D( + BuiltInId::textureProjLodOffset_Sampler2D1_Float4_Float1_Int2, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00R30B00B10D( + BuiltInId::textureProjLodOffset_ISampler2D1_Float4_Float1_Int2, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R30B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00X30B00B10D( + BuiltInId::textureProjLodOffset_USampler2D1_Float4_Float1_Int2, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X30B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00J30B00B20D( + BuiltInId::textureProjLodOffset_Sampler3D1_Float4_Float1_Int3, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00J30B00B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00S30B00B20D( + BuiltInId::textureProjLodOffset_ISampler3D1_Float4_Float1_Int3, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00S30B00B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00Y30B00B20D( + BuiltInId::textureProjLodOffset_USampler3D1_Float4_Float1_Int3, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00Y30B00B20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjLodOffset_00d30B00B10D( + BuiltInId::textureProjLodOffset_Sampler2DShadow1_Float4_Float1_Int2, + BuiltInName::textureProjLodOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00d30B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchOffset_00I10D00D10D( + BuiltInId::texelFetchOffset_Sampler2D1_Int2_Int1_Int2, + BuiltInName::texelFetchOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I10D00D10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchOffset_00R10D00D10D( + BuiltInId::texelFetchOffset_ISampler2D1_Int2_Int1_Int2, + BuiltInName::texelFetchOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R10D00D10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchOffset_00X10D00D10D( + BuiltInId::texelFetchOffset_USampler2D1_Int2_Int1_Int2, + BuiltInName::texelFetchOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X10D00D10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchOffset_00J20D00D20D( + BuiltInId::texelFetchOffset_Sampler3D1_Int3_Int1_Int3, + BuiltInName::texelFetchOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00J20D00D20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchOffset_00S20D00D20D( + BuiltInId::texelFetchOffset_ISampler3D1_Int3_Int1_Int3, + BuiltInName::texelFetchOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00S20D00D20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchOffset_00Y20D00D20D( + BuiltInId::texelFetchOffset_USampler3D1_Int3_Int1_Int3, + BuiltInName::texelFetchOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20D00D20D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchOffset_00L20D00D10D( + BuiltInId::texelFetchOffset_Sampler2DArray1_Int3_Int1_Int2, + BuiltInName::texelFetchOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00L20D00D10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchOffset_00U20D00D10D( + BuiltInId::texelFetchOffset_ISampler2DArray1_Int3_Int1_Int2, + BuiltInName::texelFetchOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00U20D00D10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetchOffset_00a20D00D10D( + BuiltInId::texelFetchOffset_USampler2DArray1_Int3_Int1_Int2, + BuiltInName::texelFetchOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00a20D00D10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00I10B10B10B10D( + BuiltInId::textureGradOffset_Sampler2D1_Float2_Float2_Float2_Int2, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00R10B10B10B10D( + BuiltInId::textureGradOffset_ISampler2D1_Float2_Float2_Float2_Int2, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00X10B10B10B10D( + BuiltInId::textureGradOffset_USampler2D1_Float2_Float2_Float2_Int2, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00J20B20B20B20D( + BuiltInId::textureGradOffset_Sampler3D1_Float3_Float3_Float3_Int3, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00J20B20B20B20D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00S20B20B20B20D( + BuiltInId::textureGradOffset_ISampler3D1_Float3_Float3_Float3_Int3, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00S20B20B20B20D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00Y20B20B20B20D( + BuiltInId::textureGradOffset_USampler3D1_Float3_Float3_Float3_Int3, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20B20B20B20D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00d20B10B10B10D( + BuiltInId::textureGradOffset_Sampler2DShadow1_Float3_Float2_Float2_Int2, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00d20B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00L20B10B10B10D( + BuiltInId::textureGradOffset_Sampler2DArray1_Float3_Float2_Float2_Int2, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00U20B10B10B10D( + BuiltInId::textureGradOffset_ISampler2DArray1_Float3_Float2_Float2_Int2, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00a20B10B10B10D( + BuiltInId::textureGradOffset_USampler2DArray1_Float3_Float2_Float2_Int2, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGradOffset_00f30B10B10B10D( + BuiltInId::textureGradOffset_Sampler2DArrayShadow1_Float4_Float2_Float2_Int2, + BuiltInName::textureGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00f30B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00I20B10B10B10D( + BuiltInId::textureProjGradOffset_Sampler2D1_Float3_Float2_Float2_Int2, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00R20B10B10B10D( + BuiltInId::textureProjGradOffset_ISampler2D1_Float3_Float2_Float2_Int2, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R20B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00X20B10B10B10D( + BuiltInId::textureProjGradOffset_USampler2D1_Float3_Float2_Float2_Int2, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X20B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00I30B10B10B10D( + BuiltInId::textureProjGradOffset_Sampler2D1_Float4_Float2_Float2_Int2, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00R30B10B10B10D( + BuiltInId::textureProjGradOffset_ISampler2D1_Float4_Float2_Float2_Int2, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R30B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00X30B10B10B10D( + BuiltInId::textureProjGradOffset_USampler2D1_Float4_Float2_Float2_Int2, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X30B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00J30B20B20B20D( + BuiltInId::textureProjGradOffset_Sampler3D1_Float4_Float3_Float3_Int3, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00J30B20B20B20D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00S30B20B20B20D( + BuiltInId::textureProjGradOffset_ISampler3D1_Float4_Float3_Float3_Int3, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00S30B20B20B20D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00Y30B20B20B20D( + BuiltInId::textureProjGradOffset_USampler3D1_Float4_Float3_Float3_Int3, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00Y30B20B20B20D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjGradOffset_00d30B10B10B10D( + BuiltInId::textureProjGradOffset_Sampler2DShadow1_Float4_Float2_Float2_Int2, + BuiltInName::textureProjGradOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00d30B10B10B10D, + 5, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00I10B10D00B( + BuiltInId::textureOffset_Sampler2D1_Float2_Int2_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00R10B10D00B( + BuiltInId::textureOffset_ISampler2D1_Float2_Int2_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00X10B10D00B( + BuiltInId::textureOffset_USampler2D1_Float2_Int2_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00J20B20D00B( + BuiltInId::textureOffset_Sampler3D1_Float3_Int3_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00J20B20D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00S20B20D00B( + BuiltInId::textureOffset_ISampler3D1_Float3_Int3_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00S20B20D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00Y20B20D00B( + BuiltInId::textureOffset_USampler3D1_Float3_Int3_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00Y20B20D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00d20B10D00B( + BuiltInId::textureOffset_Sampler2DShadow1_Float3_Int2_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00d20B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00L20B10D00B( + BuiltInId::textureOffset_Sampler2DArray1_Float3_Int2_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00U20B10D00B( + BuiltInId::textureOffset_ISampler2DArray1_Float3_Int2_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureOffset_00a20B10D00B( + BuiltInId::textureOffset_USampler2DArray1_Float3_Int2_Float1, + BuiltInName::textureOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00I20B10D00B( + BuiltInId::textureProjOffset_Sampler2D1_Float3_Int2_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I20B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00R20B10D00B( + BuiltInId::textureProjOffset_ISampler2D1_Float3_Int2_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R20B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00X20B10D00B( + BuiltInId::textureProjOffset_USampler2D1_Float3_Int2_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X20B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00I30B10D00B( + BuiltInId::textureProjOffset_Sampler2D1_Float4_Int2_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I30B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00R30B10D00B( + BuiltInId::textureProjOffset_ISampler2D1_Float4_Int2_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R30B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00X30B10D00B( + BuiltInId::textureProjOffset_USampler2D1_Float4_Int2_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X30B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00J30B20D00B( + BuiltInId::textureProjOffset_Sampler3D1_Float4_Int3_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00J30B20D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00S30B20D00B( + BuiltInId::textureProjOffset_ISampler3D1_Float4_Int3_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00S30B20D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00Y30B20D00B( + BuiltInId::textureProjOffset_USampler3D1_Float4_Int3_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00Y30B20D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProjOffset_00d30B10D00B( + BuiltInId::textureProjOffset_Sampler2DShadow1_Float4_Int2_Float1, + BuiltInName::textureProjOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00d30B10D00B, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00M10B( + BuiltInId::texture_SamplerExternalOES1_Float2, + BuiltInName::texture, + TExtension::OES_EGL_image_external_essl3, + BuiltInParameters::p00M10B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00M20B( + BuiltInId::textureProj_SamplerExternalOES1_Float3, + BuiltInName::textureProj, + TExtension::OES_EGL_image_external_essl3, + BuiltInParameters::p00M20B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00M30B( + BuiltInId::textureProj_SamplerExternalOES1_Float4, + BuiltInName::textureProj, + TExtension::OES_EGL_image_external_essl3, + BuiltInParameters::p00M30B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00M00D( + BuiltInId::textureSize_SamplerExternalOES1_Int1, + BuiltInName::textureSize, + TExtension::OES_EGL_image_external_essl3, + BuiltInParameters::p00M00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00M10D00D( + BuiltInId::texelFetch_SamplerExternalOES1_Int2_Int1, + BuiltInName::texelFetch, + TExtension::OES_EGL_image_external_essl3, + BuiltInParameters::p00M10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texture_00N10B( + BuiltInId::texture_SamplerExternal2DY2YEXT1_Float2, + BuiltInName::texture, + TExtension::EXT_YUV_target, + BuiltInParameters::p00N10B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00N20B( + BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float3, + BuiltInName::textureProj, + TExtension::EXT_YUV_target, + BuiltInParameters::p00N20B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureProj_00N30B( + BuiltInId::textureProj_SamplerExternal2DY2YEXT1_Float4, + BuiltInName::textureProj, + TExtension::EXT_YUV_target, + BuiltInParameters::p00N30B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_rgb_2_yuv_20B00H( + BuiltInId::rgb_2_yuv_Float3_YuvCscStandardEXT1, + BuiltInName::rgb_2_yuv, + TExtension::EXT_YUV_target, + BuiltInParameters::p20B00H, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_yuv_2_rgb_20B00H( + BuiltInId::yuv_2_rgb_Float3_YuvCscStandardEXT1, + BuiltInName::yuv_2_rgb, + TExtension::EXT_YUV_target, + BuiltInParameters::p20B00H, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureSize_00N00D( + BuiltInId::textureSize_SamplerExternal2DY2YEXT1_Int1, + BuiltInName::textureSize, + TExtension::EXT_YUV_target, + BuiltInParameters::p00N00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_texelFetch_00N10D00D( + BuiltInId::texelFetch_SamplerExternal2DY2YEXT1_Int2_Int1, + BuiltInName::texelFetch, + TExtension::EXT_YUV_target, + BuiltInParameters::p00N10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00I10B( + BuiltInId::textureGather_Sampler2D1_Float2, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00R10B( + BuiltInId::textureGather_ISampler2D1_Float2, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B00B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00X10B( + BuiltInId::textureGather_USampler2D1_Float2, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B10B10B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00I10B00D( + BuiltInId::textureGather_Sampler2D1_Float2_Int1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00R10B00D( + BuiltInId::textureGather_ISampler2D1_Float2_Int1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00X10B00D( + BuiltInId::textureGather_USampler2D1_Float2_Int1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00L20B( + BuiltInId::textureGather_Sampler2DArray1_Float3, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B10D00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00U20B( + BuiltInId::textureGather_ISampler2DArray1_Float3, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B10D00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00a20B( + BuiltInId::textureGather_USampler2DArray1_Float3, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B10B10B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00L20B00D( + BuiltInId::textureGather_Sampler2DArray1_Float3_Int1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00U20B00D( + BuiltInId::textureGather_ISampler2DArray1_Float3_Int1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00a20B00D( + BuiltInId::textureGather_USampler2DArray1_Float3_Int1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00K20B( + BuiltInId::textureGather_SamplerCube1_Float3, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00K20B20B20B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00T20B( + BuiltInId::textureGather_ISamplerCube1_Float3, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00T20B00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00Z20B( + BuiltInId::textureGather_USamplerCube1_Float3, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00Z20B00D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00K20B00D( + BuiltInId::textureGather_SamplerCube1_Float3_Int1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00K20B00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00T20B00D( + BuiltInId::textureGather_ISamplerCube1_Float3_Int1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00T20B00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00Z20B00D( + BuiltInId::textureGather_USamplerCube1_Float3_Int1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00Z20B00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00d10B( + BuiltInId::textureGather_Sampler2DShadow1_Float2, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00d10B00B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00d10B00B( + BuiltInId::textureGather_Sampler2DShadow1_Float2_Float1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00d10B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00f20B( + BuiltInId::textureGather_Sampler2DArrayShadow1_Float3, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00f20B00B10D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00f20B00B( + BuiltInId::textureGather_Sampler2DArrayShadow1_Float3_Float1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00f20B00B10D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00e20B( + BuiltInId::textureGather_SamplerCubeShadow1_Float3, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00e20B00B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGather_00e20B00B( + BuiltInId::textureGather_SamplerCubeShadow1_Float3_Float1, + BuiltInName::textureGather, + TExtension::UNDEFINED, + BuiltInParameters::p00e20B00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00I10B10D( + BuiltInId::textureGatherOffset_Sampler2D1_Float2_Int2, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00R10B10D( + BuiltInId::textureGatherOffset_ISampler2D1_Float2_Int2, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00X10B10D( + BuiltInId::textureGatherOffset_USampler2D1_Float2_Int2, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B10D00B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00I10B10D00D( + BuiltInId::textureGatherOffset_Sampler2D1_Float2_Int2_Int1, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00I10B10D00D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00R10B10D00D( + BuiltInId::textureGatherOffset_ISampler2D1_Float2_Int2_Int1, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00R10B10D00D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00X10B10D00D( + BuiltInId::textureGatherOffset_USampler2D1_Float2_Int2_Int1, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00X10B10D00D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00L20B10D( + BuiltInId::textureGatherOffset_Sampler2DArray1_Float3_Int2, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00U20B10D( + BuiltInId::textureGatherOffset_ISampler2DArray1_Float3_Int2, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00a20B10D( + BuiltInId::textureGatherOffset_USampler2DArray1_Float3_Int2, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B10D00D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00L20B10D00D( + BuiltInId::textureGatherOffset_Sampler2DArray1_Float3_Int2_Int1, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00L20B10D00D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00U20B10D00D( + BuiltInId::textureGatherOffset_ISampler2DArray1_Float3_Int2_Int1, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00U20B10D00D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00a20B10D00D( + BuiltInId::textureGatherOffset_USampler2DArray1_Float3_Int2_Int1, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00a20B10D00D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00d10B00B10D( + BuiltInId::textureGatherOffset_Sampler2DShadow1_Float2_Float1_Int2, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00d10B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_textureGatherOffset_00f20B00B10D( + BuiltInId::textureGatherOffset_Sampler2DArrayShadow1_Float3_Float1_Int2, + BuiltInName::textureGatherOffset, + TExtension::UNDEFINED, + BuiltInParameters::p00f20B00B10D, + 4, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_dFdx_00B( + BuiltInId::dFdx_Float1, + BuiltInName::dFdx, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpDFdx, + false); +constexpr const TFunction function_dFdx_10B( + BuiltInId::dFdx_Float2, + BuiltInName::dFdx, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpDFdx, + false); +constexpr const TFunction function_dFdx_20B( + BuiltInId::dFdx_Float3, + BuiltInName::dFdx, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpDFdx, + false); +constexpr const TFunction function_dFdx_30B( + BuiltInId::dFdx_Float4, + BuiltInName::dFdx, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpDFdx, + false); +constexpr const TFunction function_dFdy_00B( + BuiltInId::dFdy_Float1, + BuiltInName::dFdy, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpDFdy, + false); +constexpr const TFunction function_dFdy_10B( + BuiltInId::dFdy_Float2, + BuiltInName::dFdy, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpDFdy, + false); +constexpr const TFunction function_dFdy_20B( + BuiltInId::dFdy_Float3, + BuiltInName::dFdy, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpDFdy, + false); +constexpr const TFunction function_dFdy_30B( + BuiltInId::dFdy_Float4, + BuiltInName::dFdy, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpDFdy, + false); +constexpr const TFunction function_fwidth_00B( + BuiltInId::fwidth_Float1, + BuiltInName::fwidth, + TExtension::UNDEFINED, + BuiltInParameters::p00B30B, + 1, + StaticType::Get(), + EOpFwidth, + false); +constexpr const TFunction function_fwidth_10B( + BuiltInId::fwidth_Float2, + BuiltInName::fwidth, + TExtension::UNDEFINED, + BuiltInParameters::p10B20B, + 1, + StaticType::Get(), + EOpFwidth, + false); +constexpr const TFunction function_fwidth_20B( + BuiltInId::fwidth_Float3, + BuiltInName::fwidth, + TExtension::UNDEFINED, + BuiltInParameters::p20B10B, + 1, + StaticType::Get(), + EOpFwidth, + false); +constexpr const TFunction function_fwidth_30B( + BuiltInId::fwidth_Float4, + BuiltInName::fwidth, + TExtension::UNDEFINED, + BuiltInParameters::p30B00B00B, + 1, + StaticType::Get(), + EOpFwidth, + false); +constexpr const TFunction function_atomicCounter_00G( + BuiltInId::atomicCounter_AtomicCounter1, + BuiltInName::atomicCounter, + TExtension::UNDEFINED, + BuiltInParameters::p00G, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_atomicCounterIncrement_00G( + BuiltInId::atomicCounterIncrement_AtomicCounter1, + BuiltInName::atomicCounterIncrement, + TExtension::UNDEFINED, + BuiltInParameters::p00G, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_atomicCounterDecrement_00G( + BuiltInId::atomicCounterDecrement_AtomicCounter1, + BuiltInName::atomicCounterDecrement, + TExtension::UNDEFINED, + BuiltInParameters::p00G, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_atomicAdd_00E00E( + BuiltInId::atomicAdd_UInt1_UInt1, + BuiltInName::atomicAdd, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00E00E00E, + 2, + StaticType::Get(), + EOpAtomicAdd, + false); +constexpr const TFunction function_atomicAdd_00D00D( + BuiltInId::atomicAdd_Int1_Int1, + BuiltInName::atomicAdd, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00D00D00D, + 2, + StaticType::Get(), + EOpAtomicAdd, + false); +constexpr const TFunction function_atomicMin_00E00E( + BuiltInId::atomicMin_UInt1_UInt1, + BuiltInName::atomicMin, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00E00E00E, + 2, + StaticType::Get(), + EOpAtomicMin, + false); +constexpr const TFunction function_atomicMin_00D00D( + BuiltInId::atomicMin_Int1_Int1, + BuiltInName::atomicMin, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00D00D00D, + 2, + StaticType::Get(), + EOpAtomicMin, + false); +constexpr const TFunction function_atomicMax_00E00E( + BuiltInId::atomicMax_UInt1_UInt1, + BuiltInName::atomicMax, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00E00E00E, + 2, + StaticType::Get(), + EOpAtomicMax, + false); +constexpr const TFunction function_atomicMax_00D00D( + BuiltInId::atomicMax_Int1_Int1, + BuiltInName::atomicMax, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00D00D00D, + 2, + StaticType::Get(), + EOpAtomicMax, + false); +constexpr const TFunction function_atomicAnd_00E00E( + BuiltInId::atomicAnd_UInt1_UInt1, + BuiltInName::atomicAnd, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00E00E00E, + 2, + StaticType::Get(), + EOpAtomicAnd, + false); +constexpr const TFunction function_atomicAnd_00D00D( + BuiltInId::atomicAnd_Int1_Int1, + BuiltInName::atomicAnd, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00D00D00D, + 2, + StaticType::Get(), + EOpAtomicAnd, + false); +constexpr const TFunction function_atomicOr_00E00E( + BuiltInId::atomicOr_UInt1_UInt1, + BuiltInName::atomicOr, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00E00E00E, + 2, + StaticType::Get(), + EOpAtomicOr, + false); +constexpr const TFunction function_atomicOr_00D00D( + BuiltInId::atomicOr_Int1_Int1, + BuiltInName::atomicOr, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00D00D00D, + 2, + StaticType::Get(), + EOpAtomicOr, + false); +constexpr const TFunction function_atomicXor_00E00E( + BuiltInId::atomicXor_UInt1_UInt1, + BuiltInName::atomicXor, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00E00E00E, + 2, + StaticType::Get(), + EOpAtomicXor, + false); +constexpr const TFunction function_atomicXor_00D00D( + BuiltInId::atomicXor_Int1_Int1, + BuiltInName::atomicXor, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00D00D00D, + 2, + StaticType::Get(), + EOpAtomicXor, + false); +constexpr const TFunction function_atomicExchange_00E00E( + BuiltInId::atomicExchange_UInt1_UInt1, + BuiltInName::atomicExchange, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00E00E00E, + 2, + StaticType::Get(), + EOpAtomicExchange, + false); +constexpr const TFunction function_atomicExchange_00D00D( + BuiltInId::atomicExchange_Int1_Int1, + BuiltInName::atomicExchange, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00D00D00D, + 2, + StaticType::Get(), + EOpAtomicExchange, + false); +constexpr const TFunction function_atomicCompSwap_00E00E00E( + BuiltInId::atomicCompSwap_UInt1_UInt1_UInt1, + BuiltInName::atomicCompSwap, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00E00E00E, + 3, + StaticType::Get(), + EOpAtomicCompSwap, + false); +constexpr const TFunction function_atomicCompSwap_00D00D00D( + BuiltInId::atomicCompSwap_Int1_Int1_Int1, + BuiltInName::atomicCompSwap, + TExtension::UNDEFINED, + BuiltInParameters::p_io_00D00D00D, + 3, + StaticType::Get(), + EOpAtomicCompSwap, + false); +constexpr const TFunction function_imageSize_00y( + BuiltInId::imageSize_Image2D1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p00y10D30B, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_00z( + BuiltInId::imageSize_IImage2D1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p00z10D30D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01A( + BuiltInId::imageSize_UImage2D1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01A10D30E, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01B( + BuiltInId::imageSize_Image3D1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01B20D30B, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01C( + BuiltInId::imageSize_IImage3D1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01C20D30D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01D( + BuiltInId::imageSize_UImage3D1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01D20D30E, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01E( + BuiltInId::imageSize_Image2DArray1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01E20D30B, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01F( + BuiltInId::imageSize_IImage2DArray1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01F20D30D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01G( + BuiltInId::imageSize_UImage2DArray1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01G20D30E, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01H( + BuiltInId::imageSize_ImageCube1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01H20D30B, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01I( + BuiltInId::imageSize_IImageCube1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01I20D30D, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageSize_01J( + BuiltInId::imageSize_UImageCube1, + BuiltInName::imageSize, + TExtension::UNDEFINED, + BuiltInParameters::p01J20D30E, + 1, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_00y10D( + BuiltInId::imageLoad_Image2D1_Int2, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p00y10D30B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_00z10D( + BuiltInId::imageLoad_IImage2D1_Int2, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p00z10D30D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01A10D( + BuiltInId::imageLoad_UImage2D1_Int2, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01A10D30E, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01B20D( + BuiltInId::imageLoad_Image3D1_Int3, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01B20D30B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01C20D( + BuiltInId::imageLoad_IImage3D1_Int3, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01C20D30D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01D20D( + BuiltInId::imageLoad_UImage3D1_Int3, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01D20D30E, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01E20D( + BuiltInId::imageLoad_Image2DArray1_Int3, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01E20D30B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01F20D( + BuiltInId::imageLoad_IImage2DArray1_Int3, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01F20D30D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01G20D( + BuiltInId::imageLoad_UImage2DArray1_Int3, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01G20D30E, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01H20D( + BuiltInId::imageLoad_ImageCube1_Int3, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01H20D30B, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01I20D( + BuiltInId::imageLoad_IImageCube1_Int3, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01I20D30D, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageLoad_01J20D( + BuiltInId::imageLoad_UImageCube1_Int3, + BuiltInName::imageLoad, + TExtension::UNDEFINED, + BuiltInParameters::p01J20D30E, + 2, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_00y10D30B( + BuiltInId::imageStore_Image2D1_Int2_Float4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p00y10D30B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_00z10D30D( + BuiltInId::imageStore_IImage2D1_Int2_Int4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p00z10D30D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01A10D30E( + BuiltInId::imageStore_UImage2D1_Int2_UInt4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01A10D30E, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01B20D30B( + BuiltInId::imageStore_Image3D1_Int3_Float4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01B20D30B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01C20D30D( + BuiltInId::imageStore_IImage3D1_Int3_Int4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01C20D30D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01D20D30E( + BuiltInId::imageStore_UImage3D1_Int3_UInt4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01D20D30E, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01E20D30B( + BuiltInId::imageStore_Image2DArray1_Int3_Float4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01E20D30B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01F20D30D( + BuiltInId::imageStore_IImage2DArray1_Int3_Int4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01F20D30D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01G20D30E( + BuiltInId::imageStore_UImage2DArray1_Int3_UInt4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01G20D30E, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01H20D30B( + BuiltInId::imageStore_ImageCube1_Int3_Float4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01H20D30B, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01I20D30D( + BuiltInId::imageStore_IImageCube1_Int3_Int4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01I20D30D, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_imageStore_01J20D30E( + BuiltInId::imageStore_UImageCube1_Int3_UInt4, + BuiltInName::imageStore, + TExtension::UNDEFINED, + BuiltInParameters::p01J20D30E, + 3, + StaticType::Get(), + EOpCallBuiltInFunction, + false); +constexpr const TFunction function_memoryBarrier_( + BuiltInId::memoryBarrier, + BuiltInName::memoryBarrier, + TExtension::UNDEFINED, + BuiltInParameters::empty, + 0, + StaticType::Get(), + EOpMemoryBarrier, + false); +constexpr const TFunction function_memoryBarrierAtomicCounter_( + BuiltInId::memoryBarrierAtomicCounter, + BuiltInName::memoryBarrierAtomicCounter, + TExtension::UNDEFINED, + BuiltInParameters::empty, + 0, + StaticType::Get(), + EOpMemoryBarrierAtomicCounter, + false); +constexpr const TFunction function_memoryBarrierBuffer_( + BuiltInId::memoryBarrierBuffer, + BuiltInName::memoryBarrierBuffer, + TExtension::UNDEFINED, + BuiltInParameters::empty, + 0, + StaticType::Get(), + EOpMemoryBarrierBuffer, + false); +constexpr const TFunction function_memoryBarrierImage_( + BuiltInId::memoryBarrierImage, + BuiltInName::memoryBarrierImage, + TExtension::UNDEFINED, + BuiltInParameters::empty, + 0, + StaticType::Get(), + EOpMemoryBarrierImage, + false); +constexpr const TFunction function_barrier_( + BuiltInId::barrier, + BuiltInName::barrier, + TExtension::UNDEFINED, + BuiltInParameters::empty, + 0, + StaticType::Get(), + EOpBarrier, + false); +constexpr const TFunction function_memoryBarrierShared_( + BuiltInId::memoryBarrierShared, + BuiltInName::memoryBarrierShared, + TExtension::UNDEFINED, + BuiltInParameters::empty, + 0, + StaticType::Get(), + EOpMemoryBarrierShared, + false); +constexpr const TFunction function_groupMemoryBarrier_( + BuiltInId::groupMemoryBarrier, + BuiltInName::groupMemoryBarrier, + TExtension::UNDEFINED, + BuiltInParameters::empty, + 0, + StaticType::Get(), + EOpGroupMemoryBarrier, + false); +constexpr const TFunction function_EmitVertex_( + BuiltInId::EmitVertex, + BuiltInName::EmitVertex, + TExtension::EXT_geometry_shader, + BuiltInParameters::empty, + 0, + StaticType::Get(), + EOpEmitVertex, + false); +constexpr const TFunction function_EndPrimitive_( + BuiltInId::EndPrimitive, + BuiltInName::EndPrimitive, + TExtension::EXT_geometry_shader, + BuiltInParameters::empty, + 0, + StaticType::Get(), + EOpEndPrimitive, + false); + +} // namespace BuiltInFunction + +namespace BuiltInArray +{ + +constexpr SymbolEntry mangled[] = { + SymbolEntry(ImmutableString("textureProj(00R30B00B"), + &BuiltInFunction::function_textureProj_00R30B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00N10B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture_00N10B00B, + nullptr, + 300, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(10D00D00D"), + &BuiltInFunction::function_clamp_10D00D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_PrimitiveID"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_PrimitiveID, + nullptr, + 310, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + &BuiltInVariable::kVar_gl_PrimitiveIDGS, + nullptr, + 310, + Shader::GEOMETRY_EXT, + &ShBuiltInResources::EXT_geometry_shader), + SymbolEntry(ImmutableString("texture(00R10B00B"), + &BuiltInFunction::function_texture_00R10B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("modf(00B00B"), + &BuiltInFunction::function_modf_00B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxAtomicCounterBindings"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxAtomicCounterBindings, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(20D20D"), + &BuiltInFunction::function_notEqual_20D20D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxComputeImageUniforms"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxComputeImageUniforms, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00L20B00B"), + &BuiltInFunction::function_textureLod_00L20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("determinant(A0B"), + &BuiltInFunction::function_determinant_A0B, + nullptr, + 300, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00I30B10B10B"), + &BuiltInFunction::function_textureProjGrad_00I30B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("tanh(30B"), + &BuiltInFunction::function_tanh_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_Layer"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_Layer, + nullptr, + 310, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + &BuiltInVariable::kVar_gl_LayerGS, + nullptr, + 310, + Shader::GEOMETRY_EXT, + &ShBuiltInResources::EXT_geometry_shader), + SymbolEntry(ImmutableString("textureOffset(00d20B10D"), + &BuiltInFunction::function_textureOffset_00d20B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dFdx(30B"), + &BuiltInFunction::function_dFdx_30B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_dFdxExt_30B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(00E00E00E"), + &BuiltInFunction::function_clamp_00E00E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("transpose(50B"), + &BuiltInFunction::function_transpose_50B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("ldexp(00B00D"), + &BuiltInFunction::function_ldexp_00B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00K20B00D"), + &BuiltInFunction::function_textureGather_00K20B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThanEqual(30B30B"), + &BuiltInFunction::function_lessThanEqual_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThanEqual(20D20D"), + &BuiltInFunction::function_greaterThanEqual_20D20D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(20E20E"), + &BuiltInFunction::function_min_20E20E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("asin(20B"), + &BuiltInFunction::function_asin_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("outerProduct(20B30B"), + &BuiltInFunction::function_outerProduct_20B30B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldInsert(00D00D00D00D"), + &BuiltInFunction::function_bitfieldInsert_00D00D00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00Y30B20B20B"), + &BuiltInFunction::function_textureProjGrad_00Y30B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("roundEven(30B"), + &BuiltInFunction::function_roundEven_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("acosh(20B"), + &BuiltInFunction::function_acosh_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atanh(10B"), + &BuiltInFunction::function_atanh_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(20B20B00B"), + &BuiltInFunction::function_mix_20B20B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(10B10B10B"), + &BuiltInFunction::function_clamp_10B10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00I10B10B10B"), + &BuiltInFunction::function_textureGrad_00I10B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00L20B10D00D"), + &BuiltInFunction::function_textureGatherOffset_00L20B10D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitCount(00D"), + &BuiltInFunction::function_bitCount_00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("step(00B20B"), + &BuiltInFunction::function_step_00B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThan(30E30E"), + &BuiltInFunction::function_lessThan_30E30E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("uintBitsToFloat(30E"), + &BuiltInFunction::function_uintBitsToFloat_30E, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imulExtended(30D30D30D30D"), + &BuiltInFunction::function_imulExtended_30D30D30D30D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00K00D"), + &BuiltInFunction::function_textureSize_00K00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxGeometryOutputVertices"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxGeometryOutputVertices, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("transpose(70B"), + &BuiltInFunction::function_transpose_70B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00S30B20D00B"), + &BuiltInFunction::function_textureProjOffset_00S30B20D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00X30B00B"), + &BuiltInFunction::function_textureProjLod_00X30B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00Y00D"), + &BuiltInFunction::function_textureSize_00Y00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MinProgramTexelOffset"), + nullptr, + &TSymbolTableBase::mVar_gl_MinProgramTexelOffset, + 300, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00d20B"), + &BuiltInFunction::function_texture_00d20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00J30B00B"), + &BuiltInFunction::function_textureProj_00J30B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atan(10B10B"), + &BuiltInFunction::function_atan_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(20B00B"), + &BuiltInFunction::function_max_20B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(30B30B30B"), + &BuiltInFunction::function_clamp_30B30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("EndPrimitive("), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_EndPrimitive_, + nullptr, + 310, + Shader::GEOMETRY_EXT, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00Y20B00B"), + &BuiltInFunction::function_textureLod_00Y20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00a20B00B10D"), + &BuiltInFunction::function_textureLodOffset_00a20B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetchOffset(00Y20D00D20D"), + &BuiltInFunction::function_texelFetchOffset_00Y20D00D20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00a20D00D"), + &BuiltInFunction::function_texelFetch_00a20D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(20D00D"), + &BuiltInFunction::function_min_20D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01F20D"), + &BuiltInFunction::function_imageLoad_01F20D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("uintBitsToFloat(00E"), + &BuiltInFunction::function_uintBitsToFloat_00E, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThanEqual(20B20B"), + &BuiltInFunction::function_lessThanEqual_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00N10D00D"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texelFetch_00N10D00D, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicAdd(00D00D"), + &BuiltInFunction::function_atomicAdd_00D00D, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxGeometryOutputComponents"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxGeometryOutputComponents, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxGeometryTextureImageUnits"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxGeometryTextureImageUnits, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floatBitsToUint(20B"), + &BuiltInFunction::function_floatBitsToUint_20B, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldInsert(20D20D00D00D"), + &BuiltInFunction::function_bitfieldInsert_20D20D00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxVertexTextureImageUnits"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxVertexTextureImageUnits, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00Z20B"), + &BuiltInFunction::function_texture_00Z20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(10D10D"), + &BuiltInFunction::function_min_10D10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("degrees(20B"), + &BuiltInFunction::function_degrees_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("tanh(00B"), + &BuiltInFunction::function_tanh_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00J30B20D00B"), + &BuiltInFunction::function_textureProjOffset_00J30B20D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("all(30F"), + &BuiltInFunction::function_all_30F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("abs(20D"), + &BuiltInFunction::function_abs_20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("abs(20B"), + &BuiltInFunction::function_abs_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("inversesqrt(00B"), + &BuiltInFunction::function_inversesqrt_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("matrixCompMult(D0BD0B"), + &BuiltInFunction::function_matrixCompMult_D0BD0B, + nullptr, + 300, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThanEqual(10B10B"), + &BuiltInFunction::function_lessThanEqual_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldReverse(20D"), + &BuiltInFunction::function_bitfieldReverse_20D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldReverse(20E"), + &BuiltInFunction::function_bitfieldReverse_20E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00S30B20B20B"), + &BuiltInFunction::function_textureProjGrad_00S30B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(10D10D"), + &BuiltInFunction::function_equal_10D10D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(30D00D"), + &BuiltInFunction::function_max_30D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("groupMemoryBarrier("), + &BuiltInFunction::function_groupMemoryBarrier_, + nullptr, + 310, + 430, + Shader::COMPUTE, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(00B00B00F"), + &BuiltInFunction::function_mix_00B00B00F, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00R20B10B10B10D"), + &BuiltInFunction::function_textureProjGradOffset_00R20B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01A10D"), + &BuiltInFunction::function_imageLoad_01A10D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("intBitsToFloat(30D"), + &BuiltInFunction::function_intBitsToFloat_30D, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00I20B"), + &BuiltInFunction::function_textureProj_00I20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00I10D00D"), + &BuiltInFunction::function_texelFetch_00I10D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(30B30B"), + &BuiltInFunction::function_min_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01I20D30D"), + &BuiltInFunction::function_imageStore_01I20D30D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxVertexAtomicCounterBuffers"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxVertexAtomicCounterBuffers, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00S20B00B20D"), + &BuiltInFunction::function_textureLodOffset_00S20B00B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00R10B10D"), + &BuiltInFunction::function_textureGatherOffset_00R10B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("acos(00B"), + &BuiltInFunction::function_acos_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("fract(10B"), + &BuiltInFunction::function_fract_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("transpose(E0B"), + &BuiltInFunction::function_transpose_E0B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("intBitsToFloat(00D"), + &BuiltInFunction::function_intBitsToFloat_00D, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00J20B20B20B20D"), + &BuiltInFunction::function_textureGradOffset_00J20B20B20B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("memoryBarrierAtomicCounter("), + &BuiltInFunction::function_memoryBarrierAtomicCounter_, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DGradEXT(00I10B10B10B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture2DGradEXT_00I10B10B10B, + nullptr, + 100, + Shader::ALL, + &ShBuiltInResources::EXT_shader_texture_lod, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldInsert(00E00E00D00D"), + &BuiltInFunction::function_bitfieldInsert_00E00E00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicXor(00D00D"), + &BuiltInFunction::function_atomicXor_00D00D, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThan(20B20B"), + &BuiltInFunction::function_greaterThan_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00I10B00B10D"), + &BuiltInFunction::function_textureLodOffset_00I10B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00Y20D00D"), + &BuiltInFunction::function_texelFetch_00Y20D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProjGradEXT(00I30B10B10B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture2DProjGradEXT_00I30B10B10B, + nullptr, + 100, + Shader::ALL, + &ShBuiltInResources::EXT_shader_texture_lod, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00d20B10B10B"), + &BuiltInFunction::function_textureGrad_00d20B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00R30B10D"), + &BuiltInFunction::function_textureProjOffset_00R30B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00U20B10D"), + &BuiltInFunction::function_textureOffset_00U20B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atan(10B"), + &BuiltInFunction::function_atan_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("modf(10B10B"), + &BuiltInFunction::function_modf_10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(30B00B"), + &BuiltInFunction::function_min_30B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("determinant(50B"), + &BuiltInFunction::function_determinant_50B, + nullptr, + 300, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThan(20B20B"), + &BuiltInFunction::function_lessThan_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicAnd(00D00D"), + &BuiltInFunction::function_atomicAnd_00D00D, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_FragColor"), + &BuiltInVariable::kVar_gl_FragColor, + nullptr, + 100, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("exp(10B"), + &BuiltInFunction::function_exp_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00I20B10D00B"), + &BuiltInFunction::function_textureProjOffset_00I20B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("step(00B10B"), + &BuiltInFunction::function_step_00B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitCount(30D"), + &BuiltInFunction::function_bitCount_30D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00I20B00B"), + &BuiltInFunction::function_textureProjLod_00I20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("unpackUnorm2x16(00E"), + &BuiltInFunction::function_unpackUnorm2x16_00E, + nullptr, + 300, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("rgb_2_yuv(20B00H"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_rgb_2_yuv_20B00H, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sqrt(20B"), + &BuiltInFunction::function_sqrt_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sign(20B"), + &BuiltInFunction::function_sign_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01B20D30B"), + &BuiltInFunction::function_imageStore_01B20D30B, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sign(20D"), + &BuiltInFunction::function_sign_20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atanh(00B"), + &BuiltInFunction::function_atanh_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00X10B10B10B10D"), + &BuiltInFunction::function_textureGradOffset_00X10B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_DepthRange"), + nullptr, + &TSymbolTableBase::mVar_gl_DepthRange, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imulExtended(10D10D10D10D"), + &BuiltInFunction::function_imulExtended_10D10D10D10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atan(20B"), + &BuiltInFunction::function_atan_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00M10B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture_00M10B, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::OES_EGL_image_external_essl3, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxVertexOutputVectors"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxVertexOutputVectors, + 300, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00T20B"), + &BuiltInFunction::function_texture_00T20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("log2(10B"), + &BuiltInFunction::function_log2_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(10B10B"), + &BuiltInFunction::function_min_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxImageUnits"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxImageUnits, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("pow(10B10B"), + &BuiltInFunction::function_pow_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findLSB(20E"), + &BuiltInFunction::function_findLSB_20E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findLSB(20D"), + &BuiltInFunction::function_findLSB_20D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00Y20B"), + &BuiltInFunction::function_texture_00Y20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("packUnorm4x8(30B"), + &BuiltInFunction::function_packUnorm4x8_30B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00X10B00B"), + &BuiltInFunction::function_texture_00X10B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("frexp(00B00D"), + &BuiltInFunction::function_frexp_00B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2D(00I10B"), + &BuiltInFunction::function_texture2D_00I10B, + nullptr, + 100, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("not(10F"), + &BuiltInFunction::function_notFunc_10F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00P10D00D"), + &BuiltInFunction::function_texelFetch_00P10D00D, + nullptr, + 310, + 150, + Shader::ALL, + &BuiltInFunction::function_texelFetchExt_00P10D00D, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::ANGLE_texture_multisample, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThan(10E10E"), + &BuiltInFunction::function_lessThan_10E10E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("ceil(20B"), + &BuiltInFunction::function_ceil_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00R10B00B10D"), + &BuiltInFunction::function_textureLodOffset_00R10B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(10D10D10D"), + &BuiltInFunction::function_clamp_10D10D10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00M10D00D"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texelFetch_00M10D00D, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::OES_EGL_image_external_essl3, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00O10B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture_00O10B, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::ARB_texture_rectangle, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("transpose(F0B"), + &BuiltInFunction::function_transpose_F0B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00Y20B20D00B"), + &BuiltInFunction::function_textureOffset_00Y20B20D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00S20B20B20B20D"), + &BuiltInFunction::function_textureGradOffset_00S20B20B20B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicXor(00E00E"), + &BuiltInFunction::function_atomicXor_00E00E, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00R20B10D"), + &BuiltInFunction::function_textureProjOffset_00R20B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_FragCoord"), + &BuiltInVariable::kVar_gl_FragCoord, + nullptr, + 0, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(30E30E30E"), + &BuiltInFunction::function_clamp_30E30E30E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00N30B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00N30B00B, + nullptr, + 300, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00R00D"), + &BuiltInFunction::function_textureSize_00R00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxFragmentImageUniforms"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxFragmentImageUniforms, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("normalize(00B"), + &BuiltInFunction::function_normalize_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00I10B10D"), + &BuiltInFunction::function_textureOffset_00I10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicExchange(00E00E"), + &BuiltInFunction::function_atomicExchange_00E00E, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00I30B00B"), + &BuiltInFunction::function_textureProj_00I30B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("acosh(10B"), + &BuiltInFunction::function_acosh_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxCombinedShaderOutputResources"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxCombinedShaderOutputResources, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicOr(00E00E"), + &BuiltInFunction::function_atomicOr_00E00E, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(20B00B"), + &BuiltInFunction::function_min_20B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00M30B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00M30B00B, + nullptr, + 300, + Shader::FRAGMENT, + &ShBuiltInResources::OES_EGL_image_external_essl3, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00M20B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00M20B, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::OES_EGL_image_external_essl3, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00I10B00B"), + &BuiltInFunction::function_texture_00I10B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("reflect(00B00B"), + &BuiltInFunction::function_reflect_00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mod(20B00B"), + &BuiltInFunction::function_mod_20B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThan(20D20D"), + &BuiltInFunction::function_lessThan_20D20D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("reflect(10B10B"), + &BuiltInFunction::function_reflect_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floatBitsToUint(10B"), + &BuiltInFunction::function_floatBitsToUint_10B, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00J20B00B"), + &BuiltInFunction::function_textureLod_00J20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sqrt(10B"), + &BuiltInFunction::function_sqrt_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00S30B00B"), + &BuiltInFunction::function_textureProjLod_00S30B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(20E20E20E"), + &BuiltInFunction::function_clamp_20E20E20E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicAnd(00E00E"), + &BuiltInFunction::function_atomicAnd_00E00E, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(20D00D"), + &BuiltInFunction::function_max_20D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00I00D"), + &BuiltInFunction::function_textureSize_00I00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxComputeAtomicCounterBuffers"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxComputeAtomicCounterBuffers, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_PrimitiveIDIn"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_PrimitiveIDIn, + nullptr, + 310, + Shader::GEOMETRY_EXT, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetchOffset(00R10D00D10D"), + &BuiltInFunction::function_texelFetchOffset_00R10D00D10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("isinf(30B"), + &BuiltInFunction::function_isinf_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00a20B10D00D"), + &BuiltInFunction::function_textureGatherOffset_00a20B10D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThan(30B30B"), + &BuiltInFunction::function_lessThan_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00I10B10D"), + &BuiltInFunction::function_textureGatherOffset_00I10B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00L20B10D00B"), + &BuiltInFunction::function_textureOffset_00L20B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00X10B00B10D"), + &BuiltInFunction::function_textureLodOffset_00X10B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00T20B00B"), + &BuiltInFunction::function_texture_00T20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00L20B10D"), + &BuiltInFunction::function_textureOffset_00L20B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThanEqual(30E30E"), + &BuiltInFunction::function_lessThanEqual_30E30E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00J20B20D00B"), + &BuiltInFunction::function_textureOffset_00J20B20D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(10E00E"), + &BuiltInFunction::function_min_10E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("log(30B"), + &BuiltInFunction::function_log_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicCounter(00G"), + &BuiltInFunction::function_atomicCounter_00G, + nullptr, + 310, + 420, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00S30B20D"), + &BuiltInFunction::function_textureProjOffset_00S30B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01I20D"), + &BuiltInFunction::function_imageLoad_01I20D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("round(00B"), + &BuiltInFunction::function_round_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("smoothstep(00B00B20B"), + &BuiltInFunction::function_smoothstep_00B00B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01H20D"), + &BuiltInFunction::function_imageLoad_01H20D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00K20B"), + &BuiltInFunction::function_textureGather_00K20B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldInsert(30D30D00D00D"), + &BuiltInFunction::function_bitfieldInsert_30D30D00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01G20D30E"), + &BuiltInFunction::function_imageStore_01G20D30E, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("fwidth(10B"), + &BuiltInFunction::function_fwidth_10B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_fwidthExt_10B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00R20B00B"), + &BuiltInFunction::function_textureProjLod_00R20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(30D30D"), + &BuiltInFunction::function_notEqual_30D30D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("refract(10B10B00B"), + &BuiltInFunction::function_refract_10B10B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00I20B10D"), + &BuiltInFunction::function_textureProjOffset_00I20B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThan(30D30D"), + &BuiltInFunction::function_greaterThan_30D30D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThan(10D10D"), + &BuiltInFunction::function_greaterThan_10D10D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00U20B"), + &BuiltInFunction::function_texture_00U20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00a00D"), + &BuiltInFunction::function_textureSize_00a00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldExtract(10E00D00D"), + &BuiltInFunction::function_bitfieldExtract_10E00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxDrawBuffers"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxDrawBuffers, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00U20B10D00D"), + &BuiltInFunction::function_textureGatherOffset_00U20B10D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxComputeWorkGroupCount"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxComputeWorkGroupCount, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00J30B00B"), + &BuiltInFunction::function_textureProjLod_00J30B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DRect(00O10B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture2DRect_00O10B, + nullptr, + 100, + Shader::ALL, + &ShBuiltInResources::ARB_texture_rectangle, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imulExtended(20D20D20D20D"), + &BuiltInFunction::function_imulExtended_20D20D20D20D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("any(30F"), + &BuiltInFunction::function_any_30F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("distance(30B30B"), + &BuiltInFunction::function_distance_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThan(20D20D"), + &BuiltInFunction::function_greaterThan_20D20D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00a20B10D"), + &BuiltInFunction::function_textureOffset_00a20B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThan(30B30B"), + &BuiltInFunction::function_greaterThan_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("trunc(00B"), + &BuiltInFunction::function_trunc_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sinh(30B"), + &BuiltInFunction::function_sinh_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("length(10B"), + &BuiltInFunction::function_length_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findMSB(10E"), + &BuiltInFunction::function_findMSB_10E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findMSB(10D"), + &BuiltInFunction::function_findMSB_10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dot(00B00B"), + &BuiltInFunction::function_dot_00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("asinh(20B"), + &BuiltInFunction::function_asinh_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dot(30B30B"), + &BuiltInFunction::function_dot_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitCount(00E"), + &BuiltInFunction::function_bitCount_00E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("tan(30B"), + &BuiltInFunction::function_tan_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00T20B00B"), + &BuiltInFunction::function_textureLod_00T20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("usubBorrow(20E20E20E"), + &BuiltInFunction::function_usubBorrow_20E20E20E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(00z10D30D"), + &BuiltInFunction::function_imageStore_00z10D30D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00R30B10B10B"), + &BuiltInFunction::function_textureProjGrad_00R30B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("exp2(10B"), + &BuiltInFunction::function_exp2_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00O20B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00O20B, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::ARB_texture_rectangle, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00X20B10D00B"), + &BuiltInFunction::function_textureProjOffset_00X20B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("outerProduct(10B20B"), + &BuiltInFunction::function_outerProduct_10B20B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxGeometryAtomicCounterBuffers"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxGeometryAtomicCounterBuffers, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00X30B10B10B10D"), + &BuiltInFunction::function_textureProjGradOffset_00X30B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00I10B10D00B"), + &BuiltInFunction::function_textureOffset_00I10B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(30B00B00B"), + &BuiltInFunction::function_clamp_30B00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("inverse(50B"), + &BuiltInFunction::function_inverse_50B, + nullptr, + 300, + 140, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dot(10B10B"), + &BuiltInFunction::function_dot_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("unpackHalf2x16(00E"), + &BuiltInFunction::function_unpackHalf2x16_00E, + nullptr, + 300, + 420, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("matrixCompMult(A0BA0B"), + &BuiltInFunction::function_matrixCompMult_A0BA0B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProjLod(00I20B00B"), + &BuiltInFunction::function_texture2DProjLod_00I20B00B, + nullptr, + 100, + 0, + Shader::VERTEX, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00W20D00D"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texelFetchExt_00W20D00D, + nullptr, + 310, + Shader::ALL, + &ShBuiltInResources::OES_texture_storage_multisample_2d_array, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DRectProj(00O30B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture2DRectProj_00O30B, + nullptr, + 100, + Shader::ALL, + &ShBuiltInResources::ARB_texture_rectangle, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("radians(20B"), + &BuiltInFunction::function_radians_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00S20B20B20B"), + &BuiltInFunction::function_textureGrad_00S20B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(10D00D"), + &BuiltInFunction::function_max_10D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01J20D30E"), + &BuiltInFunction::function_imageStore_01J20D30E, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("round(30B"), + &BuiltInFunction::function_round_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxComputeTextureImageUnits"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxComputeTextureImageUnits, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(00D00D00D"), + &BuiltInFunction::function_clamp_00D00D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sin(30B"), + &BuiltInFunction::function_sin_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floor(30B"), + &BuiltInFunction::function_floor_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00S30B00B"), + &BuiltInFunction::function_textureProj_00S30B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00Y20B20B20B"), + &BuiltInFunction::function_textureGrad_00Y20B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxCombinedAtomicCounters"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxCombinedAtomicCounters, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00L20B00D"), + &BuiltInFunction::function_textureGather_00L20B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00S30B20B20B20D"), + &BuiltInFunction::function_textureProjGradOffset_00S30B20B20B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01A10D30E"), + &BuiltInFunction::function_imageStore_01A10D30E, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00J20B"), + &BuiltInFunction::function_texture_00J20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_PointCoord"), + &BuiltInVariable::kVar_gl_PointCoord, + nullptr, + 0, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dFdx(20B"), + &BuiltInFunction::function_dFdx_20B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_dFdxExt_20B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00X20B"), + &BuiltInFunction::function_textureProj_00X20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(10E10E"), + &BuiltInFunction::function_max_10E10E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(30B30B"), + &BuiltInFunction::function_max_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(10E10E10E"), + &BuiltInFunction::function_clamp_10E10E10E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetchOffset(00S20D00D20D"), + &BuiltInFunction::function_texelFetchOffset_00S20D00D20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00N10B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture_00N10B, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00L20B"), + &BuiltInFunction::function_texture_00L20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("barrier("), + &BuiltInFunction::function_barrier_, + nullptr, + 310, + 400, + Shader::COMPUTE, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxGeometryUniformComponents"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxGeometryUniformComponents, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThanEqual(20E20E"), + &BuiltInFunction::function_greaterThanEqual_20E20E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThan(10D10D"), + &BuiltInFunction::function_lessThan_10D10D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetchOffset(00a20D00D10D"), + &BuiltInFunction::function_texelFetchOffset_00a20D00D10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00X20B10B10B10D"), + &BuiltInFunction::function_textureProjGradOffset_00X20B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProj(00I20B"), + &BuiltInFunction::function_texture2DProj_00I20B, + nullptr, + 100, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture3DProjLod(00J30B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture3DProjLod_00J30B00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_texture_3D, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("not(20F"), + &BuiltInFunction::function_notFunc_20F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString(""), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findMSB(20D"), + &BuiltInFunction::function_findMSB_20D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findMSB(20E"), + &BuiltInFunction::function_findMSB_20E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetchOffset(00I10D00D10D"), + &BuiltInFunction::function_texelFetchOffset_00I10D00D10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00I10B00D"), + &BuiltInFunction::function_textureGather_00I10B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00V10D00D"), + &BuiltInFunction::function_texelFetch_00V10D00D, + nullptr, + 310, + 150, + Shader::ALL, + &BuiltInFunction::function_texelFetchExt_00V10D00D, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::ANGLE_texture_multisample, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("outerProduct(20B20B"), + &BuiltInFunction::function_outerProduct_20B20B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atan(30B30B"), + &BuiltInFunction::function_atan_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("unpackSnorm4x8(00E"), + &BuiltInFunction::function_unpackSnorm4x8_00E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitCount(30E"), + &BuiltInFunction::function_bitCount_30E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00R20B00B10D"), + &BuiltInFunction::function_textureProjLodOffset_00R20B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("log(20B"), + &BuiltInFunction::function_log_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("asin(30B"), + &BuiltInFunction::function_asin_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00f20B"), + &BuiltInFunction::function_textureGather_00f20B, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("modf(30B30B"), + &BuiltInFunction::function_modf_30B30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("isnan(20B"), + &BuiltInFunction::function_isnan_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(00B00B"), + &BuiltInFunction::function_max_00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("roundEven(20B"), + &BuiltInFunction::function_roundEven_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("fwidth(00B"), + &BuiltInFunction::function_fwidth_00B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_fwidthExt_00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00J30B20B20B"), + &BuiltInFunction::function_textureProjGrad_00J30B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dFdy(10B"), + &BuiltInFunction::function_dFdy_10B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_dFdyExt_10B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("outerProduct(30B10B"), + &BuiltInFunction::function_outerProduct_30B10B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floatBitsToInt(30B"), + &BuiltInFunction::function_floatBitsToInt_30B, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00J30B"), + &BuiltInFunction::function_textureProj_00J30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_InvocationID"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_InvocationID, + nullptr, + 310, + Shader::GEOMETRY_EXT, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(30E00E"), + &BuiltInFunction::function_max_30E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("exp2(20B"), + &BuiltInFunction::function_exp2_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00d20B00B"), + &BuiltInFunction::function_textureLod_00d20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("radians(10B"), + &BuiltInFunction::function_radians_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00U20D00D"), + &BuiltInFunction::function_texelFetch_00U20D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxComputeWorkGroupSize"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxComputeWorkGroupSize, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(00D00D"), + &BuiltInFunction::function_max_00D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_LastFragData"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_LastFragData, + 100, + Shader::ALL, + &ShBuiltInResources::EXT_shader_framebuffer_fetch, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + &TSymbolTableBase::mVar_gl_LastFragDataNV, + 100, + Shader::ALL, + &ShBuiltInResources::NV_shader_framebuffer_fetch), + SymbolEntry(ImmutableString("ceil(30B"), + &BuiltInFunction::function_ceil_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicMin(00E00E"), + &BuiltInFunction::function_atomicMin_00E00E, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxCombinedTextureImageUnits"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxCombinedTextureImageUnits, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitCount(10E"), + &BuiltInFunction::function_bitCount_10E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00S20B00B"), + &BuiltInFunction::function_texture_00S20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00e20B00B"), + &BuiltInFunction::function_textureGather_00e20B00B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_DepthRangeParameters"), + nullptr, + &TSymbolTableBase::mVar_gl_DepthRangeParameters, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("distance(10B10B"), + &BuiltInFunction::function_distance_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("reflect(20B20B"), + &BuiltInFunction::function_reflect_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mod(10B00B"), + &BuiltInFunction::function_mod_10B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("uintBitsToFloat(10E"), + &BuiltInFunction::function_uintBitsToFloat_10E, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00Z20B20B20B"), + &BuiltInFunction::function_textureGrad_00Z20B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(10F10F"), + &BuiltInFunction::function_equal_10F10F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("cosh(00B"), + &BuiltInFunction::function_cosh_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldReverse(00D"), + &BuiltInFunction::function_bitfieldReverse_00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldReverse(00E"), + &BuiltInFunction::function_bitfieldReverse_00E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(20E20E"), + &BuiltInFunction::function_max_20E20E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("matrixCompMult(70B70B"), + &BuiltInFunction::function_matrixCompMult_70B70B, + nullptr, + 300, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldExtract(30E00D00D"), + &BuiltInFunction::function_bitfieldExtract_30E00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00I10B00B"), + &BuiltInFunction::function_textureLod_00I10B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThanEqual(10D10D"), + &BuiltInFunction::function_greaterThanEqual_10D10D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00e30B00B"), + &BuiltInFunction::function_texture_00e30B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00Y20B00B20D"), + &BuiltInFunction::function_textureLodOffset_00Y20B00B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("log2(00B"), + &BuiltInFunction::function_log2_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_LastFragColor"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_LastFragColor, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::NV_shader_framebuffer_fetch, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("abs(10D"), + &BuiltInFunction::function_abs_10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("abs(10B"), + &BuiltInFunction::function_abs_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("acos(30B"), + &BuiltInFunction::function_acos_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("tanh(10B"), + &BuiltInFunction::function_tanh_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("degrees(30B"), + &BuiltInFunction::function_degrees_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_FragDepthEXT"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_FragDepthEXT, + 100, + Shader::ALL, + &ShBuiltInResources::EXT_frag_depth, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dFdx(10B"), + &BuiltInFunction::function_dFdx_10B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_dFdxExt_10B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00I30B10D"), + &BuiltInFunction::function_textureProjOffset_00I30B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldReverse(30E"), + &BuiltInFunction::function_bitfieldReverse_30E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldReverse(30D"), + &BuiltInFunction::function_bitfieldReverse_30D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("inversesqrt(30B"), + &BuiltInFunction::function_inversesqrt_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_LocalInvocationID"), + &BuiltInVariable::kVar_gl_LocalInvocationID, + nullptr, + 310, + 0, + Shader::COMPUTE, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(00B00B00B"), + &BuiltInFunction::function_clamp_00B00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00d10B"), + &BuiltInFunction::function_textureGather_00d10B, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("frexp(20B20D"), + &BuiltInFunction::function_frexp_20B20D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("intBitsToFloat(20D"), + &BuiltInFunction::function_intBitsToFloat_20D, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("fract(00B"), + &BuiltInFunction::function_fract_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_FragDepth"), + &BuiltInVariable::kVar_gl_FragDepth, + nullptr, + 300, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(30E00E"), + &BuiltInFunction::function_min_30E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("exp(20B"), + &BuiltInFunction::function_exp_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(20B20B"), + &BuiltInFunction::function_equal_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00X20B00B10D"), + &BuiltInFunction::function_textureProjLodOffset_00X20B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("acosh(00B"), + &BuiltInFunction::function_acosh_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("log(10B"), + &BuiltInFunction::function_log_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00S30B00B20D"), + &BuiltInFunction::function_textureProjLodOffset_00S30B00B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sinh(20B"), + &BuiltInFunction::function_sinh_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00L20B"), + &BuiltInFunction::function_textureGather_00L20B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("reflect(30B30B"), + &BuiltInFunction::function_reflect_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("outerProduct(30B20B"), + &BuiltInFunction::function_outerProduct_30B20B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00U20B00B"), + &BuiltInFunction::function_texture_00U20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00S20B"), + &BuiltInFunction::function_texture_00S20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("outerProduct(20B10B"), + &BuiltInFunction::function_outerProduct_20B10B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("umulExtended(10E10E10E10E"), + &BuiltInFunction::function_umulExtended_10E10E10E10E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00Z20B00B"), + &BuiltInFunction::function_texture_00Z20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00a20B10B10B10D"), + &BuiltInFunction::function_textureGradOffset_00a20B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(20F20F"), + &BuiltInFunction::function_notEqual_20F20F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mod(30B30B"), + &BuiltInFunction::function_mod_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldExtract(10D00D00D"), + &BuiltInFunction::function_bitfieldExtract_10D00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sign(30B"), + &BuiltInFunction::function_sign_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sign(30D"), + &BuiltInFunction::function_sign_30D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("pow(00B00B"), + &BuiltInFunction::function_pow_00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mod(00B00B"), + &BuiltInFunction::function_mod_00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00Y20B00B"), + &BuiltInFunction::function_texture_00Y20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(30B30B"), + &BuiltInFunction::function_notEqual_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("roundEven(10B"), + &BuiltInFunction::function_roundEven_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProjLodEXT(00I30B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture2DProjLodEXT_00I30B00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_shader_texture_lod, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atanh(30B"), + &BuiltInFunction::function_atanh_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dFdy(20B"), + &BuiltInFunction::function_dFdy_20B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_dFdyExt_20B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00Y30B"), + &BuiltInFunction::function_textureProj_00Y30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitCount(20D"), + &BuiltInFunction::function_bitCount_20D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("step(00B00B"), + &BuiltInFunction::function_step_00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00L20D00D"), + &BuiltInFunction::function_texelFetch_00L20D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(00y"), + &BuiltInFunction::function_imageSize_00y, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("isinf(00B"), + &BuiltInFunction::function_isinf_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(00z"), + &BuiltInFunction::function_imageSize_00z, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("distance(20B20B"), + &BuiltInFunction::function_distance_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00U20B10B10B"), + &BuiltInFunction::function_textureGrad_00U20B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("uaddCarry(30E30E30E"), + &BuiltInFunction::function_uaddCarry_30E30E30E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mod(30B00B"), + &BuiltInFunction::function_mod_30B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00K20B00B"), + &BuiltInFunction::function_texture_00K20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxCombinedImageUniforms"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxCombinedImageUniforms, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("yuv_2_rgb(20B00H"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_yuv_2_rgb_20B00H, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00f20B00B"), + &BuiltInFunction::function_textureGather_00f20B00B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThan(20E20E"), + &BuiltInFunction::function_greaterThan_20E20E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00a20B10B10B"), + &BuiltInFunction::function_textureGrad_00a20B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00U20B10D00B"), + &BuiltInFunction::function_textureOffset_00U20B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("intBitsToFloat(10D"), + &BuiltInFunction::function_intBitsToFloat_10D, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00J20B00B"), + &BuiltInFunction::function_texture_00J20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("refract(20B20B00B"), + &BuiltInFunction::function_refract_20B20B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00I30B00B"), + &BuiltInFunction::function_textureProjLod_00I30B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("refract(00B00B00B"), + &BuiltInFunction::function_refract_00B00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findLSB(10D"), + &BuiltInFunction::function_findLSB_10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findLSB(10E"), + &BuiltInFunction::function_findLSB_10E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(10B10B10F"), + &BuiltInFunction::function_mix_10B10B10F, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(10B10B10B"), + &BuiltInFunction::function_mix_10B10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00Y30B00B"), + &BuiltInFunction::function_textureProj_00Y30B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture3D(00J20B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture3D_00J20B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_texture_3D, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("transpose(D0B"), + &BuiltInFunction::function_transpose_D0B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("log2(30B"), + &BuiltInFunction::function_log2_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00J20B20B20B"), + &BuiltInFunction::function_textureGrad_00J20B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00d30B10B10B"), + &BuiltInFunction::function_textureProjGrad_00d30B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("fract(30B"), + &BuiltInFunction::function_fract_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_LocalInvocationIndex"), + &BuiltInVariable::kVar_gl_LocalInvocationIndex, + nullptr, + 310, + 0, + Shader::COMPUTE, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00J00D"), + &BuiltInFunction::function_textureSize_00J00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00I10B10D00D"), + &BuiltInFunction::function_textureGatherOffset_00I10B10D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00X10B00D"), + &BuiltInFunction::function_textureGather_00X10B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetchOffset(00U20D00D10D"), + &BuiltInFunction::function_texelFetchOffset_00U20D00D10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00Y30B00B20D"), + &BuiltInFunction::function_textureProjLodOffset_00Y30B00B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00e00D"), + &BuiltInFunction::function_textureSize_00e00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(20E20E"), + &BuiltInFunction::function_notEqual_20E20E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00d20B00B10D"), + &BuiltInFunction::function_textureLodOffset_00d20B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("inverse(A0B"), + &BuiltInFunction::function_inverse_A0B, + nullptr, + 300, + 140, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01E20D30B"), + &BuiltInFunction::function_imageStore_01E20D30B, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00X20B10B10B"), + &BuiltInFunction::function_textureProjGrad_00X20B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(30E30E"), + &BuiltInFunction::function_max_30E30E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("isnan(30B"), + &BuiltInFunction::function_isnan_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imulExtended(00D00D00D00D"), + &BuiltInFunction::function_imulExtended_00D00D00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_in"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_in, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atan(20B20B"), + &BuiltInFunction::function_atan_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("usubBorrow(00E00E00E"), + &BuiltInFunction::function_usubBorrow_00E00E00E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00J30B00B20D"), + &BuiltInFunction::function_textureProjLodOffset_00J30B00B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("frexp(30B30D"), + &BuiltInFunction::function_frexp_30B30D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_SecondaryFragDataEXT"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_SecondaryFragDataEXT, + 100, + Shader::ALL, + &ShBuiltInResources::EXT_blend_func_extended, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(30E30E"), + &BuiltInFunction::function_min_30E30E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProj(00I30B00B"), + &BuiltInFunction::function_texture2DProj_00I30B00B, + nullptr, + 100, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureCubeGradEXT(00K20B20B20B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureCubeGradEXT_00K20B20B20B, + nullptr, + 100, + Shader::ALL, + &ShBuiltInResources::EXT_shader_texture_lod, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00I10B"), + &BuiltInFunction::function_texture_00I10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(00B00B"), + &BuiltInFunction::function_min_00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_InstanceID"), + &BuiltInVariable::kVar_gl_InstanceID, + nullptr, + 300, + 0, + Shader::VERTEX, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00c20D00D"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texelFetchExt_00c20D00D, + nullptr, + 310, + Shader::ALL, + &ShBuiltInResources::OES_texture_storage_multisample_2d_array, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxVertexImageUniforms"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxVertexImageUniforms, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sqrt(00B"), + &BuiltInFunction::function_sqrt_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("normalize(20B"), + &BuiltInFunction::function_normalize_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxFragmentAtomicCounterBuffers"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxFragmentAtomicCounterBuffers, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_WorkGroupID"), + &BuiltInVariable::kVar_gl_WorkGroupID, + nullptr, + 310, + 0, + Shader::COMPUTE, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("degrees(00B"), + &BuiltInFunction::function_degrees_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("inverse(F0B"), + &BuiltInFunction::function_inverse_F0B, + nullptr, + 300, + 140, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(20E00E"), + &BuiltInFunction::function_min_20E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00R30B00B"), + &BuiltInFunction::function_textureProjLod_00R30B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00P"), + &BuiltInFunction::function_textureSize_00P, + nullptr, + 310, + 150, + Shader::ALL, + &BuiltInFunction::function_textureSizeExt_00P, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::ANGLE_texture_multisample, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00d20B10B10B10D"), + &BuiltInFunction::function_textureGradOffset_00d20B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00R30B00B10D"), + &BuiltInFunction::function_textureProjLodOffset_00R30B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atan(00B"), + &BuiltInFunction::function_atan_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicExchange(00D00D"), + &BuiltInFunction::function_atomicExchange_00D00D, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00R10B10D00D"), + &BuiltInFunction::function_textureGatherOffset_00R10B10D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(00y10D30B"), + &BuiltInFunction::function_imageStore_00y10D30B, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxGeometryAtomicCounters"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxGeometryAtomicCounters, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2D(00I10B00B"), + &BuiltInFunction::function_texture2D_00I10B00B, + nullptr, + 100, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00X20B00B"), + &BuiltInFunction::function_textureProj_00X20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(20D20D20D"), + &BuiltInFunction::function_clamp_20D20D20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThan(30E30E"), + &BuiltInFunction::function_greaterThan_30E30E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("frexp(10B10D"), + &BuiltInFunction::function_frexp_10B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(10E00E"), + &BuiltInFunction::function_max_10E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("smoothstep(00B00B10B"), + &BuiltInFunction::function_smoothstep_00B00B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_GlobalInvocationID"), + &BuiltInVariable::kVar_gl_GlobalInvocationID, + nullptr, + 310, + 0, + Shader::COMPUTE, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("matrixCompMult(60B60B"), + &BuiltInFunction::function_matrixCompMult_60B60B, + nullptr, + 300, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("memoryBarrierShared("), + &BuiltInFunction::function_memoryBarrierShared_, + nullptr, + 310, + 430, + Shader::COMPUTE, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("normalize(10B"), + &BuiltInFunction::function_normalize_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("unpackSnorm2x16(00E"), + &BuiltInFunction::function_unpackSnorm2x16_00E, + nullptr, + 300, + 420, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(00z10D"), + &BuiltInFunction::function_imageLoad_00z10D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThan(30D30D"), + &BuiltInFunction::function_lessThan_30D30D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atan(00B00B"), + &BuiltInFunction::function_atan_00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldExtract(20D00D00D"), + &BuiltInFunction::function_bitfieldExtract_20D00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00L20B00B"), + &BuiltInFunction::function_texture_00L20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(10B10B"), + &BuiltInFunction::function_notEqual_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01G20D"), + &BuiltInFunction::function_imageLoad_01G20D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldExtract(00E00D00D"), + &BuiltInFunction::function_bitfieldExtract_00E00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicCompSwap(00D00D00D"), + &BuiltInFunction::function_atomicCompSwap_00D00D00D, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("trunc(30B"), + &BuiltInFunction::function_trunc_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("matrixCompMult(E0BE0B"), + &BuiltInFunction::function_matrixCompMult_E0BE0B, + nullptr, + 300, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("length(00B"), + &BuiltInFunction::function_length_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("any(20F"), + &BuiltInFunction::function_any_20F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("memoryBarrier("), + &BuiltInFunction::function_memoryBarrier_, + nullptr, + 310, + 420, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_PerVertex"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_PerVertex, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00X30B00B"), + &BuiltInFunction::function_textureProj_00X30B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicMax(00D00D"), + &BuiltInFunction::function_atomicMax_00D00D, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_ViewID_OVR"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_ViewID_OVR, + nullptr, + 300, + Shader::NOT_COMPUTE, + &ShBuiltInResources::OVR_multiview, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floor(10B"), + &BuiltInFunction::function_floor_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sin(10B"), + &BuiltInFunction::function_sin_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00N00D"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureSize_00N00D, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetchOffset(00J20D00D20D"), + &BuiltInFunction::function_texelFetchOffset_00J20D00D20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("tan(00B"), + &BuiltInFunction::function_tan_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mod(20B20B"), + &BuiltInFunction::function_mod_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01J20D"), + &BuiltInFunction::function_imageLoad_01J20D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_WorkGroupSize"), + &BuiltInVariable::kVar_gl_WorkGroupSize, + nullptr, + 310, + 0, + Shader::COMPUTE, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("asinh(30B"), + &BuiltInFunction::function_asinh_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("outerProduct(10B30B"), + &BuiltInFunction::function_outerProduct_10B30B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureCube(00K20B"), + &BuiltInFunction::function_textureCube_00K20B, + nullptr, + 100, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00c"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureSizeExt_00c, + nullptr, + 310, + Shader::ALL, + &ShBuiltInResources::OES_texture_storage_multisample_2d_array, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00b"), + &BuiltInFunction::function_textureSize_00b, + nullptr, + 310, + 150, + Shader::ALL, + &BuiltInFunction::function_textureSizeExt_00b, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::ANGLE_texture_multisample, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("cos(00B"), + &BuiltInFunction::function_cos_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(20B20B"), + &BuiltInFunction::function_min_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00f30B10B10B10D"), + &BuiltInFunction::function_textureGradOffset_00f30B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(20D20D"), + &BuiltInFunction::function_max_20D20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00I30B"), + &BuiltInFunction::function_textureProj_00I30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(10D10D"), + &BuiltInFunction::function_max_10D10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00a20B10D00B"), + &BuiltInFunction::function_textureOffset_00a20B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00X10B"), + &BuiltInFunction::function_textureGather_00X10B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("pow(30B30B"), + &BuiltInFunction::function_pow_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00a20B"), + &BuiltInFunction::function_textureGather_00a20B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("smoothstep(10B10B10B"), + &BuiltInFunction::function_smoothstep_10B10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00O30B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00O30B, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::ARB_texture_rectangle, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00d10B00B10D"), + &BuiltInFunction::function_textureGatherOffset_00d10B00B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("refract(30B30B00B"), + &BuiltInFunction::function_refract_30B30B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldInsert(20E20E00D00D"), + &BuiltInFunction::function_bitfieldInsert_20E20E00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floor(20B"), + &BuiltInFunction::function_floor_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(20E20E"), + &BuiltInFunction::function_equal_20E20E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(00B00B00B"), + &BuiltInFunction::function_mix_00B00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01B"), + &BuiltInFunction::function_imageSize_01B, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThanEqual(20B20B"), + &BuiltInFunction::function_greaterThanEqual_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("uaddCarry(00E00E00E"), + &BuiltInFunction::function_uaddCarry_00E00E00E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sin(20B"), + &BuiltInFunction::function_sin_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00Q"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureSizeExt_00Q, + nullptr, + 310, + Shader::ALL, + &ShBuiltInResources::OES_texture_storage_multisample_2d_array, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("round(20B"), + &BuiltInFunction::function_round_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("matrixCompMult(90B90B"), + &BuiltInFunction::function_matrixCompMult_90B90B, + nullptr, + 300, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00d30B00B"), + &BuiltInFunction::function_textureProjLod_00d30B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00W"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureSizeExt_00W, + nullptr, + 310, + Shader::ALL, + &ShBuiltInResources::OES_texture_storage_multisample_2d_array, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00X20B00B"), + &BuiltInFunction::function_textureProjLod_00X20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxCombinedAtomicCounterBuffers"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxCombinedAtomicCounterBuffers, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("isnan(00B"), + &BuiltInFunction::function_isnan_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("umulExtended(30E30E30E30E"), + &BuiltInFunction::function_umulExtended_30E30E30E30E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("faceforward(30B30B30B"), + &BuiltInFunction::function_faceforward_30B30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00Y20B20B20B20D"), + &BuiltInFunction::function_textureGradOffset_00Y20B20B20B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(30E00E00E"), + &BuiltInFunction::function_clamp_30E00E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("asin(00B"), + &BuiltInFunction::function_asin_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("ceil(00B"), + &BuiltInFunction::function_ceil_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture3D(00J20B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture3D_00J20B00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_texture_3D, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("distance(00B00B"), + &BuiltInFunction::function_distance_00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00a20B"), + &BuiltInFunction::function_texture_00a20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00a20B10D"), + &BuiltInFunction::function_textureGatherOffset_00a20B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00f30B10B10B"), + &BuiltInFunction::function_textureGrad_00f30B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProj(00I30B"), + &BuiltInFunction::function_texture2DProj_00I30B, + nullptr, + 100, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("modf(20B20B"), + &BuiltInFunction::function_modf_20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00I10B10B10B10D"), + &BuiltInFunction::function_textureGradOffset_00I10B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(30E30E"), + &BuiltInFunction::function_notEqual_30E30E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00I10B"), + &BuiltInFunction::function_textureGather_00I10B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThanEqual(10E10E"), + &BuiltInFunction::function_lessThanEqual_10E10E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("inversesqrt(20B"), + &BuiltInFunction::function_inversesqrt_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00J20B00B20D"), + &BuiltInFunction::function_textureLodOffset_00J20B00B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(30D30D"), + &BuiltInFunction::function_min_30D30D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00R10B10D00B"), + &BuiltInFunction::function_textureOffset_00R10B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00e30B20B20B"), + &BuiltInFunction::function_textureGrad_00e30B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicAdd(00E00E"), + &BuiltInFunction::function_atomicAdd_00E00E, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxGeometryInputComponents"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxGeometryInputComponents, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findMSB(30E"), + &BuiltInFunction::function_findMSB_30E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findMSB(30D"), + &BuiltInFunction::function_findMSB_30D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00X10B10B10B"), + &BuiltInFunction::function_textureGrad_00X10B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("length(30B"), + &BuiltInFunction::function_length_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThanEqual(30E30E"), + &BuiltInFunction::function_greaterThanEqual_30E30E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("fwidth(30B"), + &BuiltInFunction::function_fwidth_30B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_fwidthExt_30B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00K20B20B20B"), + &BuiltInFunction::function_textureGrad_00K20B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(20B20B20F"), + &BuiltInFunction::function_mix_20B20B20F, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00S20D00D"), + &BuiltInFunction::function_texelFetch_00S20D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00U20B10B10B10D"), + &BuiltInFunction::function_textureGradOffset_00U20B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(20B20B20B"), + &BuiltInFunction::function_mix_20B20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floatBitsToInt(10B"), + &BuiltInFunction::function_floatBitsToInt_10B, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(10B00B"), + &BuiltInFunction::function_max_10B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00L20B10D"), + &BuiltInFunction::function_textureGatherOffset_00L20B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00a20B00B"), + &BuiltInFunction::function_textureLod_00a20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("any(10F"), + &BuiltInFunction::function_any_10F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00d30B10B10B10D"), + &BuiltInFunction::function_textureProjGradOffset_00d30B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00N30B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00N30B, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxProgramTexelOffset"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxProgramTexelOffset, + 300, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("exp2(30B"), + &BuiltInFunction::function_exp2_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetchOffset(00L20D00D10D"), + &BuiltInFunction::function_texelFetchOffset_00L20D00D10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(30D30D"), + &BuiltInFunction::function_equal_30D30D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture3DProj(00J30B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture3DProj_00J30B00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_texture_3D, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("packSnorm2x16(10B"), + &BuiltInFunction::function_packSnorm2x16_10B, + nullptr, + 300, + 420, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floatBitsToUint(30B"), + &BuiltInFunction::function_floatBitsToUint_30B, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThanEqual(30D30D"), + &BuiltInFunction::function_lessThanEqual_30D30D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxGeometryImageUniforms"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxGeometryImageUniforms, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(00y10D"), + &BuiltInFunction::function_imageLoad_00y10D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("asinh(00B"), + &BuiltInFunction::function_asinh_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00R10B10D"), + &BuiltInFunction::function_textureOffset_00R10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThanEqual(10E10E"), + &BuiltInFunction::function_greaterThanEqual_10E10E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00I30B10B10B10D"), + &BuiltInFunction::function_textureProjGradOffset_00I30B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00Z20B"), + &BuiltInFunction::function_textureGather_00Z20B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00X10B10D"), + &BuiltInFunction::function_textureOffset_00X10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("cosh(30B"), + &BuiltInFunction::function_cosh_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00d20B10D00B"), + &BuiltInFunction::function_textureOffset_00d20B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00R10B"), + &BuiltInFunction::function_texture_00R10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00S20B20D00B"), + &BuiltInFunction::function_textureOffset_00S20B20D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("usubBorrow(30E30E30E"), + &BuiltInFunction::function_usubBorrow_30E30E30E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("radians(00B"), + &BuiltInFunction::function_radians_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00R20B10D00B"), + &BuiltInFunction::function_textureProjOffset_00R20B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("ldexp(30B30D"), + &BuiltInFunction::function_ldexp_30B30D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(30B00B"), + &BuiltInFunction::function_max_30B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(20D20D"), + &BuiltInFunction::function_min_20D20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("step(10B10B"), + &BuiltInFunction::function_step_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxDualSourceDrawBuffersEXT"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxDualSourceDrawBuffersEXT, + 0, + Shader::ALL, + &ShBuiltInResources::EXT_blend_func_extended, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("step(30B30B"), + &BuiltInFunction::function_step_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldReverse(10E"), + &BuiltInFunction::function_bitfieldReverse_10E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldReverse(10D"), + &BuiltInFunction::function_bitfieldReverse_10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture3DProj(00J30B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture3DProj_00J30B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_texture_3D, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("matrixCompMult(B0BB0B"), + &BuiltInFunction::function_matrixCompMult_B0BB0B, + nullptr, + 300, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThan(20E20E"), + &BuiltInFunction::function_lessThan_20E20E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("cross(20B20B"), + &BuiltInFunction::function_cross_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("all(10F"), + &BuiltInFunction::function_all_10F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(20B00B00B"), + &BuiltInFunction::function_clamp_20B00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("tanh(20B"), + &BuiltInFunction::function_tanh_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dFdx(00B"), + &BuiltInFunction::function_dFdx_00B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_dFdxExt_00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("matrixCompMult(F0BF0B"), + &BuiltInFunction::function_matrixCompMult_F0BF0B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("abs(00D"), + &BuiltInFunction::function_abs_00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("abs(00B"), + &BuiltInFunction::function_abs_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00R10B00B"), + &BuiltInFunction::function_textureLod_00R10B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("step(20B20B"), + &BuiltInFunction::function_step_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxFragmentAtomicCounters"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxFragmentAtomicCounters, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00U20B00B10D"), + &BuiltInFunction::function_textureLodOffset_00U20B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00R20B00B"), + &BuiltInFunction::function_textureProj_00R20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("faceforward(20B20B20B"), + &BuiltInFunction::function_faceforward_20B20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01E"), + &BuiltInFunction::function_imageSize_01E, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("acos(20B"), + &BuiltInFunction::function_acos_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00X10D00D"), + &BuiltInFunction::function_texelFetch_00X10D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sinh(00B"), + &BuiltInFunction::function_sinh_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01A"), + &BuiltInFunction::function_imageSize_01A, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DLod(00I10B00B"), + &BuiltInFunction::function_texture2DLod_00I10B00B, + nullptr, + 100, + 0, + Shader::VERTEX, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00b10D00D"), + &BuiltInFunction::function_texelFetch_00b10D00D, + nullptr, + 310, + 150, + Shader::ALL, + &BuiltInFunction::function_texelFetchExt_00b10D00D, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::ANGLE_texture_multisample, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01F"), + &BuiltInFunction::function_imageSize_01F, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxAtomicCounterBufferSize"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxAtomicCounterBufferSize, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(20B20B"), + &BuiltInFunction::function_max_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00f20B00B10D"), + &BuiltInFunction::function_textureGatherOffset_00f20B00B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("outerProduct(30B30B"), + &BuiltInFunction::function_outerProduct_30B30B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThanEqual(20E20E"), + &BuiltInFunction::function_lessThanEqual_20E20E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00X10B00B"), + &BuiltInFunction::function_textureLod_00X10B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("exp(30B"), + &BuiltInFunction::function_exp_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_BaseVertex"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_BaseVertex, + nullptr, + 300, + Shader::VERTEX, + &ShBuiltInResources::ANGLE_base_vertex_base_instance, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01D"), + &BuiltInFunction::function_imageSize_01D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("step(00B30B"), + &BuiltInFunction::function_step_00B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitCount(10D"), + &BuiltInFunction::function_bitCount_10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(30E30E"), + &BuiltInFunction::function_equal_30E30E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sign(00B"), + &BuiltInFunction::function_sign_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("log(00B"), + &BuiltInFunction::function_log_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00Z20B00B"), + &BuiltInFunction::function_textureLod_00Z20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sign(00D"), + &BuiltInFunction::function_sign_00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00Y20B20D"), + &BuiltInFunction::function_textureOffset_00Y20B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("transpose(60B"), + &BuiltInFunction::function_transpose_60B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findMSB(00D"), + &BuiltInFunction::function_findMSB_00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxGeometryTotalOutputComponents"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + nullptr, + &TSymbolTableBase::mVar_gl_MaxGeometryTotalOutputComponents, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("acosh(30B"), + &BuiltInFunction::function_acosh_30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findMSB(00E"), + &BuiltInFunction::function_findMSB_00E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldExtract(20E00D00D"), + &BuiltInFunction::function_bitfieldExtract_20E00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("uintBitsToFloat(20E"), + &BuiltInFunction::function_uintBitsToFloat_20E, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("unpackUnorm4x8(00E"), + &BuiltInFunction::function_unpackUnorm4x8_00E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProj(00M20B"), + &BuiltInFunction::function_texture2DProj_00M20B, + nullptr, + 100, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetchOffset(00X10D00D10D"), + &BuiltInFunction::function_texelFetchOffset_00X10D00D10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mod(10B10B"), + &BuiltInFunction::function_mod_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00d20B00B"), + &BuiltInFunction::function_texture_00d20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(10D10D"), + &BuiltInFunction::function_notEqual_10D10D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProj(00M30B"), + &BuiltInFunction::function_texture2DProj_00M30B, + nullptr, + 100, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00V"), + &BuiltInFunction::function_textureSize_00V, + nullptr, + 310, + 150, + Shader::ALL, + &BuiltInFunction::function_textureSizeExt_00V, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::ANGLE_texture_multisample, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("packUnorm2x16(10B"), + &BuiltInFunction::function_packUnorm2x16_10B, + nullptr, + 300, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("faceforward(00B00B00B"), + &BuiltInFunction::function_faceforward_00B00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("umulExtended(20E20E20E20E"), + &BuiltInFunction::function_umulExtended_20E20E20E20E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00X10B10D00B"), + &BuiltInFunction::function_textureOffset_00X10B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("cos(30B"), + &BuiltInFunction::function_cos_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findLSB(30D"), + &BuiltInFunction::function_findLSB_30D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findLSB(30E"), + &BuiltInFunction::function_findLSB_30E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitCount(20E"), + &BuiltInFunction::function_bitCount_20E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_NumWorkGroups"), + &BuiltInVariable::kVar_gl_NumWorkGroups, + nullptr, + 310, + 0, + Shader::COMPUTE, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(20D20D"), + &BuiltInFunction::function_equal_20D20D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00Y30B20D00B"), + &BuiltInFunction::function_textureProjOffset_00Y30B20D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00U20B10D"), + &BuiltInFunction::function_textureGatherOffset_00U20B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("faceforward(10B10B10B"), + &BuiltInFunction::function_faceforward_10B10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00L00D"), + &BuiltInFunction::function_textureSize_00L00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxComputeUniformComponents"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxComputeUniformComponents, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00R10B00D"), + &BuiltInFunction::function_textureGather_00R10B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("memoryBarrierBuffer("), + &BuiltInFunction::function_memoryBarrierBuffer_, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00Z00D"), + &BuiltInFunction::function_textureSize_00Z00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00U20B"), + &BuiltInFunction::function_textureGather_00U20B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldExtract(30D00D00D"), + &BuiltInFunction::function_bitfieldExtract_30D00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(10D00D"), + &BuiltInFunction::function_min_10D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01H20D30B"), + &BuiltInFunction::function_imageStore_01H20D30B, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00Q20D00D"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texelFetchExt_00Q20D00D, + nullptr, + 310, + Shader::ALL, + &ShBuiltInResources::OES_texture_storage_multisample_2d_array, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(20E00E"), + &BuiltInFunction::function_max_20E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00S30B"), + &BuiltInFunction::function_textureProj_00S30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("roundEven(00B"), + &BuiltInFunction::function_roundEven_00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DLodEXT(00I10B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture2DLodEXT_00I10B00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_shader_texture_lod, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dFdy(30B"), + &BuiltInFunction::function_dFdy_30B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_dFdyExt_30B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atanh(20B"), + &BuiltInFunction::function_atanh_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(10E00E00E"), + &BuiltInFunction::function_clamp_10E00E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(20D00D00D"), + &BuiltInFunction::function_clamp_20D00D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("all(20F"), + &BuiltInFunction::function_all_20F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("isinf(10B"), + &BuiltInFunction::function_isinf_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01C20D"), + &BuiltInFunction::function_imageLoad_01C20D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01J"), + &BuiltInFunction::function_imageSize_01J, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01H"), + &BuiltInFunction::function_imageSize_01H, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01I"), + &BuiltInFunction::function_imageSize_01I, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("packHalf2x16(10B"), + &BuiltInFunction::function_packHalf2x16_10B, + nullptr, + 300, + 420, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProj(00I20B00B"), + &BuiltInFunction::function_texture2DProj_00I20B00B, + nullptr, + 100, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findLSB(00E"), + &BuiltInFunction::function_findLSB_00E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("findLSB(00D"), + &BuiltInFunction::function_findLSB_00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00X30B10D"), + &BuiltInFunction::function_textureProjOffset_00X30B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01C"), + &BuiltInFunction::function_imageSize_01C, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThanEqual(30B30B"), + &BuiltInFunction::function_greaterThanEqual_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00U00D"), + &BuiltInFunction::function_textureSize_00U00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00R10B10B10B10D"), + &BuiltInFunction::function_textureGradOffset_00R10B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageSize(01G"), + &BuiltInFunction::function_imageSize_01G, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(30F30F"), + &BuiltInFunction::function_equal_30F30F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldExtract(00D00D00D"), + &BuiltInFunction::function_bitfieldExtract_00D00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProjLodEXT(00I20B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture2DProjLodEXT_00I20B00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_shader_texture_lod, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(30F30F"), + &BuiltInFunction::function_notEqual_30F30F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_FrontFacing"), + &BuiltInVariable::kVar_gl_FrontFacing, + nullptr, + 0, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_SecondaryFragColorEXT"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_SecondaryFragColorEXT, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_blend_func_extended, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("inversesqrt(10B"), + &BuiltInFunction::function_inversesqrt_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01C20D30D"), + &BuiltInFunction::function_imageStore_01C20D30D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("acos(10B"), + &BuiltInFunction::function_acos_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("abs(30D"), + &BuiltInFunction::function_abs_30D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxFragmentUniformVectors"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxFragmentUniformVectors, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("fract(20B"), + &BuiltInFunction::function_fract_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("abs(30B"), + &BuiltInFunction::function_abs_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThan(10B10B"), + &BuiltInFunction::function_lessThan_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00X10B10D"), + &BuiltInFunction::function_textureGatherOffset_00X10B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldInsert(10E10E00D00D"), + &BuiltInFunction::function_bitfieldInsert_10E10E00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("packSnorm4x8(30B"), + &BuiltInFunction::function_packSnorm4x8_30B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(10B10B00B"), + &BuiltInFunction::function_mix_10B10B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01E20D"), + &BuiltInFunction::function_imageLoad_01E20D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(30D30D30D"), + &BuiltInFunction::function_clamp_30D30D30D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00U20B00D"), + &BuiltInFunction::function_textureGather_00U20B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00f00D"), + &BuiltInFunction::function_textureSize_00f00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00N20B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00N20B00B, + nullptr, + 300, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_FragData"), + nullptr, + &TSymbolTableBase::mVar_gl_FragData, + 100, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01B20D"), + &BuiltInFunction::function_imageLoad_01B20D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00d30B00B"), + &BuiltInFunction::function_textureProj_00d30B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(20E00E00E"), + &BuiltInFunction::function_clamp_20E00E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00X10B"), + &BuiltInFunction::function_texture_00X10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00d30B"), + &BuiltInFunction::function_textureProj_00d30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(30B30B30F"), + &BuiltInFunction::function_mix_30B30B30F, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("determinant(F0B"), + &BuiltInFunction::function_determinant_F0B, + nullptr, + 300, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("transpose(A0B"), + &BuiltInFunction::function_transpose_A0B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("pow(20B20B"), + &BuiltInFunction::function_pow_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProjGradEXT(00I20B10B10B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture2DProjGradEXT_00I20B10B10B, + nullptr, + 100, + Shader::ALL, + &ShBuiltInResources::EXT_shader_texture_lod, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_LastFragColorARM"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_LastFragColorARM, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::ARM_shader_framebuffer_fetch, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00Z20B00D"), + &BuiltInFunction::function_textureGather_00Z20B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00R10B"), + &BuiltInFunction::function_textureGather_00R10B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThanEqual(20D20D"), + &BuiltInFunction::function_lessThanEqual_20D20D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00S20B00B"), + &BuiltInFunction::function_textureLod_00S20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLod(00Y30B00B"), + &BuiltInFunction::function_textureProjLod_00Y30B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("cosh(10B"), + &BuiltInFunction::function_cosh_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sqrt(30B"), + &BuiltInFunction::function_sqrt_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_VertexID"), + &BuiltInVariable::kVar_gl_VertexID, + nullptr, + 300, + 0, + Shader::VERTEX, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sign(10D"), + &BuiltInFunction::function_sign_10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00M30B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00M30B, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::OES_EGL_image_external_essl3, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("exp(00B"), + &BuiltInFunction::function_exp_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(00E00E"), + &BuiltInFunction::function_min_00E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(30D30D"), + &BuiltInFunction::function_max_30D30D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("umulExtended(00E00E00E00E"), + &BuiltInFunction::function_umulExtended_00E00E00E00E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxVertexAttribs"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxVertexAttribs, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_BaseInstance"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_BaseInstance, + nullptr, + 300, + Shader::VERTEX, + &ShBuiltInResources::ANGLE_base_vertex_base_instance, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("transpose(B0B"), + &BuiltInFunction::function_transpose_B0B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("fwidth(20B"), + &BuiltInFunction::function_fwidth_20B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_fwidthExt_20B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("smoothstep(00B00B30B"), + &BuiltInFunction::function_smoothstep_00B00B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floatBitsToInt(20B"), + &BuiltInFunction::function_floatBitsToInt_20B, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00M00D"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureSize_00M00D, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::OES_EGL_image_external_essl3, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("log2(20B"), + &BuiltInFunction::function_log2_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("ldexp(10B10D"), + &BuiltInFunction::function_ldexp_10B10D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(10B00B"), + &BuiltInFunction::function_min_10B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(30B30B00B"), + &BuiltInFunction::function_mix_30B30B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("degrees(10B"), + &BuiltInFunction::function_degrees_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxTextureImageUnits"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxTextureImageUnits, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_Position"), + &BuiltInVariable::kVar_gl_Position, + nullptr, + 0, + 0, + Shader::VERTEX, + nullptr, + &TSymbolTableBase::mVar_gl_PositionGS, + 310, + Shader::ALL, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00K20B"), + &BuiltInFunction::function_texture_00K20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicCompSwap(00E00E00E"), + &BuiltInFunction::function_atomicCompSwap_00E00E00E, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00Y30B20D"), + &BuiltInFunction::function_textureProjOffset_00Y30B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sinh(10B"), + &BuiltInFunction::function_sinh_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atan(30B"), + &BuiltInFunction::function_atan_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGradOffset(00L20B10B10B10D"), + &BuiltInFunction::function_textureGradOffset_00L20B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("ceil(10B"), + &BuiltInFunction::function_ceil_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00S00D"), + &BuiltInFunction::function_textureSize_00S00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01D20D30E"), + &BuiltInFunction::function_imageStore_01D20D30E, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThanEqual(10B10B"), + &BuiltInFunction::function_greaterThanEqual_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicCounterDecrement(00G"), + &BuiltInFunction::function_atomicCounterDecrement_00G, + nullptr, + 310, + 420, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureCube(00K20B00B"), + &BuiltInFunction::function_textureCube_00K20B00B, + nullptr, + 100, + 0, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dot(20B20B"), + &BuiltInFunction::function_dot_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("transpose(90B"), + &BuiltInFunction::function_transpose_90B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("not(30F"), + &BuiltInFunction::function_notFunc_30F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00I20B00B10D"), + &BuiltInFunction::function_textureProjLodOffset_00I20B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(10F10F"), + &BuiltInFunction::function_notEqual_10F10F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00R20B10B10B"), + &BuiltInFunction::function_textureProjGrad_00R20B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00f30B"), + &BuiltInFunction::function_texture_00f30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("smoothstep(00B00B00B"), + &BuiltInFunction::function_smoothstep_00B00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00d30B00B10D"), + &BuiltInFunction::function_textureProjLodOffset_00d30B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00R10D00D"), + &BuiltInFunction::function_texelFetch_00R10D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("cosh(20B"), + &BuiltInFunction::function_cosh_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00I30B00B10D"), + &BuiltInFunction::function_textureProjLodOffset_00I30B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("normalize(30B"), + &BuiltInFunction::function_normalize_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("smoothstep(30B30B30B"), + &BuiltInFunction::function_smoothstep_30B30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldInsert(10D10D00D00D"), + &BuiltInFunction::function_bitfieldInsert_10D10D00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(20B20B20B"), + &BuiltInFunction::function_clamp_20B20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00L20B10B10B"), + &BuiltInFunction::function_textureGrad_00L20B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00R10B10B10B"), + &BuiltInFunction::function_textureGrad_00R10B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00I20B10B10B"), + &BuiltInFunction::function_textureProjGrad_00I20B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00e20B"), + &BuiltInFunction::function_textureGather_00e20B, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2D(00M10B"), + &BuiltInFunction::function_texture2D_00M10B, + nullptr, + 100, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(00D00D"), + &BuiltInFunction::function_min_00D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("outerProduct(10B10B"), + &BuiltInFunction::function_outerProduct_10B10B, + nullptr, + 300, + 120, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("lessThanEqual(10D10D"), + &BuiltInFunction::function_lessThanEqual_10D10D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("trunc(20B"), + &BuiltInFunction::function_trunc_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxVaryingVectors"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxVaryingVectors, + 100, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00I30B10D00B"), + &BuiltInFunction::function_textureProjOffset_00I30B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00d00D"), + &BuiltInFunction::function_textureSize_00d00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sin(00B"), + &BuiltInFunction::function_sin_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxVertexUniformVectors"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxVertexUniformVectors, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureCubeLodEXT(00K20B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureCubeLodEXT_00K20B00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::EXT_shader_texture_lod, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00T20B00D"), + &BuiltInFunction::function_textureGather_00T20B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00N20B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00N20B, + nullptr, + 300, + Shader::ALL, + &ShBuiltInResources::EXT_YUV_target, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("uaddCarry(10E10E10E"), + &BuiltInFunction::function_uaddCarry_10E10E10E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("tan(10B"), + &BuiltInFunction::function_tan_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLodOffset(00L20B00B10D"), + &BuiltInFunction::function_textureLodOffset_00L20B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicCounterIncrement(00G"), + &BuiltInFunction::function_atomicCounterIncrement_00G, + nullptr, + 310, + 420, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("ldexp(20B20D"), + &BuiltInFunction::function_ldexp_20B20D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThanEqual(30D30D"), + &BuiltInFunction::function_greaterThanEqual_30D30D, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(20B20B"), + &BuiltInFunction::function_notEqual_20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageLoad(01D20D"), + &BuiltInFunction::function_imageLoad_01D20D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjLodOffset(00X30B00B10D"), + &BuiltInFunction::function_textureProjLodOffset_00X30B00B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("isinf(20B"), + &BuiltInFunction::function_isinf_20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("cos(10B"), + &BuiltInFunction::function_cos_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("mix(30B30B30B"), + &BuiltInFunction::function_mix_30B30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00e30B"), + &BuiltInFunction::function_texture_00e30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00T00D"), + &BuiltInFunction::function_textureSize_00T00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGatherOffset(00X10B10D00D"), + &BuiltInFunction::function_textureGatherOffset_00X10B10D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(10E10E"), + &BuiltInFunction::function_equal_10E10E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(10E10E"), + &BuiltInFunction::function_min_10E10E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00Y30B20B20B20D"), + &BuiltInFunction::function_textureProjGradOffset_00Y30B20B20B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGrad(00T20B20B20B"), + &BuiltInFunction::function_textureGrad_00T20B20B20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("memoryBarrierImage("), + &BuiltInFunction::function_memoryBarrierImage_, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00J30B20D"), + &BuiltInFunction::function_textureProjOffset_00J30B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("EmitVertex("), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_EmitVertex_, + nullptr, + 310, + Shader::GEOMETRY_EXT, + &ShBuiltInResources::EXT_geometry_shader, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00d30B10D00B"), + &BuiltInFunction::function_textureProjOffset_00d30B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("round(10B"), + &BuiltInFunction::function_round_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00d30B10D"), + &BuiltInFunction::function_textureProjOffset_00d30B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("notEqual(10E10E"), + &BuiltInFunction::function_notEqual_10E10E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00R30B"), + &BuiltInFunction::function_textureProj_00R30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("matrixCompMult(50B50B"), + &BuiltInFunction::function_matrixCompMult_50B50B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(20F20F"), + &BuiltInFunction::function_equal_20F20F, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxFragmentInputVectors"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxFragmentInputVectors, + 300, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(30B30B"), + &BuiltInFunction::function_equal_30B30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00U20B00B"), + &BuiltInFunction::function_textureLod_00U20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("usubBorrow(10E10E10E"), + &BuiltInFunction::function_usubBorrow_10E10E10E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("equal(10B10B"), + &BuiltInFunction::function_equal_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00I20B10B10B10D"), + &BuiltInFunction::function_textureProjGradOffset_00I20B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DProjLod(00I30B00B"), + &BuiltInFunction::function_texture2DProjLod_00I30B00B, + nullptr, + 100, + 0, + Shader::VERTEX, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("isnan(10B"), + &BuiltInFunction::function_isnan_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("uaddCarry(20E20E20E"), + &BuiltInFunction::function_uaddCarry_20E20E20E, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(10B10B"), + &BuiltInFunction::function_max_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicMax(00E00E"), + &BuiltInFunction::function_atomicMax_00E00E, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_PointSize"), + &BuiltInVariable::kVar_gl_PointSize, + nullptr, + 0, + 0, + Shader::VERTEX, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicMin(00D00D"), + &BuiltInFunction::function_atomicMin_00D00D, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureSize(00X00D"), + &BuiltInFunction::function_textureSize_00X00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThan(10B10B"), + &BuiltInFunction::function_greaterThan_10B10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("asin(10B"), + &BuiltInFunction::function_asin_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00d10B00B"), + &BuiltInFunction::function_textureGather_00d10B00B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("trunc(10B"), + &BuiltInFunction::function_trunc_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxComputeAtomicCounters"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxComputeAtomicCounters, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00X30B"), + &BuiltInFunction::function_textureProj_00X30B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_MaxVertexAtomicCounters"), + nullptr, + &TSymbolTableBase::mVar_gl_MaxVertexAtomicCounters, + 310, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("length(20B"), + &BuiltInFunction::function_length_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("bitfieldInsert(30E30E00D00D"), + &BuiltInFunction::function_bitfieldInsert_30E30E00D00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00S20B20D"), + &BuiltInFunction::function_textureOffset_00S20B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00X20B10D"), + &BuiltInFunction::function_textureProjOffset_00X20B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(30D00D00D"), + &BuiltInFunction::function_clamp_30D00D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("clamp(10B00B00B"), + &BuiltInFunction::function_clamp_10B00B00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00R20B"), + &BuiltInFunction::function_textureProj_00R20B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("imageStore(01F20D30D"), + &BuiltInFunction::function_imageStore_01F20D30D, + nullptr, + 310, + -1, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00I20B00B"), + &BuiltInFunction::function_textureProj_00I20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("greaterThan(10E10E"), + &BuiltInFunction::function_greaterThan_10E10E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00R30B10D00B"), + &BuiltInFunction::function_textureProjOffset_00R30B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("dFdy(00B"), + &BuiltInFunction::function_dFdy_00B, + nullptr, + 300, + 0, + Shader::FRAGMENT, + &BuiltInFunction::function_dFdyExt_00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_standard_derivatives, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("min(30D00D"), + &BuiltInFunction::function_min_30D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floatBitsToInt(00B"), + &BuiltInFunction::function_floatBitsToInt_00B, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("sign(10B"), + &BuiltInFunction::function_sign_10B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("max(00E00E"), + &BuiltInFunction::function_max_00E00E, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00a20B00B"), + &BuiltInFunction::function_texture_00a20B00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture(00M10B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture_00M10B00B, + nullptr, + 300, + Shader::FRAGMENT, + &ShBuiltInResources::OES_EGL_image_external_essl3, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("smoothstep(20B20B20B"), + &BuiltInFunction::function_smoothstep_20B20B20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureCubeLod(00K20B00B"), + &BuiltInFunction::function_textureCubeLod_00K20B00B, + nullptr, + 100, + 0, + Shader::VERTEX, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureOffset(00J20B20D"), + &BuiltInFunction::function_textureOffset_00J20B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texelFetch(00J20D00D"), + &BuiltInFunction::function_texelFetch_00J20D00D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProj(00M20B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_textureProj_00M20B00B, + nullptr, + 300, + Shader::FRAGMENT, + &ShBuiltInResources::OES_EGL_image_external_essl3, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floatBitsToUint(00B"), + &BuiltInFunction::function_floatBitsToUint_00B, + nullptr, + 300, + 330, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00R30B10B10B10D"), + &BuiltInFunction::function_textureProjGradOffset_00R30B10B10B10D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureLod(00K20B00B"), + &BuiltInFunction::function_textureLod_00K20B00B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjOffset(00X30B10D00B"), + &BuiltInFunction::function_textureProjOffset_00X30B10D00B, + nullptr, + 300, + 130, + Shader::FRAGMENT, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("cos(20B"), + &BuiltInFunction::function_cos_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("exp2(00B"), + &BuiltInFunction::function_exp2_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("radians(30B"), + &BuiltInFunction::function_radians_30B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture2DRectProj(00O20B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture2DRectProj_00O20B, + nullptr, + 100, + Shader::ALL, + &ShBuiltInResources::ARB_texture_rectangle, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("tan(20B"), + &BuiltInFunction::function_tan_20B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00T20B"), + &BuiltInFunction::function_textureGather_00T20B, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureGather(00a20B00D"), + &BuiltInFunction::function_textureGather_00a20B00D, + nullptr, + 310, + 400, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGradOffset(00J30B20B20B20D"), + &BuiltInFunction::function_textureProjGradOffset_00J30B20B20B20D, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("asinh(10B"), + &BuiltInFunction::function_asinh_10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("textureProjGrad(00X30B10B10B"), + &BuiltInFunction::function_textureProjGrad_00X30B10B10B, + nullptr, + 300, + 130, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("floor(00B"), + &BuiltInFunction::function_floor_00B, + nullptr, + 0, + 0, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("gl_DrawID"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInVariable::kVar_gl_DrawID, + nullptr, + 0, + Shader::VERTEX, + &ShBuiltInResources::ANGLE_multi_draw, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("atomicOr(00D00D"), + &BuiltInFunction::function_atomicOr_00D00D, + nullptr, + 310, + 430, + Shader::ALL, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr), + SymbolEntry(ImmutableString("texture3DLod(00J20B00B"), + nullptr, + nullptr, + -1, + -1, + Shader::ALL, + &BuiltInFunction::function_texture3DLod_00J20B00B, + nullptr, + 100, + Shader::FRAGMENT, + &ShBuiltInResources::OES_texture_3D, + nullptr, + nullptr, + -1, + Shader::ALL, + nullptr)}; + +constexpr UnmangledEntry unmangled[] = { + UnmangledEntry(ImmutableString("all"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("textureProj"), + &UnmangledBuiltIns::OES_EGL_image_external_essl3, + &UnmangledBuiltIns::UNDEFINED, + 300, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("unpackUnorm4x8"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("fwidth"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 0, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("rgb_2_yuv"), + &UnmangledBuiltIns::EXT_YUV_target, + &UnmangledBuiltIns::UNDEFINED, + 300, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("atomicCounterIncrement"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 420, + Shader::ALL), + UnmangledEntry(ImmutableString("yuv_2_rgb"), + &UnmangledBuiltIns::EXT_YUV_target, + &UnmangledBuiltIns::UNDEFINED, + 300, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("findLSB"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("textureCubeGradEXT"), + &UnmangledBuiltIns::EXT_shader_texture_lod, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("memoryBarrierImage"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("packSnorm4x8"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("inverse"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 140, + Shader::ALL), + UnmangledEntry(ImmutableString("textureCubeLod"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 100, + 0, + Shader::VERTEX), + UnmangledEntry(ImmutableString("texture"), + &UnmangledBuiltIns::OES_EGL_image_external_essl3, + &UnmangledBuiltIns::UNDEFINED, + 300, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("frexp"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("degrees"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("imulExtended"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("texture2DProjGradEXT"), + &UnmangledBuiltIns::EXT_shader_texture_lod, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("atomicAnd"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("textureProjGradOffset"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("roundEven"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("texture2DProjLodEXT"), + &UnmangledBuiltIns::EXT_shader_texture_lod, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("memoryBarrierAtomicCounter"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("ceil"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("not"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("texture2DRectProj"), + &UnmangledBuiltIns::ARB_texture_rectangle, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("mod"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("floatBitsToInt"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 330, + Shader::ALL), + UnmangledEntry(ImmutableString("radians"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("smoothstep"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("textureProjGrad"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("lessThan"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("dFdy"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 0, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("modf"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("unpackSnorm4x8"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("round"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("textureOffset"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("clamp"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("findMSB"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("texture2DRect"), + &UnmangledBuiltIns::ARB_texture_rectangle, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("acosh"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("cosh"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("uaddCarry"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("asin"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("isnan"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("atomicMax"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("bitfieldReverse"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("dFdx"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 0, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("memoryBarrierShared"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::COMPUTE), + UnmangledEntry(ImmutableString("texture3DLod"), + &UnmangledBuiltIns::OES_texture_3D, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("textureLod"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("faceforward"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("abs"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("max"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("unpackSnorm2x16"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 420, + Shader::ALL), + UnmangledEntry(ImmutableString("log2"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("textureGrad"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("barrier"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::COMPUTE), + UnmangledEntry(ImmutableString("texture2DProj"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 100, + 0, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("atomicCounterDecrement"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 420, + Shader::ALL), + UnmangledEntry(ImmutableString("lessThanEqual"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("transpose"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 120, + Shader::ALL), + UnmangledEntry(ImmutableString("step"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("sinh"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("textureProjOffset"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("trunc"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("cos"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("equal"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("texture2DLodEXT"), + &UnmangledBuiltIns::EXT_shader_texture_lod, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("usubBorrow"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("texelFetchOffset"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("length"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("textureSize"), + &UnmangledBuiltIns::OES_EGL_image_external_essl3, + &UnmangledBuiltIns::UNDEFINED, + 300, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("acos"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("uintBitsToFloat"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 330, + Shader::ALL), + UnmangledEntry(ImmutableString("packUnorm2x16"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("unpackHalf2x16"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 420, + Shader::ALL), + UnmangledEntry(ImmutableString("matrixCompMult"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("pow"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("texture2DProjLod"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 100, + 0, + Shader::VERTEX), + UnmangledEntry(ImmutableString("ldexp"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("floatBitsToUint"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 330, + Shader::ALL), + UnmangledEntry(ImmutableString("textureProjLod"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("textureCubeLodEXT"), + &UnmangledBuiltIns::EXT_shader_texture_lod, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("imageStore"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("textureGatherOffset"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("textureProjLodOffset"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("log"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("bitCount"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("exp2"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("atomicCompSwap"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("fract"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("EmitVertex"), + &UnmangledBuiltIns::EXT_geometry_shader, + &UnmangledBuiltIns::UNDEFINED, + 310, + -1, + Shader::GEOMETRY_EXT), + UnmangledEntry(ImmutableString("determinant"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("textureGather"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("greaterThanEqual"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("greaterThan"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("bitfieldInsert"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("texture3DProj"), + &UnmangledBuiltIns::OES_texture_3D, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("packUnorm4x8"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("sign"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("inversesqrt"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("distance"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("tanh"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("texture2DGradEXT"), + &UnmangledBuiltIns::EXT_shader_texture_lod, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("memoryBarrier"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 420, + Shader::ALL), + UnmangledEntry(ImmutableString("atomicCounter"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 420, + Shader::ALL), + UnmangledEntry(ImmutableString("intBitsToFloat"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 330, + Shader::ALL), + UnmangledEntry(ImmutableString("bitfieldExtract"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("texture3DProjLod"), + &UnmangledBuiltIns::OES_texture_3D, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("atomicAdd"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("asinh"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("texture2D"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 100, + 0, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("memoryBarrierBuffer"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("tan"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("any"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("atomicXor"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("normalize"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("imageLoad"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("floor"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("textureLodOffset"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("atanh"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("cross"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("sqrt"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("mix"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("sin"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("atomicExchange"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("textureGradOffset"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("atan"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("unpackUnorm2x16"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("reflect"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("isinf"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("texture3D"), + &UnmangledBuiltIns::OES_texture_3D, + &UnmangledBuiltIns::UNDEFINED, + 100, + -1, + Shader::FRAGMENT), + UnmangledEntry(ImmutableString("umulExtended"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 400, + Shader::ALL), + UnmangledEntry(ImmutableString("atomicOr"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("texelFetch"), + &UnmangledBuiltIns::OES_EGL_image_external_essl3, + &UnmangledBuiltIns::UNDEFINED, + 300, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("EndPrimitive"), + &UnmangledBuiltIns::EXT_geometry_shader, + &UnmangledBuiltIns::UNDEFINED, + 310, + -1, + Shader::GEOMETRY_EXT), + UnmangledEntry(ImmutableString("notEqual"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("outerProduct"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 120, + Shader::ALL), + UnmangledEntry(ImmutableString("imageSize"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + -1, + Shader::ALL), + UnmangledEntry(ImmutableString("refract"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("min"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 130, + Shader::ALL), + UnmangledEntry(ImmutableString("textureCube"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 100, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("packSnorm2x16"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 420, + Shader::ALL), + UnmangledEntry(ImmutableString("exp"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL), + UnmangledEntry(ImmutableString("groupMemoryBarrier"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::COMPUTE), + UnmangledEntry(ImmutableString("atomicMin"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 310, + 430, + Shader::ALL), + UnmangledEntry(ImmutableString("packHalf2x16"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 300, + 420, + Shader::ALL), + UnmangledEntry(ImmutableString("texture2DLod"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 100, + 0, + Shader::VERTEX), + UnmangledEntry(ImmutableString("dot"), + &UnmangledBuiltIns::UNDEFINED, + &UnmangledBuiltIns::UNDEFINED, + 0, + 0, + Shader::ALL)}; + +} // namespace BuiltInArray + +void TSymbolTable::initializeBuiltInVariables(sh::GLenum shaderType, + ShShaderSpec spec, + const ShBuiltInResources &resources) +{ + const TSourceLoc zeroSourceLoc = {0, 0, 0, 0}; + TFieldList *fields_gl_DepthRangeParameters = new TFieldList(); + fields_gl_DepthRangeParameters->push_back( + new TField(new TType(EbtFloat, EbpHigh, EvqGlobal, 1, 1), BuiltInName::near, zeroSourceLoc, + SymbolType::BuiltIn)); + fields_gl_DepthRangeParameters->push_back( + new TField(new TType(EbtFloat, EbpHigh, EvqGlobal, 1, 1), BuiltInName::far, zeroSourceLoc, + SymbolType::BuiltIn)); + fields_gl_DepthRangeParameters->push_back( + new TField(new TType(EbtFloat, EbpHigh, EvqGlobal, 1, 1), BuiltInName::diff, zeroSourceLoc, + SymbolType::BuiltIn)); + TStructure *gl_DepthRangeParameters = + new TStructure(BuiltInId::gl_DepthRangeParameters, BuiltInName::gl_DepthRangeParameters, + TExtension::UNDEFINED, fields_gl_DepthRangeParameters); + mVar_gl_DepthRangeParameters = gl_DepthRangeParameters; + TType *type_gl_DepthRange = new TType(gl_DepthRangeParameters, false); + type_gl_DepthRange->setQualifier(EvqUniform); + type_gl_DepthRange->realize(); + mVar_gl_DepthRange = + new TVariable(BuiltInId::gl_DepthRange, BuiltInName::gl_DepthRange, SymbolType::BuiltIn, + TExtension::UNDEFINED, type_gl_DepthRange); + mVar_gl_MaxVertexAttribs = new TVariable( + BuiltInId::gl_MaxVertexAttribs, BuiltInName::gl_MaxVertexAttribs, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxVertexAttribs); + static_cast(mVar_gl_MaxVertexAttribs)->shareConstPointer(unionArray); + } + mVar_gl_MaxVertexUniformVectors = + new TVariable(BuiltInId::gl_MaxVertexUniformVectors, + BuiltInName::gl_MaxVertexUniformVectors, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxVertexUniformVectors); + static_cast(mVar_gl_MaxVertexUniformVectors)->shareConstPointer(unionArray); + } + mVar_gl_MaxVertexTextureImageUnits = + new TVariable(BuiltInId::gl_MaxVertexTextureImageUnits, + BuiltInName::gl_MaxVertexTextureImageUnits, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxVertexTextureImageUnits); + static_cast(mVar_gl_MaxVertexTextureImageUnits)->shareConstPointer(unionArray); + } + mVar_gl_MaxCombinedTextureImageUnits = + new TVariable(BuiltInId::gl_MaxCombinedTextureImageUnits, + BuiltInName::gl_MaxCombinedTextureImageUnits, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxCombinedTextureImageUnits); + static_cast(mVar_gl_MaxCombinedTextureImageUnits) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxTextureImageUnits = + new TVariable(BuiltInId::gl_MaxTextureImageUnits, BuiltInName::gl_MaxTextureImageUnits, + SymbolType::BuiltIn, TExtension::UNDEFINED, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxTextureImageUnits); + static_cast(mVar_gl_MaxTextureImageUnits)->shareConstPointer(unionArray); + } + mVar_gl_MaxFragmentUniformVectors = + new TVariable(BuiltInId::gl_MaxFragmentUniformVectors, + BuiltInName::gl_MaxFragmentUniformVectors, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxFragmentUniformVectors); + static_cast(mVar_gl_MaxFragmentUniformVectors)->shareConstPointer(unionArray); + } + mVar_gl_MaxVaryingVectors = new TVariable( + BuiltInId::gl_MaxVaryingVectors, BuiltInName::gl_MaxVaryingVectors, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxVaryingVectors); + static_cast(mVar_gl_MaxVaryingVectors)->shareConstPointer(unionArray); + } + mVar_gl_MaxDrawBuffers = new TVariable( + BuiltInId::gl_MaxDrawBuffers, BuiltInName::gl_MaxDrawBuffers, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxDrawBuffers); + static_cast(mVar_gl_MaxDrawBuffers)->shareConstPointer(unionArray); + } + mVar_gl_MaxDualSourceDrawBuffersEXT = new TVariable( + BuiltInId::gl_MaxDualSourceDrawBuffersEXT, BuiltInName::gl_MaxDualSourceDrawBuffersEXT, + SymbolType::BuiltIn, TExtension::EXT_blend_func_extended, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxDualSourceDrawBuffers); + static_cast(mVar_gl_MaxDualSourceDrawBuffersEXT) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxVertexOutputVectors = + new TVariable(BuiltInId::gl_MaxVertexOutputVectors, BuiltInName::gl_MaxVertexOutputVectors, + SymbolType::BuiltIn, TExtension::UNDEFINED, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxVertexOutputVectors); + static_cast(mVar_gl_MaxVertexOutputVectors)->shareConstPointer(unionArray); + } + mVar_gl_MaxFragmentInputVectors = + new TVariable(BuiltInId::gl_MaxFragmentInputVectors, + BuiltInName::gl_MaxFragmentInputVectors, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxFragmentInputVectors); + static_cast(mVar_gl_MaxFragmentInputVectors)->shareConstPointer(unionArray); + } + mVar_gl_MinProgramTexelOffset = + new TVariable(BuiltInId::gl_MinProgramTexelOffset, BuiltInName::gl_MinProgramTexelOffset, + SymbolType::BuiltIn, TExtension::UNDEFINED, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MinProgramTexelOffset); + static_cast(mVar_gl_MinProgramTexelOffset)->shareConstPointer(unionArray); + } + mVar_gl_MaxProgramTexelOffset = + new TVariable(BuiltInId::gl_MaxProgramTexelOffset, BuiltInName::gl_MaxProgramTexelOffset, + SymbolType::BuiltIn, TExtension::UNDEFINED, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxProgramTexelOffset); + static_cast(mVar_gl_MaxProgramTexelOffset)->shareConstPointer(unionArray); + } + mVar_gl_MaxImageUnits = new TVariable( + BuiltInId::gl_MaxImageUnits, BuiltInName::gl_MaxImageUnits, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxImageUnits); + static_cast(mVar_gl_MaxImageUnits)->shareConstPointer(unionArray); + } + mVar_gl_MaxVertexImageUniforms = + new TVariable(BuiltInId::gl_MaxVertexImageUniforms, BuiltInName::gl_MaxVertexImageUniforms, + SymbolType::BuiltIn, TExtension::UNDEFINED, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxVertexImageUniforms); + static_cast(mVar_gl_MaxVertexImageUniforms)->shareConstPointer(unionArray); + } + mVar_gl_MaxFragmentImageUniforms = + new TVariable(BuiltInId::gl_MaxFragmentImageUniforms, + BuiltInName::gl_MaxFragmentImageUniforms, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxFragmentImageUniforms); + static_cast(mVar_gl_MaxFragmentImageUniforms)->shareConstPointer(unionArray); + } + mVar_gl_MaxComputeImageUniforms = + new TVariable(BuiltInId::gl_MaxComputeImageUniforms, + BuiltInName::gl_MaxComputeImageUniforms, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxComputeImageUniforms); + static_cast(mVar_gl_MaxComputeImageUniforms)->shareConstPointer(unionArray); + } + mVar_gl_MaxCombinedImageUniforms = + new TVariable(BuiltInId::gl_MaxCombinedImageUniforms, + BuiltInName::gl_MaxCombinedImageUniforms, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxCombinedImageUniforms); + static_cast(mVar_gl_MaxCombinedImageUniforms)->shareConstPointer(unionArray); + } + mVar_gl_MaxCombinedShaderOutputResources = + new TVariable(BuiltInId::gl_MaxCombinedShaderOutputResources, + BuiltInName::gl_MaxCombinedShaderOutputResources, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxCombinedShaderOutputResources); + static_cast(mVar_gl_MaxCombinedShaderOutputResources) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxComputeWorkGroupCount = + new TVariable(BuiltInId::gl_MaxComputeWorkGroupCount, + BuiltInName::gl_MaxComputeWorkGroupCount, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[3]; + for (size_t index = 0u; index < 3; ++index) + { + unionArray[index].setIConst(resources.MaxComputeWorkGroupCount[index]); + } + static_cast(mVar_gl_MaxComputeWorkGroupCount)->shareConstPointer(unionArray); + } + mVar_gl_MaxComputeWorkGroupSize = + new TVariable(BuiltInId::gl_MaxComputeWorkGroupSize, + BuiltInName::gl_MaxComputeWorkGroupSize, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[3]; + for (size_t index = 0u; index < 3; ++index) + { + unionArray[index].setIConst(resources.MaxComputeWorkGroupSize[index]); + } + static_cast(mVar_gl_MaxComputeWorkGroupSize)->shareConstPointer(unionArray); + } + mVar_gl_MaxComputeUniformComponents = + new TVariable(BuiltInId::gl_MaxComputeUniformComponents, + BuiltInName::gl_MaxComputeUniformComponents, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxComputeUniformComponents); + static_cast(mVar_gl_MaxComputeUniformComponents) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxComputeTextureImageUnits = + new TVariable(BuiltInId::gl_MaxComputeTextureImageUnits, + BuiltInName::gl_MaxComputeTextureImageUnits, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxComputeTextureImageUnits); + static_cast(mVar_gl_MaxComputeTextureImageUnits) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxComputeAtomicCounters = + new TVariable(BuiltInId::gl_MaxComputeAtomicCounters, + BuiltInName::gl_MaxComputeAtomicCounters, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxComputeAtomicCounters); + static_cast(mVar_gl_MaxComputeAtomicCounters)->shareConstPointer(unionArray); + } + mVar_gl_MaxComputeAtomicCounterBuffers = + new TVariable(BuiltInId::gl_MaxComputeAtomicCounterBuffers, + BuiltInName::gl_MaxComputeAtomicCounterBuffers, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxComputeAtomicCounterBuffers); + static_cast(mVar_gl_MaxComputeAtomicCounterBuffers) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxVertexAtomicCounters = + new TVariable(BuiltInId::gl_MaxVertexAtomicCounters, + BuiltInName::gl_MaxVertexAtomicCounters, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxVertexAtomicCounters); + static_cast(mVar_gl_MaxVertexAtomicCounters)->shareConstPointer(unionArray); + } + mVar_gl_MaxFragmentAtomicCounters = + new TVariable(BuiltInId::gl_MaxFragmentAtomicCounters, + BuiltInName::gl_MaxFragmentAtomicCounters, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxFragmentAtomicCounters); + static_cast(mVar_gl_MaxFragmentAtomicCounters)->shareConstPointer(unionArray); + } + mVar_gl_MaxCombinedAtomicCounters = + new TVariable(BuiltInId::gl_MaxCombinedAtomicCounters, + BuiltInName::gl_MaxCombinedAtomicCounters, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxCombinedAtomicCounters); + static_cast(mVar_gl_MaxCombinedAtomicCounters)->shareConstPointer(unionArray); + } + mVar_gl_MaxAtomicCounterBindings = + new TVariable(BuiltInId::gl_MaxAtomicCounterBindings, + BuiltInName::gl_MaxAtomicCounterBindings, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxAtomicCounterBindings); + static_cast(mVar_gl_MaxAtomicCounterBindings)->shareConstPointer(unionArray); + } + mVar_gl_MaxVertexAtomicCounterBuffers = + new TVariable(BuiltInId::gl_MaxVertexAtomicCounterBuffers, + BuiltInName::gl_MaxVertexAtomicCounterBuffers, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxVertexAtomicCounterBuffers); + static_cast(mVar_gl_MaxVertexAtomicCounterBuffers) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxFragmentAtomicCounterBuffers = + new TVariable(BuiltInId::gl_MaxFragmentAtomicCounterBuffers, + BuiltInName::gl_MaxFragmentAtomicCounterBuffers, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxFragmentAtomicCounterBuffers); + static_cast(mVar_gl_MaxFragmentAtomicCounterBuffers) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxCombinedAtomicCounterBuffers = + new TVariable(BuiltInId::gl_MaxCombinedAtomicCounterBuffers, + BuiltInName::gl_MaxCombinedAtomicCounterBuffers, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxCombinedAtomicCounterBuffers); + static_cast(mVar_gl_MaxCombinedAtomicCounterBuffers) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxAtomicCounterBufferSize = + new TVariable(BuiltInId::gl_MaxAtomicCounterBufferSize, + BuiltInName::gl_MaxAtomicCounterBufferSize, SymbolType::BuiltIn, + TExtension::UNDEFINED, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxAtomicCounterBufferSize); + static_cast(mVar_gl_MaxAtomicCounterBufferSize)->shareConstPointer(unionArray); + } + mVar_gl_MaxGeometryInputComponents = new TVariable( + BuiltInId::gl_MaxGeometryInputComponents, BuiltInName::gl_MaxGeometryInputComponents, + SymbolType::BuiltIn, TExtension::EXT_geometry_shader, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxGeometryInputComponents); + static_cast(mVar_gl_MaxGeometryInputComponents)->shareConstPointer(unionArray); + } + mVar_gl_MaxGeometryOutputComponents = new TVariable( + BuiltInId::gl_MaxGeometryOutputComponents, BuiltInName::gl_MaxGeometryOutputComponents, + SymbolType::BuiltIn, TExtension::EXT_geometry_shader, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxGeometryOutputComponents); + static_cast(mVar_gl_MaxGeometryOutputComponents) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxGeometryImageUniforms = new TVariable( + BuiltInId::gl_MaxGeometryImageUniforms, BuiltInName::gl_MaxGeometryImageUniforms, + SymbolType::BuiltIn, TExtension::EXT_geometry_shader, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxGeometryImageUniforms); + static_cast(mVar_gl_MaxGeometryImageUniforms)->shareConstPointer(unionArray); + } + mVar_gl_MaxGeometryTextureImageUnits = new TVariable( + BuiltInId::gl_MaxGeometryTextureImageUnits, BuiltInName::gl_MaxGeometryTextureImageUnits, + SymbolType::BuiltIn, TExtension::EXT_geometry_shader, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxGeometryTextureImageUnits); + static_cast(mVar_gl_MaxGeometryTextureImageUnits) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxGeometryOutputVertices = new TVariable( + BuiltInId::gl_MaxGeometryOutputVertices, BuiltInName::gl_MaxGeometryOutputVertices, + SymbolType::BuiltIn, TExtension::EXT_geometry_shader, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxGeometryOutputVertices); + static_cast(mVar_gl_MaxGeometryOutputVertices)->shareConstPointer(unionArray); + } + mVar_gl_MaxGeometryTotalOutputComponents = new TVariable( + BuiltInId::gl_MaxGeometryTotalOutputComponents, + BuiltInName::gl_MaxGeometryTotalOutputComponents, SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxGeometryTotalOutputComponents); + static_cast(mVar_gl_MaxGeometryTotalOutputComponents) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxGeometryUniformComponents = new TVariable( + BuiltInId::gl_MaxGeometryUniformComponents, BuiltInName::gl_MaxGeometryUniformComponents, + SymbolType::BuiltIn, TExtension::EXT_geometry_shader, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxGeometryUniformComponents); + static_cast(mVar_gl_MaxGeometryUniformComponents) + ->shareConstPointer(unionArray); + } + mVar_gl_MaxGeometryAtomicCounters = new TVariable( + BuiltInId::gl_MaxGeometryAtomicCounters, BuiltInName::gl_MaxGeometryAtomicCounters, + SymbolType::BuiltIn, TExtension::EXT_geometry_shader, + StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxGeometryAtomicCounters); + static_cast(mVar_gl_MaxGeometryAtomicCounters)->shareConstPointer(unionArray); + } + mVar_gl_MaxGeometryAtomicCounterBuffers = new TVariable( + BuiltInId::gl_MaxGeometryAtomicCounterBuffers, + BuiltInName::gl_MaxGeometryAtomicCounterBuffers, SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, StaticType::Get()); + { + TConstantUnion *unionArray = new TConstantUnion[1]; + unionArray[0].setIConst(resources.MaxGeometryAtomicCounterBuffers); + static_cast(mVar_gl_MaxGeometryAtomicCounterBuffers) + ->shareConstPointer(unionArray); + } + TType *type_gl_FragData = new TType(EbtFloat, EbpMedium, EvqFragData, 4); + if (spec != SH_WEBGL2_SPEC && spec != SH_WEBGL3_SPEC) + { + type_gl_FragData->makeArray(resources.MaxDrawBuffers); + } + else + { + type_gl_FragData->makeArray(1u); + } + type_gl_FragData->realize(); + mVar_gl_FragData = new TVariable(BuiltInId::gl_FragData, BuiltInName::gl_FragData, + SymbolType::BuiltIn, TExtension::UNDEFINED, type_gl_FragData); + TType *type_gl_SecondaryFragDataEXT = + new TType(EbtFloat, EbpMedium, EvqSecondaryFragDataEXT, 4, 1); + type_gl_SecondaryFragDataEXT->makeArray(resources.MaxDualSourceDrawBuffers); + type_gl_SecondaryFragDataEXT->realize(); + mVar_gl_SecondaryFragDataEXT = new TVariable( + BuiltInId::gl_SecondaryFragDataEXT, BuiltInName::gl_SecondaryFragDataEXT, + SymbolType::BuiltIn, TExtension::EXT_blend_func_extended, type_gl_SecondaryFragDataEXT); + TType *type_gl_FragDepthEXT = new TType( + EbtFloat, resources.FragmentPrecisionHigh ? EbpHigh : EbpMedium, EvqFragDepthEXT, 1); + type_gl_FragDepthEXT->realize(); + mVar_gl_FragDepthEXT = + new TVariable(BuiltInId::gl_FragDepthEXT, BuiltInName::gl_FragDepthEXT, SymbolType::BuiltIn, + TExtension::EXT_frag_depth, type_gl_FragDepthEXT); + TType *type_gl_LastFragData = new TType(EbtFloat, EbpMedium, EvqLastFragData, 4, 1); + type_gl_LastFragData->makeArray(resources.MaxDrawBuffers); + type_gl_LastFragData->realize(); + mVar_gl_LastFragData = + new TVariable(BuiltInId::gl_LastFragData, BuiltInName::gl_LastFragData, SymbolType::BuiltIn, + TExtension::EXT_shader_framebuffer_fetch, type_gl_LastFragData); + TType *type_gl_LastFragDataNV = new TType(EbtFloat, EbpMedium, EvqLastFragData, 4, 1); + type_gl_LastFragDataNV->makeArray(resources.MaxDrawBuffers); + type_gl_LastFragDataNV->realize(); + mVar_gl_LastFragDataNV = new TVariable( + BuiltInId::gl_LastFragDataNV, BuiltInName::gl_LastFragData, SymbolType::BuiltIn, + TExtension::NV_shader_framebuffer_fetch, type_gl_LastFragDataNV); + TFieldList *fields_gl_PerVertex = new TFieldList(); + fields_gl_PerVertex->push_back(new TField(new TType(EbtFloat, EbpHigh, EvqPosition, 4, 1), + BuiltInName::gl_Position, zeroSourceLoc, + SymbolType::BuiltIn)); + TInterfaceBlock *gl_PerVertex = + new TInterfaceBlock(BuiltInId::gl_PerVertex, BuiltInName::gl_PerVertex, + TExtension::EXT_geometry_shader, fields_gl_PerVertex); + mVar_gl_PerVertex = gl_PerVertex; + TType *type_gl_in = new TType(gl_PerVertex, EvqPerVertexIn, TLayoutQualifier::Create()); + type_gl_in->makeArray(0u); + type_gl_in->realize(); + mVar_gl_in = new TVariable(BuiltInId::gl_in, BuiltInName::gl_in, SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, type_gl_in); + TFieldList *fields_gl_PerVertexOutBlock = new TFieldList(); + fields_gl_PerVertexOutBlock->push_back( + new TField(new TType(EbtFloat, EbpHigh, EvqPosition, 4, 1), BuiltInName::gl_Position, + zeroSourceLoc, SymbolType::BuiltIn)); + TInterfaceBlock *gl_PerVertexOutBlock = + new TInterfaceBlock(BuiltInId::gl_PerVertexOutBlock, BuiltInName::gl_PerVertex, + TExtension::EXT_geometry_shader, fields_gl_PerVertexOutBlock); + TType *type_gl_PositionGS = new TType(EbtFloat, EbpHigh, EvqPosition, 4); + type_gl_PositionGS->setInterfaceBlock(gl_PerVertexOutBlock); + type_gl_PositionGS->realize(); + mVar_gl_PositionGS = + new TVariable(BuiltInId::gl_PositionGS, BuiltInName::gl_Position, SymbolType::BuiltIn, + TExtension::EXT_geometry_shader, type_gl_PositionGS); +} + +namespace +{ + +bool CheckESSLVersion(int expected, int actual) +{ + // Not supported + if (expected == -1) + return false; + + // Only ESSL100 + if (expected == 100) + return actual == 100; + + return actual >= expected; +} + +bool CheckGLSLVersion(int expected, int actual) +{ + // Not supported + if (expected == -1) + return false; + + return actual >= expected; +} + +bool CheckShaderType(Shader expected, GLenum actual) +{ + switch (expected) + { + case Shader::ALL: + return true; + case Shader::FRAGMENT: + return actual == GL_FRAGMENT_SHADER; + case Shader::VERTEX: + return actual == GL_VERTEX_SHADER; + case Shader::COMPUTE: + return actual == GL_COMPUTE_SHADER; + case Shader::GEOMETRY: + return actual == GL_GEOMETRY_SHADER; + case Shader::GEOMETRY_EXT: + return actual == GL_GEOMETRY_SHADER_EXT; + case Shader::NOT_COMPUTE: + return actual != GL_COMPUTE_SHADER; + default: + UNREACHABLE(); + return false; + } +} + +} // namespace + +const TSymbol *TSymbolTable::getSymbol(SymbolEntry entry, + const ImmutableString &name, + int version) const +{ + if (entry.name != name) + { + return nullptr; + } + if ((entry.symbol || entry.var) && CheckShaderType(entry.shaderType, mShaderType)) + { + // Non-extension symbol or variable + if (!IsDesktopGLSpec(mShaderSpec) && CheckESSLVersion(entry.esslVersion, version)) + { + return entry.symbol ? entry.symbol : this->*(entry.var); + } + if (IsDesktopGLSpec(mShaderSpec) && CheckGLSLVersion(entry.glslVersion, version)) + { + return entry.symbol ? entry.symbol : this->*(entry.var); + } + } + if (entry.esslExtension && mResources.*(entry.esslExtension) && !IsDesktopGLSpec(mShaderSpec) && + CheckESSLVersion(entry.esslExtVersion, version) && + CheckShaderType(entry.esslExtShaderType, mShaderType)) + { + return entry.esslExtSymbol ? entry.esslExtSymbol : this->*(entry.esslExtVar); + } + if (entry.glslExtension && mResources.*(entry.glslExtension) && IsDesktopGLSpec(mShaderSpec) && + CheckGLSLVersion(entry.glslExtVersion, version) && + CheckShaderType(entry.glslExtShaderType, mShaderType)) + { + return entry.glslExtSymbol ? entry.glslExtSymbol : this->*(entry.glslExtVar); + } + if (entry.esslExtension2 && mResources.*(entry.esslExtension2) && + !IsDesktopGLSpec(mShaderSpec) && CheckESSLVersion(entry.esslExtVersion2, version) && + CheckShaderType(entry.esslExtShaderType2, mShaderType)) + { + return entry.esslExtSymbol2 ? entry.esslExtSymbol2 : this->*(entry.esslExtVar2); + } + return nullptr; +} + +const TSymbol *TSymbolTable::findBuiltIn(const ImmutableString &name, int shaderVersion) const +{ + if (name.length() > 37) + return nullptr; + + uint32_t nameHash = name.mangledNameHash(); + if (nameHash >= 931) + return nullptr; + return getSymbol(BuiltInArray::mangled[nameHash], name, shaderVersion); +} + +const UnmangledBuiltIn *TSymbolTable::getUnmangled(UnmangledEntry entry, + const ImmutableString &name, + int version) const +{ + if (!CheckShaderType(entry.shaderType, mShaderType)) + { + return nullptr; + } + if (entry.name == name) + { + if (!IsDesktopGLSpec(mShaderSpec) && CheckESSLVersion(entry.esslVersion, version)) + { + return entry.esslUnmangled; + } + if (IsDesktopGLSpec(mShaderSpec) && CheckGLSLVersion(entry.glslVersion, version)) + { + return entry.glslUnmangled; + } + } + return nullptr; +} + +const UnmangledBuiltIn *TSymbolTable::getUnmangledBuiltInForShaderVersion( + const ImmutableString &name, + int shaderVersion) +{ + if (name.length() > 26) + return nullptr; + + uint32_t nameHash = name.unmangledNameHash(); + if (nameHash >= 150) + return nullptr; + return getUnmangled(BuiltInArray::unmangled[nameHash], name, shaderVersion); +} + +} // namespace sh diff --git a/src/compiler/translator/SymbolTable_autogen.cpp b/src/compiler/translator/SymbolTable_autogen.cpp index 6833f5038..07c7fefa2 100644 --- a/src/compiler/translator/SymbolTable_autogen.cpp +++ b/src/compiler/translator/SymbolTable_autogen.cpp @@ -16,7 +16,7 @@ #include "compiler/translator/StaticType.h" #include "compiler/translator/Symbol.h" #include "compiler/translator/SymbolTable.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" namespace sh { diff --git a/src/compiler/translator/TranslatorVulkan.cpp b/src/compiler/translator/TranslatorVulkan.cpp index 1770fb44e..b5f2d9c06 100644 --- a/src/compiler/translator/TranslatorVulkan.cpp +++ b/src/compiler/translator/TranslatorVulkan.cpp @@ -23,7 +23,7 @@ #include "compiler/translator/tree_ops/RewriteDfdy.h" #include "compiler/translator/tree_ops/RewriteRowMajorMatrices.h" #include "compiler/translator/tree_ops/RewriteStructSamplers.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" #include "compiler/translator/tree_util/FindFunction.h" #include "compiler/translator/tree_util/FindMain.h" #include "compiler/translator/tree_util/IntermNode_util.h" @@ -220,7 +220,7 @@ ANGLE_NO_DISCARD bool FlipBuiltinVariable(TCompiler *compiler, // Create a swizzle to "builtin.y" TVector swizzleOffsetY = {1}; - TIntermSwizzle *builtinY = new TIntermSwizzle(builtinRef, swizzleOffsetY); + TIntermSwizzle *builtinY = new TIntermSwizzle(builtinRef, swizzleOffsetY); // Create a symbol reference to our new variable that will hold the modified builtin. const TType *type = StaticType::GetForVec( @@ -300,14 +300,14 @@ ANGLE_NO_DISCARD bool AppendVertexShaderDepthCorrectionToMain(TCompiler *compile // Create a swizzle to "gl_Position.z" TVector swizzleOffsetZ = {2}; - TIntermSwizzle *positionZ = new TIntermSwizzle(positionRef, swizzleOffsetZ); + TIntermSwizzle *positionZ = new TIntermSwizzle(positionRef, swizzleOffsetZ); // Create a constant "0.5" TIntermConstantUnion *oneHalf = CreateFloatNode(0.5f); // Create a swizzle to "gl_Position.w" TVector swizzleOffsetW = {3}; - TIntermSwizzle *positionW = new TIntermSwizzle(positionRef->deepCopy(), swizzleOffsetW); + TIntermSwizzle *positionW = new TIntermSwizzle(positionRef->deepCopy(), swizzleOffsetW); // Create the expression "(gl_Position.z + gl_Position.w) * 0.5". TIntermBinary *zPlusW = new TIntermBinary(EOpAdd, positionZ->deepCopy(), positionW->deepCopy()); @@ -521,20 +521,20 @@ ANGLE_NO_DISCARD bool AddLineSegmentRasterizationEmulation(TCompiler *compiler, const TType *vec2Type = StaticType::GetBasic(); // Create a swizzle to "ANGLEUniforms.viewport.xy". - TIntermBinary *viewportRef = CreateDriverUniformRef(driverUniforms, kViewport); + TIntermBinary *viewportRef = CreateDriverUniformRef(driverUniforms, kViewport); TVector swizzleOffsetXY = {0, 1}; - TIntermSwizzle *viewportXY = new TIntermSwizzle(viewportRef->deepCopy(), swizzleOffsetXY); + TIntermSwizzle *viewportXY = new TIntermSwizzle(viewportRef->deepCopy(), swizzleOffsetXY); // Create a swizzle to "ANGLEUniforms.viewport.zw". TVector swizzleOffsetZW = {2, 3}; - TIntermSwizzle *viewportZW = new TIntermSwizzle(viewportRef, swizzleOffsetZW); + TIntermSwizzle *viewportZW = new TIntermSwizzle(viewportRef, swizzleOffsetZW); // ANGLEPosition.xy / ANGLEPosition.w - TIntermSymbol *position = new TIntermSymbol(anglePosition); - TIntermSwizzle *positionXY = new TIntermSwizzle(position, swizzleOffsetXY); + TIntermSymbol *position = new TIntermSymbol(anglePosition); + TIntermSwizzle *positionXY = new TIntermSwizzle(position, swizzleOffsetXY); TVector swizzleOffsetW = {3}; - TIntermSwizzle *positionW = new TIntermSwizzle(position->deepCopy(), swizzleOffsetW); - TIntermBinary *positionNDC = new TIntermBinary(EOpDiv, positionXY, positionW); + TIntermSwizzle *positionW = new TIntermSwizzle(position->deepCopy(), swizzleOffsetW); + TIntermBinary *positionNDC = new TIntermBinary(EOpDiv, positionXY, positionW); // ANGLEPosition * 0.5 TIntermConstantUnion *oneHalf = CreateFloatNode(0.5f); @@ -584,8 +584,8 @@ ANGLE_NO_DISCARD bool AddLineSegmentRasterizationEmulation(TCompiler *compiler, // Create a swizzle to "ba2.yx". TVector swizzleOffsetYX = {1, 0}; - TIntermSymbol *ba2 = CreateTempSymbolNode(ba2Temp); - TIntermSwizzle *ba2YX = new TIntermSwizzle(ba2, swizzleOffsetYX); + TIntermSymbol *ba2 = CreateTempSymbolNode(ba2Temp); + TIntermSwizzle *ba2YX = new TIntermSwizzle(ba2, swizzleOffsetYX); // ba2 + ba2.yx - ba TIntermBinary *ba2PlusBaYX2 = new TIntermBinary(EOpAdd, ba2->deepCopy(), ba2YX); @@ -598,7 +598,7 @@ ANGLE_NO_DISCARD bool AddLineSegmentRasterizationEmulation(TCompiler *compiler, // Create a swizzle to "bp.x". TVector swizzleOffsetX = {0}; - TIntermSwizzle *bpX = new TIntermSwizzle(bp, swizzleOffsetX); + TIntermSwizzle *bpX = new TIntermSwizzle(bp, swizzleOffsetX); // Using a small epsilon value ensures that we don't suffer from numerical instability when // lines are exactly vertical or horizontal. @@ -610,7 +610,7 @@ ANGLE_NO_DISCARD bool AddLineSegmentRasterizationEmulation(TCompiler *compiler, // Create a swizzle to "bp.y". TVector swizzleOffsetY = {1}; - TIntermSwizzle *bpY = new TIntermSwizzle(bp->deepCopy(), swizzleOffsetY); + TIntermSwizzle *bpY = new TIntermSwizzle(bp->deepCopy(), swizzleOffsetY); // bp.y > epsilon TIntermBinary *checkY = new TIntermBinary(EOpGreaterThan, bpY, epsilon->deepCopy()); diff --git a/src/compiler/translator/emulated_builtin_functions_hlsl_autogen.cpp b/src/compiler/translator/emulated_builtin_functions_hlsl_autogen.cpp index c61e77a11..57acf1dc2 100644 --- a/src/compiler/translator/emulated_builtin_functions_hlsl_autogen.cpp +++ b/src/compiler/translator/emulated_builtin_functions_hlsl_autogen.cpp @@ -10,7 +10,7 @@ // HLSL code for emulating GLSL builtin functions not present in HLSL. #include "compiler/translator/BuiltInFunctionEmulator.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" namespace sh { diff --git a/src/compiler/translator/gen_builtin_symbols.py b/src/compiler/translator/gen_builtin_symbols.py index d33249b6d..8e4fe18e5 100644 --- a/src/compiler/translator/gen_builtin_symbols.py +++ b/src/compiler/translator/gen_builtin_symbols.py @@ -33,7 +33,7 @@ template_immutablestring_cpp = """// GENERATED FILE - DO NOT EDIT. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // -// ImmutableString_autogen.cpp: Wrapper for static or pool allocated char arrays, that are guaranteed to be +// ImmutableString_{source_label}autogen.cpp: Wrapper for static or pool allocated char arrays, that are guaranteed to be // valid and unchanged for the duration of the compilation. // Implements mangledNameHash using perfect hash function from gen_builtin_symbols.py @@ -139,7 +139,7 @@ template_immutablestringtest_cpp = """// GENERATED FILE - DO NOT EDIT. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // -// ImmutableString_test_autogen.cpp: +// ImmutableString_test_{source_label}autogen.cpp: // Tests for matching script-generated hashes with runtime computed hashes. #include "compiler/translator/ImmutableString.h" @@ -167,7 +167,7 @@ template_builtin_header = """// GENERATED FILE - DO NOT EDIT. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // -// BuiltIn_autogen.h: +// BuiltIn_{header_label}autogen.h: // Compile-time initialized built-ins. #ifndef COMPILER_TRANSLATOR_TREEUTIL_BUILTIN_AUTOGEN_H_ @@ -200,7 +200,7 @@ namespace BuiltInVariable #endif // COMPILER_TRANSLATOR_TREEUTIL_BUILTIN_AUTOGEN_H_ """ -template_symboltable_h = """// GENERATED FILE - DO NOT EDIT. +template_symboltable_header = """// GENERATED FILE - DO NOT EDIT. // Generated by {script_name} using data from {variable_data_source_name} and // {function_data_source_name}. // @@ -238,13 +238,13 @@ template_symboltable_cpp = """// GENERATED FILE - DO NOT EDIT. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // -// SymbolTable_autogen.cpp: +// SymbolTable_{source_label}autogen.cpp: // Compile-time initialized built-ins. #include "compiler/translator/SymbolTable.h" #include "angle_gl.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" #include "compiler/translator/ImmutableString.h" #include "compiler/translator/StaticType.h" #include "compiler/translator/Symbol.h" @@ -463,7 +463,7 @@ template_parsecontext_header = """// GENERATED FILE - DO NOT EDIT. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // -// ParseContext_autogen.h: +// ParseContext_{header_label}autogen.h: // Helpers for built-in related checks. #ifndef COMPILER_TRANSLATOR_PARSECONTEXT_AUTOGEN_H_ @@ -1102,7 +1102,7 @@ class HashFunction: return (self.G[self.f1(key)] + self.G[self.f2(key)]) % len(self.G) -def get_parsed_functions(functions_txt_filename): +def get_parsed_functions(functions_txt_filename, essl_only): def parse_function_parameters(parameters): if parameters == '': @@ -1163,7 +1163,12 @@ def get_parsed_functions(functions_txt_filename): 'parameters': parse_function_parameters(parameters) } function_props.update(default_metadata) - group_stack[-1]['functions'].append(function_props) + if essl_only: + # Skip GLSL-only functions + if 'essl_level' in function_props: + group_stack[-1]['functions'].append(function_props) + else: + group_stack[-1]['functions'].append(function_props) else: raise Exception('Unexpected function input line: ' + line) @@ -1716,7 +1721,7 @@ def process_single_variable_group(shader_type, group_name, group, builtin_id_dec if essl_level != 'GLSL_BUILTINS': obj = '&BuiltInVariable::kVar_{name_with_suffix}'.format(**template_args) - # TODO(clemendeng@google.com): Add GLSL level once GLSL built-in vars are added + # TODO(http://anglebug.com/3835): Add GLSL level once GLSL built-in vars are added get_builtin_if_statements.add_obj( essl_level, 'COMMON_BUILTINS', shader_type, template_args['name'], obj, template_args['essl_extension'], template_args['glsl_extension'], @@ -1731,7 +1736,7 @@ def process_single_variable_group(shader_type, group_name, group, builtin_id_dec obj = 'mVar_{name_with_suffix}'.format(**template_args) - # TODO(clemendeng@google.com): Add GLSL level once GLSL built-in vars are added + # TODO(http://anglebug.com/3835): Add GLSL level once GLSL built-in vars are added get_builtin_if_statements.add_obj( essl_level, 'COMMON_BUILTINS', shader_type, template_args['name'], obj, template_args['essl_extension'], template_args['glsl_extension'], @@ -1765,46 +1770,10 @@ def process_variable_group(shader_type, group_name, group, builtin_id_declaratio variable_declarations, get_variable_definitions, script_generated_hash_tests) -def main(): - random.seed(0) - set_working_dir() - - parser = argparse.ArgumentParser() - parser.add_argument( - '--dump-intermediate-json', - help='Dump parsed function data as a JSON file builtin_functions.json', - action="store_true") - parser.add_argument('auto_script_command', nargs='?', default='') - args = parser.parse_args() - - test_filename = '../../tests/compiler_tests/ImmutableString_test_autogen.cpp' - variables_json_filename = 'builtin_variables.json' - functions_txt_filename = 'builtin_function_declarations.txt' - - # auto_script parameters. - if args.auto_script_command != '': - inputs = [ - functions_txt_filename, - variables_json_filename, - ] - outputs = [ - 'ImmutableString_autogen.cpp', - 'ParseContext_autogen.h', - 'SymbolTable_autogen.cpp', - 'SymbolTable_autogen.h', - 'tree_util/BuiltIn_autogen.h', - test_filename, - ] - - if args.auto_script_command == 'inputs': - print ','.join(inputs) - elif args.auto_script_command == 'outputs': - print ','.join(outputs) - else: - print('Invalid script parameters') - return 1 - return 0 - +def generate_files(essl_only, args, functions_txt_filename, variables_json_filename, + immutablestring_cpp_filename, immutablestringtest_cpp_filename, + builtin_header_filename, symboltable_cpp_filename, parsecontext_header_filename, + symboltable_header_filename): # Declarations of symbol unique ids builtin_id_declarations = [] @@ -1845,10 +1814,11 @@ def main(): defined_function_variants = set() defined_parameter_names = set() - parsed_functions = get_parsed_functions(functions_txt_filename) + parsed_functions = get_parsed_functions(functions_txt_filename, essl_only) if args.dump_intermediate_json: - with open('builtin_functions.json', 'w') as outfile: + with open('builtin_functions_ESSL.json' if essl_only else 'builtin_functions.json', + 'w') as outfile: def serialize_obj(obj): if isinstance(obj, TType): @@ -1861,6 +1831,7 @@ def main(): parsed_variables = None with open(variables_json_filename) as f: + # TODO(http://anglebug.com/3835): skip loading GLSL-only vars when they are added if essl_only parsed_variables = json.load(f, object_pairs_hook=OrderedDict) # This script uses a perfect hash function to avoid dealing with collisions @@ -1983,32 +1954,97 @@ def main(): 'unmangled_NG': len(unmangled_G), 'unmangled_NS': - len(unmangled_S1) + len(unmangled_S1), + 'header_label': + 'ESSL_' if essl_only else 'complete_', + 'source_label': + 'ESSL_' if essl_only else '' } - with open('ImmutableString_autogen.cpp', 'wt') as outfile_cpp: + with open(immutablestring_cpp_filename, 'wt') as outfile_cpp: output_cpp = template_immutablestring_cpp.format(**output_strings) outfile_cpp.write(output_cpp) - with open(test_filename, 'wt') as outfile_cpp: + with open(immutablestringtest_cpp_filename, 'wt') as outfile_cpp: output_cpp = template_immutablestringtest_cpp.format(**output_strings) outfile_cpp.write(output_cpp) - with open('tree_util/BuiltIn_autogen.h', 'wt') as outfile_header: + with open(builtin_header_filename, 'wt') as outfile_header: output_header = template_builtin_header.format(**output_strings) outfile_header.write(output_header) - with open('SymbolTable_autogen.cpp', 'wt') as outfile_cpp: + with open(symboltable_cpp_filename, 'wt') as outfile_cpp: output_cpp = template_symboltable_cpp.format(**output_strings) outfile_cpp.write(output_cpp) - with open('ParseContext_autogen.h', 'wt') as outfile_header: + with open(parsecontext_header_filename, 'wt') as outfile_header: output_header = template_parsecontext_header.format(**output_strings) outfile_header.write(output_header) - with open('SymbolTable_autogen.h', 'wt') as outfile_h: - output_h = template_symboltable_h.format(**output_strings) - outfile_h.write(output_h) + if not essl_only: + with open(symboltable_header_filename, 'wt') as outfile_h: + output_h = template_symboltable_header.format(**output_strings) + outfile_h.write(output_h) + + +def main(): + random.seed(0) + set_working_dir() + + parser = argparse.ArgumentParser() + parser.add_argument( + '--dump-intermediate-json', + help='Dump parsed function data as a JSON file builtin_functions.json', + action="store_true") + parser.add_argument('auto_script_command', nargs='?', default='') + args = parser.parse_args() + + test_filename = '../../tests/compiler_tests/ImmutableString_test_autogen.cpp' + essl_test_filename = '../../tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp' + variables_json_filename = 'builtin_variables.json' + functions_txt_filename = 'builtin_function_declarations.txt' + + # auto_script parameters. + if args.auto_script_command != '': + inputs = [ + functions_txt_filename, + variables_json_filename, + ] + outputs = [ + 'ImmutableString_autogen.cpp', + 'ParseContext_complete_autogen.h', + 'SymbolTable_autogen.cpp', + 'SymbolTable_autogen.h', + 'tree_util/BuiltIn_complete_autogen.h', + test_filename, + 'ImmutableString_ESSL_autogen.cpp', + 'ParseContext_ESSL_autogen.h', + 'SymbolTable_ESSL_autogen.cpp', + 'tree_util/BuiltIn_ESSL_autogen.h', + essl_test_filename, + ] + + if args.auto_script_command == 'inputs': + print ','.join(inputs) + elif args.auto_script_command == 'outputs': + print ','.join(outputs) + else: + print('Invalid script parameters') + return 1 + return 0 + + # Generate files based on GLSL + ESSL symbols + generate_files(False, args, functions_txt_filename, variables_json_filename, + 'ImmutableString_autogen.cpp', test_filename, + 'tree_util/BuiltIn_complete_autogen.h', 'SymbolTable_autogen.cpp', + 'ParseContext_complete_autogen.h', 'SymbolTable_autogen.h') + + # Generate files based on only ESSL symbols + # Symbol table with GLSL + ESSL symbols is too large for Android + generate_files(True, args, functions_txt_filename, variables_json_filename, + 'ImmutableString_ESSL_autogen.cpp', essl_test_filename, + 'tree_util/BuiltIn_ESSL_autogen.h', 'SymbolTable_ESSL_autogen.cpp', + 'ParseContext_ESSL_autogen.h', 'SymbolTable_autogen.h') return 0 diff --git a/src/compiler/translator/gen_emulated_builtin_function_tables.py b/src/compiler/translator/gen_emulated_builtin_function_tables.py index 96492e500..958ba2c0e 100644 --- a/src/compiler/translator/gen_emulated_builtin_function_tables.py +++ b/src/compiler/translator/gen_emulated_builtin_function_tables.py @@ -22,7 +22,7 @@ template_emulated_builtin_functions_hlsl = """// GENERATED FILE - DO NOT EDIT. // HLSL code for emulating GLSL builtin functions not present in HLSL. #include "compiler/translator/BuiltInFunctionEmulator.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" namespace sh {{ diff --git a/src/compiler/translator/tree_ops/ClampFragDepth.cpp b/src/compiler/translator/tree_ops/ClampFragDepth.cpp index 1710a806d..078f5f142 100644 --- a/src/compiler/translator/tree_ops/ClampFragDepth.cpp +++ b/src/compiler/translator/tree_ops/ClampFragDepth.cpp @@ -12,7 +12,7 @@ #include "compiler/translator/ImmutableString.h" #include "compiler/translator/SymbolTable.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" #include "compiler/translator/tree_util/FindSymbolNode.h" #include "compiler/translator/tree_util/IntermNode_util.h" #include "compiler/translator/tree_util/RunAtTheEndOfShader.h" diff --git a/src/compiler/translator/tree_ops/ClampPointSize.cpp b/src/compiler/translator/tree_ops/ClampPointSize.cpp index c14bd59a7..44c3faa14 100644 --- a/src/compiler/translator/tree_ops/ClampPointSize.cpp +++ b/src/compiler/translator/tree_ops/ClampPointSize.cpp @@ -9,7 +9,7 @@ #include "compiler/translator/tree_ops/ClampPointSize.h" #include "compiler/translator/SymbolTable.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" #include "compiler/translator/tree_util/FindSymbolNode.h" #include "compiler/translator/tree_util/IntermNode_util.h" #include "compiler/translator/tree_util/RunAtTheEndOfShader.h" diff --git a/src/compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.cpp b/src/compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.cpp index 581143bb7..0e5fdf2ba 100644 --- a/src/compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.cpp +++ b/src/compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.cpp @@ -13,7 +13,7 @@ #include "compiler/translator/StaticType.h" #include "compiler/translator/SymbolTable.h" #include "compiler/translator/tree_ops/InitializeVariables.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" #include "compiler/translator/tree_util/FindMain.h" #include "compiler/translator/tree_util/IntermNode_util.h" #include "compiler/translator/tree_util/IntermTraverse.h" diff --git a/src/compiler/translator/tree_ops/EmulateMultiDrawShaderBuiltins.cpp b/src/compiler/translator/tree_ops/EmulateMultiDrawShaderBuiltins.cpp index 11fe32fea..6f43e5c1b 100644 --- a/src/compiler/translator/tree_ops/EmulateMultiDrawShaderBuiltins.cpp +++ b/src/compiler/translator/tree_ops/EmulateMultiDrawShaderBuiltins.cpp @@ -19,7 +19,7 @@ #include "compiler/translator/StaticType.h" #include "compiler/translator/Symbol.h" #include "compiler/translator/SymbolTable.h" -#include "compiler/translator/tree_util/BuiltIn_autogen.h" +#include "compiler/translator/tree_util/BuiltIn.h" #include "compiler/translator/tree_util/IntermTraverse.h" #include "compiler/translator/tree_util/ReplaceVariable.h" #include "compiler/translator/util.h" diff --git a/src/compiler/translator/tree_util/BuiltIn.h b/src/compiler/translator/tree_util/BuiltIn.h new file mode 100644 index 000000000..22c33f9fc --- /dev/null +++ b/src/compiler/translator/tree_util/BuiltIn.h @@ -0,0 +1,18 @@ +// Copyright 2019 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. +// +// BuiltIn.h: +// Chooses BuiltIn_complete_autogen.h or BuiltIn_ESSL_autogen.h +// depending on whether platform is android + +#ifndef COMPILER_TRANSLATOR_TREEUTIL_BUILTIN_H_ +#define COMPILER_TRANSLATOR_TREEUTIL_BUILTIN_H_ + +#if defined(ANDROID) +# include "BuiltIn_ESSL_autogen.h" +#else +# include "BuiltIn_complete_autogen.h" +#endif + +#endif // COMPILER_TRANSLATOR_TREEUTIL_BUILTIN_H_ diff --git a/src/compiler/translator/tree_util/BuiltIn_ESSL_autogen.h b/src/compiler/translator/tree_util/BuiltIn_ESSL_autogen.h new file mode 100644 index 000000000..3f1048779 --- /dev/null +++ b/src/compiler/translator/tree_util/BuiltIn_ESSL_autogen.h @@ -0,0 +1,1386 @@ +// GENERATED FILE - DO NOT EDIT. +// Generated by gen_builtin_symbols.py using data from builtin_variables.json and +// builtin_function_declarations.txt. +// +// Copyright 2019 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. +// +// BuiltIn_ESSL_autogen.h: +// Compile-time initialized built-ins. + +#ifndef COMPILER_TRANSLATOR_TREEUTIL_BUILTIN_AUTOGEN_H_ +#define COMPILER_TRANSLATOR_TREEUTIL_BUILTIN_AUTOGEN_H_ + +#include "compiler/translator/SymbolUniqueId.h" + +namespace sh +{ + +class TVariable; + +class BuiltInId +{ + public: + static constexpr const TSymbolUniqueId radians_Float1 = TSymbolUniqueId(2295); + static constexpr const TSymbolUniqueId pt00B = TSymbolUniqueId(2296); + static constexpr const TSymbolUniqueId radians_Float2 = TSymbolUniqueId(2297); + static constexpr const TSymbolUniqueId pt10B = TSymbolUniqueId(2298); + static constexpr const TSymbolUniqueId radians_Float3 = TSymbolUniqueId(2299); + static constexpr const TSymbolUniqueId pt20B = TSymbolUniqueId(2300); + static constexpr const TSymbolUniqueId radians_Float4 = TSymbolUniqueId(2301); + static constexpr const TSymbolUniqueId pt30B = TSymbolUniqueId(2302); + static constexpr const TSymbolUniqueId degrees_Float1 = TSymbolUniqueId(2303); + static constexpr const TSymbolUniqueId degrees_Float2 = TSymbolUniqueId(2304); + static constexpr const TSymbolUniqueId degrees_Float3 = TSymbolUniqueId(2305); + static constexpr const TSymbolUniqueId degrees_Float4 = TSymbolUniqueId(2306); + static constexpr const TSymbolUniqueId sin_Float1 = TSymbolUniqueId(2307); + static constexpr const TSymbolUniqueId sin_Float2 = TSymbolUniqueId(2308); + static constexpr const TSymbolUniqueId sin_Float3 = TSymbolUniqueId(2309); + static constexpr const TSymbolUniqueId sin_Float4 = TSymbolUniqueId(2310); + static constexpr const TSymbolUniqueId cos_Float1 = TSymbolUniqueId(2311); + static constexpr const TSymbolUniqueId cos_Float2 = TSymbolUniqueId(2312); + static constexpr const TSymbolUniqueId cos_Float3 = TSymbolUniqueId(2313); + static constexpr const TSymbolUniqueId cos_Float4 = TSymbolUniqueId(2314); + static constexpr const TSymbolUniqueId tan_Float1 = TSymbolUniqueId(2315); + static constexpr const TSymbolUniqueId tan_Float2 = TSymbolUniqueId(2316); + static constexpr const TSymbolUniqueId tan_Float3 = TSymbolUniqueId(2317); + static constexpr const TSymbolUniqueId tan_Float4 = TSymbolUniqueId(2318); + static constexpr const TSymbolUniqueId asin_Float1 = TSymbolUniqueId(2319); + static constexpr const TSymbolUniqueId asin_Float2 = TSymbolUniqueId(2320); + static constexpr const TSymbolUniqueId asin_Float3 = TSymbolUniqueId(2321); + static constexpr const TSymbolUniqueId asin_Float4 = TSymbolUniqueId(2322); + static constexpr const TSymbolUniqueId acos_Float1 = TSymbolUniqueId(2323); + static constexpr const TSymbolUniqueId acos_Float2 = TSymbolUniqueId(2324); + static constexpr const TSymbolUniqueId acos_Float3 = TSymbolUniqueId(2325); + static constexpr const TSymbolUniqueId acos_Float4 = TSymbolUniqueId(2326); + static constexpr const TSymbolUniqueId atan_Float1_Float1 = TSymbolUniqueId(2327); + static constexpr const TSymbolUniqueId atan_Float2_Float2 = TSymbolUniqueId(2328); + static constexpr const TSymbolUniqueId atan_Float3_Float3 = TSymbolUniqueId(2329); + static constexpr const TSymbolUniqueId atan_Float4_Float4 = TSymbolUniqueId(2330); + static constexpr const TSymbolUniqueId atan_Float1 = TSymbolUniqueId(2331); + static constexpr const TSymbolUniqueId atan_Float2 = TSymbolUniqueId(2332); + static constexpr const TSymbolUniqueId atan_Float3 = TSymbolUniqueId(2333); + static constexpr const TSymbolUniqueId atan_Float4 = TSymbolUniqueId(2334); + static constexpr const TSymbolUniqueId sinh_Float1 = TSymbolUniqueId(2335); + static constexpr const TSymbolUniqueId sinh_Float2 = TSymbolUniqueId(2336); + static constexpr const TSymbolUniqueId sinh_Float3 = TSymbolUniqueId(2337); + static constexpr const TSymbolUniqueId sinh_Float4 = TSymbolUniqueId(2338); + static constexpr const TSymbolUniqueId cosh_Float1 = TSymbolUniqueId(2339); + static constexpr const TSymbolUniqueId cosh_Float2 = TSymbolUniqueId(2340); + static constexpr const TSymbolUniqueId cosh_Float3 = TSymbolUniqueId(2341); + static constexpr const TSymbolUniqueId cosh_Float4 = TSymbolUniqueId(2342); + static constexpr const TSymbolUniqueId tanh_Float1 = TSymbolUniqueId(2343); + static constexpr const TSymbolUniqueId tanh_Float2 = TSymbolUniqueId(2344); + static constexpr const TSymbolUniqueId tanh_Float3 = TSymbolUniqueId(2345); + static constexpr const TSymbolUniqueId tanh_Float4 = TSymbolUniqueId(2346); + static constexpr const TSymbolUniqueId asinh_Float1 = TSymbolUniqueId(2347); + static constexpr const TSymbolUniqueId asinh_Float2 = TSymbolUniqueId(2348); + static constexpr const TSymbolUniqueId asinh_Float3 = TSymbolUniqueId(2349); + static constexpr const TSymbolUniqueId asinh_Float4 = TSymbolUniqueId(2350); + static constexpr const TSymbolUniqueId acosh_Float1 = TSymbolUniqueId(2351); + static constexpr const TSymbolUniqueId acosh_Float2 = TSymbolUniqueId(2352); + static constexpr const TSymbolUniqueId acosh_Float3 = TSymbolUniqueId(2353); + static constexpr const TSymbolUniqueId acosh_Float4 = TSymbolUniqueId(2354); + static constexpr const TSymbolUniqueId atanh_Float1 = TSymbolUniqueId(2355); + static constexpr const TSymbolUniqueId atanh_Float2 = TSymbolUniqueId(2356); + static constexpr const TSymbolUniqueId atanh_Float3 = TSymbolUniqueId(2357); + static constexpr const TSymbolUniqueId atanh_Float4 = TSymbolUniqueId(2358); + static constexpr const TSymbolUniqueId pow_Float1_Float1 = TSymbolUniqueId(2359); + static constexpr const TSymbolUniqueId pow_Float2_Float2 = TSymbolUniqueId(2360); + static constexpr const TSymbolUniqueId pow_Float3_Float3 = TSymbolUniqueId(2361); + static constexpr const TSymbolUniqueId pow_Float4_Float4 = TSymbolUniqueId(2362); + static constexpr const TSymbolUniqueId exp_Float1 = TSymbolUniqueId(2363); + static constexpr const TSymbolUniqueId exp_Float2 = TSymbolUniqueId(2364); + static constexpr const TSymbolUniqueId exp_Float3 = TSymbolUniqueId(2365); + static constexpr const TSymbolUniqueId exp_Float4 = TSymbolUniqueId(2366); + static constexpr const TSymbolUniqueId log_Float1 = TSymbolUniqueId(2367); + static constexpr const TSymbolUniqueId log_Float2 = TSymbolUniqueId(2368); + static constexpr const TSymbolUniqueId log_Float3 = TSymbolUniqueId(2369); + static constexpr const TSymbolUniqueId log_Float4 = TSymbolUniqueId(2370); + static constexpr const TSymbolUniqueId exp2_Float1 = TSymbolUniqueId(2371); + static constexpr const TSymbolUniqueId exp2_Float2 = TSymbolUniqueId(2372); + static constexpr const TSymbolUniqueId exp2_Float3 = TSymbolUniqueId(2373); + static constexpr const TSymbolUniqueId exp2_Float4 = TSymbolUniqueId(2374); + static constexpr const TSymbolUniqueId log2_Float1 = TSymbolUniqueId(2375); + static constexpr const TSymbolUniqueId log2_Float2 = TSymbolUniqueId(2376); + static constexpr const TSymbolUniqueId log2_Float3 = TSymbolUniqueId(2377); + static constexpr const TSymbolUniqueId log2_Float4 = TSymbolUniqueId(2378); + static constexpr const TSymbolUniqueId sqrt_Float1 = TSymbolUniqueId(2379); + static constexpr const TSymbolUniqueId sqrt_Float2 = TSymbolUniqueId(2380); + static constexpr const TSymbolUniqueId sqrt_Float3 = TSymbolUniqueId(2381); + static constexpr const TSymbolUniqueId sqrt_Float4 = TSymbolUniqueId(2382); + static constexpr const TSymbolUniqueId inversesqrt_Float1 = TSymbolUniqueId(2383); + static constexpr const TSymbolUniqueId inversesqrt_Float2 = TSymbolUniqueId(2384); + static constexpr const TSymbolUniqueId inversesqrt_Float3 = TSymbolUniqueId(2385); + static constexpr const TSymbolUniqueId inversesqrt_Float4 = TSymbolUniqueId(2386); + static constexpr const TSymbolUniqueId abs_Float1 = TSymbolUniqueId(2387); + static constexpr const TSymbolUniqueId abs_Float2 = TSymbolUniqueId(2388); + static constexpr const TSymbolUniqueId abs_Float3 = TSymbolUniqueId(2389); + static constexpr const TSymbolUniqueId abs_Float4 = TSymbolUniqueId(2390); + static constexpr const TSymbolUniqueId abs_Int1 = TSymbolUniqueId(2391); + static constexpr const TSymbolUniqueId pt00D = TSymbolUniqueId(2392); + static constexpr const TSymbolUniqueId abs_Int2 = TSymbolUniqueId(2393); + static constexpr const TSymbolUniqueId pt10D = TSymbolUniqueId(2394); + static constexpr const TSymbolUniqueId abs_Int3 = TSymbolUniqueId(2395); + static constexpr const TSymbolUniqueId pt20D = TSymbolUniqueId(2396); + static constexpr const TSymbolUniqueId abs_Int4 = TSymbolUniqueId(2397); + static constexpr const TSymbolUniqueId pt30D = TSymbolUniqueId(2398); + static constexpr const TSymbolUniqueId sign_Float1 = TSymbolUniqueId(2399); + static constexpr const TSymbolUniqueId sign_Float2 = TSymbolUniqueId(2400); + static constexpr const TSymbolUniqueId sign_Float3 = TSymbolUniqueId(2401); + static constexpr const TSymbolUniqueId sign_Float4 = TSymbolUniqueId(2402); + static constexpr const TSymbolUniqueId sign_Int1 = TSymbolUniqueId(2403); + static constexpr const TSymbolUniqueId sign_Int2 = TSymbolUniqueId(2404); + static constexpr const TSymbolUniqueId sign_Int3 = TSymbolUniqueId(2405); + static constexpr const TSymbolUniqueId sign_Int4 = TSymbolUniqueId(2406); + static constexpr const TSymbolUniqueId floor_Float1 = TSymbolUniqueId(2407); + static constexpr const TSymbolUniqueId floor_Float2 = TSymbolUniqueId(2408); + static constexpr const TSymbolUniqueId floor_Float3 = TSymbolUniqueId(2409); + static constexpr const TSymbolUniqueId floor_Float4 = TSymbolUniqueId(2410); + static constexpr const TSymbolUniqueId trunc_Float1 = TSymbolUniqueId(2411); + static constexpr const TSymbolUniqueId trunc_Float2 = TSymbolUniqueId(2412); + static constexpr const TSymbolUniqueId trunc_Float3 = TSymbolUniqueId(2413); + static constexpr const TSymbolUniqueId trunc_Float4 = TSymbolUniqueId(2414); + static constexpr const TSymbolUniqueId round_Float1 = TSymbolUniqueId(2415); + static constexpr const TSymbolUniqueId round_Float2 = TSymbolUniqueId(2416); + static constexpr const TSymbolUniqueId round_Float3 = TSymbolUniqueId(2417); + static constexpr const TSymbolUniqueId round_Float4 = TSymbolUniqueId(2418); + static constexpr const TSymbolUniqueId roundEven_Float1 = TSymbolUniqueId(2419); + static constexpr const TSymbolUniqueId roundEven_Float2 = TSymbolUniqueId(2420); + static constexpr const TSymbolUniqueId roundEven_Float3 = TSymbolUniqueId(2421); + static constexpr const TSymbolUniqueId roundEven_Float4 = TSymbolUniqueId(2422); + static constexpr const TSymbolUniqueId ceil_Float1 = TSymbolUniqueId(2423); + static constexpr const TSymbolUniqueId ceil_Float2 = TSymbolUniqueId(2424); + static constexpr const TSymbolUniqueId ceil_Float3 = TSymbolUniqueId(2425); + static constexpr const TSymbolUniqueId ceil_Float4 = TSymbolUniqueId(2426); + static constexpr const TSymbolUniqueId fract_Float1 = TSymbolUniqueId(2427); + static constexpr const TSymbolUniqueId fract_Float2 = TSymbolUniqueId(2428); + static constexpr const TSymbolUniqueId fract_Float3 = TSymbolUniqueId(2429); + static constexpr const TSymbolUniqueId fract_Float4 = TSymbolUniqueId(2430); + static constexpr const TSymbolUniqueId mod_Float1_Float1 = TSymbolUniqueId(2431); + static constexpr const TSymbolUniqueId mod_Float2_Float1 = TSymbolUniqueId(2432); + static constexpr const TSymbolUniqueId mod_Float3_Float1 = TSymbolUniqueId(2433); + static constexpr const TSymbolUniqueId mod_Float4_Float1 = TSymbolUniqueId(2434); + static constexpr const TSymbolUniqueId mod_Float2_Float2 = TSymbolUniqueId(2435); + static constexpr const TSymbolUniqueId mod_Float3_Float3 = TSymbolUniqueId(2436); + static constexpr const TSymbolUniqueId mod_Float4_Float4 = TSymbolUniqueId(2437); + static constexpr const TSymbolUniqueId min_Float1_Float1 = TSymbolUniqueId(2438); + static constexpr const TSymbolUniqueId min_Float2_Float1 = TSymbolUniqueId(2439); + static constexpr const TSymbolUniqueId min_Float3_Float1 = TSymbolUniqueId(2440); + static constexpr const TSymbolUniqueId min_Float4_Float1 = TSymbolUniqueId(2441); + static constexpr const TSymbolUniqueId min_Float2_Float2 = TSymbolUniqueId(2442); + static constexpr const TSymbolUniqueId min_Float3_Float3 = TSymbolUniqueId(2443); + static constexpr const TSymbolUniqueId min_Float4_Float4 = TSymbolUniqueId(2444); + static constexpr const TSymbolUniqueId min_Int1_Int1 = TSymbolUniqueId(2445); + static constexpr const TSymbolUniqueId min_Int2_Int2 = TSymbolUniqueId(2446); + static constexpr const TSymbolUniqueId min_Int3_Int3 = TSymbolUniqueId(2447); + static constexpr const TSymbolUniqueId min_Int4_Int4 = TSymbolUniqueId(2448); + static constexpr const TSymbolUniqueId min_Int2_Int1 = TSymbolUniqueId(2449); + static constexpr const TSymbolUniqueId min_Int3_Int1 = TSymbolUniqueId(2450); + static constexpr const TSymbolUniqueId min_Int4_Int1 = TSymbolUniqueId(2451); + static constexpr const TSymbolUniqueId min_UInt1_UInt1 = TSymbolUniqueId(2452); + static constexpr const TSymbolUniqueId pt00E = TSymbolUniqueId(2453); + static constexpr const TSymbolUniqueId min_UInt2_UInt2 = TSymbolUniqueId(2454); + static constexpr const TSymbolUniqueId pt10E = TSymbolUniqueId(2455); + static constexpr const TSymbolUniqueId min_UInt3_UInt3 = TSymbolUniqueId(2456); + static constexpr const TSymbolUniqueId pt20E = TSymbolUniqueId(2457); + static constexpr const TSymbolUniqueId min_UInt4_UInt4 = TSymbolUniqueId(2458); + static constexpr const TSymbolUniqueId pt30E = TSymbolUniqueId(2459); + static constexpr const TSymbolUniqueId min_UInt2_UInt1 = TSymbolUniqueId(2460); + static constexpr const TSymbolUniqueId min_UInt3_UInt1 = TSymbolUniqueId(2461); + static constexpr const TSymbolUniqueId min_UInt4_UInt1 = TSymbolUniqueId(2462); + static constexpr const TSymbolUniqueId max_Float1_Float1 = TSymbolUniqueId(2463); + static constexpr const TSymbolUniqueId max_Float2_Float1 = TSymbolUniqueId(2464); + static constexpr const TSymbolUniqueId max_Float3_Float1 = TSymbolUniqueId(2465); + static constexpr const TSymbolUniqueId max_Float4_Float1 = TSymbolUniqueId(2466); + static constexpr const TSymbolUniqueId max_Float2_Float2 = TSymbolUniqueId(2467); + static constexpr const TSymbolUniqueId max_Float3_Float3 = TSymbolUniqueId(2468); + static constexpr const TSymbolUniqueId max_Float4_Float4 = TSymbolUniqueId(2469); + static constexpr const TSymbolUniqueId max_Int1_Int1 = TSymbolUniqueId(2470); + static constexpr const TSymbolUniqueId max_Int2_Int2 = TSymbolUniqueId(2471); + static constexpr const TSymbolUniqueId max_Int3_Int3 = TSymbolUniqueId(2472); + static constexpr const TSymbolUniqueId max_Int4_Int4 = TSymbolUniqueId(2473); + static constexpr const TSymbolUniqueId max_Int2_Int1 = TSymbolUniqueId(2474); + static constexpr const TSymbolUniqueId max_Int3_Int1 = TSymbolUniqueId(2475); + static constexpr const TSymbolUniqueId max_Int4_Int1 = TSymbolUniqueId(2476); + static constexpr const TSymbolUniqueId max_UInt1_UInt1 = TSymbolUniqueId(2477); + static constexpr const TSymbolUniqueId max_UInt2_UInt2 = TSymbolUniqueId(2478); + static constexpr const TSymbolUniqueId max_UInt3_UInt3 = TSymbolUniqueId(2479); + static constexpr const TSymbolUniqueId max_UInt4_UInt4 = TSymbolUniqueId(2480); + static constexpr const TSymbolUniqueId max_UInt2_UInt1 = TSymbolUniqueId(2481); + static constexpr const TSymbolUniqueId max_UInt3_UInt1 = TSymbolUniqueId(2482); + static constexpr const TSymbolUniqueId max_UInt4_UInt1 = TSymbolUniqueId(2483); + static constexpr const TSymbolUniqueId clamp_Float1_Float1_Float1 = TSymbolUniqueId(2484); + static constexpr const TSymbolUniqueId clamp_Float2_Float1_Float1 = TSymbolUniqueId(2485); + static constexpr const TSymbolUniqueId clamp_Float3_Float1_Float1 = TSymbolUniqueId(2486); + static constexpr const TSymbolUniqueId clamp_Float4_Float1_Float1 = TSymbolUniqueId(2487); + static constexpr const TSymbolUniqueId clamp_Float2_Float2_Float2 = TSymbolUniqueId(2488); + static constexpr const TSymbolUniqueId clamp_Float3_Float3_Float3 = TSymbolUniqueId(2489); + static constexpr const TSymbolUniqueId clamp_Float4_Float4_Float4 = TSymbolUniqueId(2490); + static constexpr const TSymbolUniqueId clamp_Int1_Int1_Int1 = TSymbolUniqueId(2491); + static constexpr const TSymbolUniqueId clamp_Int2_Int1_Int1 = TSymbolUniqueId(2492); + static constexpr const TSymbolUniqueId clamp_Int3_Int1_Int1 = TSymbolUniqueId(2493); + static constexpr const TSymbolUniqueId clamp_Int4_Int1_Int1 = TSymbolUniqueId(2494); + static constexpr const TSymbolUniqueId clamp_Int2_Int2_Int2 = TSymbolUniqueId(2495); + static constexpr const TSymbolUniqueId clamp_Int3_Int3_Int3 = TSymbolUniqueId(2496); + static constexpr const TSymbolUniqueId clamp_Int4_Int4_Int4 = TSymbolUniqueId(2497); + static constexpr const TSymbolUniqueId clamp_UInt1_UInt1_UInt1 = TSymbolUniqueId(2498); + static constexpr const TSymbolUniqueId clamp_UInt2_UInt1_UInt1 = TSymbolUniqueId(2499); + static constexpr const TSymbolUniqueId clamp_UInt3_UInt1_UInt1 = TSymbolUniqueId(2500); + static constexpr const TSymbolUniqueId clamp_UInt4_UInt1_UInt1 = TSymbolUniqueId(2501); + static constexpr const TSymbolUniqueId clamp_UInt2_UInt2_UInt2 = TSymbolUniqueId(2502); + static constexpr const TSymbolUniqueId clamp_UInt3_UInt3_UInt3 = TSymbolUniqueId(2503); + static constexpr const TSymbolUniqueId clamp_UInt4_UInt4_UInt4 = TSymbolUniqueId(2504); + static constexpr const TSymbolUniqueId mix_Float1_Float1_Float1 = TSymbolUniqueId(2505); + static constexpr const TSymbolUniqueId mix_Float2_Float2_Float1 = TSymbolUniqueId(2506); + static constexpr const TSymbolUniqueId mix_Float3_Float3_Float1 = TSymbolUniqueId(2507); + static constexpr const TSymbolUniqueId mix_Float4_Float4_Float1 = TSymbolUniqueId(2508); + static constexpr const TSymbolUniqueId mix_Float2_Float2_Float2 = TSymbolUniqueId(2509); + static constexpr const TSymbolUniqueId mix_Float3_Float3_Float3 = TSymbolUniqueId(2510); + static constexpr const TSymbolUniqueId mix_Float4_Float4_Float4 = TSymbolUniqueId(2511); + static constexpr const TSymbolUniqueId mix_Float1_Float1_Bool1 = TSymbolUniqueId(2512); + static constexpr const TSymbolUniqueId pt00F = TSymbolUniqueId(2513); + static constexpr const TSymbolUniqueId mix_Float2_Float2_Bool2 = TSymbolUniqueId(2514); + static constexpr const TSymbolUniqueId pt10F = TSymbolUniqueId(2515); + static constexpr const TSymbolUniqueId mix_Float3_Float3_Bool3 = TSymbolUniqueId(2516); + static constexpr const TSymbolUniqueId pt20F = TSymbolUniqueId(2517); + static constexpr const TSymbolUniqueId mix_Float4_Float4_Bool4 = TSymbolUniqueId(2518); + static constexpr const TSymbolUniqueId pt30F = TSymbolUniqueId(2519); + static constexpr const TSymbolUniqueId step_Float1_Float1 = TSymbolUniqueId(2520); + static constexpr const TSymbolUniqueId step_Float2_Float2 = TSymbolUniqueId(2521); + static constexpr const TSymbolUniqueId step_Float3_Float3 = TSymbolUniqueId(2522); + static constexpr const TSymbolUniqueId step_Float4_Float4 = TSymbolUniqueId(2523); + static constexpr const TSymbolUniqueId step_Float1_Float2 = TSymbolUniqueId(2524); + static constexpr const TSymbolUniqueId step_Float1_Float3 = TSymbolUniqueId(2525); + static constexpr const TSymbolUniqueId step_Float1_Float4 = TSymbolUniqueId(2526); + static constexpr const TSymbolUniqueId smoothstep_Float1_Float1_Float1 = TSymbolUniqueId(2527); + static constexpr const TSymbolUniqueId smoothstep_Float2_Float2_Float2 = TSymbolUniqueId(2528); + static constexpr const TSymbolUniqueId smoothstep_Float3_Float3_Float3 = TSymbolUniqueId(2529); + static constexpr const TSymbolUniqueId smoothstep_Float4_Float4_Float4 = TSymbolUniqueId(2530); + static constexpr const TSymbolUniqueId smoothstep_Float1_Float1_Float2 = TSymbolUniqueId(2531); + static constexpr const TSymbolUniqueId smoothstep_Float1_Float1_Float3 = TSymbolUniqueId(2532); + static constexpr const TSymbolUniqueId smoothstep_Float1_Float1_Float4 = TSymbolUniqueId(2533); + static constexpr const TSymbolUniqueId modf_Float1_Float1 = TSymbolUniqueId(2534); + static constexpr const TSymbolUniqueId pt_o_00B = TSymbolUniqueId(2535); + static constexpr const TSymbolUniqueId modf_Float2_Float2 = TSymbolUniqueId(2536); + static constexpr const TSymbolUniqueId pt_o_10B = TSymbolUniqueId(2537); + static constexpr const TSymbolUniqueId modf_Float3_Float3 = TSymbolUniqueId(2538); + static constexpr const TSymbolUniqueId pt_o_20B = TSymbolUniqueId(2539); + static constexpr const TSymbolUniqueId modf_Float4_Float4 = TSymbolUniqueId(2540); + static constexpr const TSymbolUniqueId pt_o_30B = TSymbolUniqueId(2541); + static constexpr const TSymbolUniqueId isnan_Float1 = TSymbolUniqueId(2542); + static constexpr const TSymbolUniqueId isnan_Float2 = TSymbolUniqueId(2543); + static constexpr const TSymbolUniqueId isnan_Float3 = TSymbolUniqueId(2544); + static constexpr const TSymbolUniqueId isnan_Float4 = TSymbolUniqueId(2545); + static constexpr const TSymbolUniqueId isinf_Float1 = TSymbolUniqueId(2546); + static constexpr const TSymbolUniqueId isinf_Float2 = TSymbolUniqueId(2547); + static constexpr const TSymbolUniqueId isinf_Float3 = TSymbolUniqueId(2548); + static constexpr const TSymbolUniqueId isinf_Float4 = TSymbolUniqueId(2549); + static constexpr const TSymbolUniqueId floatBitsToInt_Float1 = TSymbolUniqueId(2550); + static constexpr const TSymbolUniqueId floatBitsToInt_Float2 = TSymbolUniqueId(2551); + static constexpr const TSymbolUniqueId floatBitsToInt_Float3 = TSymbolUniqueId(2552); + static constexpr const TSymbolUniqueId floatBitsToInt_Float4 = TSymbolUniqueId(2553); + static constexpr const TSymbolUniqueId floatBitsToUint_Float1 = TSymbolUniqueId(2554); + static constexpr const TSymbolUniqueId floatBitsToUint_Float2 = TSymbolUniqueId(2555); + static constexpr const TSymbolUniqueId floatBitsToUint_Float3 = TSymbolUniqueId(2556); + static constexpr const TSymbolUniqueId floatBitsToUint_Float4 = TSymbolUniqueId(2557); + static constexpr const TSymbolUniqueId intBitsToFloat_Int1 = TSymbolUniqueId(2558); + static constexpr const TSymbolUniqueId intBitsToFloat_Int2 = TSymbolUniqueId(2559); + static constexpr const TSymbolUniqueId intBitsToFloat_Int3 = TSymbolUniqueId(2560); + static constexpr const TSymbolUniqueId intBitsToFloat_Int4 = TSymbolUniqueId(2561); + static constexpr const TSymbolUniqueId uintBitsToFloat_UInt1 = TSymbolUniqueId(2562); + static constexpr const TSymbolUniqueId uintBitsToFloat_UInt2 = TSymbolUniqueId(2563); + static constexpr const TSymbolUniqueId uintBitsToFloat_UInt3 = TSymbolUniqueId(2564); + static constexpr const TSymbolUniqueId uintBitsToFloat_UInt4 = TSymbolUniqueId(2565); + static constexpr const TSymbolUniqueId frexp_Float1_Int1 = TSymbolUniqueId(2566); + static constexpr const TSymbolUniqueId pt_o_00D = TSymbolUniqueId(2567); + static constexpr const TSymbolUniqueId frexp_Float2_Int2 = TSymbolUniqueId(2568); + static constexpr const TSymbolUniqueId pt_o_10D = TSymbolUniqueId(2569); + static constexpr const TSymbolUniqueId frexp_Float3_Int3 = TSymbolUniqueId(2570); + static constexpr const TSymbolUniqueId pt_o_20D = TSymbolUniqueId(2571); + static constexpr const TSymbolUniqueId frexp_Float4_Int4 = TSymbolUniqueId(2572); + static constexpr const TSymbolUniqueId pt_o_30D = TSymbolUniqueId(2573); + static constexpr const TSymbolUniqueId ldexp_Float1_Int1 = TSymbolUniqueId(2574); + static constexpr const TSymbolUniqueId ldexp_Float2_Int2 = TSymbolUniqueId(2575); + static constexpr const TSymbolUniqueId ldexp_Float3_Int3 = TSymbolUniqueId(2576); + static constexpr const TSymbolUniqueId ldexp_Float4_Int4 = TSymbolUniqueId(2577); + static constexpr const TSymbolUniqueId packSnorm2x16_Float2 = TSymbolUniqueId(2578); + static constexpr const TSymbolUniqueId packHalf2x16_Float2 = TSymbolUniqueId(2579); + static constexpr const TSymbolUniqueId unpackSnorm2x16_UInt1 = TSymbolUniqueId(2580); + static constexpr const TSymbolUniqueId unpackHalf2x16_UInt1 = TSymbolUniqueId(2581); + static constexpr const TSymbolUniqueId packUnorm2x16_Float2 = TSymbolUniqueId(2582); + static constexpr const TSymbolUniqueId unpackUnorm2x16_UInt1 = TSymbolUniqueId(2583); + static constexpr const TSymbolUniqueId packUnorm4x8_Float4 = TSymbolUniqueId(2584); + static constexpr const TSymbolUniqueId packSnorm4x8_Float4 = TSymbolUniqueId(2585); + static constexpr const TSymbolUniqueId unpackUnorm4x8_UInt1 = TSymbolUniqueId(2586); + static constexpr const TSymbolUniqueId unpackSnorm4x8_UInt1 = TSymbolUniqueId(2587); + static constexpr const TSymbolUniqueId length_Float1 = TSymbolUniqueId(2588); + static constexpr const TSymbolUniqueId length_Float2 = TSymbolUniqueId(2589); + static constexpr const TSymbolUniqueId length_Float3 = TSymbolUniqueId(2590); + static constexpr const TSymbolUniqueId length_Float4 = TSymbolUniqueId(2591); + static constexpr const TSymbolUniqueId distance_Float1_Float1 = TSymbolUniqueId(2592); + static constexpr const TSymbolUniqueId distance_Float2_Float2 = TSymbolUniqueId(2593); + static constexpr const TSymbolUniqueId distance_Float3_Float3 = TSymbolUniqueId(2594); + static constexpr const TSymbolUniqueId distance_Float4_Float4 = TSymbolUniqueId(2595); + static constexpr const TSymbolUniqueId dot_Float1_Float1 = TSymbolUniqueId(2596); + static constexpr const TSymbolUniqueId dot_Float2_Float2 = TSymbolUniqueId(2597); + static constexpr const TSymbolUniqueId dot_Float3_Float3 = TSymbolUniqueId(2598); + static constexpr const TSymbolUniqueId dot_Float4_Float4 = TSymbolUniqueId(2599); + static constexpr const TSymbolUniqueId cross_Float3_Float3 = TSymbolUniqueId(2600); + static constexpr const TSymbolUniqueId normalize_Float1 = TSymbolUniqueId(2601); + static constexpr const TSymbolUniqueId normalize_Float2 = TSymbolUniqueId(2602); + static constexpr const TSymbolUniqueId normalize_Float3 = TSymbolUniqueId(2603); + static constexpr const TSymbolUniqueId normalize_Float4 = TSymbolUniqueId(2604); + static constexpr const TSymbolUniqueId faceforward_Float1_Float1_Float1 = TSymbolUniqueId(2605); + static constexpr const TSymbolUniqueId faceforward_Float2_Float2_Float2 = TSymbolUniqueId(2606); + static constexpr const TSymbolUniqueId faceforward_Float3_Float3_Float3 = TSymbolUniqueId(2607); + static constexpr const TSymbolUniqueId faceforward_Float4_Float4_Float4 = TSymbolUniqueId(2608); + static constexpr const TSymbolUniqueId reflect_Float1_Float1 = TSymbolUniqueId(2609); + static constexpr const TSymbolUniqueId reflect_Float2_Float2 = TSymbolUniqueId(2610); + static constexpr const TSymbolUniqueId reflect_Float3_Float3 = TSymbolUniqueId(2611); + static constexpr const TSymbolUniqueId reflect_Float4_Float4 = TSymbolUniqueId(2612); + static constexpr const TSymbolUniqueId refract_Float1_Float1_Float1 = TSymbolUniqueId(2613); + static constexpr const TSymbolUniqueId refract_Float2_Float2_Float1 = TSymbolUniqueId(2614); + static constexpr const TSymbolUniqueId refract_Float3_Float3_Float1 = TSymbolUniqueId(2615); + static constexpr const TSymbolUniqueId refract_Float4_Float4_Float1 = TSymbolUniqueId(2616); + static constexpr const TSymbolUniqueId matrixCompMult_Float2x2_Float2x2 = TSymbolUniqueId(2617); + static constexpr const TSymbolUniqueId pt50B = TSymbolUniqueId(2618); + static constexpr const TSymbolUniqueId matrixCompMult_Float3x3_Float3x3 = TSymbolUniqueId(2619); + static constexpr const TSymbolUniqueId ptA0B = TSymbolUniqueId(2620); + static constexpr const TSymbolUniqueId matrixCompMult_Float4x4_Float4x4 = TSymbolUniqueId(2621); + static constexpr const TSymbolUniqueId ptF0B = TSymbolUniqueId(2622); + static constexpr const TSymbolUniqueId matrixCompMult_Float2x3_Float2x3 = TSymbolUniqueId(2623); + static constexpr const TSymbolUniqueId pt90B = TSymbolUniqueId(2624); + static constexpr const TSymbolUniqueId matrixCompMult_Float3x2_Float3x2 = TSymbolUniqueId(2625); + static constexpr const TSymbolUniqueId pt60B = TSymbolUniqueId(2626); + static constexpr const TSymbolUniqueId matrixCompMult_Float2x4_Float2x4 = TSymbolUniqueId(2627); + static constexpr const TSymbolUniqueId ptD0B = TSymbolUniqueId(2628); + static constexpr const TSymbolUniqueId matrixCompMult_Float4x2_Float4x2 = TSymbolUniqueId(2629); + static constexpr const TSymbolUniqueId pt70B = TSymbolUniqueId(2630); + static constexpr const TSymbolUniqueId matrixCompMult_Float3x4_Float3x4 = TSymbolUniqueId(2631); + static constexpr const TSymbolUniqueId ptE0B = TSymbolUniqueId(2632); + static constexpr const TSymbolUniqueId matrixCompMult_Float4x3_Float4x3 = TSymbolUniqueId(2633); + static constexpr const TSymbolUniqueId ptB0B = TSymbolUniqueId(2634); + static constexpr const TSymbolUniqueId outerProduct_Float2_Float2 = TSymbolUniqueId(2635); + static constexpr const TSymbolUniqueId outerProduct_Float3_Float3 = TSymbolUniqueId(2636); + static constexpr const TSymbolUniqueId outerProduct_Float4_Float4 = TSymbolUniqueId(2637); + static constexpr const TSymbolUniqueId outerProduct_Float3_Float2 = TSymbolUniqueId(2638); + static constexpr const TSymbolUniqueId outerProduct_Float2_Float3 = TSymbolUniqueId(2639); + static constexpr const TSymbolUniqueId outerProduct_Float4_Float2 = TSymbolUniqueId(2640); + static constexpr const TSymbolUniqueId outerProduct_Float2_Float4 = TSymbolUniqueId(2641); + static constexpr const TSymbolUniqueId outerProduct_Float4_Float3 = TSymbolUniqueId(2642); + static constexpr const TSymbolUniqueId outerProduct_Float3_Float4 = TSymbolUniqueId(2643); + static constexpr const TSymbolUniqueId transpose_Float2x2 = TSymbolUniqueId(2644); + static constexpr const TSymbolUniqueId transpose_Float3x3 = TSymbolUniqueId(2645); + static constexpr const TSymbolUniqueId transpose_Float4x4 = TSymbolUniqueId(2646); + static constexpr const TSymbolUniqueId transpose_Float3x2 = TSymbolUniqueId(2647); + static constexpr const TSymbolUniqueId transpose_Float2x3 = TSymbolUniqueId(2648); + static constexpr const TSymbolUniqueId transpose_Float4x2 = TSymbolUniqueId(2649); + static constexpr const TSymbolUniqueId transpose_Float2x4 = TSymbolUniqueId(2650); + static constexpr const TSymbolUniqueId transpose_Float4x3 = TSymbolUniqueId(2651); + static constexpr const TSymbolUniqueId transpose_Float3x4 = TSymbolUniqueId(2652); + static constexpr const TSymbolUniqueId determinant_Float2x2 = TSymbolUniqueId(2653); + static constexpr const TSymbolUniqueId determinant_Float3x3 = TSymbolUniqueId(2654); + static constexpr const TSymbolUniqueId determinant_Float4x4 = TSymbolUniqueId(2655); + static constexpr const TSymbolUniqueId inverse_Float2x2 = TSymbolUniqueId(2656); + static constexpr const TSymbolUniqueId inverse_Float3x3 = TSymbolUniqueId(2657); + static constexpr const TSymbolUniqueId inverse_Float4x4 = TSymbolUniqueId(2658); + static constexpr const TSymbolUniqueId lessThan_Float2_Float2 = TSymbolUniqueId(2659); + static constexpr const TSymbolUniqueId lessThan_Float3_Float3 = TSymbolUniqueId(2660); + static constexpr const TSymbolUniqueId lessThan_Float4_Float4 = TSymbolUniqueId(2661); + static constexpr const TSymbolUniqueId lessThan_Int2_Int2 = TSymbolUniqueId(2662); + static constexpr const TSymbolUniqueId lessThan_Int3_Int3 = TSymbolUniqueId(2663); + static constexpr const TSymbolUniqueId lessThan_Int4_Int4 = TSymbolUniqueId(2664); + static constexpr const TSymbolUniqueId lessThan_UInt2_UInt2 = TSymbolUniqueId(2665); + static constexpr const TSymbolUniqueId lessThan_UInt3_UInt3 = TSymbolUniqueId(2666); + static constexpr const TSymbolUniqueId lessThan_UInt4_UInt4 = TSymbolUniqueId(2667); + static constexpr const TSymbolUniqueId lessThanEqual_Float2_Float2 = TSymbolUniqueId(2668); + static constexpr const TSymbolUniqueId lessThanEqual_Float3_Float3 = TSymbolUniqueId(2669); + static constexpr const TSymbolUniqueId lessThanEqual_Float4_Float4 = TSymbolUniqueId(2670); + static constexpr const TSymbolUniqueId lessThanEqual_Int2_Int2 = TSymbolUniqueId(2671); + static constexpr const TSymbolUniqueId lessThanEqual_Int3_Int3 = TSymbolUniqueId(2672); + static constexpr const TSymbolUniqueId lessThanEqual_Int4_Int4 = TSymbolUniqueId(2673); + static constexpr const TSymbolUniqueId lessThanEqual_UInt2_UInt2 = TSymbolUniqueId(2674); + static constexpr const TSymbolUniqueId lessThanEqual_UInt3_UInt3 = TSymbolUniqueId(2675); + static constexpr const TSymbolUniqueId lessThanEqual_UInt4_UInt4 = TSymbolUniqueId(2676); + static constexpr const TSymbolUniqueId greaterThan_Float2_Float2 = TSymbolUniqueId(2677); + static constexpr const TSymbolUniqueId greaterThan_Float3_Float3 = TSymbolUniqueId(2678); + static constexpr const TSymbolUniqueId greaterThan_Float4_Float4 = TSymbolUniqueId(2679); + static constexpr const TSymbolUniqueId greaterThan_Int2_Int2 = TSymbolUniqueId(2680); + static constexpr const TSymbolUniqueId greaterThan_Int3_Int3 = TSymbolUniqueId(2681); + static constexpr const TSymbolUniqueId greaterThan_Int4_Int4 = TSymbolUniqueId(2682); + static constexpr const TSymbolUniqueId greaterThan_UInt2_UInt2 = TSymbolUniqueId(2683); + static constexpr const TSymbolUniqueId greaterThan_UInt3_UInt3 = TSymbolUniqueId(2684); + static constexpr const TSymbolUniqueId greaterThan_UInt4_UInt4 = TSymbolUniqueId(2685); + static constexpr const TSymbolUniqueId greaterThanEqual_Float2_Float2 = TSymbolUniqueId(2686); + static constexpr const TSymbolUniqueId greaterThanEqual_Float3_Float3 = TSymbolUniqueId(2687); + static constexpr const TSymbolUniqueId greaterThanEqual_Float4_Float4 = TSymbolUniqueId(2688); + static constexpr const TSymbolUniqueId greaterThanEqual_Int2_Int2 = TSymbolUniqueId(2689); + static constexpr const TSymbolUniqueId greaterThanEqual_Int3_Int3 = TSymbolUniqueId(2690); + static constexpr const TSymbolUniqueId greaterThanEqual_Int4_Int4 = TSymbolUniqueId(2691); + static constexpr const TSymbolUniqueId greaterThanEqual_UInt2_UInt2 = TSymbolUniqueId(2692); + static constexpr const TSymbolUniqueId greaterThanEqual_UInt3_UInt3 = TSymbolUniqueId(2693); + static constexpr const TSymbolUniqueId greaterThanEqual_UInt4_UInt4 = TSymbolUniqueId(2694); + static constexpr const TSymbolUniqueId equal_Float2_Float2 = TSymbolUniqueId(2695); + static constexpr const TSymbolUniqueId equal_Float3_Float3 = TSymbolUniqueId(2696); + static constexpr const TSymbolUniqueId equal_Float4_Float4 = TSymbolUniqueId(2697); + static constexpr const TSymbolUniqueId equal_Int2_Int2 = TSymbolUniqueId(2698); + static constexpr const TSymbolUniqueId equal_Int3_Int3 = TSymbolUniqueId(2699); + static constexpr const TSymbolUniqueId equal_Int4_Int4 = TSymbolUniqueId(2700); + static constexpr const TSymbolUniqueId equal_UInt2_UInt2 = TSymbolUniqueId(2701); + static constexpr const TSymbolUniqueId equal_UInt3_UInt3 = TSymbolUniqueId(2702); + static constexpr const TSymbolUniqueId equal_UInt4_UInt4 = TSymbolUniqueId(2703); + static constexpr const TSymbolUniqueId equal_Bool2_Bool2 = TSymbolUniqueId(2704); + static constexpr const TSymbolUniqueId equal_Bool3_Bool3 = TSymbolUniqueId(2705); + static constexpr const TSymbolUniqueId equal_Bool4_Bool4 = TSymbolUniqueId(2706); + static constexpr const TSymbolUniqueId notEqual_Float2_Float2 = TSymbolUniqueId(2707); + static constexpr const TSymbolUniqueId notEqual_Float3_Float3 = TSymbolUniqueId(2708); + static constexpr const TSymbolUniqueId notEqual_Float4_Float4 = TSymbolUniqueId(2709); + static constexpr const TSymbolUniqueId notEqual_Int2_Int2 = TSymbolUniqueId(2710); + static constexpr const TSymbolUniqueId notEqual_Int3_Int3 = TSymbolUniqueId(2711); + static constexpr const TSymbolUniqueId notEqual_Int4_Int4 = TSymbolUniqueId(2712); + static constexpr const TSymbolUniqueId notEqual_UInt2_UInt2 = TSymbolUniqueId(2713); + static constexpr const TSymbolUniqueId notEqual_UInt3_UInt3 = TSymbolUniqueId(2714); + static constexpr const TSymbolUniqueId notEqual_UInt4_UInt4 = TSymbolUniqueId(2715); + static constexpr const TSymbolUniqueId notEqual_Bool2_Bool2 = TSymbolUniqueId(2716); + static constexpr const TSymbolUniqueId notEqual_Bool3_Bool3 = TSymbolUniqueId(2717); + static constexpr const TSymbolUniqueId notEqual_Bool4_Bool4 = TSymbolUniqueId(2718); + static constexpr const TSymbolUniqueId any_Bool2 = TSymbolUniqueId(2719); + static constexpr const TSymbolUniqueId any_Bool3 = TSymbolUniqueId(2720); + static constexpr const TSymbolUniqueId any_Bool4 = TSymbolUniqueId(2721); + static constexpr const TSymbolUniqueId all_Bool2 = TSymbolUniqueId(2722); + static constexpr const TSymbolUniqueId all_Bool3 = TSymbolUniqueId(2723); + static constexpr const TSymbolUniqueId all_Bool4 = TSymbolUniqueId(2724); + static constexpr const TSymbolUniqueId notFunc_Bool2 = TSymbolUniqueId(2725); + static constexpr const TSymbolUniqueId notFunc_Bool3 = TSymbolUniqueId(2726); + static constexpr const TSymbolUniqueId notFunc_Bool4 = TSymbolUniqueId(2727); + static constexpr const TSymbolUniqueId bitfieldExtract_Int1_Int1_Int1 = TSymbolUniqueId(2728); + static constexpr const TSymbolUniqueId bitfieldExtract_Int2_Int1_Int1 = TSymbolUniqueId(2729); + static constexpr const TSymbolUniqueId bitfieldExtract_Int3_Int1_Int1 = TSymbolUniqueId(2730); + static constexpr const TSymbolUniqueId bitfieldExtract_Int4_Int1_Int1 = TSymbolUniqueId(2731); + static constexpr const TSymbolUniqueId bitfieldExtract_UInt1_Int1_Int1 = TSymbolUniqueId(2732); + static constexpr const TSymbolUniqueId bitfieldExtract_UInt2_Int1_Int1 = TSymbolUniqueId(2733); + static constexpr const TSymbolUniqueId bitfieldExtract_UInt3_Int1_Int1 = TSymbolUniqueId(2734); + static constexpr const TSymbolUniqueId bitfieldExtract_UInt4_Int1_Int1 = TSymbolUniqueId(2735); + static constexpr const TSymbolUniqueId bitfieldInsert_Int1_Int1_Int1_Int1 = + TSymbolUniqueId(2736); + static constexpr const TSymbolUniqueId bitfieldInsert_Int2_Int2_Int1_Int1 = + TSymbolUniqueId(2737); + static constexpr const TSymbolUniqueId bitfieldInsert_Int3_Int3_Int1_Int1 = + TSymbolUniqueId(2738); + static constexpr const TSymbolUniqueId bitfieldInsert_Int4_Int4_Int1_Int1 = + TSymbolUniqueId(2739); + static constexpr const TSymbolUniqueId bitfieldInsert_UInt1_UInt1_Int1_Int1 = + TSymbolUniqueId(2740); + static constexpr const TSymbolUniqueId bitfieldInsert_UInt2_UInt2_Int1_Int1 = + TSymbolUniqueId(2741); + static constexpr const TSymbolUniqueId bitfieldInsert_UInt3_UInt3_Int1_Int1 = + TSymbolUniqueId(2742); + static constexpr const TSymbolUniqueId bitfieldInsert_UInt4_UInt4_Int1_Int1 = + TSymbolUniqueId(2743); + static constexpr const TSymbolUniqueId bitfieldReverse_Int1 = TSymbolUniqueId(2744); + static constexpr const TSymbolUniqueId bitfieldReverse_Int2 = TSymbolUniqueId(2745); + static constexpr const TSymbolUniqueId bitfieldReverse_Int3 = TSymbolUniqueId(2746); + static constexpr const TSymbolUniqueId bitfieldReverse_Int4 = TSymbolUniqueId(2747); + static constexpr const TSymbolUniqueId bitfieldReverse_UInt1 = TSymbolUniqueId(2748); + static constexpr const TSymbolUniqueId bitfieldReverse_UInt2 = TSymbolUniqueId(2749); + static constexpr const TSymbolUniqueId bitfieldReverse_UInt3 = TSymbolUniqueId(2750); + static constexpr const TSymbolUniqueId bitfieldReverse_UInt4 = TSymbolUniqueId(2751); + static constexpr const TSymbolUniqueId bitCount_Int1 = TSymbolUniqueId(2752); + static constexpr const TSymbolUniqueId bitCount_Int2 = TSymbolUniqueId(2753); + static constexpr const TSymbolUniqueId bitCount_Int3 = TSymbolUniqueId(2754); + static constexpr const TSymbolUniqueId bitCount_Int4 = TSymbolUniqueId(2755); + static constexpr const TSymbolUniqueId bitCount_UInt1 = TSymbolUniqueId(2756); + static constexpr const TSymbolUniqueId bitCount_UInt2 = TSymbolUniqueId(2757); + static constexpr const TSymbolUniqueId bitCount_UInt3 = TSymbolUniqueId(2758); + static constexpr const TSymbolUniqueId bitCount_UInt4 = TSymbolUniqueId(2759); + static constexpr const TSymbolUniqueId findLSB_Int1 = TSymbolUniqueId(2760); + static constexpr const TSymbolUniqueId findLSB_Int2 = TSymbolUniqueId(2761); + static constexpr const TSymbolUniqueId findLSB_Int3 = TSymbolUniqueId(2762); + static constexpr const TSymbolUniqueId findLSB_Int4 = TSymbolUniqueId(2763); + static constexpr const TSymbolUniqueId findLSB_UInt1 = TSymbolUniqueId(2764); + static constexpr const TSymbolUniqueId findLSB_UInt2 = TSymbolUniqueId(2765); + static constexpr const TSymbolUniqueId findLSB_UInt3 = TSymbolUniqueId(2766); + static constexpr const TSymbolUniqueId findLSB_UInt4 = TSymbolUniqueId(2767); + static constexpr const TSymbolUniqueId findMSB_Int1 = TSymbolUniqueId(2768); + static constexpr const TSymbolUniqueId findMSB_Int2 = TSymbolUniqueId(2769); + static constexpr const TSymbolUniqueId findMSB_Int3 = TSymbolUniqueId(2770); + static constexpr const TSymbolUniqueId findMSB_Int4 = TSymbolUniqueId(2771); + static constexpr const TSymbolUniqueId findMSB_UInt1 = TSymbolUniqueId(2772); + static constexpr const TSymbolUniqueId findMSB_UInt2 = TSymbolUniqueId(2773); + static constexpr const TSymbolUniqueId findMSB_UInt3 = TSymbolUniqueId(2774); + static constexpr const TSymbolUniqueId findMSB_UInt4 = TSymbolUniqueId(2775); + static constexpr const TSymbolUniqueId uaddCarry_UInt1_UInt1_UInt1 = TSymbolUniqueId(2776); + static constexpr const TSymbolUniqueId pt_o_00E = TSymbolUniqueId(2777); + static constexpr const TSymbolUniqueId uaddCarry_UInt2_UInt2_UInt2 = TSymbolUniqueId(2778); + static constexpr const TSymbolUniqueId pt_o_10E = TSymbolUniqueId(2779); + static constexpr const TSymbolUniqueId uaddCarry_UInt3_UInt3_UInt3 = TSymbolUniqueId(2780); + static constexpr const TSymbolUniqueId pt_o_20E = TSymbolUniqueId(2781); + static constexpr const TSymbolUniqueId uaddCarry_UInt4_UInt4_UInt4 = TSymbolUniqueId(2782); + static constexpr const TSymbolUniqueId pt_o_30E = TSymbolUniqueId(2783); + static constexpr const TSymbolUniqueId usubBorrow_UInt1_UInt1_UInt1 = TSymbolUniqueId(2784); + static constexpr const TSymbolUniqueId usubBorrow_UInt2_UInt2_UInt2 = TSymbolUniqueId(2785); + static constexpr const TSymbolUniqueId usubBorrow_UInt3_UInt3_UInt3 = TSymbolUniqueId(2786); + static constexpr const TSymbolUniqueId usubBorrow_UInt4_UInt4_UInt4 = TSymbolUniqueId(2787); + static constexpr const TSymbolUniqueId umulExtended_UInt1_UInt1_UInt1_UInt1 = + TSymbolUniqueId(2788); + static constexpr const TSymbolUniqueId umulExtended_UInt2_UInt2_UInt2_UInt2 = + TSymbolUniqueId(2789); + static constexpr const TSymbolUniqueId umulExtended_UInt3_UInt3_UInt3_UInt3 = + TSymbolUniqueId(2790); + static constexpr const TSymbolUniqueId umulExtended_UInt4_UInt4_UInt4_UInt4 = + TSymbolUniqueId(2791); + static constexpr const TSymbolUniqueId imulExtended_Int1_Int1_Int1_Int1 = TSymbolUniqueId(2792); + static constexpr const TSymbolUniqueId imulExtended_Int2_Int2_Int2_Int2 = TSymbolUniqueId(2793); + static constexpr const TSymbolUniqueId imulExtended_Int3_Int3_Int3_Int3 = TSymbolUniqueId(2794); + static constexpr const TSymbolUniqueId imulExtended_Int4_Int4_Int4_Int4 = TSymbolUniqueId(2795); + static constexpr const TSymbolUniqueId texture2D_Sampler2D1_Float2 = TSymbolUniqueId(2796); + static constexpr const TSymbolUniqueId pt00I = TSymbolUniqueId(2797); + static constexpr const TSymbolUniqueId texture2DProj_Sampler2D1_Float3 = TSymbolUniqueId(2798); + static constexpr const TSymbolUniqueId texture2DProj_Sampler2D1_Float4 = TSymbolUniqueId(2799); + static constexpr const TSymbolUniqueId textureCube_SamplerCube1_Float3 = TSymbolUniqueId(2800); + static constexpr const TSymbolUniqueId pt00K = TSymbolUniqueId(2801); + static constexpr const TSymbolUniqueId texture2D_SamplerExternalOES1_Float2 = + TSymbolUniqueId(2802); + static constexpr const TSymbolUniqueId pt00M = TSymbolUniqueId(2803); + static constexpr const TSymbolUniqueId texture2DProj_SamplerExternalOES1_Float3 = + TSymbolUniqueId(2804); + static constexpr const TSymbolUniqueId texture2DProj_SamplerExternalOES1_Float4 = + TSymbolUniqueId(2805); + static constexpr const TSymbolUniqueId texture2DRect_Sampler2DRect1_Float2 = + TSymbolUniqueId(2806); + static constexpr const TSymbolUniqueId pt00O = TSymbolUniqueId(2807); + static constexpr const TSymbolUniqueId texture2DRectProj_Sampler2DRect1_Float3 = + TSymbolUniqueId(2808); + static constexpr const TSymbolUniqueId texture2DRectProj_Sampler2DRect1_Float4 = + TSymbolUniqueId(2809); + static constexpr const TSymbolUniqueId texture_Sampler2DRect1_Float2 = TSymbolUniqueId(2810); + static constexpr const TSymbolUniqueId textureProj_Sampler2DRect1_Float3 = + TSymbolUniqueId(2811); + static constexpr const TSymbolUniqueId textureProj_Sampler2DRect1_Float4 = + TSymbolUniqueId(2812); + static constexpr const TSymbolUniqueId texture2DGradEXT_Sampler2D1_Float2_Float2_Float2 = + TSymbolUniqueId(2813); + static constexpr const TSymbolUniqueId texture2DProjGradEXT_Sampler2D1_Float3_Float2_Float2 = + TSymbolUniqueId(2814); + static constexpr const TSymbolUniqueId texture2DProjGradEXT_Sampler2D1_Float4_Float2_Float2 = + TSymbolUniqueId(2815); + static constexpr const TSymbolUniqueId textureCubeGradEXT_SamplerCube1_Float3_Float3_Float3 = + TSymbolUniqueId(2816); + static constexpr const TSymbolUniqueId texture2D_Sampler2D1_Float2_Float1 = + TSymbolUniqueId(2817); + static constexpr const TSymbolUniqueId texture2DProj_Sampler2D1_Float3_Float1 = + TSymbolUniqueId(2818); + static constexpr const TSymbolUniqueId texture2DProj_Sampler2D1_Float4_Float1 = + TSymbolUniqueId(2819); + static constexpr const TSymbolUniqueId textureCube_SamplerCube1_Float3_Float1 = + TSymbolUniqueId(2820); + static constexpr const TSymbolUniqueId dFdxExt_Float1 = TSymbolUniqueId(2821); + static constexpr const TSymbolUniqueId dFdxExt_Float2 = TSymbolUniqueId(2822); + static constexpr const TSymbolUniqueId dFdxExt_Float3 = TSymbolUniqueId(2823); + static constexpr const TSymbolUniqueId dFdxExt_Float4 = TSymbolUniqueId(2824); + static constexpr const TSymbolUniqueId dFdyExt_Float1 = TSymbolUniqueId(2825); + static constexpr const TSymbolUniqueId dFdyExt_Float2 = TSymbolUniqueId(2826); + static constexpr const TSymbolUniqueId dFdyExt_Float3 = TSymbolUniqueId(2827); + static constexpr const TSymbolUniqueId dFdyExt_Float4 = TSymbolUniqueId(2828); + static constexpr const TSymbolUniqueId fwidthExt_Float1 = TSymbolUniqueId(2829); + static constexpr const TSymbolUniqueId fwidthExt_Float2 = TSymbolUniqueId(2830); + static constexpr const TSymbolUniqueId fwidthExt_Float3 = TSymbolUniqueId(2831); + static constexpr const TSymbolUniqueId fwidthExt_Float4 = TSymbolUniqueId(2832); + static constexpr const TSymbolUniqueId texture2DLodEXT_Sampler2D1_Float2_Float1 = + TSymbolUniqueId(2833); + static constexpr const TSymbolUniqueId texture2DProjLodEXT_Sampler2D1_Float3_Float1 = + TSymbolUniqueId(2834); + static constexpr const TSymbolUniqueId texture2DProjLodEXT_Sampler2D1_Float4_Float1 = + TSymbolUniqueId(2835); + static constexpr const TSymbolUniqueId textureCubeLodEXT_SamplerCube1_Float3_Float1 = + TSymbolUniqueId(2836); + static constexpr const TSymbolUniqueId texture3D_Sampler3D1_Float3 = TSymbolUniqueId(2837); + static constexpr const TSymbolUniqueId pt00J = TSymbolUniqueId(2838); + static constexpr const TSymbolUniqueId texture3DProj_Sampler3D1_Float4 = TSymbolUniqueId(2839); + static constexpr const TSymbolUniqueId texture3D_Sampler3D1_Float3_Float1 = + TSymbolUniqueId(2840); + static constexpr const TSymbolUniqueId texture3DProj_Sampler3D1_Float4_Float1 = + TSymbolUniqueId(2841); + static constexpr const TSymbolUniqueId texture3DLod_Sampler3D1_Float3_Float1 = + TSymbolUniqueId(2842); + static constexpr const TSymbolUniqueId texture3DProjLod_Sampler3D1_Float4_Float1 = + TSymbolUniqueId(2843); + static constexpr const TSymbolUniqueId texture2DLod_Sampler2D1_Float2_Float1 = + TSymbolUniqueId(2844); + static constexpr const TSymbolUniqueId texture2DProjLod_Sampler2D1_Float3_Float1 = + TSymbolUniqueId(2845); + static constexpr const TSymbolUniqueId texture2DProjLod_Sampler2D1_Float4_Float1 = + TSymbolUniqueId(2846); + static constexpr const TSymbolUniqueId textureCubeLod_SamplerCube1_Float3_Float1 = + TSymbolUniqueId(2847); + static constexpr const TSymbolUniqueId texture_Sampler2D1_Float2 = TSymbolUniqueId(2848); + static constexpr const TSymbolUniqueId texture_ISampler2D1_Float2 = TSymbolUniqueId(2849); + static constexpr const TSymbolUniqueId pt00R = TSymbolUniqueId(2850); + static constexpr const TSymbolUniqueId texture_USampler2D1_Float2 = TSymbolUniqueId(2851); + static constexpr const TSymbolUniqueId pt00X = TSymbolUniqueId(2852); + static constexpr const TSymbolUniqueId texture_Sampler3D1_Float3 = TSymbolUniqueId(2853); + static constexpr const TSymbolUniqueId texture_ISampler3D1_Float3 = TSymbolUniqueId(2854); + static constexpr const TSymbolUniqueId pt00S = TSymbolUniqueId(2855); + static constexpr const TSymbolUniqueId texture_USampler3D1_Float3 = TSymbolUniqueId(2856); + static constexpr const TSymbolUniqueId pt00Y = TSymbolUniqueId(2857); + static constexpr const TSymbolUniqueId texture_SamplerCube1_Float3 = TSymbolUniqueId(2858); + static constexpr const TSymbolUniqueId texture_ISamplerCube1_Float3 = TSymbolUniqueId(2859); + static constexpr const TSymbolUniqueId pt00T = TSymbolUniqueId(2860); + static constexpr const TSymbolUniqueId texture_USamplerCube1_Float3 = TSymbolUniqueId(2861); + static constexpr const TSymbolUniqueId pt00Z = TSymbolUniqueId(2862); + static constexpr const TSymbolUniqueId texture_Sampler2DArray1_Float3 = TSymbolUniqueId(2863); + static constexpr const TSymbolUniqueId pt00L = TSymbolUniqueId(2864); + static constexpr const TSymbolUniqueId texture_ISampler2DArray1_Float3 = TSymbolUniqueId(2865); + static constexpr const TSymbolUniqueId pt00U = TSymbolUniqueId(2866); + static constexpr const TSymbolUniqueId texture_USampler2DArray1_Float3 = TSymbolUniqueId(2867); + static constexpr const TSymbolUniqueId pt00a = TSymbolUniqueId(2868); + static constexpr const TSymbolUniqueId texture_Sampler2DShadow1_Float3 = TSymbolUniqueId(2869); + static constexpr const TSymbolUniqueId pt00d = TSymbolUniqueId(2870); + static constexpr const TSymbolUniqueId texture_SamplerCubeShadow1_Float4 = + TSymbolUniqueId(2871); + static constexpr const TSymbolUniqueId pt00e = TSymbolUniqueId(2872); + static constexpr const TSymbolUniqueId texture_Sampler2DArrayShadow1_Float4 = + TSymbolUniqueId(2873); + static constexpr const TSymbolUniqueId pt00f = TSymbolUniqueId(2874); + static constexpr const TSymbolUniqueId textureProj_Sampler2D1_Float3 = TSymbolUniqueId(2875); + static constexpr const TSymbolUniqueId textureProj_ISampler2D1_Float3 = TSymbolUniqueId(2876); + static constexpr const TSymbolUniqueId textureProj_USampler2D1_Float3 = TSymbolUniqueId(2877); + static constexpr const TSymbolUniqueId textureProj_Sampler2D1_Float4 = TSymbolUniqueId(2878); + static constexpr const TSymbolUniqueId textureProj_ISampler2D1_Float4 = TSymbolUniqueId(2879); + static constexpr const TSymbolUniqueId textureProj_USampler2D1_Float4 = TSymbolUniqueId(2880); + static constexpr const TSymbolUniqueId textureProj_Sampler3D1_Float4 = TSymbolUniqueId(2881); + static constexpr const TSymbolUniqueId textureProj_ISampler3D1_Float4 = TSymbolUniqueId(2882); + static constexpr const TSymbolUniqueId textureProj_USampler3D1_Float4 = TSymbolUniqueId(2883); + static constexpr const TSymbolUniqueId textureProj_Sampler2DShadow1_Float4 = + TSymbolUniqueId(2884); + static constexpr const TSymbolUniqueId textureLod_Sampler2D1_Float2_Float1 = + TSymbolUniqueId(2885); + static constexpr const TSymbolUniqueId textureLod_ISampler2D1_Float2_Float1 = + TSymbolUniqueId(2886); + static constexpr const TSymbolUniqueId textureLod_USampler2D1_Float2_Float1 = + TSymbolUniqueId(2887); + static constexpr const TSymbolUniqueId textureLod_Sampler3D1_Float3_Float1 = + TSymbolUniqueId(2888); + static constexpr const TSymbolUniqueId textureLod_ISampler3D1_Float3_Float1 = + TSymbolUniqueId(2889); + static constexpr const TSymbolUniqueId textureLod_USampler3D1_Float3_Float1 = + TSymbolUniqueId(2890); + static constexpr const TSymbolUniqueId textureLod_SamplerCube1_Float3_Float1 = + TSymbolUniqueId(2891); + static constexpr const TSymbolUniqueId textureLod_ISamplerCube1_Float3_Float1 = + TSymbolUniqueId(2892); + static constexpr const TSymbolUniqueId textureLod_USamplerCube1_Float3_Float1 = + TSymbolUniqueId(2893); + static constexpr const TSymbolUniqueId textureLod_Sampler2DArray1_Float3_Float1 = + TSymbolUniqueId(2894); + static constexpr const TSymbolUniqueId textureLod_ISampler2DArray1_Float3_Float1 = + TSymbolUniqueId(2895); + static constexpr const TSymbolUniqueId textureLod_USampler2DArray1_Float3_Float1 = + TSymbolUniqueId(2896); + static constexpr const TSymbolUniqueId textureLod_Sampler2DShadow1_Float3_Float1 = + TSymbolUniqueId(2897); + static constexpr const TSymbolUniqueId textureSize_Sampler2D1_Int1 = TSymbolUniqueId(2898); + static constexpr const TSymbolUniqueId textureSize_ISampler2D1_Int1 = TSymbolUniqueId(2899); + static constexpr const TSymbolUniqueId textureSize_USampler2D1_Int1 = TSymbolUniqueId(2900); + static constexpr const TSymbolUniqueId textureSize_Sampler3D1_Int1 = TSymbolUniqueId(2901); + static constexpr const TSymbolUniqueId textureSize_ISampler3D1_Int1 = TSymbolUniqueId(2902); + static constexpr const TSymbolUniqueId textureSize_USampler3D1_Int1 = TSymbolUniqueId(2903); + static constexpr const TSymbolUniqueId textureSize_SamplerCube1_Int1 = TSymbolUniqueId(2904); + static constexpr const TSymbolUniqueId textureSize_ISamplerCube1_Int1 = TSymbolUniqueId(2905); + static constexpr const TSymbolUniqueId textureSize_USamplerCube1_Int1 = TSymbolUniqueId(2906); + static constexpr const TSymbolUniqueId textureSize_Sampler2DArray1_Int1 = TSymbolUniqueId(2907); + static constexpr const TSymbolUniqueId textureSize_ISampler2DArray1_Int1 = + TSymbolUniqueId(2908); + static constexpr const TSymbolUniqueId textureSize_USampler2DArray1_Int1 = + TSymbolUniqueId(2909); + static constexpr const TSymbolUniqueId textureSize_Sampler2DShadow1_Int1 = + TSymbolUniqueId(2910); + static constexpr const TSymbolUniqueId textureSize_SamplerCubeShadow1_Int1 = + TSymbolUniqueId(2911); + static constexpr const TSymbolUniqueId textureSize_Sampler2DArrayShadow1_Int1 = + TSymbolUniqueId(2912); + static constexpr const TSymbolUniqueId textureProjLod_Sampler2D1_Float3_Float1 = + TSymbolUniqueId(2913); + static constexpr const TSymbolUniqueId textureProjLod_ISampler2D1_Float3_Float1 = + TSymbolUniqueId(2914); + static constexpr const TSymbolUniqueId textureProjLod_USampler2D1_Float3_Float1 = + TSymbolUniqueId(2915); + static constexpr const TSymbolUniqueId textureProjLod_Sampler2D1_Float4_Float1 = + TSymbolUniqueId(2916); + static constexpr const TSymbolUniqueId textureProjLod_ISampler2D1_Float4_Float1 = + TSymbolUniqueId(2917); + static constexpr const TSymbolUniqueId textureProjLod_USampler2D1_Float4_Float1 = + TSymbolUniqueId(2918); + static constexpr const TSymbolUniqueId textureProjLod_Sampler3D1_Float4_Float1 = + TSymbolUniqueId(2919); + static constexpr const TSymbolUniqueId textureProjLod_ISampler3D1_Float4_Float1 = + TSymbolUniqueId(2920); + static constexpr const TSymbolUniqueId textureProjLod_USampler3D1_Float4_Float1 = + TSymbolUniqueId(2921); + static constexpr const TSymbolUniqueId textureProjLod_Sampler2DShadow1_Float4_Float1 = + TSymbolUniqueId(2922); + static constexpr const TSymbolUniqueId texelFetch_Sampler2D1_Int2_Int1 = TSymbolUniqueId(2923); + static constexpr const TSymbolUniqueId texelFetch_ISampler2D1_Int2_Int1 = TSymbolUniqueId(2924); + static constexpr const TSymbolUniqueId texelFetch_USampler2D1_Int2_Int1 = TSymbolUniqueId(2925); + static constexpr const TSymbolUniqueId texelFetch_Sampler3D1_Int3_Int1 = TSymbolUniqueId(2926); + static constexpr const TSymbolUniqueId texelFetch_ISampler3D1_Int3_Int1 = TSymbolUniqueId(2927); + static constexpr const TSymbolUniqueId texelFetch_USampler3D1_Int3_Int1 = TSymbolUniqueId(2928); + static constexpr const TSymbolUniqueId texelFetch_Sampler2DArray1_Int3_Int1 = + TSymbolUniqueId(2929); + static constexpr const TSymbolUniqueId texelFetch_ISampler2DArray1_Int3_Int1 = + TSymbolUniqueId(2930); + static constexpr const TSymbolUniqueId texelFetch_USampler2DArray1_Int3_Int1 = + TSymbolUniqueId(2931); + static constexpr const TSymbolUniqueId textureGrad_Sampler2D1_Float2_Float2_Float2 = + TSymbolUniqueId(2932); + static constexpr const TSymbolUniqueId textureGrad_ISampler2D1_Float2_Float2_Float2 = + TSymbolUniqueId(2933); + static constexpr const TSymbolUniqueId textureGrad_USampler2D1_Float2_Float2_Float2 = + TSymbolUniqueId(2934); + static constexpr const TSymbolUniqueId textureGrad_Sampler3D1_Float3_Float3_Float3 = + TSymbolUniqueId(2935); + static constexpr const TSymbolUniqueId textureGrad_ISampler3D1_Float3_Float3_Float3 = + TSymbolUniqueId(2936); + static constexpr const TSymbolUniqueId textureGrad_USampler3D1_Float3_Float3_Float3 = + TSymbolUniqueId(2937); + static constexpr const TSymbolUniqueId textureGrad_SamplerCube1_Float3_Float3_Float3 = + TSymbolUniqueId(2938); + static constexpr const TSymbolUniqueId textureGrad_ISamplerCube1_Float3_Float3_Float3 = + TSymbolUniqueId(2939); + static constexpr const TSymbolUniqueId textureGrad_USamplerCube1_Float3_Float3_Float3 = + TSymbolUniqueId(2940); + static constexpr const TSymbolUniqueId textureGrad_Sampler2DShadow1_Float3_Float2_Float2 = + TSymbolUniqueId(2941); + static constexpr const TSymbolUniqueId textureGrad_SamplerCubeShadow1_Float4_Float3_Float3 = + TSymbolUniqueId(2942); + static constexpr const TSymbolUniqueId textureGrad_Sampler2DArray1_Float3_Float2_Float2 = + TSymbolUniqueId(2943); + static constexpr const TSymbolUniqueId textureGrad_ISampler2DArray1_Float3_Float2_Float2 = + TSymbolUniqueId(2944); + static constexpr const TSymbolUniqueId textureGrad_USampler2DArray1_Float3_Float2_Float2 = + TSymbolUniqueId(2945); + static constexpr const TSymbolUniqueId textureGrad_Sampler2DArrayShadow1_Float4_Float2_Float2 = + TSymbolUniqueId(2946); + static constexpr const TSymbolUniqueId textureProjGrad_Sampler2D1_Float3_Float2_Float2 = + TSymbolUniqueId(2947); + static constexpr const TSymbolUniqueId textureProjGrad_ISampler2D1_Float3_Float2_Float2 = + TSymbolUniqueId(2948); + static constexpr const TSymbolUniqueId textureProjGrad_USampler2D1_Float3_Float2_Float2 = + TSymbolUniqueId(2949); + static constexpr const TSymbolUniqueId textureProjGrad_Sampler2D1_Float4_Float2_Float2 = + TSymbolUniqueId(2950); + static constexpr const TSymbolUniqueId textureProjGrad_ISampler2D1_Float4_Float2_Float2 = + TSymbolUniqueId(2951); + static constexpr const TSymbolUniqueId textureProjGrad_USampler2D1_Float4_Float2_Float2 = + TSymbolUniqueId(2952); + static constexpr const TSymbolUniqueId textureProjGrad_Sampler3D1_Float4_Float3_Float3 = + TSymbolUniqueId(2953); + static constexpr const TSymbolUniqueId textureProjGrad_ISampler3D1_Float4_Float3_Float3 = + TSymbolUniqueId(2954); + static constexpr const TSymbolUniqueId textureProjGrad_USampler3D1_Float4_Float3_Float3 = + TSymbolUniqueId(2955); + static constexpr const TSymbolUniqueId textureProjGrad_Sampler2DShadow1_Float4_Float2_Float2 = + TSymbolUniqueId(2956); + static constexpr const TSymbolUniqueId textureSize_Sampler2DMS1 = TSymbolUniqueId(2957); + static constexpr const TSymbolUniqueId pt00P = TSymbolUniqueId(2958); + static constexpr const TSymbolUniqueId textureSize_ISampler2DMS1 = TSymbolUniqueId(2959); + static constexpr const TSymbolUniqueId pt00V = TSymbolUniqueId(2960); + static constexpr const TSymbolUniqueId textureSize_USampler2DMS1 = TSymbolUniqueId(2961); + static constexpr const TSymbolUniqueId pt00b = TSymbolUniqueId(2962); + static constexpr const TSymbolUniqueId textureSizeExt_Sampler2DMS1 = TSymbolUniqueId(2963); + static constexpr const TSymbolUniqueId textureSizeExt_ISampler2DMS1 = TSymbolUniqueId(2964); + static constexpr const TSymbolUniqueId textureSizeExt_USampler2DMS1 = TSymbolUniqueId(2965); + static constexpr const TSymbolUniqueId textureSizeExt_Sampler2DMSArray1 = TSymbolUniqueId(2966); + static constexpr const TSymbolUniqueId pt00Q = TSymbolUniqueId(2967); + static constexpr const TSymbolUniqueId textureSizeExt_ISampler2DMSArray1 = + TSymbolUniqueId(2968); + static constexpr const TSymbolUniqueId pt00W = TSymbolUniqueId(2969); + static constexpr const TSymbolUniqueId textureSizeExt_USampler2DMSArray1 = + TSymbolUniqueId(2970); + static constexpr const TSymbolUniqueId pt00c = TSymbolUniqueId(2971); + static constexpr const TSymbolUniqueId texelFetch_Sampler2DMS1_Int2_Int1 = + TSymbolUniqueId(2972); + static constexpr const TSymbolUniqueId texelFetch_ISampler2DMS1_Int2_Int1 = + TSymbolUniqueId(2973); + static constexpr const TSymbolUniqueId texelFetch_USampler2DMS1_Int2_Int1 = + TSymbolUniqueId(2974); + static constexpr const TSymbolUniqueId texelFetchExt_Sampler2DMS1_Int2_Int1 = + TSymbolUniqueId(2975); + static constexpr const TSymbolUniqueId texelFetchExt_ISampler2DMS1_Int2_Int1 = + TSymbolUniqueId(2976); + static constexpr const TSymbolUniqueId texelFetchExt_USampler2DMS1_Int2_Int1 = + TSymbolUniqueId(2977); + static constexpr const TSymbolUniqueId texelFetchExt_Sampler2DMSArray1_Int3_Int1 = + TSymbolUniqueId(2978); + static constexpr const TSymbolUniqueId texelFetchExt_ISampler2DMSArray1_Int3_Int1 = + TSymbolUniqueId(2979); + static constexpr const TSymbolUniqueId texelFetchExt_USampler2DMSArray1_Int3_Int1 = + TSymbolUniqueId(2980); + static constexpr const TSymbolUniqueId texture_Sampler2D1_Float2_Float1 = TSymbolUniqueId(2981); + static constexpr const TSymbolUniqueId texture_ISampler2D1_Float2_Float1 = + TSymbolUniqueId(2982); + static constexpr const TSymbolUniqueId texture_USampler2D1_Float2_Float1 = + TSymbolUniqueId(2983); + static constexpr const TSymbolUniqueId texture_Sampler3D1_Float3_Float1 = TSymbolUniqueId(2984); + static constexpr const TSymbolUniqueId texture_ISampler3D1_Float3_Float1 = + TSymbolUniqueId(2985); + static constexpr const TSymbolUniqueId texture_USampler3D1_Float3_Float1 = + TSymbolUniqueId(2986); + static constexpr const TSymbolUniqueId texture_SamplerCube1_Float3_Float1 = + TSymbolUniqueId(2987); + static constexpr const TSymbolUniqueId texture_ISamplerCube1_Float3_Float1 = + TSymbolUniqueId(2988); + static constexpr const TSymbolUniqueId texture_USamplerCube1_Float3_Float1 = + TSymbolUniqueId(2989); + static constexpr const TSymbolUniqueId texture_Sampler2DArray1_Float3_Float1 = + TSymbolUniqueId(2990); + static constexpr const TSymbolUniqueId texture_ISampler2DArray1_Float3_Float1 = + TSymbolUniqueId(2991); + static constexpr const TSymbolUniqueId texture_USampler2DArray1_Float3_Float1 = + TSymbolUniqueId(2992); + static constexpr const TSymbolUniqueId textureProj_Sampler2D1_Float3_Float1 = + TSymbolUniqueId(2993); + static constexpr const TSymbolUniqueId textureProj_ISampler2D1_Float3_Float1 = + TSymbolUniqueId(2994); + static constexpr const TSymbolUniqueId textureProj_USampler2D1_Float3_Float1 = + TSymbolUniqueId(2995); + static constexpr const TSymbolUniqueId textureProj_Sampler2D1_Float4_Float1 = + TSymbolUniqueId(2996); + static constexpr const TSymbolUniqueId textureProj_ISampler2D1_Float4_Float1 = + TSymbolUniqueId(2997); + static constexpr const TSymbolUniqueId textureProj_USampler2D1_Float4_Float1 = + TSymbolUniqueId(2998); + static constexpr const TSymbolUniqueId textureProj_Sampler3D1_Float4_Float1 = + TSymbolUniqueId(2999); + static constexpr const TSymbolUniqueId textureProj_ISampler3D1_Float4_Float1 = + TSymbolUniqueId(3000); + static constexpr const TSymbolUniqueId textureProj_USampler3D1_Float4_Float1 = + TSymbolUniqueId(3001); + static constexpr const TSymbolUniqueId texture_Sampler2DShadow1_Float3_Float1 = + TSymbolUniqueId(3002); + static constexpr const TSymbolUniqueId texture_SamplerCubeShadow1_Float4_Float1 = + TSymbolUniqueId(3003); + static constexpr const TSymbolUniqueId textureProj_Sampler2DShadow1_Float4_Float1 = + TSymbolUniqueId(3004); + static constexpr const TSymbolUniqueId texture_SamplerExternalOES1_Float2_Float1 = + TSymbolUniqueId(3005); + static constexpr const TSymbolUniqueId textureProj_SamplerExternalOES1_Float3_Float1 = + TSymbolUniqueId(3006); + static constexpr const TSymbolUniqueId textureProj_SamplerExternalOES1_Float4_Float1 = + TSymbolUniqueId(3007); + static constexpr const TSymbolUniqueId texture_SamplerExternal2DY2YEXT1_Float2_Float1 = + TSymbolUniqueId(3008); + static constexpr const TSymbolUniqueId pt00N = TSymbolUniqueId(3009); + static constexpr const TSymbolUniqueId textureProj_SamplerExternal2DY2YEXT1_Float3_Float1 = + TSymbolUniqueId(3010); + static constexpr const TSymbolUniqueId textureProj_SamplerExternal2DY2YEXT1_Float4_Float1 = + TSymbolUniqueId(3011); + static constexpr const TSymbolUniqueId textureOffset_Sampler2D1_Float2_Int2 = + TSymbolUniqueId(3012); + static constexpr const TSymbolUniqueId textureOffset_ISampler2D1_Float2_Int2 = + TSymbolUniqueId(3013); + static constexpr const TSymbolUniqueId textureOffset_USampler2D1_Float2_Int2 = + TSymbolUniqueId(3014); + static constexpr const TSymbolUniqueId textureOffset_Sampler3D1_Float3_Int3 = + TSymbolUniqueId(3015); + static constexpr const TSymbolUniqueId textureOffset_ISampler3D1_Float3_Int3 = + TSymbolUniqueId(3016); + static constexpr const TSymbolUniqueId textureOffset_USampler3D1_Float3_Int3 = + TSymbolUniqueId(3017); + static constexpr const TSymbolUniqueId textureOffset_Sampler2DShadow1_Float3_Int2 = + TSymbolUniqueId(3018); + static constexpr const TSymbolUniqueId textureOffset_Sampler2DArray1_Float3_Int2 = + TSymbolUniqueId(3019); + static constexpr const TSymbolUniqueId textureOffset_ISampler2DArray1_Float3_Int2 = + TSymbolUniqueId(3020); + static constexpr const TSymbolUniqueId textureOffset_USampler2DArray1_Float3_Int2 = + TSymbolUniqueId(3021); + static constexpr const TSymbolUniqueId textureProjOffset_Sampler2D1_Float3_Int2 = + TSymbolUniqueId(3022); + static constexpr const TSymbolUniqueId textureProjOffset_ISampler2D1_Float3_Int2 = + TSymbolUniqueId(3023); + static constexpr const TSymbolUniqueId textureProjOffset_USampler2D1_Float3_Int2 = + TSymbolUniqueId(3024); + static constexpr const TSymbolUniqueId textureProjOffset_Sampler2D1_Float4_Int2 = + TSymbolUniqueId(3025); + static constexpr const TSymbolUniqueId textureProjOffset_ISampler2D1_Float4_Int2 = + TSymbolUniqueId(3026); + static constexpr const TSymbolUniqueId textureProjOffset_USampler2D1_Float4_Int2 = + TSymbolUniqueId(3027); + static constexpr const TSymbolUniqueId textureProjOffset_Sampler3D1_Float4_Int3 = + TSymbolUniqueId(3028); + static constexpr const TSymbolUniqueId textureProjOffset_ISampler3D1_Float4_Int3 = + TSymbolUniqueId(3029); + static constexpr const TSymbolUniqueId textureProjOffset_USampler3D1_Float4_Int3 = + TSymbolUniqueId(3030); + static constexpr const TSymbolUniqueId textureProjOffset_Sampler2DShadow1_Float4_Int2 = + TSymbolUniqueId(3031); + static constexpr const TSymbolUniqueId textureLodOffset_Sampler2D1_Float2_Float1_Int2 = + TSymbolUniqueId(3032); + static constexpr const TSymbolUniqueId textureLodOffset_ISampler2D1_Float2_Float1_Int2 = + TSymbolUniqueId(3033); + static constexpr const TSymbolUniqueId textureLodOffset_USampler2D1_Float2_Float1_Int2 = + TSymbolUniqueId(3034); + static constexpr const TSymbolUniqueId textureLodOffset_Sampler3D1_Float3_Float1_Int3 = + TSymbolUniqueId(3035); + static constexpr const TSymbolUniqueId textureLodOffset_ISampler3D1_Float3_Float1_Int3 = + TSymbolUniqueId(3036); + static constexpr const TSymbolUniqueId textureLodOffset_USampler3D1_Float3_Float1_Int3 = + TSymbolUniqueId(3037); + static constexpr const TSymbolUniqueId textureLodOffset_Sampler2DShadow1_Float3_Float1_Int2 = + TSymbolUniqueId(3038); + static constexpr const TSymbolUniqueId textureLodOffset_Sampler2DArray1_Float3_Float1_Int2 = + TSymbolUniqueId(3039); + static constexpr const TSymbolUniqueId textureLodOffset_ISampler2DArray1_Float3_Float1_Int2 = + TSymbolUniqueId(3040); + static constexpr const TSymbolUniqueId textureLodOffset_USampler2DArray1_Float3_Float1_Int2 = + TSymbolUniqueId(3041); + static constexpr const TSymbolUniqueId textureProjLodOffset_Sampler2D1_Float3_Float1_Int2 = + TSymbolUniqueId(3042); + static constexpr const TSymbolUniqueId textureProjLodOffset_ISampler2D1_Float3_Float1_Int2 = + TSymbolUniqueId(3043); + static constexpr const TSymbolUniqueId textureProjLodOffset_USampler2D1_Float3_Float1_Int2 = + TSymbolUniqueId(3044); + static constexpr const TSymbolUniqueId textureProjLodOffset_Sampler2D1_Float4_Float1_Int2 = + TSymbolUniqueId(3045); + static constexpr const TSymbolUniqueId textureProjLodOffset_ISampler2D1_Float4_Float1_Int2 = + TSymbolUniqueId(3046); + static constexpr const TSymbolUniqueId textureProjLodOffset_USampler2D1_Float4_Float1_Int2 = + TSymbolUniqueId(3047); + static constexpr const TSymbolUniqueId textureProjLodOffset_Sampler3D1_Float4_Float1_Int3 = + TSymbolUniqueId(3048); + static constexpr const TSymbolUniqueId textureProjLodOffset_ISampler3D1_Float4_Float1_Int3 = + TSymbolUniqueId(3049); + static constexpr const TSymbolUniqueId textureProjLodOffset_USampler3D1_Float4_Float1_Int3 = + TSymbolUniqueId(3050); + static constexpr const TSymbolUniqueId + textureProjLodOffset_Sampler2DShadow1_Float4_Float1_Int2 = TSymbolUniqueId(3051); + static constexpr const TSymbolUniqueId texelFetchOffset_Sampler2D1_Int2_Int1_Int2 = + TSymbolUniqueId(3052); + static constexpr const TSymbolUniqueId texelFetchOffset_ISampler2D1_Int2_Int1_Int2 = + TSymbolUniqueId(3053); + static constexpr const TSymbolUniqueId texelFetchOffset_USampler2D1_Int2_Int1_Int2 = + TSymbolUniqueId(3054); + static constexpr const TSymbolUniqueId texelFetchOffset_Sampler3D1_Int3_Int1_Int3 = + TSymbolUniqueId(3055); + static constexpr const TSymbolUniqueId texelFetchOffset_ISampler3D1_Int3_Int1_Int3 = + TSymbolUniqueId(3056); + static constexpr const TSymbolUniqueId texelFetchOffset_USampler3D1_Int3_Int1_Int3 = + TSymbolUniqueId(3057); + static constexpr const TSymbolUniqueId texelFetchOffset_Sampler2DArray1_Int3_Int1_Int2 = + TSymbolUniqueId(3058); + static constexpr const TSymbolUniqueId texelFetchOffset_ISampler2DArray1_Int3_Int1_Int2 = + TSymbolUniqueId(3059); + static constexpr const TSymbolUniqueId texelFetchOffset_USampler2DArray1_Int3_Int1_Int2 = + TSymbolUniqueId(3060); + static constexpr const TSymbolUniqueId textureGradOffset_Sampler2D1_Float2_Float2_Float2_Int2 = + TSymbolUniqueId(3061); + static constexpr const TSymbolUniqueId textureGradOffset_ISampler2D1_Float2_Float2_Float2_Int2 = + TSymbolUniqueId(3062); + static constexpr const TSymbolUniqueId textureGradOffset_USampler2D1_Float2_Float2_Float2_Int2 = + TSymbolUniqueId(3063); + static constexpr const TSymbolUniqueId textureGradOffset_Sampler3D1_Float3_Float3_Float3_Int3 = + TSymbolUniqueId(3064); + static constexpr const TSymbolUniqueId textureGradOffset_ISampler3D1_Float3_Float3_Float3_Int3 = + TSymbolUniqueId(3065); + static constexpr const TSymbolUniqueId textureGradOffset_USampler3D1_Float3_Float3_Float3_Int3 = + TSymbolUniqueId(3066); + static constexpr const TSymbolUniqueId + textureGradOffset_Sampler2DShadow1_Float3_Float2_Float2_Int2 = TSymbolUniqueId(3067); + static constexpr const TSymbolUniqueId + textureGradOffset_Sampler2DArray1_Float3_Float2_Float2_Int2 = TSymbolUniqueId(3068); + static constexpr const TSymbolUniqueId + textureGradOffset_ISampler2DArray1_Float3_Float2_Float2_Int2 = TSymbolUniqueId(3069); + static constexpr const TSymbolUniqueId + textureGradOffset_USampler2DArray1_Float3_Float2_Float2_Int2 = TSymbolUniqueId(3070); + static constexpr const TSymbolUniqueId + textureGradOffset_Sampler2DArrayShadow1_Float4_Float2_Float2_Int2 = TSymbolUniqueId(3071); + static constexpr const TSymbolUniqueId + textureProjGradOffset_Sampler2D1_Float3_Float2_Float2_Int2 = TSymbolUniqueId(3072); + static constexpr const TSymbolUniqueId + textureProjGradOffset_ISampler2D1_Float3_Float2_Float2_Int2 = TSymbolUniqueId(3073); + static constexpr const TSymbolUniqueId + textureProjGradOffset_USampler2D1_Float3_Float2_Float2_Int2 = TSymbolUniqueId(3074); + static constexpr const TSymbolUniqueId + textureProjGradOffset_Sampler2D1_Float4_Float2_Float2_Int2 = TSymbolUniqueId(3075); + static constexpr const TSymbolUniqueId + textureProjGradOffset_ISampler2D1_Float4_Float2_Float2_Int2 = TSymbolUniqueId(3076); + static constexpr const TSymbolUniqueId + textureProjGradOffset_USampler2D1_Float4_Float2_Float2_Int2 = TSymbolUniqueId(3077); + static constexpr const TSymbolUniqueId + textureProjGradOffset_Sampler3D1_Float4_Float3_Float3_Int3 = TSymbolUniqueId(3078); + static constexpr const TSymbolUniqueId + textureProjGradOffset_ISampler3D1_Float4_Float3_Float3_Int3 = TSymbolUniqueId(3079); + static constexpr const TSymbolUniqueId + textureProjGradOffset_USampler3D1_Float4_Float3_Float3_Int3 = TSymbolUniqueId(3080); + static constexpr const TSymbolUniqueId + textureProjGradOffset_Sampler2DShadow1_Float4_Float2_Float2_Int2 = TSymbolUniqueId(3081); + static constexpr const TSymbolUniqueId textureOffset_Sampler2D1_Float2_Int2_Float1 = + TSymbolUniqueId(3082); + static constexpr const TSymbolUniqueId textureOffset_ISampler2D1_Float2_Int2_Float1 = + TSymbolUniqueId(3083); + static constexpr const TSymbolUniqueId textureOffset_USampler2D1_Float2_Int2_Float1 = + TSymbolUniqueId(3084); + static constexpr const TSymbolUniqueId textureOffset_Sampler3D1_Float3_Int3_Float1 = + TSymbolUniqueId(3085); + static constexpr const TSymbolUniqueId textureOffset_ISampler3D1_Float3_Int3_Float1 = + TSymbolUniqueId(3086); + static constexpr const TSymbolUniqueId textureOffset_USampler3D1_Float3_Int3_Float1 = + TSymbolUniqueId(3087); + static constexpr const TSymbolUniqueId textureOffset_Sampler2DShadow1_Float3_Int2_Float1 = + TSymbolUniqueId(3088); + static constexpr const TSymbolUniqueId textureOffset_Sampler2DArray1_Float3_Int2_Float1 = + TSymbolUniqueId(3089); + static constexpr const TSymbolUniqueId textureOffset_ISampler2DArray1_Float3_Int2_Float1 = + TSymbolUniqueId(3090); + static constexpr const TSymbolUniqueId textureOffset_USampler2DArray1_Float3_Int2_Float1 = + TSymbolUniqueId(3091); + static constexpr const TSymbolUniqueId textureProjOffset_Sampler2D1_Float3_Int2_Float1 = + TSymbolUniqueId(3092); + static constexpr const TSymbolUniqueId textureProjOffset_ISampler2D1_Float3_Int2_Float1 = + TSymbolUniqueId(3093); + static constexpr const TSymbolUniqueId textureProjOffset_USampler2D1_Float3_Int2_Float1 = + TSymbolUniqueId(3094); + static constexpr const TSymbolUniqueId textureProjOffset_Sampler2D1_Float4_Int2_Float1 = + TSymbolUniqueId(3095); + static constexpr const TSymbolUniqueId textureProjOffset_ISampler2D1_Float4_Int2_Float1 = + TSymbolUniqueId(3096); + static constexpr const TSymbolUniqueId textureProjOffset_USampler2D1_Float4_Int2_Float1 = + TSymbolUniqueId(3097); + static constexpr const TSymbolUniqueId textureProjOffset_Sampler3D1_Float4_Int3_Float1 = + TSymbolUniqueId(3098); + static constexpr const TSymbolUniqueId textureProjOffset_ISampler3D1_Float4_Int3_Float1 = + TSymbolUniqueId(3099); + static constexpr const TSymbolUniqueId textureProjOffset_USampler3D1_Float4_Int3_Float1 = + TSymbolUniqueId(3100); + static constexpr const TSymbolUniqueId textureProjOffset_Sampler2DShadow1_Float4_Int2_Float1 = + TSymbolUniqueId(3101); + static constexpr const TSymbolUniqueId texture_SamplerExternalOES1_Float2 = + TSymbolUniqueId(3102); + static constexpr const TSymbolUniqueId textureProj_SamplerExternalOES1_Float3 = + TSymbolUniqueId(3103); + static constexpr const TSymbolUniqueId textureProj_SamplerExternalOES1_Float4 = + TSymbolUniqueId(3104); + static constexpr const TSymbolUniqueId textureSize_SamplerExternalOES1_Int1 = + TSymbolUniqueId(3105); + static constexpr const TSymbolUniqueId texelFetch_SamplerExternalOES1_Int2_Int1 = + TSymbolUniqueId(3106); + static constexpr const TSymbolUniqueId texture_SamplerExternal2DY2YEXT1_Float2 = + TSymbolUniqueId(3107); + static constexpr const TSymbolUniqueId textureProj_SamplerExternal2DY2YEXT1_Float3 = + TSymbolUniqueId(3108); + static constexpr const TSymbolUniqueId textureProj_SamplerExternal2DY2YEXT1_Float4 = + TSymbolUniqueId(3109); + static constexpr const TSymbolUniqueId rgb_2_yuv_Float3_YuvCscStandardEXT1 = + TSymbolUniqueId(3110); + static constexpr const TSymbolUniqueId pt00H = TSymbolUniqueId(3111); + static constexpr const TSymbolUniqueId yuv_2_rgb_Float3_YuvCscStandardEXT1 = + TSymbolUniqueId(3112); + static constexpr const TSymbolUniqueId textureSize_SamplerExternal2DY2YEXT1_Int1 = + TSymbolUniqueId(3113); + static constexpr const TSymbolUniqueId texelFetch_SamplerExternal2DY2YEXT1_Int2_Int1 = + TSymbolUniqueId(3114); + static constexpr const TSymbolUniqueId textureGather_Sampler2D1_Float2 = TSymbolUniqueId(3115); + static constexpr const TSymbolUniqueId textureGather_ISampler2D1_Float2 = TSymbolUniqueId(3116); + static constexpr const TSymbolUniqueId textureGather_USampler2D1_Float2 = TSymbolUniqueId(3117); + static constexpr const TSymbolUniqueId textureGather_Sampler2D1_Float2_Int1 = + TSymbolUniqueId(3118); + static constexpr const TSymbolUniqueId textureGather_ISampler2D1_Float2_Int1 = + TSymbolUniqueId(3119); + static constexpr const TSymbolUniqueId textureGather_USampler2D1_Float2_Int1 = + TSymbolUniqueId(3120); + static constexpr const TSymbolUniqueId textureGather_Sampler2DArray1_Float3 = + TSymbolUniqueId(3121); + static constexpr const TSymbolUniqueId textureGather_ISampler2DArray1_Float3 = + TSymbolUniqueId(3122); + static constexpr const TSymbolUniqueId textureGather_USampler2DArray1_Float3 = + TSymbolUniqueId(3123); + static constexpr const TSymbolUniqueId textureGather_Sampler2DArray1_Float3_Int1 = + TSymbolUniqueId(3124); + static constexpr const TSymbolUniqueId textureGather_ISampler2DArray1_Float3_Int1 = + TSymbolUniqueId(3125); + static constexpr const TSymbolUniqueId textureGather_USampler2DArray1_Float3_Int1 = + TSymbolUniqueId(3126); + static constexpr const TSymbolUniqueId textureGather_SamplerCube1_Float3 = + TSymbolUniqueId(3127); + static constexpr const TSymbolUniqueId textureGather_ISamplerCube1_Float3 = + TSymbolUniqueId(3128); + static constexpr const TSymbolUniqueId textureGather_USamplerCube1_Float3 = + TSymbolUniqueId(3129); + static constexpr const TSymbolUniqueId textureGather_SamplerCube1_Float3_Int1 = + TSymbolUniqueId(3130); + static constexpr const TSymbolUniqueId textureGather_ISamplerCube1_Float3_Int1 = + TSymbolUniqueId(3131); + static constexpr const TSymbolUniqueId textureGather_USamplerCube1_Float3_Int1 = + TSymbolUniqueId(3132); + static constexpr const TSymbolUniqueId textureGather_Sampler2DShadow1_Float2 = + TSymbolUniqueId(3133); + static constexpr const TSymbolUniqueId textureGather_Sampler2DShadow1_Float2_Float1 = + TSymbolUniqueId(3134); + static constexpr const TSymbolUniqueId textureGather_Sampler2DArrayShadow1_Float3 = + TSymbolUniqueId(3135); + static constexpr const TSymbolUniqueId textureGather_Sampler2DArrayShadow1_Float3_Float1 = + TSymbolUniqueId(3136); + static constexpr const TSymbolUniqueId textureGather_SamplerCubeShadow1_Float3 = + TSymbolUniqueId(3137); + static constexpr const TSymbolUniqueId textureGather_SamplerCubeShadow1_Float3_Float1 = + TSymbolUniqueId(3138); + static constexpr const TSymbolUniqueId textureGatherOffset_Sampler2D1_Float2_Int2 = + TSymbolUniqueId(3139); + static constexpr const TSymbolUniqueId textureGatherOffset_ISampler2D1_Float2_Int2 = + TSymbolUniqueId(3140); + static constexpr const TSymbolUniqueId textureGatherOffset_USampler2D1_Float2_Int2 = + TSymbolUniqueId(3141); + static constexpr const TSymbolUniqueId textureGatherOffset_Sampler2D1_Float2_Int2_Int1 = + TSymbolUniqueId(3142); + static constexpr const TSymbolUniqueId textureGatherOffset_ISampler2D1_Float2_Int2_Int1 = + TSymbolUniqueId(3143); + static constexpr const TSymbolUniqueId textureGatherOffset_USampler2D1_Float2_Int2_Int1 = + TSymbolUniqueId(3144); + static constexpr const TSymbolUniqueId textureGatherOffset_Sampler2DArray1_Float3_Int2 = + TSymbolUniqueId(3145); + static constexpr const TSymbolUniqueId textureGatherOffset_ISampler2DArray1_Float3_Int2 = + TSymbolUniqueId(3146); + static constexpr const TSymbolUniqueId textureGatherOffset_USampler2DArray1_Float3_Int2 = + TSymbolUniqueId(3147); + static constexpr const TSymbolUniqueId textureGatherOffset_Sampler2DArray1_Float3_Int2_Int1 = + TSymbolUniqueId(3148); + static constexpr const TSymbolUniqueId textureGatherOffset_ISampler2DArray1_Float3_Int2_Int1 = + TSymbolUniqueId(3149); + static constexpr const TSymbolUniqueId textureGatherOffset_USampler2DArray1_Float3_Int2_Int1 = + TSymbolUniqueId(3150); + static constexpr const TSymbolUniqueId textureGatherOffset_Sampler2DShadow1_Float2_Float1_Int2 = + TSymbolUniqueId(3151); + static constexpr const TSymbolUniqueId + textureGatherOffset_Sampler2DArrayShadow1_Float3_Float1_Int2 = TSymbolUniqueId(3152); + static constexpr const TSymbolUniqueId dFdx_Float1 = TSymbolUniqueId(3153); + static constexpr const TSymbolUniqueId dFdx_Float2 = TSymbolUniqueId(3154); + static constexpr const TSymbolUniqueId dFdx_Float3 = TSymbolUniqueId(3155); + static constexpr const TSymbolUniqueId dFdx_Float4 = TSymbolUniqueId(3156); + static constexpr const TSymbolUniqueId dFdy_Float1 = TSymbolUniqueId(3157); + static constexpr const TSymbolUniqueId dFdy_Float2 = TSymbolUniqueId(3158); + static constexpr const TSymbolUniqueId dFdy_Float3 = TSymbolUniqueId(3159); + static constexpr const TSymbolUniqueId dFdy_Float4 = TSymbolUniqueId(3160); + static constexpr const TSymbolUniqueId fwidth_Float1 = TSymbolUniqueId(3161); + static constexpr const TSymbolUniqueId fwidth_Float2 = TSymbolUniqueId(3162); + static constexpr const TSymbolUniqueId fwidth_Float3 = TSymbolUniqueId(3163); + static constexpr const TSymbolUniqueId fwidth_Float4 = TSymbolUniqueId(3164); + static constexpr const TSymbolUniqueId atomicCounter_AtomicCounter1 = TSymbolUniqueId(3165); + static constexpr const TSymbolUniqueId pt00G = TSymbolUniqueId(3166); + static constexpr const TSymbolUniqueId atomicCounterIncrement_AtomicCounter1 = + TSymbolUniqueId(3167); + static constexpr const TSymbolUniqueId atomicCounterDecrement_AtomicCounter1 = + TSymbolUniqueId(3168); + static constexpr const TSymbolUniqueId atomicAdd_UInt1_UInt1 = TSymbolUniqueId(3169); + static constexpr const TSymbolUniqueId pt_io_00E = TSymbolUniqueId(3170); + static constexpr const TSymbolUniqueId atomicAdd_Int1_Int1 = TSymbolUniqueId(3171); + static constexpr const TSymbolUniqueId pt_io_00D = TSymbolUniqueId(3172); + static constexpr const TSymbolUniqueId atomicMin_UInt1_UInt1 = TSymbolUniqueId(3173); + static constexpr const TSymbolUniqueId atomicMin_Int1_Int1 = TSymbolUniqueId(3174); + static constexpr const TSymbolUniqueId atomicMax_UInt1_UInt1 = TSymbolUniqueId(3175); + static constexpr const TSymbolUniqueId atomicMax_Int1_Int1 = TSymbolUniqueId(3176); + static constexpr const TSymbolUniqueId atomicAnd_UInt1_UInt1 = TSymbolUniqueId(3177); + static constexpr const TSymbolUniqueId atomicAnd_Int1_Int1 = TSymbolUniqueId(3178); + static constexpr const TSymbolUniqueId atomicOr_UInt1_UInt1 = TSymbolUniqueId(3179); + static constexpr const TSymbolUniqueId atomicOr_Int1_Int1 = TSymbolUniqueId(3180); + static constexpr const TSymbolUniqueId atomicXor_UInt1_UInt1 = TSymbolUniqueId(3181); + static constexpr const TSymbolUniqueId atomicXor_Int1_Int1 = TSymbolUniqueId(3182); + static constexpr const TSymbolUniqueId atomicExchange_UInt1_UInt1 = TSymbolUniqueId(3183); + static constexpr const TSymbolUniqueId atomicExchange_Int1_Int1 = TSymbolUniqueId(3184); + static constexpr const TSymbolUniqueId atomicCompSwap_UInt1_UInt1_UInt1 = TSymbolUniqueId(3185); + static constexpr const TSymbolUniqueId atomicCompSwap_Int1_Int1_Int1 = TSymbolUniqueId(3186); + static constexpr const TSymbolUniqueId imageSize_Image2D1 = TSymbolUniqueId(3187); + static constexpr const TSymbolUniqueId pt00y = TSymbolUniqueId(3188); + static constexpr const TSymbolUniqueId imageSize_IImage2D1 = TSymbolUniqueId(3189); + static constexpr const TSymbolUniqueId pt00z = TSymbolUniqueId(3190); + static constexpr const TSymbolUniqueId imageSize_UImage2D1 = TSymbolUniqueId(3191); + static constexpr const TSymbolUniqueId pt01A = TSymbolUniqueId(3192); + static constexpr const TSymbolUniqueId imageSize_Image3D1 = TSymbolUniqueId(3193); + static constexpr const TSymbolUniqueId pt01B = TSymbolUniqueId(3194); + static constexpr const TSymbolUniqueId imageSize_IImage3D1 = TSymbolUniqueId(3195); + static constexpr const TSymbolUniqueId pt01C = TSymbolUniqueId(3196); + static constexpr const TSymbolUniqueId imageSize_UImage3D1 = TSymbolUniqueId(3197); + static constexpr const TSymbolUniqueId pt01D = TSymbolUniqueId(3198); + static constexpr const TSymbolUniqueId imageSize_Image2DArray1 = TSymbolUniqueId(3199); + static constexpr const TSymbolUniqueId pt01E = TSymbolUniqueId(3200); + static constexpr const TSymbolUniqueId imageSize_IImage2DArray1 = TSymbolUniqueId(3201); + static constexpr const TSymbolUniqueId pt01F = TSymbolUniqueId(3202); + static constexpr const TSymbolUniqueId imageSize_UImage2DArray1 = TSymbolUniqueId(3203); + static constexpr const TSymbolUniqueId pt01G = TSymbolUniqueId(3204); + static constexpr const TSymbolUniqueId imageSize_ImageCube1 = TSymbolUniqueId(3205); + static constexpr const TSymbolUniqueId pt01H = TSymbolUniqueId(3206); + static constexpr const TSymbolUniqueId imageSize_IImageCube1 = TSymbolUniqueId(3207); + static constexpr const TSymbolUniqueId pt01I = TSymbolUniqueId(3208); + static constexpr const TSymbolUniqueId imageSize_UImageCube1 = TSymbolUniqueId(3209); + static constexpr const TSymbolUniqueId pt01J = TSymbolUniqueId(3210); + static constexpr const TSymbolUniqueId imageLoad_Image2D1_Int2 = TSymbolUniqueId(3211); + static constexpr const TSymbolUniqueId imageLoad_IImage2D1_Int2 = TSymbolUniqueId(3212); + static constexpr const TSymbolUniqueId imageLoad_UImage2D1_Int2 = TSymbolUniqueId(3213); + static constexpr const TSymbolUniqueId imageLoad_Image3D1_Int3 = TSymbolUniqueId(3214); + static constexpr const TSymbolUniqueId imageLoad_IImage3D1_Int3 = TSymbolUniqueId(3215); + static constexpr const TSymbolUniqueId imageLoad_UImage3D1_Int3 = TSymbolUniqueId(3216); + static constexpr const TSymbolUniqueId imageLoad_Image2DArray1_Int3 = TSymbolUniqueId(3217); + static constexpr const TSymbolUniqueId imageLoad_IImage2DArray1_Int3 = TSymbolUniqueId(3218); + static constexpr const TSymbolUniqueId imageLoad_UImage2DArray1_Int3 = TSymbolUniqueId(3219); + static constexpr const TSymbolUniqueId imageLoad_ImageCube1_Int3 = TSymbolUniqueId(3220); + static constexpr const TSymbolUniqueId imageLoad_IImageCube1_Int3 = TSymbolUniqueId(3221); + static constexpr const TSymbolUniqueId imageLoad_UImageCube1_Int3 = TSymbolUniqueId(3222); + static constexpr const TSymbolUniqueId imageStore_Image2D1_Int2_Float4 = TSymbolUniqueId(3223); + static constexpr const TSymbolUniqueId imageStore_IImage2D1_Int2_Int4 = TSymbolUniqueId(3224); + static constexpr const TSymbolUniqueId imageStore_UImage2D1_Int2_UInt4 = TSymbolUniqueId(3225); + static constexpr const TSymbolUniqueId imageStore_Image3D1_Int3_Float4 = TSymbolUniqueId(3226); + static constexpr const TSymbolUniqueId imageStore_IImage3D1_Int3_Int4 = TSymbolUniqueId(3227); + static constexpr const TSymbolUniqueId imageStore_UImage3D1_Int3_UInt4 = TSymbolUniqueId(3228); + static constexpr const TSymbolUniqueId imageStore_Image2DArray1_Int3_Float4 = + TSymbolUniqueId(3229); + static constexpr const TSymbolUniqueId imageStore_IImage2DArray1_Int3_Int4 = + TSymbolUniqueId(3230); + static constexpr const TSymbolUniqueId imageStore_UImage2DArray1_Int3_UInt4 = + TSymbolUniqueId(3231); + static constexpr const TSymbolUniqueId imageStore_ImageCube1_Int3_Float4 = + TSymbolUniqueId(3232); + static constexpr const TSymbolUniqueId imageStore_IImageCube1_Int3_Int4 = TSymbolUniqueId(3233); + static constexpr const TSymbolUniqueId imageStore_UImageCube1_Int3_UInt4 = + TSymbolUniqueId(3234); + static constexpr const TSymbolUniqueId memoryBarrier = TSymbolUniqueId(3235); + static constexpr const TSymbolUniqueId memoryBarrierAtomicCounter = TSymbolUniqueId(3236); + static constexpr const TSymbolUniqueId memoryBarrierBuffer = TSymbolUniqueId(3237); + static constexpr const TSymbolUniqueId memoryBarrierImage = TSymbolUniqueId(3238); + static constexpr const TSymbolUniqueId barrier = TSymbolUniqueId(3239); + static constexpr const TSymbolUniqueId memoryBarrierShared = TSymbolUniqueId(3240); + static constexpr const TSymbolUniqueId groupMemoryBarrier = TSymbolUniqueId(3241); + static constexpr const TSymbolUniqueId EmitVertex = TSymbolUniqueId(3242); + static constexpr const TSymbolUniqueId EndPrimitive = TSymbolUniqueId(3243); + static constexpr const TSymbolUniqueId gl_DepthRangeParameters = TSymbolUniqueId(3244); + static constexpr const TSymbolUniqueId gl_DepthRange = TSymbolUniqueId(3245); + static constexpr const TSymbolUniqueId gl_MaxVertexAttribs = TSymbolUniqueId(3246); + static constexpr const TSymbolUniqueId gl_MaxVertexUniformVectors = TSymbolUniqueId(3247); + static constexpr const TSymbolUniqueId gl_MaxVertexTextureImageUnits = TSymbolUniqueId(3248); + static constexpr const TSymbolUniqueId gl_MaxCombinedTextureImageUnits = TSymbolUniqueId(3249); + static constexpr const TSymbolUniqueId gl_MaxTextureImageUnits = TSymbolUniqueId(3250); + static constexpr const TSymbolUniqueId gl_MaxFragmentUniformVectors = TSymbolUniqueId(3251); + static constexpr const TSymbolUniqueId gl_MaxVaryingVectors = TSymbolUniqueId(3252); + static constexpr const TSymbolUniqueId gl_MaxDrawBuffers = TSymbolUniqueId(3253); + static constexpr const TSymbolUniqueId gl_MaxDualSourceDrawBuffersEXT = TSymbolUniqueId(3254); + static constexpr const TSymbolUniqueId gl_MaxVertexOutputVectors = TSymbolUniqueId(3255); + static constexpr const TSymbolUniqueId gl_MaxFragmentInputVectors = TSymbolUniqueId(3256); + static constexpr const TSymbolUniqueId gl_MinProgramTexelOffset = TSymbolUniqueId(3257); + static constexpr const TSymbolUniqueId gl_MaxProgramTexelOffset = TSymbolUniqueId(3258); + static constexpr const TSymbolUniqueId gl_MaxImageUnits = TSymbolUniqueId(3259); + static constexpr const TSymbolUniqueId gl_MaxVertexImageUniforms = TSymbolUniqueId(3260); + static constexpr const TSymbolUniqueId gl_MaxFragmentImageUniforms = TSymbolUniqueId(3261); + static constexpr const TSymbolUniqueId gl_MaxComputeImageUniforms = TSymbolUniqueId(3262); + static constexpr const TSymbolUniqueId gl_MaxCombinedImageUniforms = TSymbolUniqueId(3263); + static constexpr const TSymbolUniqueId gl_MaxCombinedShaderOutputResources = + TSymbolUniqueId(3264); + static constexpr const TSymbolUniqueId gl_MaxComputeWorkGroupCount = TSymbolUniqueId(3265); + static constexpr const TSymbolUniqueId gl_MaxComputeWorkGroupSize = TSymbolUniqueId(3266); + static constexpr const TSymbolUniqueId gl_MaxComputeUniformComponents = TSymbolUniqueId(3267); + static constexpr const TSymbolUniqueId gl_MaxComputeTextureImageUnits = TSymbolUniqueId(3268); + static constexpr const TSymbolUniqueId gl_MaxComputeAtomicCounters = TSymbolUniqueId(3269); + static constexpr const TSymbolUniqueId gl_MaxComputeAtomicCounterBuffers = + TSymbolUniqueId(3270); + static constexpr const TSymbolUniqueId gl_MaxVertexAtomicCounters = TSymbolUniqueId(3271); + static constexpr const TSymbolUniqueId gl_MaxFragmentAtomicCounters = TSymbolUniqueId(3272); + static constexpr const TSymbolUniqueId gl_MaxCombinedAtomicCounters = TSymbolUniqueId(3273); + static constexpr const TSymbolUniqueId gl_MaxAtomicCounterBindings = TSymbolUniqueId(3274); + static constexpr const TSymbolUniqueId gl_MaxVertexAtomicCounterBuffers = TSymbolUniqueId(3275); + static constexpr const TSymbolUniqueId gl_MaxFragmentAtomicCounterBuffers = + TSymbolUniqueId(3276); + static constexpr const TSymbolUniqueId gl_MaxCombinedAtomicCounterBuffers = + TSymbolUniqueId(3277); + static constexpr const TSymbolUniqueId gl_MaxAtomicCounterBufferSize = TSymbolUniqueId(3278); + static constexpr const TSymbolUniqueId gl_MaxGeometryInputComponents = TSymbolUniqueId(3279); + static constexpr const TSymbolUniqueId gl_MaxGeometryOutputComponents = TSymbolUniqueId(3280); + static constexpr const TSymbolUniqueId gl_MaxGeometryImageUniforms = TSymbolUniqueId(3281); + static constexpr const TSymbolUniqueId gl_MaxGeometryTextureImageUnits = TSymbolUniqueId(3282); + static constexpr const TSymbolUniqueId gl_MaxGeometryOutputVertices = TSymbolUniqueId(3283); + static constexpr const TSymbolUniqueId gl_MaxGeometryTotalOutputComponents = + TSymbolUniqueId(3284); + static constexpr const TSymbolUniqueId gl_MaxGeometryUniformComponents = TSymbolUniqueId(3285); + static constexpr const TSymbolUniqueId gl_MaxGeometryAtomicCounters = TSymbolUniqueId(3286); + static constexpr const TSymbolUniqueId gl_MaxGeometryAtomicCounterBuffers = + TSymbolUniqueId(3287); + static constexpr const TSymbolUniqueId gl_FragCoord = TSymbolUniqueId(3288); + static constexpr const TSymbolUniqueId gl_FrontFacing = TSymbolUniqueId(3289); + static constexpr const TSymbolUniqueId gl_PointCoord = TSymbolUniqueId(3290); + static constexpr const TSymbolUniqueId gl_FragColor = TSymbolUniqueId(3291); + static constexpr const TSymbolUniqueId gl_FragData = TSymbolUniqueId(3292); + static constexpr const TSymbolUniqueId gl_FragDepth = TSymbolUniqueId(3293); + static constexpr const TSymbolUniqueId gl_SecondaryFragColorEXT = TSymbolUniqueId(3294); + static constexpr const TSymbolUniqueId gl_SecondaryFragDataEXT = TSymbolUniqueId(3295); + static constexpr const TSymbolUniqueId gl_FragDepthEXT = TSymbolUniqueId(3296); + static constexpr const TSymbolUniqueId gl_LastFragData = TSymbolUniqueId(3297); + static constexpr const TSymbolUniqueId gl_LastFragColor = TSymbolUniqueId(3298); + static constexpr const TSymbolUniqueId gl_LastFragDataNV = TSymbolUniqueId(3299); + static constexpr const TSymbolUniqueId gl_LastFragColorARM = TSymbolUniqueId(3300); + static constexpr const TSymbolUniqueId gl_PrimitiveID = TSymbolUniqueId(3301); + static constexpr const TSymbolUniqueId gl_Layer = TSymbolUniqueId(3302); + static constexpr const TSymbolUniqueId gl_Position = TSymbolUniqueId(3303); + static constexpr const TSymbolUniqueId gl_PointSize = TSymbolUniqueId(3304); + static constexpr const TSymbolUniqueId gl_InstanceID = TSymbolUniqueId(3305); + static constexpr const TSymbolUniqueId gl_VertexID = TSymbolUniqueId(3306); + static constexpr const TSymbolUniqueId gl_ViewportIndex = TSymbolUniqueId(3307); + static constexpr const TSymbolUniqueId gl_LayerVS = TSymbolUniqueId(3308); + static constexpr const TSymbolUniqueId gl_DrawID = TSymbolUniqueId(3309); + static constexpr const TSymbolUniqueId gl_BaseVertex = TSymbolUniqueId(3310); + static constexpr const TSymbolUniqueId gl_BaseInstance = TSymbolUniqueId(3311); + static constexpr const TSymbolUniqueId gl_NumWorkGroups = TSymbolUniqueId(3312); + static constexpr const TSymbolUniqueId gl_WorkGroupSize = TSymbolUniqueId(3313); + static constexpr const TSymbolUniqueId gl_WorkGroupID = TSymbolUniqueId(3314); + static constexpr const TSymbolUniqueId gl_LocalInvocationID = TSymbolUniqueId(3315); + static constexpr const TSymbolUniqueId gl_GlobalInvocationID = TSymbolUniqueId(3316); + static constexpr const TSymbolUniqueId gl_LocalInvocationIndex = TSymbolUniqueId(3317); + static constexpr const TSymbolUniqueId gl_PrimitiveIDIn = TSymbolUniqueId(3318); + static constexpr const TSymbolUniqueId gl_InvocationID = TSymbolUniqueId(3319); + static constexpr const TSymbolUniqueId gl_PrimitiveIDGS = TSymbolUniqueId(3320); + static constexpr const TSymbolUniqueId gl_LayerGS = TSymbolUniqueId(3321); + static constexpr const TSymbolUniqueId gl_PerVertex = TSymbolUniqueId(3322); + static constexpr const TSymbolUniqueId gl_in = TSymbolUniqueId(3323); + static constexpr const TSymbolUniqueId gl_PerVertexOutBlock = TSymbolUniqueId(3324); + static constexpr const TSymbolUniqueId gl_PositionGS = TSymbolUniqueId(3325); + static constexpr const TSymbolUniqueId gl_ViewID_OVR = TSymbolUniqueId(3326); + +}; // class BuiltInId + +namespace BuiltInVariable +{ + +const TVariable *gl_BaseInstance(); +const TVariable *gl_BaseVertex(); +const TVariable *gl_DrawID(); +const TVariable *gl_FragColor(); +const TVariable *gl_FragCoord(); +const TVariable *gl_FragDepth(); +const TVariable *gl_FrontFacing(); +const TVariable *gl_GlobalInvocationID(); +const TVariable *gl_InstanceID(); +const TVariable *gl_InvocationID(); +const TVariable *gl_LastFragColor(); +const TVariable *gl_LastFragColorARM(); +const TVariable *gl_Layer(); +const TVariable *gl_LayerGS(); +const TVariable *gl_LayerVS(); +const TVariable *gl_LocalInvocationID(); +const TVariable *gl_LocalInvocationIndex(); +const TVariable *gl_NumWorkGroups(); +const TVariable *gl_PointCoord(); +const TVariable *gl_PointSize(); +const TVariable *gl_Position(); +const TVariable *gl_PrimitiveID(); +const TVariable *gl_PrimitiveIDGS(); +const TVariable *gl_PrimitiveIDIn(); +const TVariable *gl_SecondaryFragColorEXT(); +const TVariable *gl_VertexID(); +const TVariable *gl_ViewID_OVR(); +const TVariable *gl_ViewportIndex(); +const TVariable *gl_WorkGroupID(); +const TVariable *gl_WorkGroupSize(); + +} // namespace BuiltInVariable + +} // namespace sh + +#endif // COMPILER_TRANSLATOR_TREEUTIL_BUILTIN_AUTOGEN_H_ diff --git a/src/compiler/translator/tree_util/BuiltIn_autogen.h b/src/compiler/translator/tree_util/BuiltIn_complete_autogen.h similarity index 99% rename from src/compiler/translator/tree_util/BuiltIn_autogen.h rename to src/compiler/translator/tree_util/BuiltIn_complete_autogen.h index 2771ca93a..f7ea98907 100644 --- a/src/compiler/translator/tree_util/BuiltIn_autogen.h +++ b/src/compiler/translator/tree_util/BuiltIn_complete_autogen.h @@ -6,7 +6,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // -// BuiltIn_autogen.h: +// BuiltIn_complete_autogen.h: // Compile-time initialized built-ins. #ifndef COMPILER_TRANSLATOR_TREEUTIL_BUILTIN_AUTOGEN_H_ diff --git a/src/compiler/translator/tree_util/IntermNode_util.h b/src/compiler/translator/tree_util/IntermNode_util.h index 54326bd7c..2f563f2de 100644 --- a/src/compiler/translator/tree_util/IntermNode_util.h +++ b/src/compiler/translator/tree_util/IntermNode_util.h @@ -63,7 +63,7 @@ TIntermSymbol *ReferenceGlobalVariable(const ImmutableString &name, const TSymbolTable &symbolTable); // Note: this can't access desktop GLSL built-ins. Those can only be accessed directly through -// BuiltIn_autogen.h. +// BuiltIn.h. TIntermSymbol *ReferenceBuiltInVariable(const ImmutableString &name, const TSymbolTable &symbolTable, int shaderVersion); diff --git a/src/tests/angle_unittests.gni b/src/tests/angle_unittests.gni index 8cdf65d74..b1686cc84 100644 --- a/src/tests/angle_unittests.gni +++ b/src/tests/angle_unittests.gni @@ -72,7 +72,6 @@ angle_unittests_sources = [ "../tests/compiler_tests/GlFragDataNotModified_test.cpp", "../tests/compiler_tests/GeometryShader_test.cpp", "../tests/compiler_tests/ImmutableString_test.cpp", - "../tests/compiler_tests/ImmutableString_test_autogen.cpp", "../tests/compiler_tests/InitOutputVariables_test.cpp", "../tests/compiler_tests/IntermNode_test.cpp", "../tests/compiler_tests/NV_draw_buffers_test.cpp", @@ -143,3 +142,11 @@ angle_unittests_helper_sources = [ "../common/system_utils_unittest_helper.cpp", "../common/system_utils_unittest_helper.h", ] + +if (is_android) { + angle_unittests_sources += + [ "../tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp" ] +} else { + angle_unittests_sources += + [ "../tests/compiler_tests/ImmutableString_test_autogen.cpp" ] +} diff --git a/src/tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp b/src/tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp index c6dbbdf48..325be5f4b 100644 --- a/src/tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp +++ b/src/tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp @@ -1,11 +1,11 @@ // GENERATED FILE - DO NOT EDIT. -// Generated by gen_builtin_symbols_essl_only.py using data from builtin_function_declarations.txt. +// Generated by gen_builtin_symbols.py using data from builtin_function_declarations.txt. // // Copyright 2019 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: +// ImmutableString_test_ESSL_autogen.cpp: // Tests for matching script-generated hashes with runtime computed hashes. #include "compiler/translator/ImmutableString.h"