From e96039218e9d83a904fb8b5588ee1ab984bc8e17 Mon Sep 17 00:00:00 2001 From: Jamie Madill Date: Thu, 31 Oct 2019 14:33:26 -0400 Subject: [PATCH] Capture/Replay: Correct a few GLenum replay issues. This change refactors the GLenum utils into a non-autogenerated and an autogenerated portion. That makes it easier to modify the non-auto- generated bits to properly output GLenums even when the gl.xml data isn't totally correct. For instance, the "GetPName" group was missing a bunch of queries. Instead of trying to fix the GL we can simply fall back to querying the "Default" group when we return invalid enum. Also corrects a missing "0x" on hex output. Also allows the capture/replay sample to specify the correct binary data directory when testing a replay. Bug: angleproject:3611 Change-Id: I8e4c690b2850bb157a8cde8b057b20603e4b177d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1891008 Reviewed-by: Cody Northrop Commit-Queue: Jamie Madill --- BUILD.gn | 5 +- samples/BUILD.gn | 6 +- samples/capture_replay/CaptureReplay.cpp | 14 +- .../GL_EGL_entry_points.json | 64 ++-- .../GLenum_value_to_string_map.json | 6 +- scripts/gen_gl_enum_utils.py | 71 +--- scripts/generate_entry_points.py | 6 +- src/libANGLE/FrameCapture.cpp | 34 +- src/libANGLE/capture_gles_1_0_autogen.cpp | 2 +- src/libANGLE/capture_gles_2_0_autogen.cpp | 2 +- src/libANGLE/capture_gles_3_0_autogen.cpp | 2 +- src/libANGLE/capture_gles_3_1_autogen.cpp | 2 +- src/libANGLE/capture_gles_3_2_autogen.cpp | 2 +- src/libANGLE/capture_gles_ext_autogen.cpp | 2 +- src/libANGLE/gl_enum_utils.cpp | 57 +++ src/libANGLE/gl_enum_utils.h | 28 ++ src/libANGLE/gl_enum_utils_autogen.cpp | 356 ++++++++---------- src/libANGLE/gl_enum_utils_autogen.h | 17 - src/libGL/entry_points_gl_1_0_autogen.cpp | 2 +- src/libGL/entry_points_gl_1_1_autogen.cpp | 2 +- src/libGL/entry_points_gl_1_2_autogen.cpp | 2 +- src/libGL/entry_points_gl_1_3_autogen.cpp | 2 +- src/libGL/entry_points_gl_1_4_autogen.cpp | 2 +- src/libGL/entry_points_gl_1_5_autogen.cpp | 2 +- src/libGL/entry_points_gl_2_0_autogen.cpp | 2 +- src/libGL/entry_points_gl_2_1_autogen.cpp | 2 +- src/libGL/entry_points_gl_3_0_autogen.cpp | 2 +- src/libGL/entry_points_gl_3_1_autogen.cpp | 2 +- src/libGL/entry_points_gl_3_2_autogen.cpp | 2 +- src/libGL/entry_points_gl_3_3_autogen.cpp | 2 +- src/libGL/entry_points_gl_4_0_autogen.cpp | 2 +- src/libGL/entry_points_gl_4_1_autogen.cpp | 2 +- src/libGL/entry_points_gl_4_2_autogen.cpp | 2 +- src/libGL/entry_points_gl_4_3_autogen.cpp | 2 +- src/libGL/entry_points_gl_4_4_autogen.cpp | 2 +- src/libGL/entry_points_gl_4_5_autogen.cpp | 2 +- src/libGL/entry_points_gl_4_6_autogen.cpp | 2 +- src/libGLESv2.gni | 2 + .../entry_points_gles_1_0_autogen.cpp | 2 +- .../entry_points_gles_2_0_autogen.cpp | 2 +- .../entry_points_gles_3_0_autogen.cpp | 2 +- .../entry_points_gles_3_1_autogen.cpp | 2 +- .../entry_points_gles_3_2_autogen.cpp | 2 +- .../entry_points_gles_ext_autogen.cpp | 2 +- 44 files changed, 371 insertions(+), 357 deletions(-) create mode 100644 src/libANGLE/gl_enum_utils.cpp create mode 100644 src/libANGLE/gl_enum_utils.h diff --git a/BUILD.gn b/BUILD.gn index 6c0623b9b362b..05db4ccc42e21 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -772,7 +772,10 @@ angle_source_set("libANGLE") { # gl_enum_utils defaults included in with_capture build if (angle_enable_trace || is_debug) { - sources += [ "src/libANGLE/gl_enum_utils_autogen.cpp" ] + sources += [ + "src/libANGLE/gl_enum_utils.cpp", + "src/libANGLE/gl_enum_utils_autogen.cpp", + ] } } diff --git a/samples/BUILD.gn b/samples/BUILD.gn index abad41f8b7336..69ede71f33c39 100644 --- a/samples/BUILD.gn +++ b/samples/BUILD.gn @@ -57,8 +57,9 @@ template("angle_sample") { angle_executable(target_name) { forward_variables_from(invoker, [ - "sources", "cflags", + "defines", + "sources", ]) deps = [ ":sample_util", @@ -224,6 +225,9 @@ template("capture_replay") { "capture_replay/angle_capture_context1.cpp", "capture_replay/angle_capture_context1.h", ] + + _data_path = rebase_path("capture_replay", root_out_dir) + defines = [ "ANGLE_CAPTURE_REPLAY_SAMPLE_DATA_DIR=\"${_data_path}\"" ] suppressed_configs = [ "$angle_root:constructor_and_destructor_warnings" ] } } diff --git a/samples/capture_replay/CaptureReplay.cpp b/samples/capture_replay/CaptureReplay.cpp index 5e170dbb671ba..c2409d0abd10f 100644 --- a/samples/capture_replay/CaptureReplay.cpp +++ b/samples/capture_replay/CaptureReplay.cpp @@ -13,10 +13,20 @@ class CaptureReplaySample : public SampleApplication { public: CaptureReplaySample(int argc, char **argv) - : SampleApplication("CaptureReplaySample", argc, argv, 2, 0) + : SampleApplication("CaptureReplaySample", argc, argv, 3, 0) {} - bool initialize() override { return true; } + bool initialize() override + { + // Set CWD to executable directory. + std::string exeDir = angle::GetExecutableDirectory(); + if (!angle::SetCWD(exeDir.c_str())) + return false; + SetBinaryDataDir(ANGLE_CAPTURE_REPLAY_SAMPLE_DATA_DIR); + SetupContext1Replay(); + return true; + } + void destroy() override {} void draw() override diff --git a/scripts/code_generation_hashes/GL_EGL_entry_points.json b/scripts/code_generation_hashes/GL_EGL_entry_points.json index a4b6d583d89cd..834c9fa044872 100644 --- a/scripts/code_generation_hashes/GL_EGL_entry_points.json +++ b/scripts/code_generation_hashes/GL_EGL_entry_points.json @@ -6,7 +6,7 @@ "scripts/entry_point_packed_gl_enums.json": "3b72a1d43df45cf53784b2a0002b93e5", "scripts/generate_entry_points.py": - "b6c3c544f603a6e37168c39581a86c3d", + "fef06e2feec72f9e4bf4f2b8c9c76c17", "scripts/gl.xml": "b470cb06b06cbbe7adb2c8129ec85708", "scripts/gl_angle_ext.xml": @@ -66,27 +66,27 @@ "src/libANGLE/Context_gles_ext_autogen.h": "2b79ca4165cde1822bf3114e9be36ffe", "src/libANGLE/capture_gles_1_0_autogen.cpp": - "b186bbd2b8e541208f58c68a7b7201d0", + "cdf61f5bb245ec4b7976922ad3c983b4", "src/libANGLE/capture_gles_1_0_autogen.h": "942cece5d16510b77529dd549fc8ffb6", "src/libANGLE/capture_gles_2_0_autogen.cpp": - "928f64b38fefa6f69b1b9ddd3cb0a800", + "6abbbf043ab061141516ec0a78d83414", "src/libANGLE/capture_gles_2_0_autogen.h": "1d7c76f7dfcb666161bc4675932511c5", "src/libANGLE/capture_gles_3_0_autogen.cpp": - "0ccdb5401c2630ecc2bbd0bcbc1559f0", + "8c29bbcc49be5d9792b65a98dde38c81", "src/libANGLE/capture_gles_3_0_autogen.h": "47530c15422e03b9cc224533eed1f2f7", "src/libANGLE/capture_gles_3_1_autogen.cpp": - "1de6bb30272e7b4b29e508a64c7d2e63", + "2a941ced0f0721fb0256accbf07fc4c3", "src/libANGLE/capture_gles_3_1_autogen.h": "389c0212c9d2da8bdc159aecee243551", "src/libANGLE/capture_gles_3_2_autogen.cpp": - "7cb1866e8c3d754187d25a7db272dded", + "105d24635bacbd3e464da5056c328987", "src/libANGLE/capture_gles_3_2_autogen.h": "670fe346f46607380fc7cf8234657123", "src/libANGLE/capture_gles_ext_autogen.cpp": - "f28449f3234c31a499ca46636898ff34", + "3157fc72b59492ae13f2b4ddb17a4a7e", "src/libANGLE/capture_gles_ext_autogen.h": "50e37179609055eeee59807b631e33c9", "src/libANGLE/entry_points_enum_autogen.cpp": @@ -150,79 +150,79 @@ "src/libANGLE/validationGL4_autogen.h": "506d7f2976f38191e8124292d4b2381c", "src/libGL/entry_points_gl_1_0_autogen.cpp": - "97af960a3ac3e09c7582ae5fd34ea00f", + "a4daa0cb63f70d3df36d82c62dadf4eb", "src/libGL/entry_points_gl_1_0_autogen.h": "a2372719bd7fbc4a6b070ecae7d9247a", "src/libGL/entry_points_gl_1_1_autogen.cpp": - "ffb6c6ad66896c1fb6ae829943a8ab19", + "bda932e7b8c48c6f9d3e67986daa760f", "src/libGL/entry_points_gl_1_1_autogen.h": "29ff203c0d402f78d020525a5e5ee447", "src/libGL/entry_points_gl_1_2_autogen.cpp": - "46a9ee44d1130a0edc6af15a7ba69cae", + "58cbcbd98a5b2a39f0399bc4cf877d72", "src/libGL/entry_points_gl_1_2_autogen.h": "db041e9b37eaaf1c31a4b4e2e4e987f4", "src/libGL/entry_points_gl_1_3_autogen.cpp": - "6808f83f6917854166d327ae3fd65b06", + "084e837b6de7022a77189025778edf66", "src/libGL/entry_points_gl_1_3_autogen.h": "0c30cbdd3d5b10e9217a049cc2794317", "src/libGL/entry_points_gl_1_4_autogen.cpp": - "3008406765111143f7fc03403ab1ae02", + "bdf0e58164be5874746c932a8b4a4ca9", "src/libGL/entry_points_gl_1_4_autogen.h": "6f3dcfd98c18cd53f32e61ee01eabad6", "src/libGL/entry_points_gl_1_5_autogen.cpp": - "52cdf4ba872a2cb70d3da4a37550fe65", + "d1af528536223d6596de5f80eba8afa0", "src/libGL/entry_points_gl_1_5_autogen.h": "8caacff247caecb833b065afaf6e90ef", "src/libGL/entry_points_gl_2_0_autogen.cpp": - "95a7a8632efad5246cd47f13e67a4f8f", + "5ca4096a4ef67886a0ab8833a1d78e38", "src/libGL/entry_points_gl_2_0_autogen.h": "f0f58f83717148d58b735af5c435f2ef", "src/libGL/entry_points_gl_2_1_autogen.cpp": - "3bcd909ee2074e04bdd74cd5334a3314", + "de8220d247cf6f5c3fe6e53180f4e4e4", "src/libGL/entry_points_gl_2_1_autogen.h": "87cd6d513a5852c56eed9b58484fbe19", "src/libGL/entry_points_gl_3_0_autogen.cpp": - "8c6e1637e876828f7a843bcd8ee343ad", + "ce58fb8f366180f4985c15525fd2d688", "src/libGL/entry_points_gl_3_0_autogen.h": "47396290a846f808e598acdbca56e9b3", "src/libGL/entry_points_gl_3_1_autogen.cpp": - "ed491a5e2eb7db9737b7a7e637291f09", + "7580f570dc32617d92795f64acd2bcd2", "src/libGL/entry_points_gl_3_1_autogen.h": "6ee6613c0206d99c6afdcd3faddb52a3", "src/libGL/entry_points_gl_3_2_autogen.cpp": - "629fe168acc316b1f2a370048e6f0ee4", + "85c8dad28022855d4b08189abd0c45f9", "src/libGL/entry_points_gl_3_2_autogen.h": "347e40b5c9fd08a693bf4ffe713c61e6", "src/libGL/entry_points_gl_3_3_autogen.cpp": - "56cf84c3812e618cbe818a1f4e7e01ac", + "82a9a4afafd9d4aab5c549adcfb1615e", "src/libGL/entry_points_gl_3_3_autogen.h": "2151c64b03364111ad1455609243caba", "src/libGL/entry_points_gl_4_0_autogen.cpp": - "5109dc62f6d5ae5a7e967d67289c27df", + "706e99bdf41e8b40770e30212d029aa7", "src/libGL/entry_points_gl_4_0_autogen.h": "c5a258322ee6de37ffdbb6f40d5703a2", "src/libGL/entry_points_gl_4_1_autogen.cpp": - "74448960c2c6d1ade9e96914b13a71f6", + "e7030ef9c2eb8a060ff39f8290e08324", "src/libGL/entry_points_gl_4_1_autogen.h": "ea1e18bf5ed2bd1063c940bd793cb50c", "src/libGL/entry_points_gl_4_2_autogen.cpp": - "9de6c0fb0299ed6ac582888391d88e70", + "b1398145a971caf304bfa04b763ef4c3", "src/libGL/entry_points_gl_4_2_autogen.h": "e6b93e1c3028230ebf5ba8a09f5f4aca", "src/libGL/entry_points_gl_4_3_autogen.cpp": - "90385feca064cabc28380a66e82429d1", + "fdbad2524aa7da7fae958f63561b67ae", "src/libGL/entry_points_gl_4_3_autogen.h": "60bf8a8337129670875de694386a0a9d", "src/libGL/entry_points_gl_4_4_autogen.cpp": - "c79d8b66a98a49b66f12ff6379ff8fb4", + "433442c50de217a592a9196b8459e4b0", "src/libGL/entry_points_gl_4_4_autogen.h": "d0a8c556ffb1c9d4519a66b2868c68b2", "src/libGL/entry_points_gl_4_5_autogen.cpp": - "ddb5009c66a37741716cd508cf83c0c3", + "84025bdbd5390f84a30c2ea6c1412611", "src/libGL/entry_points_gl_4_5_autogen.h": "0cc66bfbe40b1120e38ba977c2c95cc1", "src/libGL/entry_points_gl_4_6_autogen.cpp": - "17403d2322e09156e58dd97ef341ed4b", + "76e7e0bfa5550d77665f63c6f7a918a9", "src/libGL/entry_points_gl_4_6_autogen.h": "d659e18d8caffa8d0729fc1a8bdd79f2", "src/libGL/libGL_autogen.cpp": @@ -230,27 +230,27 @@ "src/libGL/libGL_autogen.def": "b372327de868ff8eaa4f837b7e434f72", "src/libGLESv2/entry_points_gles_1_0_autogen.cpp": - "ca944f7d1a68a87f07acf51b4f6b11f6", + "09ad611acdd58e37aae27cbde7ec04a1", "src/libGLESv2/entry_points_gles_1_0_autogen.h": "bc93815cab91fe9b6f86d04ef4e8863f", "src/libGLESv2/entry_points_gles_2_0_autogen.cpp": - "2a2a36cace079a1c836f9227811143e2", + "cb70d24eba01f14857514c2c95fe0fea", "src/libGLESv2/entry_points_gles_2_0_autogen.h": "3bbaf1cf42fba5d675e5b54cd1d14df7", "src/libGLESv2/entry_points_gles_3_0_autogen.cpp": - "e0ec5aae2046f3cb7de9d51594024fe9", + "0268fdd48ffb3ae84a0f1dcd4064d45f", "src/libGLESv2/entry_points_gles_3_0_autogen.h": "395f6978219abd5182bbe80cc367e40c", "src/libGLESv2/entry_points_gles_3_1_autogen.cpp": - "a5b1581c1f809b6f7b36b06688a95d7b", + "4fe124db0b5d238038358853f349b247", "src/libGLESv2/entry_points_gles_3_1_autogen.h": "043d09a964c740067bf4279e0b544aed", "src/libGLESv2/entry_points_gles_3_2_autogen.cpp": - "83c4850e1c9be655bd342ef34a398012", + "09693d9b4cd5f015ee1b1bd46a2a0e0a", "src/libGLESv2/entry_points_gles_3_2_autogen.h": "e06eb4df7dc6fb29c5fd632a54b0b162", "src/libGLESv2/entry_points_gles_ext_autogen.cpp": - "7dd5f8f00efe704691859723dc83f5ec", + "19f6e2b5b612f49f8a079c646112d1dd", "src/libGLESv2/entry_points_gles_ext_autogen.h": "ce40d2f260a855dd7f11cfb919db4b70", "src/libGLESv2/libGLESv2_autogen.cpp": diff --git a/scripts/code_generation_hashes/GLenum_value_to_string_map.json b/scripts/code_generation_hashes/GLenum_value_to_string_map.json index ee2156cfe136b..a8bd068f1b02e 100644 --- a/scripts/code_generation_hashes/GLenum_value_to_string_map.json +++ b/scripts/code_generation_hashes/GLenum_value_to_string_map.json @@ -1,6 +1,6 @@ { "scripts/gen_gl_enum_utils.py": - "a9b5da824adad3e9f8f586a6a53708c6", + "43712e01cc1c0ae60b4eccef659fe328", "scripts/gl.xml": "b470cb06b06cbbe7adb2c8129ec85708", "scripts/gl_angle_ext.xml": @@ -8,7 +8,7 @@ "scripts/registry_xml.py": "b24096dba06cad5f97b07edbd5f0c132", "src/libANGLE/gl_enum_utils_autogen.cpp": - "2561a68fa7582e248c7d9feb400723d3", + "1d8757468215b824bf6a1c0bd077909d", "src/libANGLE/gl_enum_utils_autogen.h": - "b6b36e2bbb676ed3b744e883b0d101e1" + "fb0bb7f506f6082ea3b2c3fa384d2739" } \ No newline at end of file diff --git a/scripts/gen_gl_enum_utils.py b/scripts/gen_gl_enum_utils.py index 688d307adeac6..c73967af3758f 100755 --- a/scripts/gen_gl_enum_utils.py +++ b/scripts/gen_gl_enum_utils.py @@ -27,29 +27,13 @@ # ifndef LIBANGLE_GL_ENUM_UTILS_AUTOGEN_H_ # define LIBANGLE_GL_ENUM_UTILS_AUTOGEN_H_ -#include -#include - -#include "common/PackedGLEnums_autogen.h" - namespace gl {{ - -enum class GLenumGroup {{ +enum class GLenumGroup +{{ {gl_enum_groups} }}; - -const char *GLbooleanToString(unsigned int value); - -const char *GLenumToString(GLenumGroup enumGroup, unsigned int value); - -std::string GLbitfieldToString(GLenumGroup enumGroup, unsigned int value); - -void OutputGLenumString(std::ostream &out, GLenumGroup enumGroup, unsigned int value); - -void OutputGLbitfieldString(std::ostream &out, GLenumGroup enumGroup, unsigned int value); - -}} +}} // namespace gl # endif // LIBANGLE_GL_ENUM_UTILS_AUTOGEN_H_ """ @@ -66,57 +50,27 @@ #include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" + #include #include "common/bitset_utils.h" namespace gl {{ - -namespace -{{ -constexpr char kEnumUnknown[] = "EnumUnknown"; -}} // anonymous namespace - -void OutputGLenumString(std::ostream &out, GLenumGroup enumGroup, unsigned int value) +const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) {{ - const char *enumStr = GLenumToString(enumGroup, value); - if (enumStr != kEnumUnknown) + switch (enumGroup) {{ - out << enumStr; - }} - else - {{ - out << std::hex << value << std::dec; - }} -}} - -void OutputGLbitfieldString(std::ostream &out, GLenumGroup enumGroup, unsigned int value) -{{ - out << GLbitfieldToString(enumGroup, value); -}} - -const char *GLbooleanToString(unsigned int value) {{ - switch (value) {{ - case 0x0: - return "GL_FALSE"; - case 0x1: - return "GL_TRUE"; - default: - return kEnumUnknown; - }} -}} - -const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) {{ - switch (enumGroup) {{ {gl_enums_value_to_string_table} default: - return kEnumUnknown; + return kUnknownGLenumString; }} }} -std::string GLbitfieldToString(GLenumGroup enumGroup, unsigned int value) {{ +std::string GLbitfieldToString(GLenumGroup enumGroup, unsigned int value) +{{ std::stringstream st; const angle::BitSet<32> bitSet(value); @@ -135,8 +89,7 @@ return st.str(); }} - -}} +}} // namespace gl """ @@ -144,7 +97,7 @@ switch (value) {{ {inner_group_cases} default: - return kEnumUnknown; + return kUnknownGLenumString; }} }} """ diff --git a/scripts/generate_entry_points.py b/scripts/generate_entry_points.py index 56c63adefa01f..37f9637c54d39 100755 --- a/scripts/generate_entry_points.py +++ b/scripts/generate_entry_points.py @@ -298,7 +298,7 @@ class Context; #include "libANGLE/Context.h" #include "libANGLE/FrameCapture.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validation{annotation_no_dash}.h" using namespace angle; @@ -447,7 +447,7 @@ class Context; #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/capture_{header_version}_autogen.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validation{validation_header_version}.h" #include "libANGLE/entry_points_utils.h" #include "libGLESv2/global_state.h" @@ -462,7 +462,7 @@ class Context; #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libANGLE/FrameCapture.cpp b/src/libANGLE/FrameCapture.cpp index 173520438a462..dc5574b15e294 100644 --- a/src/libANGLE/FrameCapture.cpp +++ b/src/libANGLE/FrameCapture.cpp @@ -17,7 +17,7 @@ #include "common/system_utils.h" #include "libANGLE/Context.h" #include "libANGLE/VertexArray.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #if !ANGLE_CAPTURE_ENABLED # error Frame capture must be enbled to include this file. @@ -448,29 +448,29 @@ void WriteCppReplay(const std::string &outDir, out << "void " << FmtReplayFunction(contextId, frameIndex) << "\n"; out << "{\n"; - if (!binaryData.empty()) - { - std::string binaryDataFileName = GetCaptureFileName(contextId, frameIndex, ".angledata"); - - out << " LoadBinaryData(\"" << binaryDataFileName << "\", " - << static_cast(binaryData.size()) << ");\n"; - } + std::stringstream callStream; for (const CallCapture &call : calls) { - out << " "; - WriteCppReplayForCall(call, &counters, out, header, &binaryData); - out << ";\n"; + callStream << " "; + WriteCppReplayForCall(call, &counters, callStream, header, &binaryData); + callStream << ";\n"; } if (!binaryData.empty()) { + std::string binaryDataFileName = GetCaptureFileName(contextId, frameIndex, ".angledata"); + + out << " LoadBinaryData(\"" << binaryDataFileName << "\", " + << static_cast(binaryData.size()) << ");\n"; + std::string dataFilepath = GetCaptureFilePath(outDir, contextId, frameIndex, ".angledata"); SaveFileHelper saveData(dataFilepath, std::ios::binary); saveData.ofs.write(reinterpret_cast(binaryData.data()), binaryData.size()); } + out << callStream.str(); out << "}\n"; header << "} // anonymous namespace\n"; @@ -520,6 +520,7 @@ void WriteCppReplayIndexFiles(const std::string &outDir, header << "void " << FmtReplayFunction(contextId, frameIndex) << ";\n"; } header << "\n"; + header << "void SetBinaryDataDir(const char *dataDir);\n"; header << "void LoadBinaryData(const char *fileName, size_t size);\n"; header << "\n"; header << "// Global state\n"; @@ -539,6 +540,8 @@ void WriteCppReplayIndexFiles(const std::string &outDir, source << " memcpy(&returnedID, &gReadBuffer[readBufferOffset], sizeof(GLuint));\n"; source << " (*resourceMap)[id] = returnedID;\n"; source << "}\n"; + source << "\n"; + source << "const char *gBinaryDataDir = \".\";\n"; source << "} // namespace\n"; source << "\n"; source << "uint8_t *gBinaryData = nullptr;\n"; @@ -583,6 +586,11 @@ void WriteCppReplayIndexFiles(const std::string &outDir, source << " }\n"; source << "}\n"; source << "\n"; + source << "void SetBinaryDataDir(const char *dataDir)\n"; + source << "{\n"; + source << " gBinaryDataDir = dataDir;\n"; + source << "}\n"; + source << "\n"; source << "void LoadBinaryData(const char *fileName, size_t size)\n"; source << "{\n"; source << " if (gBinaryData != nullptr)\n"; @@ -590,7 +598,9 @@ void WriteCppReplayIndexFiles(const std::string &outDir, source << " delete [] gBinaryData;\n"; source << " }\n"; source << " gBinaryData = new uint8_t[size];\n"; - source << " FILE *fp = fopen(fileName, \"rb\");\n"; + source << " char pathBuffer[1000] = {};\n"; + source << " sprintf(pathBuffer, \"%s/%s\", gBinaryDataDir, fileName);\n"; + source << " FILE *fp = fopen(pathBuffer, \"rb\");\n"; source << " fread(gBinaryData, 1, size, fp);\n"; source << " fclose(fp);\n"; source << "}\n"; diff --git a/src/libANGLE/capture_gles_1_0_autogen.cpp b/src/libANGLE/capture_gles_1_0_autogen.cpp index a6ff286e45cb9..eb60e136dd4c7 100644 --- a/src/libANGLE/capture_gles_1_0_autogen.cpp +++ b/src/libANGLE/capture_gles_1_0_autogen.cpp @@ -12,7 +12,7 @@ #include "libANGLE/Context.h" #include "libANGLE/FrameCapture.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES1.h" using namespace angle; diff --git a/src/libANGLE/capture_gles_2_0_autogen.cpp b/src/libANGLE/capture_gles_2_0_autogen.cpp index e43e5aa3c47d5..05e46c3febcd2 100644 --- a/src/libANGLE/capture_gles_2_0_autogen.cpp +++ b/src/libANGLE/capture_gles_2_0_autogen.cpp @@ -12,7 +12,7 @@ #include "libANGLE/Context.h" #include "libANGLE/FrameCapture.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES2.h" using namespace angle; diff --git a/src/libANGLE/capture_gles_3_0_autogen.cpp b/src/libANGLE/capture_gles_3_0_autogen.cpp index 7e4f55fa918b9..0f0187fb75001 100644 --- a/src/libANGLE/capture_gles_3_0_autogen.cpp +++ b/src/libANGLE/capture_gles_3_0_autogen.cpp @@ -12,7 +12,7 @@ #include "libANGLE/Context.h" #include "libANGLE/FrameCapture.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES3.h" using namespace angle; diff --git a/src/libANGLE/capture_gles_3_1_autogen.cpp b/src/libANGLE/capture_gles_3_1_autogen.cpp index 9f09fb059625a..160ed77975a26 100644 --- a/src/libANGLE/capture_gles_3_1_autogen.cpp +++ b/src/libANGLE/capture_gles_3_1_autogen.cpp @@ -12,7 +12,7 @@ #include "libANGLE/Context.h" #include "libANGLE/FrameCapture.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES31.h" using namespace angle; diff --git a/src/libANGLE/capture_gles_3_2_autogen.cpp b/src/libANGLE/capture_gles_3_2_autogen.cpp index 22d2dd28b1863..0a8ec9e6d564b 100644 --- a/src/libANGLE/capture_gles_3_2_autogen.cpp +++ b/src/libANGLE/capture_gles_3_2_autogen.cpp @@ -12,7 +12,7 @@ #include "libANGLE/Context.h" #include "libANGLE/FrameCapture.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES32.h" using namespace angle; diff --git a/src/libANGLE/capture_gles_ext_autogen.cpp b/src/libANGLE/capture_gles_ext_autogen.cpp index 21a6654ad599b..3040f96d4f3c8 100644 --- a/src/libANGLE/capture_gles_ext_autogen.cpp +++ b/src/libANGLE/capture_gles_ext_autogen.cpp @@ -12,7 +12,7 @@ #include "libANGLE/Context.h" #include "libANGLE/FrameCapture.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationESEXT.h" using namespace angle; diff --git a/src/libANGLE/gl_enum_utils.cpp b/src/libANGLE/gl_enum_utils.cpp new file mode 100644 index 0000000000000..601f1a185f05f --- /dev/null +++ b/src/libANGLE/gl_enum_utils.cpp @@ -0,0 +1,57 @@ +// +// 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. +// +// gl_enum_utils.cpp: +// Utility functions for converting GLenums to string. + +#include "libANGLE/gl_enum_utils.h" + +#include + +namespace gl +{ +const char kUnknownGLenumString[] = "EnumUnknown"; + +void OutputGLenumString(std::ostream &out, GLenumGroup enumGroup, unsigned int value) +{ + const char *enumStr = GLenumToString(enumGroup, value); + if (enumStr != kUnknownGLenumString) + { + out << enumStr; + return; + } + + if (enumGroup != GLenumGroup::DefaultGroup) + { + // Retry with the "Default" group + enumStr = GLenumToString(GLenumGroup::DefaultGroup, value); + if (enumStr != kUnknownGLenumString) + { + out << enumStr; + return; + } + } + + out << std::hex << "0x" << std::setfill('0') << std::setw(4) << value << std::dec; +} + +void OutputGLbitfieldString(std::ostream &out, GLenumGroup enumGroup, unsigned int value) +{ + out << GLbitfieldToString(enumGroup, value); +} + +const char *GLbooleanToString(unsigned int value) +{ + switch (value) + { + case 0x0: + return "GL_FALSE"; + case 0x1: + return "GL_TRUE"; + default: + return kUnknownGLenumString; + } +} +} // namespace gl diff --git a/src/libANGLE/gl_enum_utils.h b/src/libANGLE/gl_enum_utils.h new file mode 100644 index 0000000000000..c0e32b79873fa --- /dev/null +++ b/src/libANGLE/gl_enum_utils.h @@ -0,0 +1,28 @@ +// +// 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. +// +// gl_enum_utils.h: +// Utility functions for converting GLenums to string. + +#ifndef LIBANGLE_GL_ENUM_UTILS_H_ +#define LIBANGLE_GL_ENUM_UTILS_H_ + +#include +#include + +#include "libANGLE/gl_enum_utils_autogen.h" + +namespace gl +{ +const char *GLbooleanToString(unsigned int value); +const char *GLenumToString(GLenumGroup enumGroup, unsigned int value); +std::string GLbitfieldToString(GLenumGroup enumGroup, unsigned int value); +void OutputGLenumString(std::ostream &out, GLenumGroup enumGroup, unsigned int value); +void OutputGLbitfieldString(std::ostream &out, GLenumGroup enumGroup, unsigned int value); + +extern const char kUnknownGLenumString[]; +} // namespace gl + +#endif // LIBANGLE_GL_ENUM_UTILS_H_ diff --git a/src/libANGLE/gl_enum_utils_autogen.cpp b/src/libANGLE/gl_enum_utils_autogen.cpp index 82b6c44e34a2e..86083cfb5e66a 100644 --- a/src/libANGLE/gl_enum_utils_autogen.cpp +++ b/src/libANGLE/gl_enum_utils_autogen.cpp @@ -10,49 +10,14 @@ #include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" + #include #include "common/bitset_utils.h" namespace gl { - -namespace -{ -constexpr char kEnumUnknown[] = "EnumUnknown"; -} // anonymous namespace - -void OutputGLenumString(std::ostream &out, GLenumGroup enumGroup, unsigned int value) -{ - const char *enumStr = GLenumToString(enumGroup, value); - if (enumStr != kEnumUnknown) - { - out << enumStr; - } - else - { - out << std::hex << value << std::dec; - } -} - -void OutputGLbitfieldString(std::ostream &out, GLenumGroup enumGroup, unsigned int value) -{ - out << GLbitfieldToString(enumGroup, value); -} - -const char *GLbooleanToString(unsigned int value) -{ - switch (value) - { - case 0x0: - return "GL_FALSE"; - case 0x1: - return "GL_TRUE"; - default: - return kEnumUnknown; - } -} - const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) { switch (enumGroup) @@ -72,7 +37,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x104: return "GL_ADD"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -97,7 +62,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x207: return "GL_ALWAYS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -126,7 +91,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x92cb: return "GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -179,7 +144,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xffffffffL: return "GL_ALL_ATTRIB_BITS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -242,7 +207,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8b6a: return "GL_FLOAT_MAT4x3"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -253,7 +218,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8e22: return "GL_TRANSFORM_FEEDBACK"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -270,7 +235,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x800b: return "GL_FUNC_REVERSE_SUBTRACT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -317,7 +282,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x88fb: return "GL_ONE_MINUS_SRC1_ALPHA"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -330,7 +295,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2601: return "GL_LINEAR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -343,7 +308,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1: return "GL_TRUE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -358,7 +323,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1802: return "GL_STENCIL"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -373,7 +338,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x88ba: return "GL_READ_WRITE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -398,7 +363,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x80: return "GL_MAP_COHERENT_BIT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -435,7 +400,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x92c0: return "GL_ATOMIC_COUNTER_BUFFER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -472,7 +437,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x92c0: return "GL_ATOMIC_COUNTER_BUFFER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -499,7 +464,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x88ea: return "GL_DYNAMIC_COPY"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -514,7 +479,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8d40: return "GL_FRAMEBUFFER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -531,7 +496,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x4000: return "GL_COLOR_BUFFER_BIT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -546,7 +511,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xffffffffL: return "GL_CLIENT_ALL_ATTRIB_BITS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -559,7 +524,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x935f: return "GL_ZERO_TO_ONE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -572,7 +537,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8ca2: return "GL_UPPER_LEFT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -597,7 +562,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x3007: return "GL_CLIP_DISTANCE7"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -690,7 +655,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8cff: return "GL_COLOR_ATTACHMENT31"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -705,7 +670,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x408: return "GL_FRONT_AND_BACK"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -724,7 +689,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1602: return "GL_AMBIENT_AND_DIFFUSE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -749,7 +714,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x140a: return "GL_DOUBLE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -766,7 +731,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8: return "GL_CONTEXT_FLAG_NO_ERROR_BIT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -779,7 +744,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2: return "GL_CONTEXT_COMPATIBILITY_PROFILE_BIT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -816,7 +781,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x92c0: return "GL_ATOMIC_COUNTER_BUFFER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -831,7 +796,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x408: return "GL_FRONT_AND_BACK"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -848,7 +813,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9148: return "GL_DEBUG_SEVERITY_LOW"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -871,7 +836,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x824b: return "GL_DEBUG_SOURCE_OTHER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -900,7 +865,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x826a: return "GL_DEBUG_TYPE_POP_GROUP"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2511,7 +2476,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9633: return "GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2536,7 +2501,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x207: return "GL_ALWAYS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2573,7 +2538,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x40c: return "GL_AUX3"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2588,7 +2553,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1405: return "GL_UNSIGNED_INT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2729,7 +2694,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8079: return "GL_EDGE_FLAG_ARRAY"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2752,7 +2717,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x506: return "GL_INVALID_FRAMEBUFFER_OPERATION"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2763,7 +2728,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9586: return "GL_HANDLE_TYPE_OPAQUE_FD_EXT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2788,7 +2753,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x707: return "GL_LINE_RESET_TOKEN"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2807,7 +2772,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x604: return "GL_4D_COLOR_TEXTURE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2820,7 +2785,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x140a: return "GL_DOUBLE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2835,7 +2800,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2601: return "GL_LINEAR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2856,7 +2821,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8450: return "GL_FOG_COORD_SRC"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2877,7 +2842,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xb66: return "GL_FOG_COLOR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2890,7 +2855,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x140a: return "GL_DOUBLE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2903,7 +2868,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x140a: return "GL_DOUBLE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -2980,7 +2945,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8d00: return "GL_DEPTH_ATTACHMENT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3015,7 +2980,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8da7: return "GL_FRAMEBUFFER_ATTACHMENT_LAYERED"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3034,7 +2999,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9314: return "GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3061,7 +3026,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8da8: return "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3076,7 +3041,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8d40: return "GL_FRAMEBUFFER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3089,7 +3054,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x901: return "GL_CCW"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3120,7 +3085,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9314: return "GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3135,7 +3100,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xa02: return "GL_DOMAIN"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3634,7 +3599,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9598: return "GL_DRIVER_UUID_EXT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3663,7 +3628,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xc79: return "GL_PIXEL_MAP_A_TO_A"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3692,7 +3657,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8245: return "GL_DEBUG_CALLBACK_USER_PARAM"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3735,7 +3700,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8067: return "GL_TEXTURE_RESIDENT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3750,7 +3715,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8255: return "GL_UNKNOWN_CONTEXT_RESET"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3765,7 +3730,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1102: return "GL_NICEST"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3792,7 +3757,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8b8b: return "GL_FRAGMENT_SHADER_DERIVATIVE_HINT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3809,7 +3774,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x140a: return "GL_DOUBLE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -3846,7 +3811,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2a2d: return "GL_T4F_C4F_N3F_V4F"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4085,7 +4050,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9279: return "GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4236,7 +4201,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9380: return "GL_NUM_SAMPLE_COUNTS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4251,7 +4216,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2100: return "GL_MODULATE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4264,7 +4229,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x81fa: return "GL_SEPARATE_SPECULAR_COLOR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4281,7 +4246,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x81f8: return "GL_LIGHT_MODEL_COLOR_CONTROL"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4306,7 +4271,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x4007: return "GL_LIGHT7"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4335,7 +4300,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1209: return "GL_QUADRATIC_ATTENUATION"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4348,7 +4313,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1301: return "GL_COMPILE_AND_EXECUTE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4377,7 +4342,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1409: return "GL_4_BYTES"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4418,7 +4383,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x150f: return "GL_SET"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4447,7 +4412,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x200: return "GL_CLIENT_STORAGE_BIT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4462,7 +4427,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xa02: return "GL_DOMAIN"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4507,7 +4472,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xdb8: return "GL_MAP2_VERTEX_4"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4522,7 +4487,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x408: return "GL_FRONT_AND_BACK"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4545,7 +4510,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1603: return "GL_COLOR_INDEXES"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4560,7 +4525,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1702: return "GL_TEXTURE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4601,7 +4566,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xffffffffL: return "GL_ALL_BARRIER_BITS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4614,7 +4579,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x959b: return "GL_PROTECTED_MEMORY_OBJECT_EXT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4627,7 +4592,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1b01: return "GL_LINE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4642,7 +4607,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1b02: return "GL_FILL"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4661,7 +4626,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x140a: return "GL_DOUBLE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4692,7 +4657,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8e22: return "GL_TRANSFORM_FEEDBACK"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4707,7 +4672,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8e74: return "GL_PATCH_DEFAULT_OUTER_LEVEL"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4718,7 +4683,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8577: return "GL_PRIMARY_COLOR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4729,7 +4694,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x150a: return "GL_INVERT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4740,7 +4705,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x0: return "GL_NONE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4757,7 +4722,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8576: return "GL_CONSTANT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4768,7 +4733,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x0: return "GL_NONE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4791,7 +4756,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8e88: return "GL_TESS_CONTROL_SHADER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4806,7 +4771,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1802: return "GL_STENCIL"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4841,7 +4806,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x190a: return "GL_LUMINANCE_ALPHA"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4870,7 +4835,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xc79: return "GL_PIXEL_MAP_A_TO_A"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4911,7 +4876,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x806e: return "GL_UNPACK_IMAGE_HEIGHT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4930,7 +4895,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x190a: return "GL_LUMINANCE_ALPHA"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -4967,7 +4932,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xd1f: return "GL_DEPTH_BIAS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5002,7 +4967,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8036: return "GL_UNSIGNED_INT_10_10_10_2"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5019,7 +4984,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8129: return "GL_POINT_DISTANCE_ATTENUATION"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5034,7 +4999,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1b02: return "GL_FILL"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5055,7 +5020,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8df5: return "GL_HIGH_INT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5094,7 +5059,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xe: return "GL_PATCHES"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5143,7 +5108,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x92f4: return "GL_TRANSFORM_FEEDBACK_VARYING"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5160,7 +5125,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x92f8: return "GL_MAX_NUM_COMPATIBLE_SUBROUTINES"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5173,7 +5138,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8258: return "GL_PROGRAM_SEPARABLE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5222,7 +5187,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x92d9: return "GL_ACTIVE_ATOMIC_COUNTER_BUFFERS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5241,7 +5206,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8e49: return "GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5258,7 +5223,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9194: return "GL_QUERY_RESULT_NO_WAIT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5271,7 +5236,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8865: return "GL_CURRENT_QUERY"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5292,7 +5257,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8d6a: return "GL_ANY_SAMPLES_PASSED_CONSERVATIVE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5325,7 +5290,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x40c: return "GL_AUX3"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5354,7 +5319,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8d55: return "GL_RENDERBUFFER_STENCIL_SIZE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5365,7 +5330,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8d41: return "GL_RENDERBUFFER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5380,7 +5345,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1c02: return "GL_SELECT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5409,7 +5374,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x884d: return "GL_TEXTURE_COMPARE_FUNC"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5428,7 +5393,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8b88: return "GL_SHADER_SOURCE_LENGTH"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5449,7 +5414,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x91b9: return "GL_COMPUTE_SHADER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5462,7 +5427,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1d01: return "GL_SMOOTH"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5477,7 +5442,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x408: return "GL_FRONT_AND_BACK"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5502,7 +5467,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x207: return "GL_ALWAYS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5523,7 +5488,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1e03: return "GL_DECR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5542,7 +5507,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8b8c: return "GL_SHADING_LANGUAGE_VERSION"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5559,7 +5524,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8e4b: return "GL_COMPATIBLE_SUBROUTINES"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5570,7 +5535,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9117: return "GL_SYNC_GPU_COMMANDS_COMPLETE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5581,7 +5546,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x1: return "GL_SYNC_FLUSH_COMMANDS_BIT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5598,7 +5563,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9115: return "GL_SYNC_FLAGS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5615,7 +5580,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x911d: return "GL_WAIT_FAILED"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5632,7 +5597,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x140a: return "GL_DOUBLE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5649,7 +5614,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2003: return "GL_Q"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5666,7 +5631,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2101: return "GL_DECAL"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5679,7 +5644,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2201: return "GL_TEXTURE_ENV_COLOR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5690,7 +5655,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2300: return "GL_TEXTURE_ENV"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5705,7 +5670,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2402: return "GL_SPHERE_MAP"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5720,7 +5685,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2502: return "GL_EYE_PLANE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5747,7 +5712,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9593: return "GL_LAYOUT_TRANSFER_DST_EXT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5760,7 +5725,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2601: return "GL_LINEAR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5781,7 +5746,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x2703: return "GL_LINEAR_MIPMAP_LINEAR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5856,7 +5821,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9580: return "GL_TEXTURE_TILING_EXT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5917,7 +5882,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9103: return "GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -5990,7 +5955,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x84df: return "GL_TEXTURE31"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6007,7 +5972,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x812f: return "GL_CLAMP_TO_EDGE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6026,7 +5991,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8e24: return "GL_TRANSFORM_FEEDBACK_ACTIVE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6043,7 +6008,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8e16: return "GL_QUERY_BY_REGION_NO_WAIT"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6074,7 +6039,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x90ec: return "GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6101,7 +6066,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x92da: return "GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6124,7 +6089,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0xffffffffL: return "GL_ALL_SHADER_BITS"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6151,7 +6116,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x88fe: return "GL_VERTEX_ATTRIB_ARRAY_DIVISOR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6178,7 +6143,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x88fe: return "GL_VERTEX_ATTRIB_ARRAY_DIVISOR"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6213,7 +6178,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8d9f: return "GL_INT_2_10_10_10_REV"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6248,7 +6213,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8d9f: return "GL_INT_2_10_10_10_REV"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6275,7 +6240,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x9121: return "GL_BUFFER_MAP_OFFSET"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6302,7 +6267,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x88ea: return "GL_DYNAMIC_COPY"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6319,7 +6284,7 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x140a: return "GL_DOUBLE"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6332,12 +6297,12 @@ const char *GLenumToString(GLenumGroup enumGroup, unsigned int value) case 0x8e4e: return "GL_LAST_VERTEX_CONVENTION"; default: - return kEnumUnknown; + return kUnknownGLenumString; } } default: - return kEnumUnknown; + return kUnknownGLenumString; } } @@ -6361,5 +6326,4 @@ std::string GLbitfieldToString(GLenumGroup enumGroup, unsigned int value) return st.str(); } - } // namespace gl diff --git a/src/libANGLE/gl_enum_utils_autogen.h b/src/libANGLE/gl_enum_utils_autogen.h index 668dd16ecf98d..560fa54decef8 100644 --- a/src/libANGLE/gl_enum_utils_autogen.h +++ b/src/libANGLE/gl_enum_utils_autogen.h @@ -11,14 +11,8 @@ #ifndef LIBANGLE_GL_ENUM_UTILS_AUTOGEN_H_ #define LIBANGLE_GL_ENUM_UTILS_AUTOGEN_H_ -#include -#include - -#include "common/PackedGLEnums_autogen.h" - namespace gl { - enum class GLenumGroup { AccumOp, @@ -219,17 +213,6 @@ enum class GLenumGroup VertexPointerType, VertexProvokingMode }; - -const char *GLbooleanToString(unsigned int value); - -const char *GLenumToString(GLenumGroup enumGroup, unsigned int value); - -std::string GLbitfieldToString(GLenumGroup enumGroup, unsigned int value); - -void OutputGLenumString(std::ostream &out, GLenumGroup enumGroup, unsigned int value); - -void OutputGLbitfieldString(std::ostream &out, GLenumGroup enumGroup, unsigned int value); - } // namespace gl #endif // LIBANGLE_GL_ENUM_UTILS_AUTOGEN_H_ diff --git a/src/libGL/entry_points_gl_1_0_autogen.cpp b/src/libGL/entry_points_gl_1_0_autogen.cpp index 3966eeb6f9629..5d62207336111 100644 --- a/src/libGL/entry_points_gl_1_0_autogen.cpp +++ b/src/libGL/entry_points_gl_1_0_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_1_1_autogen.cpp b/src/libGL/entry_points_gl_1_1_autogen.cpp index 95b18ca3bd3c8..709ffe152417e 100644 --- a/src/libGL/entry_points_gl_1_1_autogen.cpp +++ b/src/libGL/entry_points_gl_1_1_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_1_2_autogen.cpp b/src/libGL/entry_points_gl_1_2_autogen.cpp index c40fcdfebf0bc..0e6e472971e2c 100644 --- a/src/libGL/entry_points_gl_1_2_autogen.cpp +++ b/src/libGL/entry_points_gl_1_2_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_1_3_autogen.cpp b/src/libGL/entry_points_gl_1_3_autogen.cpp index cbd19d705f689..8d36955e70438 100644 --- a/src/libGL/entry_points_gl_1_3_autogen.cpp +++ b/src/libGL/entry_points_gl_1_3_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_1_4_autogen.cpp b/src/libGL/entry_points_gl_1_4_autogen.cpp index 6e94b88d7cc97..8bcf8b49b1cf1 100644 --- a/src/libGL/entry_points_gl_1_4_autogen.cpp +++ b/src/libGL/entry_points_gl_1_4_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_1_5_autogen.cpp b/src/libGL/entry_points_gl_1_5_autogen.cpp index e5b3d428315da..744b3a2777e08 100644 --- a/src/libGL/entry_points_gl_1_5_autogen.cpp +++ b/src/libGL/entry_points_gl_1_5_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_2_0_autogen.cpp b/src/libGL/entry_points_gl_2_0_autogen.cpp index bf143f118e114..53d000fc37d8d 100644 --- a/src/libGL/entry_points_gl_2_0_autogen.cpp +++ b/src/libGL/entry_points_gl_2_0_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_2_1_autogen.cpp b/src/libGL/entry_points_gl_2_1_autogen.cpp index 60cc1fbd8743a..d1bb1025244b5 100644 --- a/src/libGL/entry_points_gl_2_1_autogen.cpp +++ b/src/libGL/entry_points_gl_2_1_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_3_0_autogen.cpp b/src/libGL/entry_points_gl_3_0_autogen.cpp index 73412a7e82f4a..eec18ee4104e7 100644 --- a/src/libGL/entry_points_gl_3_0_autogen.cpp +++ b/src/libGL/entry_points_gl_3_0_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_3_1_autogen.cpp b/src/libGL/entry_points_gl_3_1_autogen.cpp index 90b5f8f2311e8..3cee03dc56afb 100644 --- a/src/libGL/entry_points_gl_3_1_autogen.cpp +++ b/src/libGL/entry_points_gl_3_1_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_3_2_autogen.cpp b/src/libGL/entry_points_gl_3_2_autogen.cpp index e159d48473483..55fd3c22a600f 100644 --- a/src/libGL/entry_points_gl_3_2_autogen.cpp +++ b/src/libGL/entry_points_gl_3_2_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_3_3_autogen.cpp b/src/libGL/entry_points_gl_3_3_autogen.cpp index faa771a639169..90ee0485cf60c 100644 --- a/src/libGL/entry_points_gl_3_3_autogen.cpp +++ b/src/libGL/entry_points_gl_3_3_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_4_0_autogen.cpp b/src/libGL/entry_points_gl_4_0_autogen.cpp index 343cc4243565e..c96b8b16f762e 100644 --- a/src/libGL/entry_points_gl_4_0_autogen.cpp +++ b/src/libGL/entry_points_gl_4_0_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_4_1_autogen.cpp b/src/libGL/entry_points_gl_4_1_autogen.cpp index 836101d7173d7..55ca074bc7551 100644 --- a/src/libGL/entry_points_gl_4_1_autogen.cpp +++ b/src/libGL/entry_points_gl_4_1_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_4_2_autogen.cpp b/src/libGL/entry_points_gl_4_2_autogen.cpp index 70e87610eb43a..91448f48d331c 100644 --- a/src/libGL/entry_points_gl_4_2_autogen.cpp +++ b/src/libGL/entry_points_gl_4_2_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_4_3_autogen.cpp b/src/libGL/entry_points_gl_4_3_autogen.cpp index 495603bca92d7..42680852cad0c 100644 --- a/src/libGL/entry_points_gl_4_3_autogen.cpp +++ b/src/libGL/entry_points_gl_4_3_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_4_4_autogen.cpp b/src/libGL/entry_points_gl_4_4_autogen.cpp index 0d9b9502ead69..d03fb549ca347 100644 --- a/src/libGL/entry_points_gl_4_4_autogen.cpp +++ b/src/libGL/entry_points_gl_4_4_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_4_5_autogen.cpp b/src/libGL/entry_points_gl_4_5_autogen.cpp index ccd09a2052c80..b6741f4ca4572 100644 --- a/src/libGL/entry_points_gl_4_5_autogen.cpp +++ b/src/libGL/entry_points_gl_4_5_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGL/entry_points_gl_4_6_autogen.cpp b/src/libGL/entry_points_gl_4_6_autogen.cpp index 6ac77741852e3..1d1cdb8fd5885 100644 --- a/src/libGL/entry_points_gl_4_6_autogen.cpp +++ b/src/libGL/entry_points_gl_4_6_autogen.cpp @@ -13,7 +13,7 @@ #include "libANGLE/Context.h" #include "libANGLE/Context.inl.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationEGL.h" #include "libANGLE/validationES.h" #include "libANGLE/validationES1.h" diff --git a/src/libGLESv2.gni b/src/libGLESv2.gni index adf73748c8da5..3eb265c7c8498 100644 --- a/src/libGLESv2.gni +++ b/src/libGLESv2.gni @@ -874,6 +874,7 @@ libangle_sources += [ "src/libANGLE/capture_gles_3_2_autogen.h", "src/libANGLE/capture_gles_ext_autogen.h", "src/libANGLE/frame_capture_utils_autogen.h", + "src/libANGLE/gl_enum_utils.h", "src/libANGLE/gl_enum_utils_autogen.h", ] @@ -893,6 +894,7 @@ libangle_capture_sources = [ "src/libANGLE/capture_gles_ext_params.cpp", "src/libANGLE/frame_capture_replay_autogen.cpp", "src/libANGLE/frame_capture_utils_autogen.cpp", + "src/libANGLE/gl_enum_utils.cpp", "src/libANGLE/gl_enum_utils_autogen.cpp", ] diff --git a/src/libGLESv2/entry_points_gles_1_0_autogen.cpp b/src/libGLESv2/entry_points_gles_1_0_autogen.cpp index fb29903619af8..5e80f1500bc06 100644 --- a/src/libGLESv2/entry_points_gles_1_0_autogen.cpp +++ b/src/libGLESv2/entry_points_gles_1_0_autogen.cpp @@ -14,7 +14,7 @@ #include "libANGLE/Context.inl.h" #include "libANGLE/capture_gles_1_0_autogen.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES1.h" #include "libGLESv2/global_state.h" diff --git a/src/libGLESv2/entry_points_gles_2_0_autogen.cpp b/src/libGLESv2/entry_points_gles_2_0_autogen.cpp index 2c0e9fb1cfb88..25cf8f2f102b0 100644 --- a/src/libGLESv2/entry_points_gles_2_0_autogen.cpp +++ b/src/libGLESv2/entry_points_gles_2_0_autogen.cpp @@ -14,7 +14,7 @@ #include "libANGLE/Context.inl.h" #include "libANGLE/capture_gles_2_0_autogen.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES2.h" #include "libGLESv2/global_state.h" diff --git a/src/libGLESv2/entry_points_gles_3_0_autogen.cpp b/src/libGLESv2/entry_points_gles_3_0_autogen.cpp index ba5d6de4811b3..086e5fc573de1 100644 --- a/src/libGLESv2/entry_points_gles_3_0_autogen.cpp +++ b/src/libGLESv2/entry_points_gles_3_0_autogen.cpp @@ -14,7 +14,7 @@ #include "libANGLE/Context.inl.h" #include "libANGLE/capture_gles_3_0_autogen.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES3.h" #include "libGLESv2/global_state.h" diff --git a/src/libGLESv2/entry_points_gles_3_1_autogen.cpp b/src/libGLESv2/entry_points_gles_3_1_autogen.cpp index 7e99d83f666ec..e8ff2ae104fbb 100644 --- a/src/libGLESv2/entry_points_gles_3_1_autogen.cpp +++ b/src/libGLESv2/entry_points_gles_3_1_autogen.cpp @@ -14,7 +14,7 @@ #include "libANGLE/Context.inl.h" #include "libANGLE/capture_gles_3_1_autogen.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES31.h" #include "libGLESv2/global_state.h" diff --git a/src/libGLESv2/entry_points_gles_3_2_autogen.cpp b/src/libGLESv2/entry_points_gles_3_2_autogen.cpp index ae5b67119a429..780ce98a6ee15 100644 --- a/src/libGLESv2/entry_points_gles_3_2_autogen.cpp +++ b/src/libGLESv2/entry_points_gles_3_2_autogen.cpp @@ -14,7 +14,7 @@ #include "libANGLE/Context.inl.h" #include "libANGLE/capture_gles_3_2_autogen.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationES32.h" #include "libGLESv2/global_state.h" diff --git a/src/libGLESv2/entry_points_gles_ext_autogen.cpp b/src/libGLESv2/entry_points_gles_ext_autogen.cpp index f2f736e2011bc..ce4e55beb9683 100644 --- a/src/libGLESv2/entry_points_gles_ext_autogen.cpp +++ b/src/libGLESv2/entry_points_gles_ext_autogen.cpp @@ -14,7 +14,7 @@ #include "libANGLE/Context.inl.h" #include "libANGLE/capture_gles_ext_autogen.h" #include "libANGLE/entry_points_utils.h" -#include "libANGLE/gl_enum_utils_autogen.h" +#include "libANGLE/gl_enum_utils.h" #include "libANGLE/validationESEXT.h" #include "libGLESv2/global_state.h"