summaryrefslogtreecommitdiffstats
path: root/gfx/angle/checkout/src/libGLESv2
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
commit2aa4a82499d4becd2284cdb482213d541b8804dd (patch)
treeb80bf8bf13c3766139fbacc530efd0dd9d54394c /gfx/angle/checkout/src/libGLESv2
parentInitial commit. (diff)
downloadfirefox-2aa4a82499d4becd2284cdb482213d541b8804dd.tar.xz
firefox-2aa4a82499d4becd2284cdb482213d541b8804dd.zip
Adding upstream version 86.0.1.upstream/86.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'gfx/angle/checkout/src/libGLESv2')
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_egl.cpp1096
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_egl.h136
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_egl_ext.cpp1480
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_egl_ext.h222
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_1_0_autogen.cpp1429
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_1_0_autogen.h122
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_2_0_autogen.cpp2503
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_2_0_autogen.h297
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_0_autogen.cpp2005
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_0_autogen.h284
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_1_autogen.cpp1380
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_1_autogen.h227
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_ext_autogen.cpp19759
-rw-r--r--gfx/angle/checkout/src/libGLESv2/entry_points_gles_ext_autogen.h3874
-rw-r--r--gfx/angle/checkout/src/libGLESv2/global_state.cpp225
-rw-r--r--gfx/angle/checkout/src/libGLESv2/global_state.h61
-rw-r--r--gfx/angle/checkout/src/libGLESv2/libGLESv2.rc103
-rw-r--r--gfx/angle/checkout/src/libGLESv2/libGLESv2_autogen.cpp9775
-rw-r--r--gfx/angle/checkout/src/libGLESv2/libGLESv2_autogen.def1572
-rw-r--r--gfx/angle/checkout/src/libGLESv2/proc_table_egl.h25
-rw-r--r--gfx/angle/checkout/src/libGLESv2/proc_table_egl_autogen.cpp1495
-rw-r--r--gfx/angle/checkout/src/libGLESv2/resource.h14
22 files changed, 48084 insertions, 0 deletions
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_egl.cpp b/gfx/angle/checkout/src/libGLESv2/entry_points_egl.cpp
new file mode 100644
index 0000000000..ba0ab78e33
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_egl.cpp
@@ -0,0 +1,1096 @@
+//
+// Copyright(c) 2014 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.
+//
+
+// entry_points_egl.cpp : Implements the EGL entry points.
+
+#include "libGLESv2/entry_points_egl.h"
+
+#include "common/debug.h"
+#include "common/utilities.h"
+#include "common/version.h"
+#include "libANGLE/Context.h"
+#include "libANGLE/Display.h"
+#include "libANGLE/EGLSync.h"
+#include "libANGLE/Surface.h"
+#include "libANGLE/Texture.h"
+#include "libANGLE/Thread.h"
+#include "libANGLE/queryutils.h"
+#include "libANGLE/validationEGL.h"
+#include "libGLESv2/global_state.h"
+#include "libGLESv2/proc_table_egl.h"
+
+using namespace egl;
+
+namespace
+{
+
+bool CompareProc(const ProcEntry &a, const char *b)
+{
+ return strcmp(a.first, b) < 0;
+}
+
+void ClipConfigs(const std::vector<const Config *> &filteredConfigs,
+ EGLConfig *output_configs,
+ EGLint config_size,
+ EGLint *num_config)
+{
+ EGLint result_size = static_cast<EGLint>(filteredConfigs.size());
+ if (output_configs)
+ {
+ result_size = std::max(std::min(result_size, config_size), 0);
+ for (EGLint i = 0; i < result_size; i++)
+ {
+ output_configs[i] = const_cast<Config *>(filteredConfigs[i]);
+ }
+ }
+ *num_config = result_size;
+}
+} // anonymous namespace
+
+extern "C" {
+// EGL 1.0
+EGLint EGLAPIENTRY EGL_GetError(void)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("()");
+ Thread *thread = egl::GetCurrentThread();
+
+ EGLint error = thread->getError();
+ thread->setSuccess();
+ return error;
+}
+
+EGLDisplay EGLAPIENTRY EGL_GetDisplay(EGLNativeDisplayType display_id)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLNativeDisplayType display_id = 0x%016" PRIxPTR ")", (uintptr_t)display_id);
+
+ return egl::Display::GetDisplayFromNativeDisplay(display_id, AttributeMap());
+}
+
+EGLBoolean EGLAPIENTRY EGL_Initialize(EGLDisplay dpy, EGLint *major, EGLint *minor)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLint *major = 0x%016" PRIxPTR
+ ", EGLint *minor = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)major, (uintptr_t)minor);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ ANGLE_EGL_TRY_RETURN(thread, ValidateInitialize(display), "eglInitialize",
+ GetDisplayIfValid(display), EGL_FALSE);
+
+ ANGLE_EGL_TRY_RETURN(thread, display->initialize(), "eglInitialize", GetDisplayIfValid(display),
+ EGL_FALSE);
+
+ if (major)
+ *major = 1;
+ if (minor)
+ *minor = 4;
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_Terminate(EGLDisplay dpy)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ")", (uintptr_t)dpy);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ ANGLE_EGL_TRY_RETURN(thread, ValidateTerminate(display), "eglTerminate",
+ GetDisplayIfValid(display), EGL_FALSE);
+
+ ANGLE_EGL_TRY_RETURN(thread, display->makeCurrent(thread, nullptr, nullptr, nullptr),
+ "eglTerminate", GetDisplayIfValid(display), EGL_FALSE);
+ SetContextCurrent(thread, nullptr);
+ ANGLE_EGL_TRY_RETURN(thread, display->terminate(thread), "eglTerminate",
+ GetDisplayIfValid(display), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+const char *EGLAPIENTRY EGL_QueryString(EGLDisplay dpy, EGLint name)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLint name = %d)", (uintptr_t)dpy, name);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ if (!(display == EGL_NO_DISPLAY && name == EGL_EXTENSIONS))
+ {
+ ANGLE_EGL_TRY_RETURN(thread, ValidateDisplay(display), "eglQueryString",
+ GetDisplayIfValid(display), nullptr);
+ }
+
+ const char *result;
+ switch (name)
+ {
+ case EGL_CLIENT_APIS:
+ result = "OpenGL_ES";
+ break;
+ case EGL_EXTENSIONS:
+ if (display == EGL_NO_DISPLAY)
+ {
+ result = egl::Display::GetClientExtensionString().c_str();
+ }
+ else
+ {
+ result = display->getExtensionString().c_str();
+ }
+ break;
+ case EGL_VENDOR:
+ result = display->getVendorString().c_str();
+ break;
+ case EGL_VERSION:
+ result = "1.4 (ANGLE " ANGLE_VERSION_STRING ")";
+ break;
+ default:
+ thread->setError(EglBadParameter(), GetDebug(), "eglQueryString",
+ GetDisplayIfValid(display));
+ return nullptr;
+ }
+
+ thread->setSuccess();
+ return result;
+}
+
+EGLBoolean EGLAPIENTRY EGL_GetConfigs(EGLDisplay dpy,
+ EGLConfig *configs,
+ EGLint config_size,
+ EGLint *num_config)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig *configs = 0x%016" PRIxPTR
+ ", "
+ "EGLint config_size = %d, EGLint *num_config = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)configs, config_size, (uintptr_t)num_config);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateGetConfigs(display, config_size, num_config),
+ "eglGetConfigs", GetDisplayIfValid(display), EGL_FALSE);
+
+ ClipConfigs(display->getConfigs(AttributeMap()), configs, config_size, num_config);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_ChooseConfig(EGLDisplay dpy,
+ const EGLint *attrib_list,
+ EGLConfig *configs,
+ EGLint config_size,
+ EGLint *num_config)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", const EGLint *attrib_list = 0x%016" PRIxPTR
+ ", "
+ "EGLConfig *configs = 0x%016" PRIxPTR
+ ", EGLint config_size = %d, EGLint *num_config = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)attrib_list, (uintptr_t)configs, config_size,
+ (uintptr_t)num_config);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ AttributeMap attribMap = AttributeMap::CreateFromIntArray(attrib_list);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateChooseConfig(display, attribMap, config_size, num_config),
+ "eglChooseConfig", GetDisplayIfValid(display), EGL_FALSE);
+
+ ClipConfigs(display->chooseConfig(attribMap), configs, config_size, num_config);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_GetConfigAttrib(EGLDisplay dpy,
+ EGLConfig config,
+ EGLint attribute,
+ EGLint *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig config = 0x%016" PRIxPTR
+ ", EGLint attribute = %d, EGLint "
+ "*value = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)config, attribute, (uintptr_t)value);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Config *configuration = static_cast<Config *>(config);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateGetConfigAttrib(display, configuration, attribute),
+ "eglGetConfigAttrib", GetDisplayIfValid(display), EGL_FALSE);
+
+ QueryConfigAttrib(configuration, attribute, value);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLSurface EGLAPIENTRY EGL_CreateWindowSurface(EGLDisplay dpy,
+ EGLConfig config,
+ EGLNativeWindowType win,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig config = 0x%016" PRIxPTR
+ ", EGLNativeWindowType win = 0x%016" PRIxPTR
+ ", "
+ "const EGLint *attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)config, (uintptr_t)win, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Config *configuration = static_cast<Config *>(config);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray(attrib_list);
+
+ ANGLE_EGL_TRY_RETURN(thread,
+ ValidateCreateWindowSurface(display, configuration, win, attributes),
+ "eglCreateWindowSurface", GetDisplayIfValid(display), EGL_NO_SURFACE);
+
+ egl::Surface *surface = nullptr;
+ ANGLE_EGL_TRY_RETURN(thread,
+ display->createWindowSurface(configuration, win, attributes, &surface),
+ "eglCreateWindowSurface", GetDisplayIfValid(display), EGL_NO_SURFACE);
+
+ return static_cast<EGLSurface>(surface);
+}
+
+EGLSurface EGLAPIENTRY EGL_CreatePbufferSurface(EGLDisplay dpy,
+ EGLConfig config,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig config = 0x%016" PRIxPTR
+ ", const EGLint *attrib_list = "
+ "0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)config, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Config *configuration = static_cast<Config *>(config);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray(attrib_list);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateCreatePbufferSurface(display, configuration, attributes),
+ "eglCreatePbufferSurface", GetDisplayIfValid(display), EGL_NO_SURFACE);
+
+ egl::Surface *surface = nullptr;
+ ANGLE_EGL_TRY_RETURN(thread, display->createPbufferSurface(configuration, attributes, &surface),
+ "eglCreatePbufferSurface", GetDisplayIfValid(display), EGL_NO_SURFACE);
+
+ return static_cast<EGLSurface>(surface);
+}
+
+EGLSurface EGLAPIENTRY EGL_CreatePixmapSurface(EGLDisplay dpy,
+ EGLConfig config,
+ EGLNativePixmapType pixmap,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig config = 0x%016" PRIxPTR
+ ", EGLNativePixmapType pixmap = "
+ "0x%016" PRIxPTR
+ ", "
+ "const EGLint *attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)config, (uintptr_t)pixmap, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Config *configuration = static_cast<Config *>(config);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateConfig(display, configuration), "eglCreatePixmapSurface",
+ GetDisplayIfValid(display), EGL_NO_SURFACE);
+
+ UNIMPLEMENTED(); // FIXME
+
+ thread->setSuccess();
+ return EGL_NO_SURFACE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_DestroySurface(EGLDisplay dpy, EGLSurface surface)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)surface);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateDestroySurface(display, eglSurface, surface),
+ "eglDestroySurface", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ ANGLE_EGL_TRY_RETURN(thread, display->destroySurface(eglSurface), "eglDestroySurface",
+ GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_QuerySurface(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint attribute,
+ EGLint *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint attribute = %d, EGLint "
+ "*value = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)surface, attribute, (uintptr_t)value);
+ Thread *thread = egl::GetCurrentThread();
+
+ const egl::Display *display = static_cast<const egl::Display *>(dpy);
+ const Surface *eglSurface = static_cast<const Surface *>(surface);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateQuerySurface(display, eglSurface, attribute, value),
+ "eglQuerySurface", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ QuerySurfaceAttrib(eglSurface, attribute, value);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLContext EGLAPIENTRY EGL_CreateContext(EGLDisplay dpy,
+ EGLConfig config,
+ EGLContext share_context,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig config = 0x%016" PRIxPTR
+ ", EGLContext share_context = "
+ "0x%016" PRIxPTR
+ ", "
+ "const EGLint *attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)config, (uintptr_t)share_context, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Config *configuration = static_cast<Config *>(config);
+ gl::Context *sharedGLContext = static_cast<gl::Context *>(share_context);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray(attrib_list);
+
+ ANGLE_EGL_TRY_RETURN(thread,
+ ValidateCreateContext(display, configuration, sharedGLContext, attributes),
+ "eglCreateContext", GetDisplayIfValid(display), EGL_NO_CONTEXT);
+
+ gl::Context *context = nullptr;
+ ANGLE_EGL_TRY_RETURN(thread,
+ display->createContext(configuration, sharedGLContext, thread->getAPI(),
+ attributes, &context),
+ "eglCreateContext", GetDisplayIfValid(display), EGL_NO_CONTEXT);
+
+ thread->setSuccess();
+ return static_cast<EGLContext>(context);
+}
+
+EGLBoolean EGLAPIENTRY EGL_DestroyContext(EGLDisplay dpy, EGLContext ctx)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLContext ctx = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)ctx);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ gl::Context *context = static_cast<gl::Context *>(ctx);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateDestroyContext(display, context, ctx), "eglDestroyContext",
+ GetContextIfValid(display, context), EGL_FALSE);
+
+ bool contextWasCurrent = context == thread->getContext();
+
+ ANGLE_EGL_TRY_RETURN(thread, display->destroyContext(thread, context), "eglDestroyContext",
+ GetContextIfValid(display, context), EGL_FALSE);
+
+ if (contextWasCurrent)
+ {
+ SetContextCurrent(thread, nullptr);
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_MakeCurrent(EGLDisplay dpy,
+ EGLSurface draw,
+ EGLSurface read,
+ EGLContext ctx)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface draw = 0x%016" PRIxPTR
+ ", EGLSurface read = 0x%016" PRIxPTR
+ ", "
+ "EGLContext ctx = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)draw, (uintptr_t)read, (uintptr_t)ctx);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *drawSurface = static_cast<Surface *>(draw);
+ Surface *readSurface = static_cast<Surface *>(read);
+ gl::Context *context = static_cast<gl::Context *>(ctx);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateMakeCurrent(display, drawSurface, readSurface, context),
+ "eglMakeCurrent", GetContextIfValid(display, context), EGL_FALSE);
+
+ Surface *previousDraw = thread->getCurrentDrawSurface();
+ Surface *previousRead = thread->getCurrentReadSurface();
+ gl::Context *previousContext = thread->getContext();
+
+ // Only call makeCurrent if the context or surfaces have changed.
+ if (previousDraw != drawSurface || previousRead != readSurface || previousContext != context)
+ {
+ ANGLE_EGL_TRY_RETURN(thread,
+ display->makeCurrent(thread, drawSurface, readSurface, context),
+ "eglMakeCurrent", GetContextIfValid(display, context), EGL_FALSE);
+
+ SetContextCurrent(thread, context);
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLSurface EGLAPIENTRY EGL_GetCurrentSurface(EGLint readdraw)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLint readdraw = %d)", readdraw);
+ Thread *thread = egl::GetCurrentThread();
+
+ if (readdraw == EGL_READ)
+ {
+ thread->setSuccess();
+ return thread->getCurrentReadSurface();
+ }
+ else if (readdraw == EGL_DRAW)
+ {
+ thread->setSuccess();
+ return thread->getCurrentDrawSurface();
+ }
+ else
+ {
+ thread->setError(EglBadParameter(), GetDebug(), "eglGetCurrentSurface", nullptr);
+ return EGL_NO_SURFACE;
+ }
+}
+
+EGLDisplay EGLAPIENTRY EGL_GetCurrentDisplay(void)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("()");
+ Thread *thread = egl::GetCurrentThread();
+
+ thread->setSuccess();
+ if (thread->getContext() != nullptr)
+ {
+ return thread->getContext()->getDisplay();
+ }
+ return EGL_NO_DISPLAY;
+}
+
+EGLBoolean EGLAPIENTRY EGL_QueryContext(EGLDisplay dpy,
+ EGLContext ctx,
+ EGLint attribute,
+ EGLint *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLContext ctx = 0x%016" PRIxPTR
+ ", EGLint attribute = %d, EGLint *value "
+ "= 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)ctx, attribute, (uintptr_t)value);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ gl::Context *context = static_cast<gl::Context *>(ctx);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateQueryContext(display, context, attribute, value),
+ "eglQueryContext", GetContextIfValid(display, context), EGL_FALSE);
+
+ QueryContextAttrib(context, attribute, value);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_WaitGL(void)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("()");
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = thread->getDisplay();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateDisplay(display), "eglWaitGL", GetDisplayIfValid(display),
+ EGL_FALSE);
+
+ // eglWaitGL like calling eglWaitClient with the OpenGL ES API bound. Since we only implement
+ // OpenGL ES we can do the call directly.
+ ANGLE_EGL_TRY_RETURN(thread, display->waitClient(thread->getContext()), "eglWaitGL",
+ GetDisplayIfValid(display), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_WaitNative(EGLint engine)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLint engine = %d)", engine);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = thread->getDisplay();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateWaitNative(display, engine), "eglWaitNative",
+ GetThreadIfValid(thread), EGL_FALSE);
+
+ ANGLE_EGL_TRY_RETURN(thread, display->waitNative(thread->getContext(), engine), "eglWaitNative",
+ GetThreadIfValid(thread), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_SwapBuffers(EGLDisplay dpy, EGLSurface surface)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)surface);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = (Surface *)surface;
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateSwapBuffers(thread, display, eglSurface), "eglSwapBuffers",
+ GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ ANGLE_EGL_TRY_RETURN(thread, eglSurface->swap(thread->getContext()), "eglSwapBuffers",
+ GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_CopyBuffers(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLNativePixmapType target)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLNativePixmapType target = "
+ "0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)surface, (uintptr_t)target);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateCopyBuffers(display, eglSurface), "eglCopyBuffers",
+ GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ UNIMPLEMENTED(); // FIXME
+
+ thread->setSuccess();
+ return 0;
+}
+
+// EGL 1.1
+EGLBoolean EGLAPIENTRY EGL_BindTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint buffer = %d)",
+ (uintptr_t)dpy, (uintptr_t)surface, buffer);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+ gl::Context *context = thread->getContext();
+ gl::Texture *textureObject = nullptr;
+
+ ANGLE_EGL_TRY_RETURN(
+ thread, ValidateBindTexImage(display, eglSurface, surface, buffer, context, &textureObject),
+ "eglBindTexImage", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ if (context)
+ {
+ ANGLE_EGL_TRY_RETURN(thread, eglSurface->bindTexImage(context, textureObject, buffer),
+ "eglBindTexImage", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_SurfaceAttrib(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint attribute,
+ EGLint value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint attribute = %d, EGLint "
+ "value = %d)",
+ (uintptr_t)dpy, (uintptr_t)surface, attribute, value);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateSurfaceAttrib(display, eglSurface, attribute, value),
+ "eglSurfaceAttrib", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ SetSurfaceAttrib(eglSurface, attribute, value);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_ReleaseTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint buffer = %d)",
+ (uintptr_t)dpy, (uintptr_t)surface, buffer);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateReleaseTexImage(display, eglSurface, surface, buffer),
+ "eglReleaseTexImage", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ gl::Texture *texture = eglSurface->getBoundTexture();
+
+ if (texture)
+ {
+ ANGLE_EGL_TRY_RETURN(thread, eglSurface->releaseTexImage(thread->getContext(), buffer),
+ "eglReleaseTexImage", GetSurfaceIfValid(display, eglSurface),
+ EGL_FALSE);
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_SwapInterval(EGLDisplay dpy, EGLint interval)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLint interval = %d)", (uintptr_t)dpy, interval);
+ Thread *thread = egl::GetCurrentThread();
+ gl::Context *context = thread->getContext();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *draw_surface = static_cast<Surface *>(thread->getCurrentDrawSurface());
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateSwapInterval(display, draw_surface, context),
+ "eglSwapInterval", GetDisplayIfValid(display), EGL_FALSE);
+
+ const egl::Config *surfaceConfig = draw_surface->getConfig();
+ EGLint clampedInterval = std::min(std::max(interval, surfaceConfig->minSwapInterval),
+ surfaceConfig->maxSwapInterval);
+
+ draw_surface->setSwapInterval(clampedInterval);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL 1.2
+EGLBoolean EGLAPIENTRY EGL_BindAPI(EGLenum api)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLenum api = 0x%X)", api);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateBindAPI(api), "eglBindAPI", GetThreadIfValid(thread),
+ EGL_FALSE);
+
+ thread->setAPI(api);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLenum EGLAPIENTRY EGL_QueryAPI(void)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("()");
+ Thread *thread = egl::GetCurrentThread();
+
+ EGLenum API = thread->getAPI();
+
+ thread->setSuccess();
+ return API;
+}
+
+EGLSurface EGLAPIENTRY EGL_CreatePbufferFromClientBuffer(EGLDisplay dpy,
+ EGLenum buftype,
+ EGLClientBuffer buffer,
+ EGLConfig config,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR
+ ", EGLenum buftype = 0x%X, EGLClientBuffer buffer = 0x%016" PRIxPTR
+ ", "
+ "EGLConfig config = 0x%016" PRIxPTR ", const EGLint *attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, buftype, (uintptr_t)buffer, (uintptr_t)config, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Config *configuration = static_cast<Config *>(config);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray(attrib_list);
+
+ ANGLE_EGL_TRY_RETURN(
+ thread,
+ ValidateCreatePbufferFromClientBuffer(display, buftype, buffer, configuration, attributes),
+ "eglCreatePbufferFromClientBuffer", GetDisplayIfValid(display), EGL_NO_SURFACE);
+
+ egl::Surface *surface = nullptr;
+ ANGLE_EGL_TRY_RETURN(thread,
+ display->createPbufferFromClientBuffer(configuration, buftype, buffer,
+ attributes, &surface),
+ "eglCreatePbufferFromClientBuffer", GetDisplayIfValid(display),
+ EGL_NO_SURFACE);
+
+ return static_cast<EGLSurface>(surface);
+}
+
+EGLBoolean EGLAPIENTRY EGL_ReleaseThread(void)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("()");
+ Thread *thread = egl::GetCurrentThread();
+
+ Surface *previousDraw = thread->getCurrentDrawSurface();
+ Surface *previousRead = thread->getCurrentReadSurface();
+ gl::Context *previousContext = thread->getContext();
+ egl::Display *previousDisplay = thread->getDisplay();
+
+ // Only call makeCurrent if the context or surfaces have changed.
+ if (previousDraw != EGL_NO_SURFACE || previousRead != EGL_NO_SURFACE ||
+ previousContext != EGL_NO_CONTEXT)
+ {
+ if (previousDisplay != EGL_NO_DISPLAY)
+ {
+ ANGLE_EGL_TRY_RETURN(thread,
+ previousDisplay->makeCurrent(thread, nullptr, nullptr, nullptr),
+ "eglReleaseThread", nullptr, EGL_FALSE);
+ }
+
+ SetContextCurrent(thread, nullptr);
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_WaitClient(void)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("()");
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = thread->getDisplay();
+ gl::Context *context = thread->getContext();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateDisplay(display), "eglWaitClient",
+ GetContextIfValid(display, context), EGL_FALSE);
+
+ ANGLE_EGL_TRY_RETURN(thread, display->waitClient(context), "eglWaitClient",
+ GetContextIfValid(display, context), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL 1.4
+EGLContext EGLAPIENTRY EGL_GetCurrentContext(void)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("()");
+ Thread *thread = egl::GetCurrentThread();
+
+ gl::Context *context = thread->getContext();
+
+ thread->setSuccess();
+ return static_cast<EGLContext>(context);
+}
+
+// EGL 1.5
+EGLSync EGLAPIENTRY EGL_CreateSync(EGLDisplay dpy, EGLenum type, const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR
+ ", EGLenum type = 0x%X, const EGLint* attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, type, (uintptr_t)attrib_list);
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ AttributeMap attributes = AttributeMap::CreateFromAttribArray(attrib_list);
+
+ gl::Context *currentContext = thread->getContext();
+ egl::Display *currentDisplay = currentContext ? currentContext->getDisplay() : nullptr;
+
+ ANGLE_EGL_TRY_RETURN(
+ thread, ValidateCreateSyncKHR(display, type, attributes, currentDisplay, currentContext),
+ "eglCreateSync", GetDisplayIfValid(display), EGL_NO_SYNC);
+
+ egl::Sync *syncObject = nullptr;
+ ANGLE_EGL_TRY_RETURN(thread, display->createSync(currentContext, type, attributes, &syncObject),
+ "eglCreateSync", GetDisplayIfValid(display), EGL_NO_SYNC);
+
+ thread->setSuccess();
+ return static_cast<EGLSync>(syncObject);
+}
+
+EGLBoolean EGLAPIENTRY EGL_DestroySync(EGLDisplay dpy, EGLSync sync)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSync sync = 0x%016" PRIxPTR ")", (uintptr_t)dpy,
+ (uintptr_t)sync);
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ egl::Sync *syncObject = static_cast<Sync *>(sync);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateDestroySync(display, syncObject), "eglDestroySync",
+ GetDisplayIfValid(display), EGL_FALSE);
+
+ display->destroySync(syncObject);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLint EGLAPIENTRY EGL_ClientWaitSync(EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime timeout)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSync sync = 0x%016" PRIxPTR
+ ", EGLint flags = 0x%X, EGLTime timeout = "
+ "%llu)",
+ (uintptr_t)dpy, (uintptr_t)sync, flags, static_cast<unsigned long long>(timeout));
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ egl::Sync *syncObject = static_cast<Sync *>(sync);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateClientWaitSync(display, syncObject, flags, timeout),
+ "eglClientWaitSync", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ gl::Context *currentContext = thread->getContext();
+ EGLint syncStatus = EGL_FALSE;
+ ANGLE_EGL_TRY_RETURN(
+ thread, syncObject->clientWait(display, currentContext, flags, timeout, &syncStatus),
+ "eglClientWaitSync", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ thread->setSuccess();
+ return syncStatus;
+}
+
+EGLBoolean EGLAPIENTRY EGL_GetSyncAttrib(EGLDisplay dpy,
+ EGLSync sync,
+ EGLint attribute,
+ EGLAttrib *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSync sync = 0x%016" PRIxPTR
+ ", EGLint attribute = 0x%X, EGLAttrib "
+ "*value = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)sync, attribute, (uintptr_t)value);
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ egl::Sync *syncObject = static_cast<Sync *>(sync);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateGetSyncAttrib(display, syncObject, attribute, value),
+ "eglGetSyncAttrib", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ EGLint valueExt;
+ ANGLE_EGL_TRY_RETURN(thread, GetSyncAttrib(display, syncObject, attribute, &valueExt),
+ "eglGetSyncAttrib", GetSyncIfValid(display, syncObject), EGL_FALSE);
+ *value = valueExt;
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLImage EGLAPIENTRY EGL_CreateImage(EGLDisplay dpy,
+ EGLContext ctx,
+ EGLenum target,
+ EGLClientBuffer buffer,
+ const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLContext ctx = 0x%016" PRIxPTR
+ ", EGLenum target = 0x%X, "
+ "EGLClientBuffer buffer = 0x%016" PRIxPTR
+ ", const EGLAttrib *attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)ctx, target, (uintptr_t)buffer, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ gl::Context *context = static_cast<gl::Context *>(ctx);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray((const EGLint *)attrib_list);
+
+ Error error = ValidateCreateImage(display, context, target, buffer, attributes);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglCreateImage", GetDisplayIfValid(display));
+ return EGL_NO_IMAGE;
+ }
+
+ Image *image = nullptr;
+ error = display->createImage(context, target, buffer, attributes, &image);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglCreateImage", GetDisplayIfValid(display));
+ return EGL_NO_IMAGE;
+ }
+
+ thread->setSuccess();
+ return static_cast<EGLImage>(image);
+}
+
+EGLBoolean EGLAPIENTRY EGL_DestroyImage(EGLDisplay dpy, EGLImage image)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLImage image = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)image);
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Image *img = static_cast<Image *>(image);
+
+ Error error = ValidateDestroyImage(display, img);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglDestroyImage", GetImageIfValid(display, img));
+ return EGL_FALSE;
+ }
+
+ display->destroyImage(img);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLDisplay EGLAPIENTRY EGL_GetPlatformDisplay(EGLenum platform,
+ void *native_display,
+ const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLenum platform = %d, void* native_display = 0x%016" PRIxPTR
+ ", const EGLint* attrib_list = "
+ "0x%016" PRIxPTR ")",
+ platform, (uintptr_t)native_display, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateGetPlatformDisplay(platform, native_display, attrib_list),
+ "eglGetPlatformDisplay", GetThreadIfValid(thread), EGL_NO_DISPLAY);
+
+ const auto &attribMap = AttributeMap::CreateFromAttribArray(attrib_list);
+ if (platform == EGL_PLATFORM_ANGLE_ANGLE)
+ {
+ return egl::Display::GetDisplayFromNativeDisplay(
+ gl::bitCast<EGLNativeDisplayType>(native_display), attribMap);
+ }
+ else if (platform == EGL_PLATFORM_DEVICE_EXT)
+ {
+ Device *eglDevice = static_cast<Device *>(native_display);
+ return egl::Display::GetDisplayFromDevice(eglDevice, attribMap);
+ }
+ else
+ {
+ UNREACHABLE();
+ return EGL_NO_DISPLAY;
+ }
+}
+
+EGLSurface EGLAPIENTRY EGL_CreatePlatformWindowSurface(EGLDisplay dpy,
+ EGLConfig config,
+ void *native_window,
+ const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig config = 0x%016" PRIxPTR
+ ", void* native_window = 0x%016" PRIxPTR
+ ", "
+ "const EGLint* attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)config, (uintptr_t)native_window, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+
+ UNIMPLEMENTED();
+ thread->setError(EglBadDisplay() << "eglCreatePlatformWindowSurface unimplemented.", GetDebug(),
+ "eglCreatePlatformWindowSurface", GetDisplayIfValid(display));
+ return EGL_NO_SURFACE;
+}
+
+EGLSurface EGLAPIENTRY EGL_CreatePlatformPixmapSurface(EGLDisplay dpy,
+ EGLConfig config,
+ void *native_pixmap,
+ const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig config = 0x%016" PRIxPTR
+ ", void* native_pixmap = 0x%016" PRIxPTR
+ ", "
+ "const EGLint* attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)config, (uintptr_t)native_pixmap, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+
+ UNIMPLEMENTED();
+ thread->setError(EglBadDisplay() << "eglCreatePlatformPixmapSurface unimplemented.", GetDebug(),
+ "eglCreatePlatformPixmapSurface", GetDisplayIfValid(display));
+ return EGL_NO_SURFACE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_WaitSync(EGLDisplay dpy, EGLSync sync, EGLint flags)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy =0x%016" PRIxPTR "p, EGLSync sync = 0x%016" PRIxPTR
+ ", EGLint flags = 0x%X)",
+ (uintptr_t)dpy, (uintptr_t)sync, flags);
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ gl::Context *context = thread->getContext();
+ egl::Sync *syncObject = static_cast<Sync *>(sync);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateWaitSync(display, context, syncObject, flags),
+ "eglWaitSync", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ gl::Context *currentContext = thread->getContext();
+ ANGLE_EGL_TRY_RETURN(thread, syncObject->serverWait(display, currentContext, flags),
+ "eglWaitSync", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+__eglMustCastToProperFunctionPointerType EGLAPIENTRY EGL_GetProcAddress(const char *procname)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(const char *procname = \"%s\")", procname);
+ Thread *thread = egl::GetCurrentThread();
+
+ ProcEntry *entry =
+ std::lower_bound(&g_procTable[0], &g_procTable[g_numProcs], procname, CompareProc);
+
+ thread->setSuccess();
+
+ if (entry == &g_procTable[g_numProcs] || strcmp(entry->first, procname) != 0)
+ {
+ return nullptr;
+ }
+
+ return entry->second;
+}
+} // extern "C"
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_egl.h b/gfx/angle/checkout/src/libGLESv2/entry_points_egl.h
new file mode 100644
index 0000000000..85a86ddc96
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_egl.h
@@ -0,0 +1,136 @@
+//
+// Copyright(c) 2014 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.
+//
+
+// entry_points_egl.h : Defines the EGL entry points.
+
+#ifndef LIBGLESV2_ENTRYPOINTSEGL_H_
+#define LIBGLESV2_ENTRYPOINTSEGL_H_
+
+#include <EGL/egl.h>
+#include <export.h>
+
+extern "C" {
+
+// EGL 1.0
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_ChooseConfig(EGLDisplay dpy,
+ const EGLint *attrib_list,
+ EGLConfig *configs,
+ EGLint config_size,
+ EGLint *num_config);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_CopyBuffers(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLNativePixmapType target);
+ANGLE_EXPORT EGLContext EGLAPIENTRY EGL_CreateContext(EGLDisplay dpy,
+ EGLConfig config,
+ EGLContext share_context,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePbufferSurface(EGLDisplay dpy,
+ EGLConfig config,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePixmapSurface(EGLDisplay dpy,
+ EGLConfig config,
+ EGLNativePixmapType pixmap,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreateWindowSurface(EGLDisplay dpy,
+ EGLConfig config,
+ EGLNativeWindowType win,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyContext(EGLDisplay dpy, EGLContext ctx);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroySurface(EGLDisplay dpy, EGLSurface surface);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetConfigAttrib(EGLDisplay dpy,
+ EGLConfig config,
+ EGLint attribute,
+ EGLint *value);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetConfigs(EGLDisplay dpy,
+ EGLConfig *configs,
+ EGLint config_size,
+ EGLint *num_config);
+ANGLE_EXPORT EGLDisplay EGLAPIENTRY EGL_GetCurrentDisplay(void);
+ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_GetCurrentSurface(EGLint readdraw);
+ANGLE_EXPORT EGLDisplay EGLAPIENTRY EGL_GetDisplay(EGLNativeDisplayType display_id);
+ANGLE_EXPORT EGLint EGLAPIENTRY EGL_GetError(void);
+ANGLE_EXPORT __eglMustCastToProperFunctionPointerType EGLAPIENTRY
+EGL_GetProcAddress(const char *procname);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_Initialize(EGLDisplay dpy, EGLint *major, EGLint *minor);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_MakeCurrent(EGLDisplay dpy,
+ EGLSurface draw,
+ EGLSurface read,
+ EGLContext ctx);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryContext(EGLDisplay dpy,
+ EGLContext ctx,
+ EGLint attribute,
+ EGLint *value);
+ANGLE_EXPORT const char *EGLAPIENTRY EGL_QueryString(EGLDisplay dpy, EGLint name);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QuerySurface(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint attribute,
+ EGLint *value);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SwapBuffers(EGLDisplay dpy, EGLSurface surface);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_Terminate(EGLDisplay dpy);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_WaitGL(void);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_WaitNative(EGLint engine);
+
+// EGL 1.1
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_BindTexImage(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint buffer);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_ReleaseTexImage(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint buffer);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SurfaceAttrib(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint attribute,
+ EGLint value);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SwapInterval(EGLDisplay dpy, EGLint interval);
+
+// EGL 1.2
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_BindAPI(EGLenum api);
+ANGLE_EXPORT EGLenum EGLAPIENTRY EGL_QueryAPI(void);
+ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePbufferFromClientBuffer(EGLDisplay dpy,
+ EGLenum buftype,
+ EGLClientBuffer buffer,
+ EGLConfig config,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_ReleaseThread(void);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_WaitClient(void);
+
+// EGL 1.4
+ANGLE_EXPORT EGLContext EGLAPIENTRY EGL_GetCurrentContext(void);
+
+// EGL 1.5
+ANGLE_EXPORT EGLSync EGLAPIENTRY EGL_CreateSync(EGLDisplay dpy,
+ EGLenum type,
+ const EGLAttrib *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroySync(EGLDisplay dpy, EGLSync sync);
+ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ClientWaitSync(EGLDisplay dpy,
+ EGLSync sync,
+ EGLint flags,
+ EGLTime timeout);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncAttrib(EGLDisplay dpy,
+ EGLSync sync,
+ EGLint attribute,
+ EGLAttrib *value);
+ANGLE_EXPORT EGLImage EGLAPIENTRY EGL_CreateImage(EGLDisplay dpy,
+ EGLContext ctx,
+ EGLenum target,
+ EGLClientBuffer buffer,
+ const EGLAttrib *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyImage(EGLDisplay dpy, EGLImage image);
+ANGLE_EXPORT EGLDisplay EGLAPIENTRY EGL_GetPlatformDisplay(EGLenum platform,
+ void *native_display,
+ const EGLAttrib *attrib_list);
+ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformWindowSurface(EGLDisplay dpy,
+ EGLConfig config,
+ void *native_window,
+ const EGLAttrib *attrib_list);
+ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformPixmapSurface(EGLDisplay dpy,
+ EGLConfig config,
+ void *native_pixmap,
+ const EGLAttrib *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_WaitSync(EGLDisplay dpy, EGLSync sync, EGLint flags);
+} // extern "C"
+
+#endif // LIBGLESV2_ENTRYPOINTSEGL_H_
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_egl_ext.cpp b/gfx/angle/checkout/src/libGLESv2/entry_points_egl_ext.cpp
new file mode 100644
index 0000000000..55823b8059
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_egl_ext.cpp
@@ -0,0 +1,1480 @@
+//
+// Copyright(c) 2014 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.
+//
+
+// entry_points_ext.cpp : Implements the EGL extension entry points.
+
+#include "libGLESv2/entry_points_egl_ext.h"
+
+#include "common/debug.h"
+#include "libANGLE/Context.h"
+#include "libANGLE/Device.h"
+#include "libANGLE/Display.h"
+#include "libANGLE/EGLSync.h"
+#include "libANGLE/Stream.h"
+#include "libANGLE/Surface.h"
+#include "libANGLE/Thread.h"
+#include "libANGLE/queryutils.h"
+#include "libANGLE/validationEGL.h"
+#include "libGLESv2/global_state.h"
+
+using namespace egl;
+
+extern "C" {
+
+// EGL_ANGLE_query_surface_pointer
+EGLBoolean EGLAPIENTRY EGL_QuerySurfacePointerANGLE(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint attribute,
+ void **value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint attribute = %d, void "
+ "**value = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)surface, attribute, (uintptr_t)value);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+
+ Error error = ValidateSurface(display, eglSurface);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglQuerySurfacePointerANGLE",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ if (!display->getExtensions().querySurfacePointer)
+ {
+ thread->setSuccess();
+ return EGL_FALSE;
+ }
+
+ if (surface == EGL_NO_SURFACE)
+ {
+ thread->setError(EglBadSurface(), GetDebug(), "eglQuerySurfacePointerANGLE",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ // validate the attribute parameter
+ switch (attribute)
+ {
+ case EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE:
+ if (!display->getExtensions().surfaceD3DTexture2DShareHandle)
+ {
+ thread->setError(EglBadAttribute(), GetDebug(), "eglQuerySurfacePointerANGLE",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+ break;
+ case EGL_DXGI_KEYED_MUTEX_ANGLE:
+ if (!display->getExtensions().keyedMutex)
+ {
+ thread->setError(EglBadAttribute(), GetDebug(), "eglQuerySurfacePointerANGLE",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+ break;
+ default:
+ thread->setError(EglBadAttribute(), GetDebug(), "eglQuerySurfacePointerANGLE",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ error = eglSurface->querySurfacePointerANGLE(attribute, value);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglQuerySurfacePointerANGLE",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL_NV_post_sub_buffer
+EGLBoolean EGLAPIENTRY EGL_PostSubBufferNV(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint x,
+ EGLint y,
+ EGLint width,
+ EGLint height)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint x = %d, EGLint y = %d, "
+ "EGLint width = %d, EGLint height = %d)",
+ (uintptr_t)dpy, (uintptr_t)surface, x, y, width, height);
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+
+ if (x < 0 || y < 0 || width < 0 || height < 0)
+ {
+ thread->setError(EglBadParameter(), GetDebug(), "eglPostSubBufferNV",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ Error error = ValidateSurface(display, eglSurface);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglPostSubBufferNV",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ if (display->testDeviceLost())
+ {
+ thread->setError(EglContextLost(), GetDebug(), "eglPostSubBufferNV",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ if (surface == EGL_NO_SURFACE)
+ {
+ thread->setError(EglBadSurface(), GetDebug(), "eglPostSubBufferNV",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ if (!display->getExtensions().postSubBuffer)
+ {
+ // Spec is not clear about how this should be handled.
+ thread->setSuccess();
+ return EGL_TRUE;
+ }
+
+ // TODO(jmadill): Validate Surface is bound to the thread.
+ error = eglSurface->postSubBuffer(thread->getContext(), x, y, width, height);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglPostSubBufferNV",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL_EXT_platform_base
+EGLDisplay EGLAPIENTRY EGL_GetPlatformDisplayEXT(EGLenum platform,
+ void *native_display,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLenum platform = %d, void* native_display = 0x%016" PRIxPTR
+ ", const EGLint* attrib_list = "
+ "0x%016" PRIxPTR ")",
+ platform, (uintptr_t)native_display, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ Error err = ValidateGetPlatformDisplayEXT(platform, native_display, attrib_list);
+ thread->setError(err, GetDebug(), "eglGetPlatformDisplayEXT", GetThreadIfValid(thread));
+ if (err.isError())
+ {
+ return EGL_NO_DISPLAY;
+ }
+
+ const auto &attribMap = AttributeMap::CreateFromIntArray(attrib_list);
+ if (platform == EGL_PLATFORM_ANGLE_ANGLE)
+ {
+ return egl::Display::GetDisplayFromNativeDisplay(
+ gl::bitCast<EGLNativeDisplayType>(native_display), attribMap);
+ }
+ else if (platform == EGL_PLATFORM_DEVICE_EXT)
+ {
+ Device *eglDevice = static_cast<Device *>(native_display);
+ return egl::Display::GetDisplayFromDevice(eglDevice, attribMap);
+ }
+ else
+ {
+ UNREACHABLE();
+ return EGL_NO_DISPLAY;
+ }
+}
+
+EGLSurface EGLAPIENTRY EGL_CreatePlatformWindowSurfaceEXT(EGLDisplay dpy,
+ EGLConfig config,
+ void *native_window,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig config = 0x%016" PRIxPTR
+ ", void *native_window = 0x%016" PRIxPTR
+ ", "
+ "const EGLint *attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)config, (uintptr_t)native_window, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Config *configuration = static_cast<Config *>(config);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray(attrib_list);
+
+ ANGLE_EGL_TRY_RETURN(
+ thread,
+ ValidateCreatePlatformWindowSurfaceEXT(display, configuration, native_window, attributes),
+ "eglCreatePlatformWindowSurfaceEXT", GetDisplayIfValid(display), EGL_NO_SURFACE);
+
+ thread->setError(EglBadDisplay() << "CreatePlatformWindowSurfaceEXT unimplemented.", GetDebug(),
+ "eglCreatePlatformWindowSurfaceEXT", GetDisplayIfValid(display));
+ return EGL_NO_SURFACE;
+}
+
+EGLSurface EGLAPIENTRY EGL_CreatePlatformPixmapSurfaceEXT(EGLDisplay dpy,
+ EGLConfig config,
+ void *native_pixmap,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLConfig config = 0x%016" PRIxPTR
+ ", void *native_pixmap = 0x%016" PRIxPTR
+ ", "
+ "const EGLint *attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)config, (uintptr_t)native_pixmap, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Config *configuration = static_cast<Config *>(config);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray(attrib_list);
+
+ ANGLE_EGL_TRY_RETURN(
+ thread,
+ ValidateCreatePlatformPixmapSurfaceEXT(display, configuration, native_pixmap, attributes),
+ "eglCreatePlatformPixmapSurfaceEXT", GetDisplayIfValid(display), EGL_NO_SURFACE);
+
+ thread->setError(EglBadDisplay() << "CreatePlatformPixmapSurfaceEXT unimplemented.", GetDebug(),
+ "eglCreatePlatformPixmapSurfaceEXT", GetDisplayIfValid(display));
+ return EGL_NO_SURFACE;
+}
+
+// EGL_EXT_device_query
+EGLBoolean EGLAPIENTRY EGL_QueryDeviceAttribEXT(EGLDeviceEXT device,
+ EGLint attribute,
+ EGLAttrib *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDeviceEXT device = 0x%016" PRIxPTR
+ ", EGLint attribute = %d, EGLAttrib *value = 0x%016" PRIxPTR ")",
+ (uintptr_t)device, attribute, (uintptr_t)value);
+ Thread *thread = egl::GetCurrentThread();
+
+ Device *dev = static_cast<Device *>(device);
+
+ Error error = ValidateDevice(dev);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglQueryDeviceAttribEXT", GetDeviceIfValid(dev));
+ return EGL_FALSE;
+ }
+
+ // If the device was created by (and is owned by) a display, and that display doesn't support
+ // device querying, then this call should fail
+ egl::Display *owningDisplay = dev->getOwningDisplay();
+ if (owningDisplay != nullptr && !owningDisplay->getExtensions().deviceQuery)
+ {
+ thread->setError(EglBadAccess() << "Device wasn't created using eglCreateDeviceANGLE, "
+ "and the egl::Display that created it doesn't support "
+ "device querying",
+ GetDebug(), "eglQueryDeviceAttribEXT", GetDeviceIfValid(dev));
+ return EGL_FALSE;
+ }
+
+ // validate the attribute parameter
+ switch (attribute)
+ {
+ case EGL_D3D11_DEVICE_ANGLE:
+ case EGL_D3D9_DEVICE_ANGLE:
+ if (!dev->getExtensions().deviceD3D || dev->getType() != attribute)
+ {
+ thread->setError(EglBadAttribute(), GetDebug(), "eglQueryDeviceAttribEXT",
+ GetDeviceIfValid(dev));
+ return EGL_FALSE;
+ }
+ error = dev->getDevice(value);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglQueryDeviceAttribEXT",
+ GetDeviceIfValid(dev));
+ return EGL_FALSE;
+ }
+ break;
+ default:
+ thread->setError(EglBadAttribute(), GetDebug(), "eglQueryDeviceAttribEXT",
+ GetDeviceIfValid(dev));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL_EXT_device_query
+const char *EGLAPIENTRY EGL_QueryDeviceStringEXT(EGLDeviceEXT device, EGLint name)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDeviceEXT device = 0x%016" PRIxPTR ", EGLint name = %d)", (uintptr_t)device, name);
+ Thread *thread = egl::GetCurrentThread();
+
+ Device *dev = static_cast<Device *>(device);
+
+ Error error = ValidateDevice(dev);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglQueryDeviceStringEXT", GetDeviceIfValid(dev));
+ return EGL_FALSE;
+ }
+
+ const char *result;
+ switch (name)
+ {
+ case EGL_EXTENSIONS:
+ result = dev->getExtensionString().c_str();
+ break;
+ default:
+ thread->setError(EglBadDevice(), GetDebug(), "eglQueryDeviceStringEXT",
+ GetDeviceIfValid(dev));
+ return nullptr;
+ }
+
+ thread->setSuccess();
+ return result;
+}
+
+// EGL_EXT_device_query
+EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribEXT(EGLDisplay dpy, EGLint attribute, EGLAttrib *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR
+ ", EGLint attribute = %d, EGLAttrib *value = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, attribute, (uintptr_t)value);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateQueryDisplayAttribEXT(display, attribute),
+ "eglQueryDisplayAttribEXT", GetDisplayIfValid(display), EGL_FALSE);
+
+ *value = display->queryAttrib(attribute);
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL_ANGLE_feature_control
+EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribANGLE(EGLDisplay dpy,
+ EGLint attribute,
+ EGLAttrib *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR
+ ", EGLint attribute = %d, EGLAttrib *value = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, attribute, (uintptr_t)value);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateQueryDisplayAttribANGLE(display, attribute),
+ "eglQueryDisplayAttribANGLE", GetDisplayIfValid(display), EGL_FALSE);
+
+ *value = display->queryAttrib(attribute);
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+ANGLE_EXPORT EGLImageKHR EGLAPIENTRY EGL_CreateImageKHR(EGLDisplay dpy,
+ EGLContext ctx,
+ EGLenum target,
+ EGLClientBuffer buffer,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLContext ctx = 0x%016" PRIxPTR
+ ", EGLenum target = 0x%X, "
+ "EGLClientBuffer buffer = 0x%016" PRIxPTR
+ ", const EGLAttrib *attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)ctx, target, (uintptr_t)buffer, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ gl::Context *context = static_cast<gl::Context *>(ctx);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray(attrib_list);
+
+ Error error = ValidateCreateImageKHR(display, context, target, buffer, attributes);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglCreateImageKHR", GetDisplayIfValid(display));
+ return EGL_NO_IMAGE;
+ }
+
+ Image *image = nullptr;
+ error = display->createImage(context, target, buffer, attributes, &image);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglCreateImageKHR", GetDisplayIfValid(display));
+ return EGL_NO_IMAGE;
+ }
+
+ thread->setSuccess();
+ return static_cast<EGLImage>(image);
+}
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyImageKHR(EGLDisplay dpy, EGLImageKHR image)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLImage image = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)image);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Image *img = static_cast<Image *>(image);
+
+ Error error = ValidateDestroyImageKHR(display, img);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglDestroyImageKHR", GetImageIfValid(display, img));
+ return EGL_FALSE;
+ }
+
+ display->destroyImage(img);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+ANGLE_EXPORT EGLDeviceEXT EGLAPIENTRY EGL_CreateDeviceANGLE(EGLint device_type,
+ void *native_device,
+ const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLint device_type = %d, void* native_device = 0x%016" PRIxPTR
+ ", const EGLAttrib* attrib_list = "
+ "0x%016" PRIxPTR ")",
+ device_type, (uintptr_t)native_device, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ Error error = ValidateCreateDeviceANGLE(device_type, native_device, attrib_list);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglCreateDeviceANGLE", GetThreadIfValid(thread));
+ return EGL_NO_DEVICE_EXT;
+ }
+
+ Device *device = nullptr;
+ error = Device::CreateDevice(device_type, native_device, &device);
+ if (error.isError())
+ {
+ ASSERT(device == nullptr);
+ thread->setError(error, GetDebug(), "eglCreateDeviceANGLE", GetThreadIfValid(thread));
+ return EGL_NO_DEVICE_EXT;
+ }
+
+ thread->setSuccess();
+ return device;
+}
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_ReleaseDeviceANGLE(EGLDeviceEXT device)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDeviceEXT device = 0x%016" PRIxPTR ")", (uintptr_t)device);
+ Thread *thread = egl::GetCurrentThread();
+
+ Device *dev = static_cast<Device *>(device);
+
+ Error error = ValidateReleaseDeviceANGLE(dev);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglReleaseDeviceANGLE", GetDeviceIfValid(dev));
+ return EGL_FALSE;
+ }
+
+ SafeDelete(dev);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL_KHR_stream
+EGLStreamKHR EGLAPIENTRY EGL_CreateStreamKHR(EGLDisplay dpy, const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", const EGLAttrib* attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray(attrib_list);
+
+ Error error = ValidateCreateStreamKHR(display, attributes);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglCreateStreamKHR", GetDisplayIfValid(display));
+ return EGL_NO_STREAM_KHR;
+ }
+
+ Stream *stream;
+ error = display->createStream(attributes, &stream);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglCreateStreamKHR", GetDisplayIfValid(display));
+ return EGL_NO_STREAM_KHR;
+ }
+
+ thread->setSuccess();
+ return static_cast<EGLStreamKHR>(stream);
+}
+
+EGLBoolean EGLAPIENTRY EGL_DestroyStreamKHR(EGLDisplay dpy, EGLStreamKHR stream)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR = 0x%016" PRIxPTR ")", (uintptr_t)dpy,
+ (uintptr_t)stream);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+
+ Error error = ValidateDestroyStreamKHR(display, streamObject);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglDestroyStreamKHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ display->destroyStream(streamObject);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_StreamAttribKHR(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ EGLenum attribute,
+ EGLint value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR stream = 0x%016" PRIxPTR
+ ", EGLenum attribute = 0x%X, "
+ "EGLint value = 0x%X)",
+ (uintptr_t)dpy, (uintptr_t)stream, attribute, value);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+
+ Error error = ValidateStreamAttribKHR(display, streamObject, attribute, value);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamAttribKHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ switch (attribute)
+ {
+ case EGL_CONSUMER_LATENCY_USEC_KHR:
+ streamObject->setConsumerLatency(value);
+ break;
+ case EGL_CONSUMER_ACQUIRE_TIMEOUT_USEC_KHR:
+ streamObject->setConsumerAcquireTimeout(value);
+ break;
+ default:
+ UNREACHABLE();
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_QueryStreamKHR(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ EGLenum attribute,
+ EGLint *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR stream = 0x%016" PRIxPTR
+ ", EGLenum attribute = 0x%X, "
+ "EGLint value = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)stream, attribute, (uintptr_t)value);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+
+ Error error = ValidateQueryStreamKHR(display, streamObject, attribute, value);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglQueryStreamKHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ switch (attribute)
+ {
+ case EGL_STREAM_STATE_KHR:
+ *value = streamObject->getState();
+ break;
+ case EGL_CONSUMER_LATENCY_USEC_KHR:
+ *value = streamObject->getConsumerLatency();
+ break;
+ case EGL_CONSUMER_ACQUIRE_TIMEOUT_USEC_KHR:
+ *value = streamObject->getConsumerAcquireTimeout();
+ break;
+ default:
+ UNREACHABLE();
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_QueryStreamu64KHR(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ EGLenum attribute,
+ EGLuint64KHR *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR stream = 0x%016" PRIxPTR
+ ", EGLenum attribute = 0x%X, "
+ "EGLuint64KHR value = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)stream, attribute, (uintptr_t)value);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+
+ Error error = ValidateQueryStreamu64KHR(display, streamObject, attribute, value);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglQueryStreamu64KHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ switch (attribute)
+ {
+ case EGL_PRODUCER_FRAME_KHR:
+ *value = streamObject->getProducerFrame();
+ break;
+ case EGL_CONSUMER_FRAME_KHR:
+ *value = streamObject->getConsumerFrame();
+ break;
+ default:
+ UNREACHABLE();
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_StreamConsumerGLTextureExternalKHR(EGLDisplay dpy, EGLStreamKHR stream)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR = 0x%016" PRIxPTR ")", (uintptr_t)dpy,
+ (uintptr_t)stream);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+ gl::Context *context = gl::GetValidGlobalContext();
+
+ Error error = ValidateStreamConsumerGLTextureExternalKHR(display, context, streamObject);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamConsumerGLTextureExternalKHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ error = streamObject->createConsumerGLTextureExternal(AttributeMap(), context);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamConsumerGLTextureExternalKHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_StreamConsumerAcquireKHR(EGLDisplay dpy, EGLStreamKHR stream)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR = 0x%016" PRIxPTR ")", (uintptr_t)dpy,
+ (uintptr_t)stream);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+ gl::Context *context = gl::GetValidGlobalContext();
+
+ Error error = ValidateStreamConsumerAcquireKHR(display, context, streamObject);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamConsumerAcquireKHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ error = streamObject->consumerAcquire(context);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamConsumerAcquireKHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_StreamConsumerReleaseKHR(EGLDisplay dpy, EGLStreamKHR stream)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR = 0x%016" PRIxPTR ")", (uintptr_t)dpy,
+ (uintptr_t)stream);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+ gl::Context *context = gl::GetValidGlobalContext();
+
+ Error error = ValidateStreamConsumerReleaseKHR(display, context, streamObject);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglSStreamConsumerReleaseKHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ error = streamObject->consumerRelease(context);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamConsumerReleaseKHR",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_StreamConsumerGLTextureExternalAttribsNV(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR stream = 0x%016" PRIxPTR
+ ", EGLAttrib attrib_list = 0x%016" PRIxPTR "",
+ (uintptr_t)dpy, (uintptr_t)stream, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+ gl::Context *context = gl::GetValidGlobalContext();
+ AttributeMap attributes = AttributeMap::CreateFromAttribArray(attrib_list);
+
+ Error error = ValidateStreamConsumerGLTextureExternalAttribsNV(display, context, streamObject,
+ attributes);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamConsumerGLTextureExternalAttribsNV",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ error = streamObject->createConsumerGLTextureExternal(attributes, context);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamConsumerGLTextureExternalAttribsNV",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_CreateStreamProducerD3DTextureANGLE(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR stream = 0x%016" PRIxPTR
+ ", EGLAttrib attrib_list = 0x%016" PRIxPTR "",
+ (uintptr_t)dpy, (uintptr_t)stream, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+ AttributeMap attributes = AttributeMap::CreateFromAttribArray(attrib_list);
+
+ Error error = ValidateCreateStreamProducerD3DTextureANGLE(display, streamObject, attributes);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglCreateStreamProducerD3DTextureANGLE",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ error = streamObject->createProducerD3D11Texture(attributes);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglCreateStreamProducerD3DTextureANGLE",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_StreamPostD3DTextureANGLE(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ void *texture,
+ const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLStreamKHR stream = 0x%016" PRIxPTR
+ ", void* texture = 0x%016" PRIxPTR
+ ", "
+ "EGLAttrib attrib_list = 0x%016" PRIxPTR "",
+ (uintptr_t)dpy, (uintptr_t)stream, (uintptr_t)texture, (uintptr_t)attrib_list);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Stream *streamObject = static_cast<Stream *>(stream);
+ AttributeMap attributes = AttributeMap::CreateFromAttribArray(attrib_list);
+
+ Error error = ValidateStreamPostD3DTextureANGLE(display, streamObject, texture, attributes);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamPostD3DTextureANGLE",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ error = streamObject->postD3D11Texture(texture, attributes);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglStreamPostD3DTextureANGLE",
+ GetStreamIfValid(display, streamObject));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL_KHR_fence_sync
+ANGLE_EXPORT EGLSync EGLAPIENTRY EGL_CreateSyncKHR(EGLDisplay dpy,
+ EGLenum type,
+ const EGLint *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR
+ ", EGLenum type = 0x%X, const EGLint* attrib_list = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, type, (uintptr_t)attrib_list);
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ AttributeMap attributes = AttributeMap::CreateFromIntArray(attrib_list);
+
+ gl::Context *currentContext = thread->getContext();
+ egl::Display *currentDisplay = currentContext ? currentContext->getDisplay() : nullptr;
+
+ ANGLE_EGL_TRY_RETURN(
+ thread, ValidateCreateSyncKHR(display, type, attributes, currentDisplay, currentContext),
+ "eglCreateSync", GetDisplayIfValid(display), EGL_NO_SYNC);
+
+ egl::Sync *syncObject = nullptr;
+ ANGLE_EGL_TRY_RETURN(thread, display->createSync(currentContext, type, attributes, &syncObject),
+ "eglCreateSync", GetDisplayIfValid(display), EGL_NO_SYNC);
+
+ thread->setSuccess();
+ return static_cast<EGLSync>(syncObject);
+}
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroySyncKHR(EGLDisplay dpy, EGLSync sync)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSync sync = 0x%016" PRIxPTR ")", (uintptr_t)dpy,
+ (uintptr_t)sync);
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ egl::Sync *syncObject = static_cast<Sync *>(sync);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateDestroySync(display, syncObject), "eglDestroySync",
+ GetDisplayIfValid(display), EGL_FALSE);
+
+ display->destroySync(syncObject);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ClientWaitSyncKHR(EGLDisplay dpy,
+ EGLSync sync,
+ EGLint flags,
+ EGLTime timeout)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSync sync = 0x%016" PRIxPTR
+ ", EGLint flags = 0x%X, EGLTime timeout = "
+ "%llu)",
+ (uintptr_t)dpy, (uintptr_t)sync, flags, static_cast<unsigned long long>(timeout));
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ egl::Sync *syncObject = static_cast<Sync *>(sync);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateClientWaitSync(display, syncObject, flags, timeout),
+ "eglClientWaitSync", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ gl::Context *currentContext = thread->getContext();
+ EGLint syncStatus = EGL_FALSE;
+ ANGLE_EGL_TRY_RETURN(
+ thread, syncObject->clientWait(display, currentContext, flags, timeout, &syncStatus),
+ "eglClientWaitSync", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ thread->setSuccess();
+ return syncStatus;
+}
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncAttribKHR(EGLDisplay dpy,
+ EGLSync sync,
+ EGLint attribute,
+ EGLint *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSync sync = 0x%016" PRIxPTR
+ ", EGLint attribute = 0x%X, EGLAttrib "
+ "*value = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)sync, attribute, (uintptr_t)value);
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ egl::Sync *syncObject = static_cast<Sync *>(sync);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateGetSyncAttribKHR(display, syncObject, attribute, value),
+ "eglGetSyncAttrib", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ ANGLE_EGL_TRY_RETURN(thread, GetSyncAttrib(display, syncObject, attribute, value),
+ "eglGetSyncAttrib", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL_KHR_wait_sync
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_WaitSyncKHR(EGLDisplay dpy, EGLSync sync, EGLint flags)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy =0x%016" PRIxPTR "p, EGLSync sync = 0x%016" PRIxPTR
+ ", EGLint flags = 0x%X)",
+ (uintptr_t)dpy, (uintptr_t)sync, flags);
+
+ Thread *thread = egl::GetCurrentThread();
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ gl::Context *context = thread->getContext();
+ egl::Sync *syncObject = static_cast<Sync *>(sync);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateWaitSync(display, context, syncObject, flags),
+ "eglWaitSync", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ gl::Context *currentContext = thread->getContext();
+ ANGLE_EGL_TRY_RETURN(thread, syncObject->serverWait(display, currentContext, flags),
+ "eglWaitSync", GetSyncIfValid(display, syncObject), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_GetSyncValuesCHROMIUM(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLuint64KHR *ust,
+ EGLuint64KHR *msc,
+ EGLuint64KHR *sbc)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLuint64KHR* ust = 0x%016" PRIxPTR
+ ", "
+ "EGLuint64KHR* msc = 0x%016" PRIxPTR ", EGLuint64KHR* sbc = 0x%016" PRIxPTR "",
+ (uintptr_t)dpy, (uintptr_t)surface, (uintptr_t)ust, (uintptr_t)msc, (uintptr_t)sbc);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+
+ Error error = ValidateGetSyncValuesCHROMIUM(display, eglSurface, ust, msc, sbc);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglGetSyncValuesCHROMIUM",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ error = eglSurface->getSyncValues(ust, msc, sbc);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglGetSyncValuesCHROMIUM",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_SwapBuffersWithDamageKHR(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint *rects,
+ EGLint n_rects)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint *rects = 0x%016" PRIxPTR
+ ", EGLint "
+ "n_rects = %d)",
+ (uintptr_t)dpy, (uintptr_t)surface, (uintptr_t)rects, n_rects);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+
+ Error error = ValidateSwapBuffersWithDamageKHR(display, eglSurface, rects, n_rects);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglSwapBuffersWithDamageEXT",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ error = eglSurface->swapWithDamage(thread->getContext(), rects, n_rects);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglSwapBuffersWithDamageEXT",
+ GetSurfaceIfValid(display, eglSurface));
+ return EGL_FALSE;
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLBoolean EGLAPIENTRY EGL_PresentationTimeANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLnsecsANDROID time)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLnsecsANDROID time = %llu)",
+ (uintptr_t)dpy, (uintptr_t)surface, static_cast<unsigned long long>(time));
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidatePresentationTimeANDROID(display, eglSurface, time),
+ "eglPresentationTimeANDROID", GetSurfaceIfValid(display, eglSurface),
+ EGL_FALSE);
+ ANGLE_EGL_TRY_RETURN(thread, eglSurface->setPresentationTime(time),
+ "eglPresentationTimeANDROID", GetSurfaceIfValid(display, eglSurface),
+ EGL_FALSE);
+
+ return EGL_TRUE;
+}
+
+ANGLE_EXPORT void EGLAPIENTRY EGL_SetBlobCacheFuncsANDROID(EGLDisplay dpy,
+ EGLSetBlobFuncANDROID set,
+ EGLGetBlobFuncANDROID get)
+{
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSetBlobFuncANDROID set = 0x%016" PRIxPTR
+ ", EGLGetBlobFuncANDROID get "
+ "= 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)set, (uintptr_t)get);
+ Thread *thread = egl::GetCurrentThread();
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+
+ ANGLE_EGL_TRY(thread, ValidateSetBlobCacheANDROID(display, set, get),
+ "eglSetBlobCacheFuncsANDROID", GetDisplayIfValid(display));
+
+ thread->setSuccess();
+ display->setBlobCacheFuncs(set, get);
+}
+
+EGLint EGLAPIENTRY EGL_ProgramCacheGetAttribANGLE(EGLDisplay dpy, EGLenum attrib)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLenum attrib = 0x%X)", (uintptr_t)dpy, attrib);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateProgramCacheGetAttribANGLE(display, attrib),
+ "eglProgramCacheGetAttribANGLE", GetDisplayIfValid(display), 0);
+
+ thread->setSuccess();
+ return display->programCacheGetAttrib(attrib);
+}
+
+void EGLAPIENTRY EGL_ProgramCacheQueryANGLE(EGLDisplay dpy,
+ EGLint index,
+ void *key,
+ EGLint *keysize,
+ void *binary,
+ EGLint *binarysize)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLint index = %d, void *key = 0x%016" PRIxPTR
+ ", EGLint *keysize = "
+ "0x%016" PRIxPTR ", void *binary = 0x%016" PRIxPTR ", EGLint *size = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, index, (uintptr_t)key, (uintptr_t)keysize, (uintptr_t)binary,
+ (uintptr_t)binarysize);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY(thread,
+ ValidateProgramCacheQueryANGLE(display, index, key, keysize, binary, binarysize),
+ "eglProgramCacheQueryANGLE", GetDisplayIfValid(display));
+
+ ANGLE_EGL_TRY(thread, display->programCacheQuery(index, key, keysize, binary, binarysize),
+ "eglProgramCacheQueryANGLE", GetDisplayIfValid(display));
+
+ thread->setSuccess();
+}
+
+void EGLAPIENTRY EGL_ProgramCachePopulateANGLE(EGLDisplay dpy,
+ const void *key,
+ EGLint keysize,
+ const void *binary,
+ EGLint binarysize)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", void *key = 0x%016" PRIxPTR
+ ", EGLint keysize = %d, void *binary = "
+ "0x%016" PRIxPTR ", EGLint size = %d)",
+ (uintptr_t)dpy, (uintptr_t)key, keysize, (uintptr_t)binary, binarysize);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY(thread,
+ ValidateProgramCachePopulateANGLE(display, key, keysize, binary, binarysize),
+ "eglProgramCachePopulateANGLE", GetDisplayIfValid(display));
+
+ ANGLE_EGL_TRY(thread, display->programCachePopulate(key, keysize, binary, binarysize),
+ "eglProgramCachePopulateANGLE", GetDisplayIfValid(display));
+
+ thread->setSuccess();
+}
+
+EGLint EGLAPIENTRY EGL_ProgramCacheResizeANGLE(EGLDisplay dpy, EGLint limit, EGLenum mode)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLint limit = %d, EGLenum mode = 0x%X)",
+ (uintptr_t)dpy, limit, mode);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateProgramCacheResizeANGLE(display, limit, mode),
+ "eglProgramCacheResizeANGLE", GetDisplayIfValid(display), 0);
+
+ thread->setSuccess();
+ return display->programCacheResize(limit, mode);
+}
+
+EGLint EGLAPIENTRY EGL_DebugMessageControlKHR(EGLDEBUGPROCKHR callback,
+ const EGLAttrib *attrib_list)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDEBUGPROCKHR callback = 0x%016" PRIxPTR ", EGLAttrib attrib_list = 0x%016" PRIxPTR
+ ")",
+ (uintptr_t)callback, (uintptr_t)attrib_list);
+
+ Thread *thread = egl::GetCurrentThread();
+
+ AttributeMap attributes = AttributeMap::CreateFromAttribArray(attrib_list);
+
+ Error error = ValidateDebugMessageControlKHR(callback, attributes);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglDebugMessageControlKHR", nullptr);
+ return error.getCode();
+ }
+
+ Debug *debug = GetDebug();
+ debug->setCallback(callback, attributes);
+
+ thread->setSuccess();
+ return EGL_SUCCESS;
+}
+
+EGLBoolean EGLAPIENTRY EGL_QueryDebugKHR(EGLint attribute, EGLAttrib *value)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLint attribute = 0x%X, EGLAttrib* value = 0x%016" PRIxPTR ")", attribute,
+ (uintptr_t)value);
+
+ Thread *thread = egl::GetCurrentThread();
+
+ Error error = ValidateQueryDebugKHR(attribute, value);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglQueryDebugKHR", nullptr);
+ return EGL_FALSE;
+ }
+
+ Debug *debug = GetDebug();
+ switch (attribute)
+ {
+ case EGL_DEBUG_MSG_CRITICAL_KHR:
+ case EGL_DEBUG_MSG_ERROR_KHR:
+ case EGL_DEBUG_MSG_WARN_KHR:
+ case EGL_DEBUG_MSG_INFO_KHR:
+ *value = debug->isMessageTypeEnabled(FromEGLenum<MessageType>(attribute)) ? EGL_TRUE
+ : EGL_FALSE;
+ break;
+ case EGL_DEBUG_CALLBACK_KHR:
+ *value = reinterpret_cast<EGLAttrib>(debug->getCallback());
+ break;
+
+ default:
+ UNREACHABLE();
+ }
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+EGLint EGLAPIENTRY EGL_LabelObjectKHR(EGLDisplay dpy,
+ EGLenum objectType,
+ EGLObjectKHR object,
+ EGLLabelKHR label)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR
+ ", EGLenum objectType = 0x%X, EGLObjectKHR object = 0x%016" PRIxPTR
+ ", "
+ "EGLLabelKHR label = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, objectType, (uintptr_t)object, (uintptr_t)label);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Thread *thread = egl::GetCurrentThread();
+
+ ObjectType objectTypePacked = FromEGLenum<ObjectType>(objectType);
+ Error error = ValidateLabelObjectKHR(thread, display, objectTypePacked, object, label);
+ if (error.isError())
+ {
+ thread->setError(error, GetDebug(), "eglLabelObjectKHR",
+ GetLabeledObjectIfValid(thread, display, objectTypePacked, object));
+ return error.getCode();
+ }
+
+ LabeledObject *labeledObject =
+ GetLabeledObjectIfValid(thread, display, objectTypePacked, object);
+ ASSERT(labeledObject != nullptr);
+ labeledObject->setLabel(label);
+
+ thread->setSuccess();
+ return EGL_SUCCESS;
+}
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetCompositorTimingSupportedANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint name)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint name = 0x%X)",
+ (uintptr_t)dpy, (uintptr_t)surface, name);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+ Thread *thread = egl::GetCurrentThread();
+
+ CompositorTiming nameInternal = FromEGLenum<CompositorTiming>(name);
+
+ ANGLE_EGL_TRY_RETURN(
+ thread, ValidateGetCompositorTimingSupportedANDROID(display, eglSurface, nameInternal),
+ "eglQueryTimestampSupportedANDROID", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ thread->setSuccess();
+ return eglSurface->getSupportedCompositorTimings().test(nameInternal);
+}
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetCompositorTimingANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint numTimestamps,
+ const EGLint *names,
+ EGLnsecsANDROID *values)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint numTimestamps = %d, const EGLint *names = 0x%016" PRIxPTR
+ ", EGLnsecsANDROID *values = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)surface, numTimestamps, (uintptr_t)names, (uintptr_t)values);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(
+ thread,
+ ValidateGetCompositorTimingANDROID(display, eglSurface, numTimestamps, names, values),
+ "eglGetCompositorTimingANDROIDD", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+ ANGLE_EGL_TRY_RETURN(thread, eglSurface->getCompositorTiming(numTimestamps, names, values),
+ "eglGetCompositorTimingANDROIDD", GetSurfaceIfValid(display, eglSurface),
+ EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetNextFrameIdANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLuint64KHR *frameId)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLuint64KHR *frameId = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)surface, (uintptr_t)frameId);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateGetNextFrameIdANDROID(display, eglSurface, frameId),
+ "eglGetNextFrameIdANDROID", GetSurfaceIfValid(display, eglSurface),
+ EGL_FALSE);
+ ANGLE_EGL_TRY_RETURN(thread, eglSurface->getNextFrameId(frameId), "eglGetNextFrameIdANDROID",
+ GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetFrameTimestampSupportedANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint timestamp)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLint timestamp = 0x%X)",
+ (uintptr_t)dpy, (uintptr_t)surface, timestamp);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+ Thread *thread = egl::GetCurrentThread();
+
+ Timestamp timestampInternal = FromEGLenum<Timestamp>(timestamp);
+
+ ANGLE_EGL_TRY_RETURN(
+ thread, ValidateGetFrameTimestampSupportedANDROID(display, eglSurface, timestampInternal),
+ "eglQueryTimestampSupportedANDROID", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ thread->setSuccess();
+ return eglSurface->getSupportedTimestamps().test(timestampInternal);
+}
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetFrameTimestampsANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLuint64KHR frameId,
+ EGLint numTimestamps,
+ const EGLint *timestamps,
+ EGLnsecsANDROID *values)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSurface surface = 0x%016" PRIxPTR
+ ", EGLuint64KHR frameId = %llu, EGLint numTimestamps = %d, const EGLint *timestamps = "
+ "0x%016" PRIxPTR ", EGLnsecsANDROID *values = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)surface, (unsigned long long)frameId, numTimestamps,
+ (uintptr_t)timestamps, (uintptr_t)values);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Surface *eglSurface = static_cast<Surface *>(surface);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread,
+ ValidateGetFrameTimestampsANDROID(display, eglSurface, frameId,
+ numTimestamps, timestamps, values),
+ "eglGetFrameTimestampsANDROID", GetSurfaceIfValid(display, eglSurface),
+ EGL_FALSE);
+ ANGLE_EGL_TRY_RETURN(
+ thread, eglSurface->getFrameTimestamps(frameId, numTimestamps, timestamps, values),
+ "eglGetFrameTimestampsANDROID", GetSurfaceIfValid(display, eglSurface), EGL_FALSE);
+
+ thread->setSuccess();
+ return EGL_TRUE;
+}
+
+// EGL_ANGLE_feature_control
+ANGLE_EXPORT const char *EGLAPIENTRY EGL_QueryStringiANGLE(EGLDisplay dpy,
+ EGLint name,
+ EGLint index)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLint name = %d, EGLint index = %d)",
+ (uintptr_t)dpy, name, index);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateQueryStringiANGLE(display, name, index),
+ "eglQueryStringiANGLE", GetDisplayIfValid(display), nullptr);
+
+ thread->setSuccess();
+ return display->queryStringi(name, index);
+}
+
+EGLClientBuffer EGLAPIENTRY EGL_GetNativeClientBufferANDROID(const struct AHardwareBuffer *buffer)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(const struct AHardwareBuffer *buffer = 0x%016" PRIxPTR ")", (uintptr_t)buffer);
+
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateGetNativeClientBufferANDROID(buffer),
+ "eglGetNativeClientBufferANDROID", nullptr, nullptr);
+
+ thread->setSuccess();
+ return egl::Display::GetNativeClientBuffer(buffer);
+}
+
+EGLint EGLAPIENTRY EGL_DupNativeFenceFDANDROID(EGLDisplay dpy, EGLSyncKHR sync)
+{
+ ANGLE_SCOPED_GLOBAL_LOCK();
+ EVENT("(EGLDisplay dpy = 0x%016" PRIxPTR ", EGLSyncKHR sync = 0x%016" PRIxPTR ")",
+ (uintptr_t)dpy, (uintptr_t)sync);
+
+ egl::Display *display = static_cast<egl::Display *>(dpy);
+ Sync *syncObject = static_cast<Sync *>(sync);
+ Thread *thread = egl::GetCurrentThread();
+
+ ANGLE_EGL_TRY_RETURN(thread, ValidateDupNativeFenceFDANDROID(display, syncObject),
+ "eglDupNativeFenceFDANDROID", GetSyncIfValid(display, syncObject),
+ EGL_NO_NATIVE_FENCE_FD_ANDROID);
+
+ EGLint result = EGL_NO_NATIVE_FENCE_FD_ANDROID;
+ ANGLE_EGL_TRY_RETURN(thread, syncObject->dupNativeFenceFD(display, &result),
+ "eglDupNativeFenceFDANDROID", GetSyncIfValid(display, syncObject),
+ EGL_NO_NATIVE_FENCE_FD_ANDROID);
+
+ thread->setSuccess();
+ return result;
+}
+
+} // extern "C"
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_egl_ext.h b/gfx/angle/checkout/src/libGLESv2/entry_points_egl_ext.h
new file mode 100644
index 0000000000..37aa94619d
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_egl_ext.h
@@ -0,0 +1,222 @@
+//
+// Copyright(c) 2014 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.
+//
+
+// entry_points_egl_ext.h : Defines the EGL extension entry points.
+
+#ifndef LIBGLESV2_ENTRYPOINTSEGLEXT_H_
+#define LIBGLESV2_ENTRYPOINTSEGLEXT_H_
+
+#include <EGL/egl.h>
+#include <EGL/eglext.h>
+#include <export.h>
+
+extern "C" {
+
+// EGL_ANGLE_query_surface_pointer
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QuerySurfacePointerANGLE(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint attribute,
+ void **value);
+
+// EGL_NV_post_sub_buffer
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_PostSubBufferNV(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint x,
+ EGLint y,
+ EGLint width,
+ EGLint height);
+
+// EGL_EXT_platform_base
+ANGLE_EXPORT EGLDisplay EGLAPIENTRY EGL_GetPlatformDisplayEXT(EGLenum platform,
+ void *native_display,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformWindowSurfaceEXT(EGLDisplay dpy,
+ EGLConfig config,
+ void *native_window,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLSurface EGLAPIENTRY EGL_CreatePlatformPixmapSurfaceEXT(EGLDisplay dpy,
+ EGLConfig config,
+ void *native_pixmap,
+ const EGLint *attrib_list);
+
+// EGL_EXT_device_query
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribEXT(EGLDisplay dpy,
+ EGLint attribute,
+ EGLAttrib *value);
+
+// EGL_ANGLE_feature_control
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribANGLE(EGLDisplay dpy,
+ EGLint attribute,
+ EGLAttrib *value);
+
+// EGL_EXT_device_query
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDeviceAttribEXT(EGLDeviceEXT device,
+ EGLint attribute,
+ EGLAttrib *value);
+ANGLE_EXPORT const char *EGLAPIENTRY EGL_QueryDeviceStringEXT(EGLDeviceEXT device, EGLint name);
+
+// EGL_KHR_image_base/EGL_KHR_image
+ANGLE_EXPORT EGLImageKHR EGLAPIENTRY EGL_CreateImageKHR(EGLDisplay dpy,
+ EGLContext ctx,
+ EGLenum target,
+ EGLClientBuffer buffer,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyImageKHR(EGLDisplay dpy, EGLImageKHR image);
+
+// EGL_ANGLE_device_creation
+ANGLE_EXPORT EGLDeviceEXT EGLAPIENTRY EGL_CreateDeviceANGLE(EGLint device_type,
+ void *native_device,
+ const EGLAttrib *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_ReleaseDeviceANGLE(EGLDeviceEXT device);
+
+// EGL_KHR_stream
+ANGLE_EXPORT EGLStreamKHR EGLAPIENTRY EGL_CreateStreamKHR(EGLDisplay dpy,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroyStreamKHR(EGLDisplay dpy, EGLStreamKHR stream);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamAttribKHR(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ EGLenum attribute,
+ EGLint value);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryStreamKHR(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ EGLenum attribute,
+ EGLint *value);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryStreamu64KHR(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ EGLenum attribute,
+ EGLuint64KHR *value);
+
+// EGL_KHR_stream_consumer_gltexture
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerGLTextureExternalKHR(EGLDisplay dpy,
+ EGLStreamKHR stream);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerAcquireKHR(EGLDisplay dpy,
+ EGLStreamKHR stream);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamConsumerReleaseKHR(EGLDisplay dpy,
+ EGLStreamKHR stream);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY
+EGL_StreamConsumerGLTextureExternalAttribsNV(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ const EGLAttrib *attrib_list);
+
+// EGL_ANGLE_stream_producer_d3d_texture
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY
+EGL_CreateStreamProducerD3DTextureANGLE(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ const EGLAttrib *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_StreamPostD3DTextureANGLE(EGLDisplay dpy,
+ EGLStreamKHR stream,
+ void *texture,
+ const EGLAttrib *attrib_list);
+
+// EGL_KHR_fence_sync
+ANGLE_EXPORT EGLSync EGLAPIENTRY EGL_CreateSyncKHR(EGLDisplay dpy,
+ EGLenum type,
+ const EGLint *attrib_list);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_DestroySyncKHR(EGLDisplay dpy, EGLSync sync);
+ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ClientWaitSyncKHR(EGLDisplay dpy,
+ EGLSync sync,
+ EGLint flags,
+ EGLTime timeout);
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncAttribKHR(EGLDisplay dpy,
+ EGLSync sync,
+ EGLint attribute,
+ EGLint *value);
+
+// EGL_KHR_wait_sync
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_WaitSyncKHR(EGLDisplay dpy, EGLSync sync, EGLint flags);
+
+// EGL_CHROMIUM_get_sync_values
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetSyncValuesCHROMIUM(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLuint64KHR *ust,
+ EGLuint64KHR *msc,
+ EGLuint64KHR *sbc);
+
+// EGL_KHR_swap_buffers_with_damage
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_SwapBuffersWithDamageKHR(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint *rects,
+ EGLint n_rects);
+
+// EGL_ANDROID_presentation_time
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_PresentationTimeANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLnsecsANDROID time);
+
+// EGL_ANDRIOD_blob_cache
+ANGLE_EXPORT void EGLAPIENTRY EGL_SetBlobCacheFuncsANDROID(EGLDisplay dpy,
+ EGLSetBlobFuncANDROID set,
+ EGLGetBlobFuncANDROID get);
+
+// EGL_ANGLE_program_cache_control
+ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ProgramCacheGetAttribANGLE(EGLDisplay dpy, EGLenum attrib);
+ANGLE_EXPORT void EGLAPIENTRY EGL_ProgramCacheQueryANGLE(EGLDisplay dpy,
+ EGLint index,
+ void *key,
+ EGLint *keysize,
+ void *binary,
+ EGLint *binarysize);
+ANGLE_EXPORT void EGLAPIENTRY EGL_ProgramCachePopulateANGLE(EGLDisplay dpy,
+ const void *key,
+ EGLint keysize,
+ const void *binary,
+ EGLint binarysize);
+ANGLE_EXPORT EGLint EGLAPIENTRY EGL_ProgramCacheResizeANGLE(EGLDisplay dpy,
+ EGLint limit,
+ EGLenum mode);
+
+// EGL_KHR_debug
+ANGLE_EXPORT EGLint EGLAPIENTRY EGL_DebugMessageControlKHR(EGLDEBUGPROCKHR callback,
+ const EGLAttrib *attrib_list);
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_QueryDebugKHR(EGLint attribute, EGLAttrib *value);
+
+ANGLE_EXPORT EGLint EGLAPIENTRY EGL_LabelObjectKHR(EGLDisplay display,
+ EGLenum objectType,
+ EGLObjectKHR object,
+ EGLLabelKHR label);
+
+// ANDROID_get_frame_timestamps
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetCompositorTimingSupportedANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint name);
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetCompositorTimingANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint numTimestamps,
+ const EGLint *names,
+ EGLnsecsANDROID *values);
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetNextFrameIdANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLuint64KHR *frameId);
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetFrameTimestampSupportedANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLint timestamp);
+
+ANGLE_EXPORT EGLBoolean EGLAPIENTRY EGL_GetFrameTimestampsANDROID(EGLDisplay dpy,
+ EGLSurface surface,
+ EGLuint64KHR frameId,
+ EGLint numTimestamps,
+ const EGLint *timestamps,
+ EGLnsecsANDROID *values);
+
+// EGL_ANGLE_feature_control
+ANGLE_EXPORT const char *EGLAPIENTRY EGL_QueryStringiANGLE(EGLDisplay dpy,
+ EGLint name,
+ EGLint index);
+
+// EGL_ANDROID_get_native_client_buffer
+ANGLE_EXPORT EGLClientBuffer EGLAPIENTRY
+EGL_GetNativeClientBufferANDROID(const struct AHardwareBuffer *buffer);
+
+// EGL_ANDROID_native_fence_sync
+ANGLE_EXPORT EGLint EGLAPIENTRY EGL_DupNativeFenceFDANDROID(EGLDisplay dpy, EGLSyncKHR sync);
+
+} // extern "C"
+
+#endif // LIBGLESV2_ENTRYPOINTSEGLEXT_H_
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_1_0_autogen.cpp b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_1_0_autogen.cpp
new file mode 100644
index 0000000000..c210033aaa
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_1_0_autogen.cpp
@@ -0,0 +1,1429 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml.
+//
+// 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.
+//
+// entry_points_gles_1_0_autogen.cpp:
+// Defines the GLES 1.0 entry points.
+
+#include "libGLESv2/entry_points_gles_1_0_autogen.h"
+
+#include "libANGLE/Context.h"
+#include "libANGLE/Context.inl.h"
+#include "libANGLE/capture_gles_1_0_autogen.h"
+#include "libANGLE/entry_points_utils.h"
+#include "libANGLE/validationES1.h"
+#include "libGLESv2/global_state.h"
+
+namespace gl
+{
+void GL_APIENTRY AlphaFunc(GLenum func, GLfloat ref)
+{
+ EVENT("(GLenum func = 0x%X, GLfloat ref = %f)", func, ref);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ AlphaTestFunc funcPacked = FromGLenum<AlphaTestFunc>(func);
+ ANGLE_CAPTURE(AlphaFunc, context, funcPacked, ref);
+ if (context->skipValidation() || ValidateAlphaFunc(context, funcPacked, ref))
+ {
+ context->alphaFunc(funcPacked, ref);
+ }
+ }
+}
+
+void GL_APIENTRY AlphaFuncx(GLenum func, GLfixed ref)
+{
+ EVENT("(GLenum func = 0x%X, GLfixed ref = 0x%X)", func, ref);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ AlphaTestFunc funcPacked = FromGLenum<AlphaTestFunc>(func);
+ ANGLE_CAPTURE(AlphaFuncx, context, funcPacked, ref);
+ if (context->skipValidation() || ValidateAlphaFuncx(context, funcPacked, ref))
+ {
+ context->alphaFuncx(funcPacked, ref);
+ }
+ }
+}
+
+void GL_APIENTRY ClearColorx(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ EVENT("(GLfixed red = 0x%X, GLfixed green = 0x%X, GLfixed blue = 0x%X, GLfixed alpha = 0x%X)",
+ red, green, blue, alpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClearColorx, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateClearColorx(context, red, green, blue, alpha))
+ {
+ context->clearColorx(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY ClearDepthx(GLfixed depth)
+{
+ EVENT("(GLfixed depth = 0x%X)", depth);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClearDepthx, context, depth);
+ if (context->skipValidation() || ValidateClearDepthx(context, depth))
+ {
+ context->clearDepthx(depth);
+ }
+ }
+}
+
+void GL_APIENTRY ClientActiveTexture(GLenum texture)
+{
+ EVENT("(GLenum texture = 0x%X)", texture);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClientActiveTexture, context, texture);
+ if (context->skipValidation() || ValidateClientActiveTexture(context, texture))
+ {
+ context->clientActiveTexture(texture);
+ }
+ }
+}
+
+void GL_APIENTRY ClipPlanef(GLenum p, const GLfloat *eqn)
+{
+ EVENT("(GLenum p = 0x%X, const GLfloat *eqn = 0x%016" PRIxPTR ")", p, (uintptr_t)eqn);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClipPlanef, context, p, eqn);
+ if (context->skipValidation() || ValidateClipPlanef(context, p, eqn))
+ {
+ context->clipPlanef(p, eqn);
+ }
+ }
+}
+
+void GL_APIENTRY ClipPlanex(GLenum plane, const GLfixed *equation)
+{
+ EVENT("(GLenum plane = 0x%X, const GLfixed *equation = 0x%016" PRIxPTR ")", plane,
+ (uintptr_t)equation);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClipPlanex, context, plane, equation);
+ if (context->skipValidation() || ValidateClipPlanex(context, plane, equation))
+ {
+ context->clipPlanex(plane, equation);
+ }
+ }
+}
+
+void GL_APIENTRY Color4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ EVENT("(GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f)", red,
+ green, blue, alpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Color4f, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateColor4f(context, red, green, blue, alpha))
+ {
+ context->color4f(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY Color4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ EVENT("(GLubyte red = %d, GLubyte green = %d, GLubyte blue = %d, GLubyte alpha = %d)", red,
+ green, blue, alpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Color4ub, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateColor4ub(context, red, green, blue, alpha))
+ {
+ context->color4ub(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY Color4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ EVENT("(GLfixed red = 0x%X, GLfixed green = 0x%X, GLfixed blue = 0x%X, GLfixed alpha = 0x%X)",
+ red, green, blue, alpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Color4x, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateColor4x(context, red, green, blue, alpha))
+ {
+ context->color4x(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY ColorPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(ColorPointer, context, size, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateColorPointer(context, size, typePacked, stride, pointer))
+ {
+ context->colorPointer(size, typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY DepthRangex(GLfixed n, GLfixed f)
+{
+ EVENT("(GLfixed n = 0x%X, GLfixed f = 0x%X)", n, f);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DepthRangex, context, n, f);
+ if (context->skipValidation() || ValidateDepthRangex(context, n, f))
+ {
+ context->depthRangex(n, f);
+ }
+ }
+}
+
+void GL_APIENTRY DisableClientState(GLenum array)
+{
+ EVENT("(GLenum array = 0x%X)", array);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ClientVertexArrayType arrayPacked = FromGLenum<ClientVertexArrayType>(array);
+ ANGLE_CAPTURE(DisableClientState, context, arrayPacked);
+ if (context->skipValidation() || ValidateDisableClientState(context, arrayPacked))
+ {
+ context->disableClientState(arrayPacked);
+ }
+ }
+}
+
+void GL_APIENTRY EnableClientState(GLenum array)
+{
+ EVENT("(GLenum array = 0x%X)", array);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ClientVertexArrayType arrayPacked = FromGLenum<ClientVertexArrayType>(array);
+ ANGLE_CAPTURE(EnableClientState, context, arrayPacked);
+ if (context->skipValidation() || ValidateEnableClientState(context, arrayPacked))
+ {
+ context->enableClientState(arrayPacked);
+ }
+ }
+}
+
+void GL_APIENTRY Fogf(GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfloat param = %f)", pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Fogf, context, pname, param);
+ if (context->skipValidation() || ValidateFogf(context, pname, param))
+ {
+ context->fogf(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY Fogfv(GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Fogfv, context, pname, params);
+ if (context->skipValidation() || ValidateFogfv(context, pname, params))
+ {
+ context->fogfv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY Fogx(GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfixed param = 0x%X)", pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Fogx, context, pname, param);
+ if (context->skipValidation() || ValidateFogx(context, pname, param))
+ {
+ context->fogx(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY Fogxv(GLenum pname, const GLfixed *param)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfixed *param = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Fogxv, context, pname, param);
+ if (context->skipValidation() || ValidateFogxv(context, pname, param))
+ {
+ context->fogxv(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY Frustumf(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f)
+{
+ EVENT(
+ "(GLfloat l = %f, GLfloat r = %f, GLfloat b = %f, GLfloat t = %f, GLfloat n = %f, GLfloat "
+ "f = %f)",
+ l, r, b, t, n, f);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Frustumf, context, l, r, b, t, n, f);
+ if (context->skipValidation() || ValidateFrustumf(context, l, r, b, t, n, f))
+ {
+ context->frustumf(l, r, b, t, n, f);
+ }
+ }
+}
+
+void GL_APIENTRY Frustumx(GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f)
+{
+ EVENT(
+ "(GLfixed l = 0x%X, GLfixed r = 0x%X, GLfixed b = 0x%X, GLfixed t = 0x%X, GLfixed n = "
+ "0x%X, GLfixed f = 0x%X)",
+ l, r, b, t, n, f);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Frustumx, context, l, r, b, t, n, f);
+ if (context->skipValidation() || ValidateFrustumx(context, l, r, b, t, n, f))
+ {
+ context->frustumx(l, r, b, t, n, f);
+ }
+ }
+}
+
+void GL_APIENTRY GetClipPlanef(GLenum plane, GLfloat *equation)
+{
+ EVENT("(GLenum plane = 0x%X, GLfloat *equation = 0x%016" PRIxPTR ")", plane,
+ (uintptr_t)equation);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetClipPlanef, context, plane, equation);
+ if (context->skipValidation() || ValidateGetClipPlanef(context, plane, equation))
+ {
+ context->getClipPlanef(plane, equation);
+ }
+ }
+}
+
+void GL_APIENTRY GetClipPlanex(GLenum plane, GLfixed *equation)
+{
+ EVENT("(GLenum plane = 0x%X, GLfixed *equation = 0x%016" PRIxPTR ")", plane,
+ (uintptr_t)equation);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetClipPlanex, context, plane, equation);
+ if (context->skipValidation() || ValidateGetClipPlanex(context, plane, equation))
+ {
+ context->getClipPlanex(plane, equation);
+ }
+ }
+}
+
+void GL_APIENTRY GetFixedv(GLenum pname, GLfixed *params)
+{
+ EVENT("(GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")", pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFixedv, context, pname, params);
+ if (context->skipValidation() || ValidateGetFixedv(context, pname, params))
+ {
+ context->getFixedv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")", light,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(GetLightfv, context, light, pnamePacked, params);
+ if (context->skipValidation() || ValidateGetLightfv(context, light, pnamePacked, params))
+ {
+ context->getLightfv(light, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetLightxv(GLenum light, GLenum pname, GLfixed *params)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")", light,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(GetLightxv, context, light, pnamePacked, params);
+ if (context->skipValidation() || ValidateGetLightxv(context, light, pnamePacked, params))
+ {
+ context->getLightxv(light, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")", face,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(GetMaterialfv, context, face, pnamePacked, params);
+ if (context->skipValidation() || ValidateGetMaterialfv(context, face, pnamePacked, params))
+ {
+ context->getMaterialfv(face, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")", face,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(GetMaterialxv, context, face, pnamePacked, params);
+ if (context->skipValidation() || ValidateGetMaterialxv(context, face, pnamePacked, params))
+ {
+ context->getMaterialxv(face, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetPointerv(GLenum pname, void **params)
+{
+ EVENT("(GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetPointerv, context, pname, params);
+ if (context->skipValidation() || ValidateGetPointerv(context, pname, params))
+ {
+ context->getPointerv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(GetTexEnvfv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateGetTexEnvfv(context, targetPacked, pnamePacked, params))
+ {
+ context->getTexEnvfv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(GetTexEnviv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateGetTexEnviv(context, targetPacked, pnamePacked, params))
+ {
+ context->getTexEnviv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexEnvxv(GLenum target, GLenum pname, GLfixed *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(GetTexEnvxv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateGetTexEnvxv(context, targetPacked, pnamePacked, params))
+ {
+ context->getTexEnvxv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterxv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameterxv(context, targetPacked, pname, params))
+ {
+ context->getTexParameterxv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY LightModelf(GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfloat param = %f)", pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LightModelf, context, pname, param);
+ if (context->skipValidation() || ValidateLightModelf(context, pname, param))
+ {
+ context->lightModelf(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY LightModelfv(GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LightModelfv, context, pname, params);
+ if (context->skipValidation() || ValidateLightModelfv(context, pname, params))
+ {
+ context->lightModelfv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY LightModelx(GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfixed param = 0x%X)", pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LightModelx, context, pname, param);
+ if (context->skipValidation() || ValidateLightModelx(context, pname, param))
+ {
+ context->lightModelx(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY LightModelxv(GLenum pname, const GLfixed *param)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfixed *param = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LightModelxv, context, pname, param);
+ if (context->skipValidation() || ValidateLightModelxv(context, pname, param))
+ {
+ context->lightModelxv(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY Lightf(GLenum light, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", light, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(Lightf, context, light, pnamePacked, param);
+ if (context->skipValidation() || ValidateLightf(context, light, pnamePacked, param))
+ {
+ context->lightf(light, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY Lightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ light, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(Lightfv, context, light, pnamePacked, params);
+ if (context->skipValidation() || ValidateLightfv(context, light, pnamePacked, params))
+ {
+ context->lightfv(light, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY Lightx(GLenum light, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", light, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(Lightx, context, light, pnamePacked, param);
+ if (context->skipValidation() || ValidateLightx(context, light, pnamePacked, param))
+ {
+ context->lightx(light, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY Lightxv(GLenum light, GLenum pname, const GLfixed *params)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")",
+ light, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(Lightxv, context, light, pnamePacked, params);
+ if (context->skipValidation() || ValidateLightxv(context, light, pnamePacked, params))
+ {
+ context->lightxv(light, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY LineWidthx(GLfixed width)
+{
+ EVENT("(GLfixed width = 0x%X)", width);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LineWidthx, context, width);
+ if (context->skipValidation() || ValidateLineWidthx(context, width))
+ {
+ context->lineWidthx(width);
+ }
+ }
+}
+
+void GL_APIENTRY LoadIdentity()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LoadIdentity, context);
+ if (context->skipValidation() || ValidateLoadIdentity(context))
+ {
+ context->loadIdentity();
+ }
+ }
+}
+
+void GL_APIENTRY LoadMatrixf(const GLfloat *m)
+{
+ EVENT("(const GLfloat *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LoadMatrixf, context, m);
+ if (context->skipValidation() || ValidateLoadMatrixf(context, m))
+ {
+ context->loadMatrixf(m);
+ }
+ }
+}
+
+void GL_APIENTRY LoadMatrixx(const GLfixed *m)
+{
+ EVENT("(const GLfixed *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LoadMatrixx, context, m);
+ if (context->skipValidation() || ValidateLoadMatrixx(context, m))
+ {
+ context->loadMatrixx(m);
+ }
+ }
+}
+
+void GL_APIENTRY LogicOp(GLenum opcode)
+{
+ EVENT("(GLenum opcode = 0x%X)", opcode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ LogicalOperation opcodePacked = FromGLenum<LogicalOperation>(opcode);
+ ANGLE_CAPTURE(LogicOp, context, opcodePacked);
+ if (context->skipValidation() || ValidateLogicOp(context, opcodePacked))
+ {
+ context->logicOp(opcodePacked);
+ }
+ }
+}
+
+void GL_APIENTRY Materialf(GLenum face, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", face, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(Materialf, context, face, pnamePacked, param);
+ if (context->skipValidation() || ValidateMaterialf(context, face, pnamePacked, param))
+ {
+ context->materialf(face, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY Materialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ face, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(Materialfv, context, face, pnamePacked, params);
+ if (context->skipValidation() || ValidateMaterialfv(context, face, pnamePacked, params))
+ {
+ context->materialfv(face, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY Materialx(GLenum face, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", face, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(Materialx, context, face, pnamePacked, param);
+ if (context->skipValidation() || ValidateMaterialx(context, face, pnamePacked, param))
+ {
+ context->materialx(face, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY Materialxv(GLenum face, GLenum pname, const GLfixed *param)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, const GLfixed *param = 0x%016" PRIxPTR ")",
+ face, pname, (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(Materialxv, context, face, pnamePacked, param);
+ if (context->skipValidation() || ValidateMaterialxv(context, face, pnamePacked, param))
+ {
+ context->materialxv(face, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY MatrixMode(GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ MatrixType modePacked = FromGLenum<MatrixType>(mode);
+ ANGLE_CAPTURE(MatrixMode, context, modePacked);
+ if (context->skipValidation() || ValidateMatrixMode(context, modePacked))
+ {
+ context->matrixMode(modePacked);
+ }
+ }
+}
+
+void GL_APIENTRY MultMatrixf(const GLfloat *m)
+{
+ EVENT("(const GLfloat *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MultMatrixf, context, m);
+ if (context->skipValidation() || ValidateMultMatrixf(context, m))
+ {
+ context->multMatrixf(m);
+ }
+ }
+}
+
+void GL_APIENTRY MultMatrixx(const GLfixed *m)
+{
+ EVENT("(const GLfixed *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MultMatrixx, context, m);
+ if (context->skipValidation() || ValidateMultMatrixx(context, m))
+ {
+ context->multMatrixx(m);
+ }
+ }
+}
+
+void GL_APIENTRY MultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ EVENT("(GLenum target = 0x%X, GLfloat s = %f, GLfloat t = %f, GLfloat r = %f, GLfloat q = %f)",
+ target, s, t, r, q);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MultiTexCoord4f, context, target, s, t, r, q);
+ if (context->skipValidation() || ValidateMultiTexCoord4f(context, target, s, t, r, q))
+ {
+ context->multiTexCoord4f(target, s, t, r, q);
+ }
+ }
+}
+
+void GL_APIENTRY MultiTexCoord4x(GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
+{
+ EVENT(
+ "(GLenum texture = 0x%X, GLfixed s = 0x%X, GLfixed t = 0x%X, GLfixed r = 0x%X, GLfixed q = "
+ "0x%X)",
+ texture, s, t, r, q);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MultiTexCoord4x, context, texture, s, t, r, q);
+ if (context->skipValidation() || ValidateMultiTexCoord4x(context, texture, s, t, r, q))
+ {
+ context->multiTexCoord4x(texture, s, t, r, q);
+ }
+ }
+}
+
+void GL_APIENTRY Normal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ EVENT("(GLfloat nx = %f, GLfloat ny = %f, GLfloat nz = %f)", nx, ny, nz);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Normal3f, context, nx, ny, nz);
+ if (context->skipValidation() || ValidateNormal3f(context, nx, ny, nz))
+ {
+ context->normal3f(nx, ny, nz);
+ }
+ }
+}
+
+void GL_APIENTRY Normal3x(GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ EVENT("(GLfixed nx = 0x%X, GLfixed ny = 0x%X, GLfixed nz = 0x%X)", nx, ny, nz);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Normal3x, context, nx, ny, nz);
+ if (context->skipValidation() || ValidateNormal3x(context, nx, ny, nz))
+ {
+ context->normal3x(nx, ny, nz);
+ }
+ }
+}
+
+void GL_APIENTRY NormalPointer(GLenum type, GLsizei stride, const void *pointer)
+{
+ EVENT("(GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
+ type, stride, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(NormalPointer, context, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateNormalPointer(context, typePacked, stride, pointer))
+ {
+ context->normalPointer(typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY Orthof(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f)
+{
+ EVENT(
+ "(GLfloat l = %f, GLfloat r = %f, GLfloat b = %f, GLfloat t = %f, GLfloat n = %f, GLfloat "
+ "f = %f)",
+ l, r, b, t, n, f);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Orthof, context, l, r, b, t, n, f);
+ if (context->skipValidation() || ValidateOrthof(context, l, r, b, t, n, f))
+ {
+ context->orthof(l, r, b, t, n, f);
+ }
+ }
+}
+
+void GL_APIENTRY Orthox(GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f)
+{
+ EVENT(
+ "(GLfixed l = 0x%X, GLfixed r = 0x%X, GLfixed b = 0x%X, GLfixed t = 0x%X, GLfixed n = "
+ "0x%X, GLfixed f = 0x%X)",
+ l, r, b, t, n, f);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Orthox, context, l, r, b, t, n, f);
+ if (context->skipValidation() || ValidateOrthox(context, l, r, b, t, n, f))
+ {
+ context->orthox(l, r, b, t, n, f);
+ }
+ }
+}
+
+void GL_APIENTRY PointParameterf(GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfloat param = %f)", pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
+ ANGLE_CAPTURE(PointParameterf, context, pnamePacked, param);
+ if (context->skipValidation() || ValidatePointParameterf(context, pnamePacked, param))
+ {
+ context->pointParameterf(pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY PointParameterfv(GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
+ ANGLE_CAPTURE(PointParameterfv, context, pnamePacked, params);
+ if (context->skipValidation() || ValidatePointParameterfv(context, pnamePacked, params))
+ {
+ context->pointParameterfv(pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY PointParameterx(GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfixed param = 0x%X)", pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
+ ANGLE_CAPTURE(PointParameterx, context, pnamePacked, param);
+ if (context->skipValidation() || ValidatePointParameterx(context, pnamePacked, param))
+ {
+ context->pointParameterx(pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY PointParameterxv(GLenum pname, const GLfixed *params)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
+ ANGLE_CAPTURE(PointParameterxv, context, pnamePacked, params);
+ if (context->skipValidation() || ValidatePointParameterxv(context, pnamePacked, params))
+ {
+ context->pointParameterxv(pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY PointSize(GLfloat size)
+{
+ EVENT("(GLfloat size = %f)", size);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PointSize, context, size);
+ if (context->skipValidation() || ValidatePointSize(context, size))
+ {
+ context->pointSize(size);
+ }
+ }
+}
+
+void GL_APIENTRY PointSizex(GLfixed size)
+{
+ EVENT("(GLfixed size = 0x%X)", size);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PointSizex, context, size);
+ if (context->skipValidation() || ValidatePointSizex(context, size))
+ {
+ context->pointSizex(size);
+ }
+ }
+}
+
+void GL_APIENTRY PolygonOffsetx(GLfixed factor, GLfixed units)
+{
+ EVENT("(GLfixed factor = 0x%X, GLfixed units = 0x%X)", factor, units);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PolygonOffsetx, context, factor, units);
+ if (context->skipValidation() || ValidatePolygonOffsetx(context, factor, units))
+ {
+ context->polygonOffsetx(factor, units);
+ }
+ }
+}
+
+void GL_APIENTRY PopMatrix()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PopMatrix, context);
+ if (context->skipValidation() || ValidatePopMatrix(context))
+ {
+ context->popMatrix();
+ }
+ }
+}
+
+void GL_APIENTRY PushMatrix()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PushMatrix, context);
+ if (context->skipValidation() || ValidatePushMatrix(context))
+ {
+ context->pushMatrix();
+ }
+ }
+}
+
+void GL_APIENTRY Rotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ EVENT("(GLfloat angle = %f, GLfloat x = %f, GLfloat y = %f, GLfloat z = %f)", angle, x, y, z);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Rotatef, context, angle, x, y, z);
+ if (context->skipValidation() || ValidateRotatef(context, angle, x, y, z))
+ {
+ context->rotatef(angle, x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY Rotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ EVENT("(GLfixed angle = 0x%X, GLfixed x = 0x%X, GLfixed y = 0x%X, GLfixed z = 0x%X)", angle, x,
+ y, z);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Rotatex, context, angle, x, y, z);
+ if (context->skipValidation() || ValidateRotatex(context, angle, x, y, z))
+ {
+ context->rotatex(angle, x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY SampleCoveragex(GLclampx value, GLboolean invert)
+{
+ EVENT("(GLclampx value = 0x%X, GLboolean invert = %u)", value, invert);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SampleCoveragex, context, value, invert);
+ if (context->skipValidation() || ValidateSampleCoveragex(context, value, invert))
+ {
+ context->sampleCoveragex(value, invert);
+ }
+ }
+}
+
+void GL_APIENTRY Scalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ EVENT("(GLfloat x = %f, GLfloat y = %f, GLfloat z = %f)", x, y, z);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Scalef, context, x, y, z);
+ if (context->skipValidation() || ValidateScalef(context, x, y, z))
+ {
+ context->scalef(x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY Scalex(GLfixed x, GLfixed y, GLfixed z)
+{
+ EVENT("(GLfixed x = 0x%X, GLfixed y = 0x%X, GLfixed z = 0x%X)", x, y, z);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Scalex, context, x, y, z);
+ if (context->skipValidation() || ValidateScalex(context, x, y, z))
+ {
+ context->scalex(x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY ShadeModel(GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ShadingModel modePacked = FromGLenum<ShadingModel>(mode);
+ ANGLE_CAPTURE(ShadeModel, context, modePacked);
+ if (context->skipValidation() || ValidateShadeModel(context, modePacked))
+ {
+ context->shadeModel(modePacked);
+ }
+ }
+}
+
+void GL_APIENTRY TexCoordPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(TexCoordPointer, context, size, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateTexCoordPointer(context, size, typePacked, stride, pointer))
+ {
+ context->texCoordPointer(size, typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", target, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvf, context, targetPacked, pnamePacked, param);
+ if (context->skipValidation() || ValidateTexEnvf(context, targetPacked, pnamePacked, param))
+ {
+ context->texEnvf(targetPacked, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvfv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateTexEnvfv(context, targetPacked, pnamePacked, params))
+ {
+ context->texEnvfv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint param = %d)", target, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvi, context, targetPacked, pnamePacked, param);
+ if (context->skipValidation() || ValidateTexEnvi(context, targetPacked, pnamePacked, param))
+ {
+ context->texEnvi(targetPacked, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnviv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateTexEnviv(context, targetPacked, pnamePacked, params))
+ {
+ context->texEnviv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvx(GLenum target, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", target, pname,
+ param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvx, context, targetPacked, pnamePacked, param);
+ if (context->skipValidation() || ValidateTexEnvx(context, targetPacked, pnamePacked, param))
+ {
+ context->texEnvx(targetPacked, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvxv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateTexEnvxv(context, targetPacked, pnamePacked, params))
+ {
+ context->texEnvxv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterx(GLenum target, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", target, pname,
+ param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterx, context, targetPacked, pname, param);
+ if (context->skipValidation() || ValidateTexParameterx(context, targetPacked, pname, param))
+ {
+ context->texParameterx(targetPacked, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterxv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterxv(context, targetPacked, pname, params))
+ {
+ context->texParameterxv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY Translatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ EVENT("(GLfloat x = %f, GLfloat y = %f, GLfloat z = %f)", x, y, z);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Translatef, context, x, y, z);
+ if (context->skipValidation() || ValidateTranslatef(context, x, y, z))
+ {
+ context->translatef(x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY Translatex(GLfixed x, GLfixed y, GLfixed z)
+{
+ EVENT("(GLfixed x = 0x%X, GLfixed y = 0x%X, GLfixed z = 0x%X)", x, y, z);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Translatex, context, x, y, z);
+ if (context->skipValidation() || ValidateTranslatex(context, x, y, z))
+ {
+ context->translatex(x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY VertexPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexPointer, context, size, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateVertexPointer(context, size, typePacked, stride, pointer))
+ {
+ context->vertexPointer(size, typePacked, stride, pointer);
+ }
+ }
+}
+} // namespace gl
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_1_0_autogen.h b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_1_0_autogen.h
new file mode 100644
index 0000000000..ba098f51b9
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_1_0_autogen.h
@@ -0,0 +1,122 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml.
+//
+// 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.
+//
+// entry_points_gles_1_0_autogen.h:
+// Defines the GLES 1.0 entry points.
+
+#ifndef LIBGLESV2_ENTRY_POINTS_GLES_1_0_AUTOGEN_H_
+#define LIBGLESV2_ENTRY_POINTS_GLES_1_0_AUTOGEN_H_
+
+#include <GLES/gl.h>
+#include <export.h>
+
+namespace gl
+{
+ANGLE_EXPORT void GL_APIENTRY AlphaFunc(GLenum func, GLfloat ref);
+ANGLE_EXPORT void GL_APIENTRY AlphaFuncx(GLenum func, GLfixed ref);
+ANGLE_EXPORT void GL_APIENTRY ClearColorx(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+ANGLE_EXPORT void GL_APIENTRY ClearDepthx(GLfixed depth);
+ANGLE_EXPORT void GL_APIENTRY ClientActiveTexture(GLenum texture);
+ANGLE_EXPORT void GL_APIENTRY ClipPlanef(GLenum p, const GLfloat *eqn);
+ANGLE_EXPORT void GL_APIENTRY ClipPlanex(GLenum plane, const GLfixed *equation);
+ANGLE_EXPORT void GL_APIENTRY Color4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ANGLE_EXPORT void GL_APIENTRY Color4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ANGLE_EXPORT void GL_APIENTRY Color4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+ANGLE_EXPORT void GL_APIENTRY ColorPointer(GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY DepthRangex(GLfixed n, GLfixed f);
+ANGLE_EXPORT void GL_APIENTRY DisableClientState(GLenum array);
+ANGLE_EXPORT void GL_APIENTRY EnableClientState(GLenum array);
+ANGLE_EXPORT void GL_APIENTRY Fogf(GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY Fogfv(GLenum pname, const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY Fogx(GLenum pname, GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY Fogxv(GLenum pname, const GLfixed *param);
+ANGLE_EXPORT void GL_APIENTRY
+Frustumf(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
+ANGLE_EXPORT void GL_APIENTRY
+Frustumx(GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
+ANGLE_EXPORT void GL_APIENTRY GetClipPlanef(GLenum plane, GLfloat *equation);
+ANGLE_EXPORT void GL_APIENTRY GetClipPlanex(GLenum plane, GLfixed *equation);
+ANGLE_EXPORT void GL_APIENTRY GetFixedv(GLenum pname, GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetLightfv(GLenum light, GLenum pname, GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetLightxv(GLenum light, GLenum pname, GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetMaterialfv(GLenum face, GLenum pname, GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetMaterialxv(GLenum face, GLenum pname, GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetPointerv(GLenum pname, void **params);
+ANGLE_EXPORT void GL_APIENTRY GetTexEnvfv(GLenum target, GLenum pname, GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexEnviv(GLenum target, GLenum pname, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexEnvxv(GLenum target, GLenum pname, GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterxv(GLenum target, GLenum pname, GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY LightModelf(GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY LightModelfv(GLenum pname, const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY LightModelx(GLenum pname, GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY LightModelxv(GLenum pname, const GLfixed *param);
+ANGLE_EXPORT void GL_APIENTRY Lightf(GLenum light, GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY Lightfv(GLenum light, GLenum pname, const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY Lightx(GLenum light, GLenum pname, GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY Lightxv(GLenum light, GLenum pname, const GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY LineWidthx(GLfixed width);
+ANGLE_EXPORT void GL_APIENTRY LoadIdentity();
+ANGLE_EXPORT void GL_APIENTRY LoadMatrixf(const GLfloat *m);
+ANGLE_EXPORT void GL_APIENTRY LoadMatrixx(const GLfixed *m);
+ANGLE_EXPORT void GL_APIENTRY LogicOp(GLenum opcode);
+ANGLE_EXPORT void GL_APIENTRY Materialf(GLenum face, GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY Materialfv(GLenum face, GLenum pname, const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY Materialx(GLenum face, GLenum pname, GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY Materialxv(GLenum face, GLenum pname, const GLfixed *param);
+ANGLE_EXPORT void GL_APIENTRY MatrixMode(GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY MultMatrixf(const GLfloat *m);
+ANGLE_EXPORT void GL_APIENTRY MultMatrixx(const GLfixed *m);
+ANGLE_EXPORT void GL_APIENTRY
+MultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
+ANGLE_EXPORT void GL_APIENTRY
+MultiTexCoord4x(GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
+ANGLE_EXPORT void GL_APIENTRY Normal3f(GLfloat nx, GLfloat ny, GLfloat nz);
+ANGLE_EXPORT void GL_APIENTRY Normal3x(GLfixed nx, GLfixed ny, GLfixed nz);
+ANGLE_EXPORT void GL_APIENTRY NormalPointer(GLenum type, GLsizei stride, const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY
+Orthof(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f);
+ANGLE_EXPORT void GL_APIENTRY
+Orthox(GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f);
+ANGLE_EXPORT void GL_APIENTRY PointParameterf(GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY PointParameterfv(GLenum pname, const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY PointParameterx(GLenum pname, GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY PointParameterxv(GLenum pname, const GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY PointSize(GLfloat size);
+ANGLE_EXPORT void GL_APIENTRY PointSizex(GLfixed size);
+ANGLE_EXPORT void GL_APIENTRY PolygonOffsetx(GLfixed factor, GLfixed units);
+ANGLE_EXPORT void GL_APIENTRY PopMatrix();
+ANGLE_EXPORT void GL_APIENTRY PushMatrix();
+ANGLE_EXPORT void GL_APIENTRY Rotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ANGLE_EXPORT void GL_APIENTRY Rotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
+ANGLE_EXPORT void GL_APIENTRY SampleCoveragex(GLclampx value, GLboolean invert);
+ANGLE_EXPORT void GL_APIENTRY Scalef(GLfloat x, GLfloat y, GLfloat z);
+ANGLE_EXPORT void GL_APIENTRY Scalex(GLfixed x, GLfixed y, GLfixed z);
+ANGLE_EXPORT void GL_APIENTRY ShadeModel(GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY TexCoordPointer(GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY TexEnvf(GLenum target, GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY TexEnvfv(GLenum target, GLenum pname, const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY TexEnvi(GLenum target, GLenum pname, GLint param);
+ANGLE_EXPORT void GL_APIENTRY TexEnviv(GLenum target, GLenum pname, const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexEnvx(GLenum target, GLenum pname, GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY TexEnvxv(GLenum target, GLenum pname, const GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterx(GLenum target, GLenum pname, GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY TexParameterxv(GLenum target, GLenum pname, const GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY Translatef(GLfloat x, GLfloat y, GLfloat z);
+ANGLE_EXPORT void GL_APIENTRY Translatex(GLfixed x, GLfixed y, GLfixed z);
+ANGLE_EXPORT void GL_APIENTRY VertexPointer(GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+} // namespace gl
+
+#endif // LIBGLESV2_ENTRY_POINTS_GLES_1_0_AUTOGEN_H_
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_2_0_autogen.cpp b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_2_0_autogen.cpp
new file mode 100644
index 0000000000..a723a888ca
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_2_0_autogen.cpp
@@ -0,0 +1,2503 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml.
+//
+// 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.
+//
+// entry_points_gles_2_0_autogen.cpp:
+// Defines the GLES 2.0 entry points.
+
+#include "libGLESv2/entry_points_gles_2_0_autogen.h"
+
+#include "libANGLE/Context.h"
+#include "libANGLE/Context.inl.h"
+#include "libANGLE/capture_gles_2_0_autogen.h"
+#include "libANGLE/entry_points_utils.h"
+#include "libANGLE/validationES2.h"
+#include "libGLESv2/global_state.h"
+
+namespace gl
+{
+void GL_APIENTRY ActiveTexture(GLenum texture)
+{
+ EVENT("(GLenum texture = 0x%X)", texture);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ActiveTexture, context, texture);
+ if (context->skipValidation() || ValidateActiveTexture(context, texture))
+ {
+ context->activeTexture(texture);
+ }
+ }
+}
+
+void GL_APIENTRY AttachShader(GLuint program, GLuint shader)
+{
+ EVENT("(GLuint program = %u, GLuint shader = %u)", program, shader);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(AttachShader, context, program, shader);
+ if (context->skipValidation() || ValidateAttachShader(context, program, shader))
+ {
+ context->attachShader(program, shader);
+ }
+ }
+}
+
+void GL_APIENTRY BindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ EVENT("(GLuint program = %u, GLuint index = %u, const GLchar *name = 0x%016" PRIxPTR ")",
+ program, index, (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindAttribLocation, context, program, index, name);
+ if (context->skipValidation() || ValidateBindAttribLocation(context, program, index, name))
+ {
+ context->bindAttribLocation(program, index, name);
+ }
+ }
+}
+
+void GL_APIENTRY BindBuffer(GLenum target, GLuint buffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint buffer = %u)", target, buffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(BindBuffer, context, targetPacked, buffer);
+ if (context->skipValidation() || ValidateBindBuffer(context, targetPacked, buffer))
+ {
+ context->bindBuffer(targetPacked, buffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint framebuffer = %u)", target, framebuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindFramebuffer, context, target, framebuffer);
+ if (context->skipValidation() || ValidateBindFramebuffer(context, target, framebuffer))
+ {
+ context->bindFramebuffer(target, framebuffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint renderbuffer = %u)", target, renderbuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindRenderbuffer, context, target, renderbuffer);
+ if (context->skipValidation() || ValidateBindRenderbuffer(context, target, renderbuffer))
+ {
+ context->bindRenderbuffer(target, renderbuffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindTexture(GLenum target, GLuint texture)
+{
+ EVENT("(GLenum target = 0x%X, GLuint texture = %u)", target, texture);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(BindTexture, context, targetPacked, texture);
+ if (context->skipValidation() || ValidateBindTexture(context, targetPacked, texture))
+ {
+ context->bindTexture(targetPacked, texture);
+ }
+ }
+}
+
+void GL_APIENTRY BlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ EVENT("(GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f)", red,
+ green, blue, alpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BlendColor, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateBlendColor(context, red, green, blue, alpha))
+ {
+ context->blendColor(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY BlendEquation(GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BlendEquation, context, mode);
+ if (context->skipValidation() || ValidateBlendEquation(context, mode))
+ {
+ context->blendEquation(mode);
+ }
+ }
+}
+
+void GL_APIENTRY BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ EVENT("(GLenum modeRGB = 0x%X, GLenum modeAlpha = 0x%X)", modeRGB, modeAlpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BlendEquationSeparate, context, modeRGB, modeAlpha);
+ if (context->skipValidation() || ValidateBlendEquationSeparate(context, modeRGB, modeAlpha))
+ {
+ context->blendEquationSeparate(modeRGB, modeAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY BlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ EVENT("(GLenum sfactor = 0x%X, GLenum dfactor = 0x%X)", sfactor, dfactor);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BlendFunc, context, sfactor, dfactor);
+ if (context->skipValidation() || ValidateBlendFunc(context, sfactor, dfactor))
+ {
+ context->blendFunc(sfactor, dfactor);
+ }
+ }
+}
+
+void GL_APIENTRY BlendFuncSeparate(GLenum sfactorRGB,
+ GLenum dfactorRGB,
+ GLenum sfactorAlpha,
+ GLenum dfactorAlpha)
+{
+ EVENT(
+ "(GLenum sfactorRGB = 0x%X, GLenum dfactorRGB = 0x%X, GLenum sfactorAlpha = 0x%X, GLenum "
+ "dfactorAlpha = 0x%X)",
+ sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BlendFuncSeparate, context, sfactorRGB, dfactorRGB, sfactorAlpha,
+ dfactorAlpha);
+ if (context->skipValidation() ||
+ ValidateBlendFuncSeparate(context, sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha))
+ {
+ context->blendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY BufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
+{
+ EVENT("(GLenum target = 0x%X, GLsizeiptr size = %llu, const void *data = 0x%016" PRIxPTR
+ ", GLenum usage = 0x%X)",
+ target, static_cast<unsigned long long>(size), (uintptr_t)data, usage);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ BufferUsage usagePacked = FromGLenum<BufferUsage>(usage);
+ ANGLE_CAPTURE(BufferData, context, targetPacked, size, data, usagePacked);
+ if (context->skipValidation() ||
+ ValidateBufferData(context, targetPacked, size, data, usagePacked))
+ {
+ context->bufferData(targetPacked, size, data, usagePacked);
+ }
+ }
+}
+
+void GL_APIENTRY BufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr size = %llu, const void *data = "
+ "0x%016" PRIxPTR ")",
+ target, static_cast<unsigned long long>(offset), static_cast<unsigned long long>(size),
+ (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(BufferSubData, context, targetPacked, offset, size, data);
+ if (context->skipValidation() ||
+ ValidateBufferSubData(context, targetPacked, offset, size, data))
+ {
+ context->bufferSubData(targetPacked, offset, size, data);
+ }
+ }
+}
+
+GLenum GL_APIENTRY CheckFramebufferStatus(GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CheckFramebufferStatus, context, target);
+ if (context->skipValidation() || ValidateCheckFramebufferStatus(context, target))
+ {
+ return context->checkFramebufferStatus(target);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CheckFramebufferStatus, GLenum>();
+}
+
+void GL_APIENTRY Clear(GLbitfield mask)
+{
+ EVENT("(GLbitfield mask = 0x%X)", mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Clear, context, mask);
+ if (context->skipValidation() || ValidateClear(context, mask))
+ {
+ context->clear(mask);
+ }
+ }
+}
+
+void GL_APIENTRY ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ EVENT("(GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f)", red,
+ green, blue, alpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClearColor, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateClearColor(context, red, green, blue, alpha))
+ {
+ context->clearColor(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY ClearDepthf(GLfloat d)
+{
+ EVENT("(GLfloat d = %f)", d);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClearDepthf, context, d);
+ if (context->skipValidation() || ValidateClearDepthf(context, d))
+ {
+ context->clearDepthf(d);
+ }
+ }
+}
+
+void GL_APIENTRY ClearStencil(GLint s)
+{
+ EVENT("(GLint s = %d)", s);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClearStencil, context, s);
+ if (context->skipValidation() || ValidateClearStencil(context, s))
+ {
+ context->clearStencil(s);
+ }
+ }
+}
+
+void GL_APIENTRY ColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ EVENT("(GLboolean red = %u, GLboolean green = %u, GLboolean blue = %u, GLboolean alpha = %u)",
+ red, green, blue, alpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ColorMask, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateColorMask(context, red, green, blue, alpha))
+ {
+ context->colorMask(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY CompileShader(GLuint shader)
+{
+ EVENT("(GLuint shader = %u)", shader);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CompileShader, context, shader);
+ if (context->skipValidation() || ValidateCompileShader(context, shader))
+ {
+ context->compileShader(shader);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexImage2D(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLint border = %d, GLsizei imageSize = %d, const void *data = "
+ "0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, border, imageSize, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage2D, context, targetPacked, level, internalformat, width,
+ height, border, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexImage2D(context, targetPacked, level, internalformat, width,
+ height, border, imageSize, data))
+ {
+ context->compressedTexImage2D(targetPacked, level, internalformat, width, height,
+ border, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage2D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLsizei "
+ "width = %d, GLsizei height = %d, GLenum format = 0x%X, GLsizei imageSize = %d, const void "
+ "*data = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, width, height, format, imageSize, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage2D, context, targetPacked, level, xoffset, yoffset,
+ width, height, format, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexSubImage2D(context, targetPacked, level, xoffset, yoffset, width,
+ height, format, imageSize, data))
+ {
+ context->compressedTexSubImage2D(targetPacked, level, xoffset, yoffset, width, height,
+ format, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTexImage2D(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLint border)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLint x = %d, "
+ "GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLint border = %d)",
+ target, level, internalformat, x, y, width, height, border);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CopyTexImage2D, context, targetPacked, level, internalformat, x, y, width,
+ height, border);
+ if (context->skipValidation() ||
+ ValidateCopyTexImage2D(context, targetPacked, level, internalformat, x, y, width,
+ height, border))
+ {
+ context->copyTexImage2D(targetPacked, level, internalformat, x, y, width, height,
+ border);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTexSubImage2D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint x "
+ "= %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
+ target, level, xoffset, yoffset, x, y, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CopyTexSubImage2D, context, targetPacked, level, xoffset, yoffset, x, y,
+ width, height);
+ if (context->skipValidation() ||
+ ValidateCopyTexSubImage2D(context, targetPacked, level, xoffset, yoffset, x, y, width,
+ height))
+ {
+ context->copyTexSubImage2D(targetPacked, level, xoffset, yoffset, x, y, width, height);
+ }
+ }
+}
+
+GLuint GL_APIENTRY CreateProgram()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CreateProgram, context);
+ if (context->skipValidation() || ValidateCreateProgram(context))
+ {
+ return context->createProgram();
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CreateProgram, GLuint>();
+}
+
+GLuint GL_APIENTRY CreateShader(GLenum type)
+{
+ EVENT("(GLenum type = 0x%X)", type);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ShaderType typePacked = FromGLenum<ShaderType>(type);
+ ANGLE_CAPTURE(CreateShader, context, typePacked);
+ if (context->skipValidation() || ValidateCreateShader(context, typePacked))
+ {
+ return context->createShader(typePacked);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CreateShader, GLuint>();
+}
+
+void GL_APIENTRY CullFace(GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ CullFaceMode modePacked = FromGLenum<CullFaceMode>(mode);
+ ANGLE_CAPTURE(CullFace, context, modePacked);
+ if (context->skipValidation() || ValidateCullFace(context, modePacked))
+ {
+ context->cullFace(modePacked);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *buffers = 0x%016" PRIxPTR ")", n, (uintptr_t)buffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteBuffers, context, n, buffers);
+ if (context->skipValidation() || ValidateDeleteBuffers(context, n, buffers))
+ {
+ context->deleteBuffers(n, buffers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *framebuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)framebuffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteFramebuffers, context, n, framebuffers);
+ if (context->skipValidation() || ValidateDeleteFramebuffers(context, n, framebuffers))
+ {
+ context->deleteFramebuffers(n, framebuffers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteProgram(GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteProgram, context, program);
+ if (context->skipValidation() || ValidateDeleteProgram(context, program))
+ {
+ context->deleteProgram(program);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *renderbuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)renderbuffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteRenderbuffers, context, n, renderbuffers);
+ if (context->skipValidation() || ValidateDeleteRenderbuffers(context, n, renderbuffers))
+ {
+ context->deleteRenderbuffers(n, renderbuffers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteShader(GLuint shader)
+{
+ EVENT("(GLuint shader = %u)", shader);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteShader, context, shader);
+ if (context->skipValidation() || ValidateDeleteShader(context, shader))
+ {
+ context->deleteShader(shader);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteTextures(GLsizei n, const GLuint *textures)
+{
+ EVENT("(GLsizei n = %d, const GLuint *textures = 0x%016" PRIxPTR ")", n, (uintptr_t)textures);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteTextures, context, n, textures);
+ if (context->skipValidation() || ValidateDeleteTextures(context, n, textures))
+ {
+ context->deleteTextures(n, textures);
+ }
+ }
+}
+
+void GL_APIENTRY DepthFunc(GLenum func)
+{
+ EVENT("(GLenum func = 0x%X)", func);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DepthFunc, context, func);
+ if (context->skipValidation() || ValidateDepthFunc(context, func))
+ {
+ context->depthFunc(func);
+ }
+ }
+}
+
+void GL_APIENTRY DepthMask(GLboolean flag)
+{
+ EVENT("(GLboolean flag = %u)", flag);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DepthMask, context, flag);
+ if (context->skipValidation() || ValidateDepthMask(context, flag))
+ {
+ context->depthMask(flag);
+ }
+ }
+}
+
+void GL_APIENTRY DepthRangef(GLfloat n, GLfloat f)
+{
+ EVENT("(GLfloat n = %f, GLfloat f = %f)", n, f);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DepthRangef, context, n, f);
+ if (context->skipValidation() || ValidateDepthRangef(context, n, f))
+ {
+ context->depthRangef(n, f);
+ }
+ }
+}
+
+void GL_APIENTRY DetachShader(GLuint program, GLuint shader)
+{
+ EVENT("(GLuint program = %u, GLuint shader = %u)", program, shader);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DetachShader, context, program, shader);
+ if (context->skipValidation() || ValidateDetachShader(context, program, shader))
+ {
+ context->detachShader(program, shader);
+ }
+ }
+}
+
+void GL_APIENTRY Disable(GLenum cap)
+{
+ EVENT("(GLenum cap = 0x%X)", cap);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Disable, context, cap);
+ if (context->skipValidation() || ValidateDisable(context, cap))
+ {
+ context->disable(cap);
+ }
+ }
+}
+
+void GL_APIENTRY DisableVertexAttribArray(GLuint index)
+{
+ EVENT("(GLuint index = %u)", index);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DisableVertexAttribArray, context, index);
+ if (context->skipValidation() || ValidateDisableVertexAttribArray(context, index))
+ {
+ context->disableVertexAttribArray(index);
+ }
+ }
+}
+
+void GL_APIENTRY DrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ EVENT("(GLenum mode = 0x%X, GLint first = %d, GLsizei count = %d)", mode, first, count);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArrays, context, modePacked, first, count);
+ if (context->skipValidation() || ValidateDrawArrays(context, modePacked, first, count))
+ {
+ context->drawArrays(modePacked, first, count);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
+ "0x%016" PRIxPTR ")",
+ mode, count, type, (uintptr_t)indices);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElements, context, modePacked, count, typePacked, indices);
+ if (context->skipValidation() ||
+ ValidateDrawElements(context, modePacked, count, typePacked, indices))
+ {
+ context->drawElements(modePacked, count, typePacked, indices);
+ }
+ }
+}
+
+void GL_APIENTRY Enable(GLenum cap)
+{
+ EVENT("(GLenum cap = 0x%X)", cap);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Enable, context, cap);
+ if (context->skipValidation() || ValidateEnable(context, cap))
+ {
+ context->enable(cap);
+ }
+ }
+}
+
+void GL_APIENTRY EnableVertexAttribArray(GLuint index)
+{
+ EVENT("(GLuint index = %u)", index);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(EnableVertexAttribArray, context, index);
+ if (context->skipValidation() || ValidateEnableVertexAttribArray(context, index))
+ {
+ context->enableVertexAttribArray(index);
+ }
+ }
+}
+
+void GL_APIENTRY Finish()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Finish, context);
+ if (context->skipValidation() || ValidateFinish(context))
+ {
+ context->finish();
+ }
+ }
+}
+
+void GL_APIENTRY Flush()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Flush, context);
+ if (context->skipValidation() || ValidateFlush(context))
+ {
+ context->flush();
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferRenderbuffer(GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum renderbuffertarget = 0x%X, GLuint "
+ "renderbuffer = %u)",
+ target, attachment, renderbuffertarget, renderbuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(FramebufferRenderbuffer, context, target, attachment, renderbuffertarget,
+ renderbuffer);
+ if (context->skipValidation() ||
+ ValidateFramebufferRenderbuffer(context, target, attachment, renderbuffertarget,
+ renderbuffer))
+ {
+ context->framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferTexture2D(GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum textarget = 0x%X, GLuint texture "
+ "= %u, GLint level = %d)",
+ target, attachment, textarget, texture, level);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget textargetPacked = FromGLenum<TextureTarget>(textarget);
+ ANGLE_CAPTURE(FramebufferTexture2D, context, target, attachment, textargetPacked, texture,
+ level);
+ if (context->skipValidation() ||
+ ValidateFramebufferTexture2D(context, target, attachment, textargetPacked, texture,
+ level))
+ {
+ context->framebufferTexture2D(target, attachment, textargetPacked, texture, level);
+ }
+ }
+}
+
+void GL_APIENTRY FrontFace(GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(FrontFace, context, mode);
+ if (context->skipValidation() || ValidateFrontFace(context, mode))
+ {
+ context->frontFace(mode);
+ }
+ }
+}
+
+void GL_APIENTRY GenBuffers(GLsizei n, GLuint *buffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *buffers = 0x%016" PRIxPTR ")", n, (uintptr_t)buffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenBuffers, context, n, buffers);
+ if (context->skipValidation() || ValidateGenBuffers(context, n, buffers))
+ {
+ context->genBuffers(n, buffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *framebuffers = 0x%016" PRIxPTR ")", n, (uintptr_t)framebuffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenFramebuffers, context, n, framebuffers);
+ if (context->skipValidation() || ValidateGenFramebuffers(context, n, framebuffers))
+ {
+ context->genFramebuffers(n, framebuffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *renderbuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)renderbuffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenRenderbuffers, context, n, renderbuffers);
+ if (context->skipValidation() || ValidateGenRenderbuffers(context, n, renderbuffers))
+ {
+ context->genRenderbuffers(n, renderbuffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenTextures(GLsizei n, GLuint *textures)
+{
+ EVENT("(GLsizei n = %d, GLuint *textures = 0x%016" PRIxPTR ")", n, (uintptr_t)textures);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenTextures, context, n, textures);
+ if (context->skipValidation() || ValidateGenTextures(context, n, textures))
+ {
+ context->genTextures(n, textures);
+ }
+ }
+}
+
+void GL_APIENTRY GenerateMipmap(GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GenerateMipmap, context, targetPacked);
+ if (context->skipValidation() || ValidateGenerateMipmap(context, targetPacked))
+ {
+ context->generateMipmap(targetPacked);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveAttrib(GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint index = %u, GLsizei bufSize = %d, GLsizei *length = "
+ "0x%016" PRIxPTR ", GLint *size = 0x%016" PRIxPTR ", GLenum *type = 0x%016" PRIxPTR
+ ", GLchar *name = 0x%016" PRIxPTR ")",
+ program, index, bufSize, (uintptr_t)length, (uintptr_t)size, (uintptr_t)type,
+ (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetActiveAttrib, context, program, index, bufSize, length, size, type, name);
+ if (context->skipValidation() ||
+ ValidateGetActiveAttrib(context, program, index, bufSize, length, size, type, name))
+ {
+ context->getActiveAttrib(program, index, bufSize, length, size, type, name);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniform(GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint index = %u, GLsizei bufSize = %d, GLsizei *length = "
+ "0x%016" PRIxPTR ", GLint *size = 0x%016" PRIxPTR ", GLenum *type = 0x%016" PRIxPTR
+ ", GLchar *name = 0x%016" PRIxPTR ")",
+ program, index, bufSize, (uintptr_t)length, (uintptr_t)size, (uintptr_t)type,
+ (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetActiveUniform, context, program, index, bufSize, length, size, type, name);
+ if (context->skipValidation() ||
+ ValidateGetActiveUniform(context, program, index, bufSize, length, size, type, name))
+ {
+ context->getActiveUniform(program, index, bufSize, length, size, type, name);
+ }
+ }
+}
+
+void GL_APIENTRY GetAttachedShaders(GLuint program,
+ GLsizei maxCount,
+ GLsizei *count,
+ GLuint *shaders)
+{
+ EVENT("(GLuint program = %u, GLsizei maxCount = %d, GLsizei *count = 0x%016" PRIxPTR
+ ", GLuint *shaders = 0x%016" PRIxPTR ")",
+ program, maxCount, (uintptr_t)count, (uintptr_t)shaders);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetAttachedShaders, context, program, maxCount, count, shaders);
+ if (context->skipValidation() ||
+ ValidateGetAttachedShaders(context, program, maxCount, count, shaders))
+ {
+ context->getAttachedShaders(program, maxCount, count, shaders);
+ }
+ }
+}
+
+GLint GL_APIENTRY GetAttribLocation(GLuint program, const GLchar *name)
+{
+ EVENT("(GLuint program = %u, const GLchar *name = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetAttribLocation, context, program, name);
+ if (context->skipValidation() || ValidateGetAttribLocation(context, program, name))
+ {
+ return context->getAttribLocation(program, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetAttribLocation, GLint>();
+}
+
+void GL_APIENTRY GetBooleanv(GLenum pname, GLboolean *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLboolean *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetBooleanv, context, pname, data);
+ if (context->skipValidation() || ValidateGetBooleanv(context, pname, data))
+ {
+ context->getBooleanv(pname, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferParameteriv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetBufferParameteriv(context, targetPacked, pname, params))
+ {
+ context->getBufferParameteriv(targetPacked, pname, params);
+ }
+ }
+}
+
+GLenum GL_APIENTRY GetError()
+{
+ EVENT("()");
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetError, context);
+ if (context->skipValidation() || ValidateGetError(context))
+ {
+ return context->getError();
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetError, GLenum>();
+}
+
+void GL_APIENTRY GetFloatv(GLenum pname, GLfloat *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLfloat *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFloatv, context, pname, data);
+ if (context->skipValidation() || ValidateGetFloatv(context, pname, data))
+ {
+ context->getFloatv(pname, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetFramebufferAttachmentParameteriv(GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum pname = 0x%X, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ target, attachment, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFramebufferAttachmentParameteriv, context, target, attachment, pname,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetFramebufferAttachmentParameteriv(context, target, attachment, pname, params))
+ {
+ context->getFramebufferAttachmentParameteriv(target, attachment, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetIntegerv(GLenum pname, GLint *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLint *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetIntegerv, context, pname, data);
+ if (context->skipValidation() || ValidateGetIntegerv(context, pname, data))
+ {
+ context->getIntegerv(pname, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramInfoLog(GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ EVENT("(GLuint program = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *infoLog = 0x%016" PRIxPTR ")",
+ program, bufSize, (uintptr_t)length, (uintptr_t)infoLog);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramInfoLog, context, program, bufSize, length, infoLog);
+ if (context->skipValidation() ||
+ ValidateGetProgramInfoLog(context, program, bufSize, length, infoLog))
+ {
+ context->getProgramInfoLog(program, bufSize, length, infoLog);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint program = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", program,
+ pname, (uintptr_t)params);
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramiv, context, program, pname, params);
+ if (context->skipValidation() || ValidateGetProgramiv(context, program, pname, params))
+ {
+ context->getProgramiv(program, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetRenderbufferParameteriv, context, target, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetRenderbufferParameteriv(context, target, pname, params))
+ {
+ context->getRenderbufferParameteriv(target, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetShaderInfoLog(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog)
+{
+ EVENT("(GLuint shader = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *infoLog = 0x%016" PRIxPTR ")",
+ shader, bufSize, (uintptr_t)length, (uintptr_t)infoLog);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetShaderInfoLog, context, shader, bufSize, length, infoLog);
+ if (context->skipValidation() ||
+ ValidateGetShaderInfoLog(context, shader, bufSize, length, infoLog))
+ {
+ context->getShaderInfoLog(shader, bufSize, length, infoLog);
+ }
+ }
+}
+
+void GL_APIENTRY GetShaderPrecisionFormat(GLenum shadertype,
+ GLenum precisiontype,
+ GLint *range,
+ GLint *precision)
+{
+ EVENT("(GLenum shadertype = 0x%X, GLenum precisiontype = 0x%X, GLint *range = 0x%016" PRIxPTR
+ ", GLint *precision = 0x%016" PRIxPTR ")",
+ shadertype, precisiontype, (uintptr_t)range, (uintptr_t)precision);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetShaderPrecisionFormat, context, shadertype, precisiontype, range,
+ precision);
+ if (context->skipValidation() ||
+ ValidateGetShaderPrecisionFormat(context, shadertype, precisiontype, range, precision))
+ {
+ context->getShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+ }
+ }
+}
+
+void GL_APIENTRY GetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ EVENT("(GLuint shader = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *source = 0x%016" PRIxPTR ")",
+ shader, bufSize, (uintptr_t)length, (uintptr_t)source);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetShaderSource, context, shader, bufSize, length, source);
+ if (context->skipValidation() ||
+ ValidateGetShaderSource(context, shader, bufSize, length, source))
+ {
+ context->getShaderSource(shader, bufSize, length, source);
+ }
+ }
+}
+
+void GL_APIENTRY GetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint shader = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", shader,
+ pname, (uintptr_t)params);
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetShaderiv, context, shader, pname, params);
+ if (context->skipValidation() || ValidateGetShaderiv(context, shader, pname, params))
+ {
+ context->getShaderiv(shader, pname, params);
+ }
+ }
+}
+
+const GLubyte *GL_APIENTRY GetString(GLenum name)
+{
+ EVENT("(GLenum name = 0x%X)", name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetString, context, name);
+ if (context->skipValidation() || ValidateGetString(context, name))
+ {
+ return context->getString(name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetString, const GLubyte *>();
+}
+
+void GL_APIENTRY GetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterfv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameterfv(context, targetPacked, pname, params))
+ {
+ context->getTexParameterfv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameteriv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameteriv(context, targetPacked, pname, params))
+ {
+ context->getTexParameteriv(targetPacked, pname, params);
+ }
+ }
+}
+
+GLint GL_APIENTRY GetUniformLocation(GLuint program, const GLchar *name)
+{
+ EVENT("(GLuint program = %u, const GLchar *name = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUniformLocation, context, program, name);
+ if (context->skipValidation() || ValidateGetUniformLocation(context, program, name))
+ {
+ return context->getUniformLocation(program, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetUniformLocation, GLint>();
+}
+
+void GL_APIENTRY GetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLfloat *params = 0x%016" PRIxPTR ")",
+ program, location, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUniformfv, context, program, location, params);
+ if (context->skipValidation() || ValidateGetUniformfv(context, program, location, params))
+ {
+ context->getUniformfv(program, location, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLint *params = 0x%016" PRIxPTR ")", program,
+ location, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUniformiv, context, program, location, params);
+ if (context->skipValidation() || ValidateGetUniformiv(context, program, location, params))
+ {
+ context->getUniformiv(program, location, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribPointerv(GLuint index, GLenum pname, void **pointer)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, void **pointer = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribPointerv, context, index, pname, pointer);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribPointerv(context, index, pname, pointer))
+ {
+ context->getVertexAttribPointerv(index, pname, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribfv, context, index, pname, params);
+ if (context->skipValidation() || ValidateGetVertexAttribfv(context, index, pname, params))
+ {
+ context->getVertexAttribfv(index, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribiv, context, index, pname, params);
+ if (context->skipValidation() || ValidateGetVertexAttribiv(context, index, pname, params))
+ {
+ context->getVertexAttribiv(index, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY Hint(GLenum target, GLenum mode)
+{
+ EVENT("(GLenum target = 0x%X, GLenum mode = 0x%X)", target, mode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Hint, context, target, mode);
+ if (context->skipValidation() || ValidateHint(context, target, mode))
+ {
+ context->hint(target, mode);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsBuffer(GLuint buffer)
+{
+ EVENT("(GLuint buffer = %u)", buffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsBuffer, context, buffer);
+ if (context->skipValidation() || ValidateIsBuffer(context, buffer))
+ {
+ return context->isBuffer(buffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsBuffer, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsEnabled(GLenum cap)
+{
+ EVENT("(GLenum cap = 0x%X)", cap);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsEnabled, context, cap);
+ if (context->skipValidation() || ValidateIsEnabled(context, cap))
+ {
+ return context->isEnabled(cap);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsEnabled, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsFramebuffer(GLuint framebuffer)
+{
+ EVENT("(GLuint framebuffer = %u)", framebuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsFramebuffer, context, framebuffer);
+ if (context->skipValidation() || ValidateIsFramebuffer(context, framebuffer))
+ {
+ return context->isFramebuffer(framebuffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsFramebuffer, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsProgram(GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsProgram, context, program);
+ if (context->skipValidation() || ValidateIsProgram(context, program))
+ {
+ return context->isProgram(program);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsProgram, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsRenderbuffer(GLuint renderbuffer)
+{
+ EVENT("(GLuint renderbuffer = %u)", renderbuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsRenderbuffer, context, renderbuffer);
+ if (context->skipValidation() || ValidateIsRenderbuffer(context, renderbuffer))
+ {
+ return context->isRenderbuffer(renderbuffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsRenderbuffer, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsShader(GLuint shader)
+{
+ EVENT("(GLuint shader = %u)", shader);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsShader, context, shader);
+ if (context->skipValidation() || ValidateIsShader(context, shader))
+ {
+ return context->isShader(shader);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsShader, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsTexture(GLuint texture)
+{
+ EVENT("(GLuint texture = %u)", texture);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsTexture, context, texture);
+ if (context->skipValidation() || ValidateIsTexture(context, texture))
+ {
+ return context->isTexture(texture);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsTexture, GLboolean>();
+}
+
+void GL_APIENTRY LineWidth(GLfloat width)
+{
+ EVENT("(GLfloat width = %f)", width);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LineWidth, context, width);
+ if (context->skipValidation() || ValidateLineWidth(context, width))
+ {
+ context->lineWidth(width);
+ }
+ }
+}
+
+void GL_APIENTRY LinkProgram(GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LinkProgram, context, program);
+ if (context->skipValidation() || ValidateLinkProgram(context, program))
+ {
+ context->linkProgram(program);
+ }
+ }
+}
+
+void GL_APIENTRY PixelStorei(GLenum pname, GLint param)
+{
+ EVENT("(GLenum pname = 0x%X, GLint param = %d)", pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PixelStorei, context, pname, param);
+ if (context->skipValidation() || ValidatePixelStorei(context, pname, param))
+ {
+ context->pixelStorei(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY PolygonOffset(GLfloat factor, GLfloat units)
+{
+ EVENT("(GLfloat factor = %f, GLfloat units = %f)", factor, units);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PolygonOffset, context, factor, units);
+ if (context->skipValidation() || ValidatePolygonOffset(context, factor, units))
+ {
+ context->polygonOffset(factor, units);
+ }
+ }
+}
+
+void GL_APIENTRY ReadPixels(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ void *pixels)
+{
+ EVENT(
+ "(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLenum format = "
+ "0x%X, GLenum type = 0x%X, void *pixels = 0x%016" PRIxPTR ")",
+ x, y, width, height, format, type, (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ReadPixels, context, x, y, width, height, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateReadPixels(context, x, y, width, height, format, type, pixels))
+ {
+ context->readPixels(x, y, width, height, format, type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY ReleaseShaderCompiler()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ReleaseShaderCompiler, context);
+ if (context->skipValidation() || ValidateReleaseShaderCompiler(context))
+ {
+ context->releaseShaderCompiler();
+ }
+ }
+}
+
+void GL_APIENTRY RenderbufferStorage(GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum internalformat = 0x%X, GLsizei width = %d, GLsizei height = "
+ "%d)",
+ target, internalformat, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(RenderbufferStorage, context, target, internalformat, width, height);
+ if (context->skipValidation() ||
+ ValidateRenderbufferStorage(context, target, internalformat, width, height))
+ {
+ context->renderbufferStorage(target, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY SampleCoverage(GLfloat value, GLboolean invert)
+{
+ EVENT("(GLfloat value = %f, GLboolean invert = %u)", value, invert);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SampleCoverage, context, value, invert);
+ if (context->skipValidation() || ValidateSampleCoverage(context, value, invert))
+ {
+ context->sampleCoverage(value, invert);
+ }
+ }
+}
+
+void GL_APIENTRY Scissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ EVENT("(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)", x, y, width,
+ height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Scissor, context, x, y, width, height);
+ if (context->skipValidation() || ValidateScissor(context, x, y, width, height))
+ {
+ context->scissor(x, y, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY ShaderBinary(GLsizei count,
+ const GLuint *shaders,
+ GLenum binaryformat,
+ const void *binary,
+ GLsizei length)
+{
+ EVENT("(GLsizei count = %d, const GLuint *shaders = 0x%016" PRIxPTR
+ ", GLenum binaryformat = 0x%X, const void *binary = 0x%016" PRIxPTR
+ ", GLsizei length = %d)",
+ count, (uintptr_t)shaders, binaryformat, (uintptr_t)binary, length);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ShaderBinary, context, count, shaders, binaryformat, binary, length);
+ if (context->skipValidation() ||
+ ValidateShaderBinary(context, count, shaders, binaryformat, binary, length))
+ {
+ context->shaderBinary(count, shaders, binaryformat, binary, length);
+ }
+ }
+}
+
+void GL_APIENTRY ShaderSource(GLuint shader,
+ GLsizei count,
+ const GLchar *const *string,
+ const GLint *length)
+{
+ EVENT("(GLuint shader = %u, GLsizei count = %d, const GLchar *const*string = 0x%016" PRIxPTR
+ ", const GLint *length = 0x%016" PRIxPTR ")",
+ shader, count, (uintptr_t)string, (uintptr_t)length);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ShaderSource, context, shader, count, string, length);
+ if (context->skipValidation() ||
+ ValidateShaderSource(context, shader, count, string, length))
+ {
+ context->shaderSource(shader, count, string, length);
+ }
+ }
+}
+
+void GL_APIENTRY StencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ EVENT("(GLenum func = 0x%X, GLint ref = %d, GLuint mask = %u)", func, ref, mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilFunc, context, func, ref, mask);
+ if (context->skipValidation() || ValidateStencilFunc(context, func, ref, mask))
+ {
+ context->stencilFunc(func, ref, mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ EVENT("(GLenum face = 0x%X, GLenum func = 0x%X, GLint ref = %d, GLuint mask = %u)", face, func,
+ ref, mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilFuncSeparate, context, face, func, ref, mask);
+ if (context->skipValidation() ||
+ ValidateStencilFuncSeparate(context, face, func, ref, mask))
+ {
+ context->stencilFuncSeparate(face, func, ref, mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilMask(GLuint mask)
+{
+ EVENT("(GLuint mask = %u)", mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilMask, context, mask);
+ if (context->skipValidation() || ValidateStencilMask(context, mask))
+ {
+ context->stencilMask(mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilMaskSeparate(GLenum face, GLuint mask)
+{
+ EVENT("(GLenum face = 0x%X, GLuint mask = %u)", face, mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilMaskSeparate, context, face, mask);
+ if (context->skipValidation() || ValidateStencilMaskSeparate(context, face, mask))
+ {
+ context->stencilMaskSeparate(face, mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ EVENT("(GLenum fail = 0x%X, GLenum zfail = 0x%X, GLenum zpass = 0x%X)", fail, zfail, zpass);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilOp, context, fail, zfail, zpass);
+ if (context->skipValidation() || ValidateStencilOp(context, fail, zfail, zpass))
+ {
+ context->stencilOp(fail, zfail, zpass);
+ }
+ }
+}
+
+void GL_APIENTRY StencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ EVENT("(GLenum face = 0x%X, GLenum sfail = 0x%X, GLenum dpfail = 0x%X, GLenum dppass = 0x%X)",
+ face, sfail, dpfail, dppass);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilOpSeparate, context, face, sfail, dpfail, dppass);
+ if (context->skipValidation() ||
+ ValidateStencilOpSeparate(context, face, sfail, dpfail, dppass))
+ {
+ context->stencilOpSeparate(face, sfail, dpfail, dppass);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage2D(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLint border = %d, GLenum format = 0x%X, GLenum type = 0x%X, const "
+ "void *pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, border, format, type, (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage2D, context, targetPacked, level, internalformat, width, height,
+ border, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage2D(context, targetPacked, level, internalformat, width, height, border,
+ format, type, pixels))
+ {
+ context->texImage2D(targetPacked, level, internalformat, width, height, border, format,
+ type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", target, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterf, context, targetPacked, pname, param);
+ if (context->skipValidation() || ValidateTexParameterf(context, targetPacked, pname, param))
+ {
+ context->texParameterf(targetPacked, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterfv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterfv(context, targetPacked, pname, params))
+ {
+ context->texParameterfv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint param = %d)", target, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameteri, context, targetPacked, pname, param);
+ if (context->skipValidation() || ValidateTexParameteri(context, targetPacked, pname, param))
+ {
+ context->texParameteri(targetPacked, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameteriv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameteriv(context, targetPacked, pname, params))
+ {
+ context->texParameteriv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage2D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLsizei "
+ "width = %d, GLsizei height = %d, GLenum format = 0x%X, GLenum type = 0x%X, const void "
+ "*pixels = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, width, height, format, type, (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage2D, context, targetPacked, level, xoffset, yoffset, width, height,
+ format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage2D(context, targetPacked, level, xoffset, yoffset, width, height,
+ format, type, pixels))
+ {
+ context->texSubImage2D(targetPacked, level, xoffset, yoffset, width, height, format,
+ type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1f(GLint location, GLfloat v0)
+{
+ EVENT("(GLint location = %d, GLfloat v0 = %f)", location, v0);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform1f, context, location, v0);
+ if (context->skipValidation() || ValidateUniform1f(context, location, v0))
+ {
+ context->uniform1f(location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform1fv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform1fv(context, location, count, value))
+ {
+ context->uniform1fv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1i(GLint location, GLint v0)
+{
+ EVENT("(GLint location = %d, GLint v0 = %d)", location, v0);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform1i, context, location, v0);
+ if (context->skipValidation() || ValidateUniform1i(context, location, v0))
+ {
+ context->uniform1i(location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform1iv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform1iv(context, location, count, value))
+ {
+ context->uniform1iv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ EVENT("(GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f)", location, v0, v1);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform2f, context, location, v0, v1);
+ if (context->skipValidation() || ValidateUniform2f(context, location, v0, v1))
+ {
+ context->uniform2f(location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform2fv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform2fv(context, location, count, value))
+ {
+ context->uniform2fv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2i(GLint location, GLint v0, GLint v1)
+{
+ EVENT("(GLint location = %d, GLint v0 = %d, GLint v1 = %d)", location, v0, v1);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform2i, context, location, v0, v1);
+ if (context->skipValidation() || ValidateUniform2i(context, location, v0, v1))
+ {
+ context->uniform2i(location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform2iv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform2iv(context, location, count, value))
+ {
+ context->uniform2iv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ EVENT("(GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f, GLfloat v2 = %f)", location, v0,
+ v1, v2);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform3f, context, location, v0, v1, v2);
+ if (context->skipValidation() || ValidateUniform3f(context, location, v0, v1, v2))
+ {
+ context->uniform3f(location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform3fv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform3fv(context, location, count, value))
+ {
+ context->uniform3fv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ EVENT("(GLint location = %d, GLint v0 = %d, GLint v1 = %d, GLint v2 = %d)", location, v0, v1,
+ v2);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform3i, context, location, v0, v1, v2);
+ if (context->skipValidation() || ValidateUniform3i(context, location, v0, v1, v2))
+ {
+ context->uniform3i(location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform3iv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform3iv(context, location, count, value))
+ {
+ context->uniform3iv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ EVENT(
+ "(GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f, GLfloat v2 = %f, GLfloat v3 = %f)",
+ location, v0, v1, v2, v3);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform4f, context, location, v0, v1, v2, v3);
+ if (context->skipValidation() || ValidateUniform4f(context, location, v0, v1, v2, v3))
+ {
+ context->uniform4f(location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform4fv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform4fv(context, location, count, value))
+ {
+ context->uniform4fv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ EVENT("(GLint location = %d, GLint v0 = %d, GLint v1 = %d, GLint v2 = %d, GLint v3 = %d)",
+ location, v0, v1, v2, v3);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform4i, context, location, v0, v1, v2, v3);
+ if (context->skipValidation() || ValidateUniform4i(context, location, v0, v1, v2, v3))
+ {
+ context->uniform4i(location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform4iv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform4iv(context, location, count, value))
+ {
+ context->uniform4iv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix2fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformMatrix2fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix2fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix2fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix3fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformMatrix3fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix3fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix3fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix4fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformMatrix4fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix4fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix4fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UseProgram(GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UseProgram, context, program);
+ if (context->skipValidation() || ValidateUseProgram(context, program))
+ {
+ context->useProgram(program);
+ }
+ }
+}
+
+void GL_APIENTRY ValidateProgram(GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ValidateProgram, context, program);
+ if (context->skipValidation() || ValidateValidateProgram(context, program))
+ {
+ context->validateProgram(program);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib1f(GLuint index, GLfloat x)
+{
+ EVENT("(GLuint index = %u, GLfloat x = %f)", index, x);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttrib1f, context, index, x);
+ if (context->skipValidation() || ValidateVertexAttrib1f(context, index, x))
+ {
+ context->vertexAttrib1f(index, x);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ EVENT("(GLuint index = %u, const GLfloat *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttrib1fv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttrib1fv(context, index, v))
+ {
+ context->vertexAttrib1fv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ EVENT("(GLuint index = %u, GLfloat x = %f, GLfloat y = %f)", index, x, y);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttrib2f, context, index, x, y);
+ if (context->skipValidation() || ValidateVertexAttrib2f(context, index, x, y))
+ {
+ context->vertexAttrib2f(index, x, y);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ EVENT("(GLuint index = %u, const GLfloat *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttrib2fv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttrib2fv(context, index, v))
+ {
+ context->vertexAttrib2fv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ EVENT("(GLuint index = %u, GLfloat x = %f, GLfloat y = %f, GLfloat z = %f)", index, x, y, z);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttrib3f, context, index, x, y, z);
+ if (context->skipValidation() || ValidateVertexAttrib3f(context, index, x, y, z))
+ {
+ context->vertexAttrib3f(index, x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ EVENT("(GLuint index = %u, const GLfloat *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttrib3fv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttrib3fv(context, index, v))
+ {
+ context->vertexAttrib3fv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ EVENT("(GLuint index = %u, GLfloat x = %f, GLfloat y = %f, GLfloat z = %f, GLfloat w = %f)",
+ index, x, y, z, w);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttrib4f, context, index, x, y, z, w);
+ if (context->skipValidation() || ValidateVertexAttrib4f(context, index, x, y, z, w))
+ {
+ context->vertexAttrib4f(index, x, y, z, w);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ EVENT("(GLuint index = %u, const GLfloat *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttrib4fv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttrib4fv(context, index, v))
+ {
+ context->vertexAttrib4fv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribPointer(GLuint index,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT(
+ "(GLuint index = %u, GLint size = %d, GLenum type = 0x%X, GLboolean normalized = %u, "
+ "GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
+ index, size, type, normalized, stride, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexAttribPointer, context, index, size, typePacked, normalized, stride,
+ pointer);
+ if (context->skipValidation() ||
+ ValidateVertexAttribPointer(context, index, size, typePacked, normalized, stride,
+ pointer))
+ {
+ context->vertexAttribPointer(index, size, typePacked, normalized, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY Viewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ EVENT("(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)", x, y, width,
+ height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Viewport, context, x, y, width, height);
+ if (context->skipValidation() || ValidateViewport(context, x, y, width, height))
+ {
+ context->viewport(x, y, width, height);
+ }
+ }
+}
+} // namespace gl
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_2_0_autogen.h b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_2_0_autogen.h
new file mode 100644
index 0000000000..4b2a0f53cb
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_2_0_autogen.h
@@ -0,0 +1,297 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml.
+//
+// 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.
+//
+// entry_points_gles_2_0_autogen.h:
+// Defines the GLES 2.0 entry points.
+
+#ifndef LIBGLESV2_ENTRY_POINTS_GLES_2_0_AUTOGEN_H_
+#define LIBGLESV2_ENTRY_POINTS_GLES_2_0_AUTOGEN_H_
+
+#include <GLES2/gl2.h>
+#include <export.h>
+
+namespace gl
+{
+ANGLE_EXPORT void GL_APIENTRY ActiveTexture(GLenum texture);
+ANGLE_EXPORT void GL_APIENTRY AttachShader(GLuint program, GLuint shader);
+ANGLE_EXPORT void GL_APIENTRY BindAttribLocation(GLuint program, GLuint index, const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY BindBuffer(GLenum target, GLuint buffer);
+ANGLE_EXPORT void GL_APIENTRY BindFramebuffer(GLenum target, GLuint framebuffer);
+ANGLE_EXPORT void GL_APIENTRY BindRenderbuffer(GLenum target, GLuint renderbuffer);
+ANGLE_EXPORT void GL_APIENTRY BindTexture(GLenum target, GLuint texture);
+ANGLE_EXPORT void GL_APIENTRY BlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ANGLE_EXPORT void GL_APIENTRY BlendEquation(GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY BlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
+ANGLE_EXPORT void GL_APIENTRY BlendFunc(GLenum sfactor, GLenum dfactor);
+ANGLE_EXPORT void GL_APIENTRY BlendFuncSeparate(GLenum sfactorRGB,
+ GLenum dfactorRGB,
+ GLenum sfactorAlpha,
+ GLenum dfactorAlpha);
+ANGLE_EXPORT void GL_APIENTRY BufferData(GLenum target,
+ GLsizeiptr size,
+ const void *data,
+ GLenum usage);
+ANGLE_EXPORT void GL_APIENTRY BufferSubData(GLenum target,
+ GLintptr offset,
+ GLsizeiptr size,
+ const void *data);
+ANGLE_EXPORT GLenum GL_APIENTRY CheckFramebufferStatus(GLenum target);
+ANGLE_EXPORT void GL_APIENTRY Clear(GLbitfield mask);
+ANGLE_EXPORT void GL_APIENTRY ClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ANGLE_EXPORT void GL_APIENTRY ClearDepthf(GLfloat d);
+ANGLE_EXPORT void GL_APIENTRY ClearStencil(GLint s);
+ANGLE_EXPORT void GL_APIENTRY ColorMask(GLboolean red,
+ GLboolean green,
+ GLboolean blue,
+ GLboolean alpha);
+ANGLE_EXPORT void GL_APIENTRY CompileShader(GLuint shader);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage2D(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage2D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CopyTexImage2D(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLint border);
+ANGLE_EXPORT void GL_APIENTRY CopyTexSubImage2D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT GLuint GL_APIENTRY CreateProgram();
+ANGLE_EXPORT GLuint GL_APIENTRY CreateShader(GLenum type);
+ANGLE_EXPORT void GL_APIENTRY CullFace(GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY DeleteBuffers(GLsizei n, const GLuint *buffers);
+ANGLE_EXPORT void GL_APIENTRY DeleteFramebuffers(GLsizei n, const GLuint *framebuffers);
+ANGLE_EXPORT void GL_APIENTRY DeleteProgram(GLuint program);
+ANGLE_EXPORT void GL_APIENTRY DeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers);
+ANGLE_EXPORT void GL_APIENTRY DeleteShader(GLuint shader);
+ANGLE_EXPORT void GL_APIENTRY DeleteTextures(GLsizei n, const GLuint *textures);
+ANGLE_EXPORT void GL_APIENTRY DepthFunc(GLenum func);
+ANGLE_EXPORT void GL_APIENTRY DepthMask(GLboolean flag);
+ANGLE_EXPORT void GL_APIENTRY DepthRangef(GLfloat n, GLfloat f);
+ANGLE_EXPORT void GL_APIENTRY DetachShader(GLuint program, GLuint shader);
+ANGLE_EXPORT void GL_APIENTRY Disable(GLenum cap);
+ANGLE_EXPORT void GL_APIENTRY DisableVertexAttribArray(GLuint index);
+ANGLE_EXPORT void GL_APIENTRY DrawArrays(GLenum mode, GLint first, GLsizei count);
+ANGLE_EXPORT void GL_APIENTRY DrawElements(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices);
+ANGLE_EXPORT void GL_APIENTRY Enable(GLenum cap);
+ANGLE_EXPORT void GL_APIENTRY EnableVertexAttribArray(GLuint index);
+ANGLE_EXPORT void GL_APIENTRY Finish();
+ANGLE_EXPORT void GL_APIENTRY Flush();
+ANGLE_EXPORT void GL_APIENTRY FramebufferRenderbuffer(GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer);
+ANGLE_EXPORT void GL_APIENTRY FramebufferTexture2D(GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level);
+ANGLE_EXPORT void GL_APIENTRY FrontFace(GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY GenBuffers(GLsizei n, GLuint *buffers);
+ANGLE_EXPORT void GL_APIENTRY GenFramebuffers(GLsizei n, GLuint *framebuffers);
+ANGLE_EXPORT void GL_APIENTRY GenRenderbuffers(GLsizei n, GLuint *renderbuffers);
+ANGLE_EXPORT void GL_APIENTRY GenTextures(GLsizei n, GLuint *textures);
+ANGLE_EXPORT void GL_APIENTRY GenerateMipmap(GLenum target);
+ANGLE_EXPORT void GL_APIENTRY GetActiveAttrib(GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetActiveUniform(GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetAttachedShaders(GLuint program,
+ GLsizei maxCount,
+ GLsizei *count,
+ GLuint *shaders);
+ANGLE_EXPORT GLint GL_APIENTRY GetAttribLocation(GLuint program, const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetBooleanv(GLenum pname, GLboolean *data);
+ANGLE_EXPORT void GL_APIENTRY GetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ANGLE_EXPORT GLenum GL_APIENTRY GetError();
+ANGLE_EXPORT void GL_APIENTRY GetFloatv(GLenum pname, GLfloat *data);
+ANGLE_EXPORT void GL_APIENTRY GetFramebufferAttachmentParameteriv(GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetIntegerv(GLenum pname, GLint *data);
+ANGLE_EXPORT void GL_APIENTRY GetProgramInfoLog(GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog);
+ANGLE_EXPORT void GL_APIENTRY GetProgramiv(GLuint program, GLenum pname, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetRenderbufferParameteriv(GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetShaderInfoLog(GLuint shader,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog);
+ANGLE_EXPORT void GL_APIENTRY GetShaderPrecisionFormat(GLenum shadertype,
+ GLenum precisiontype,
+ GLint *range,
+ GLint *precision);
+ANGLE_EXPORT void GL_APIENTRY GetShaderSource(GLuint shader,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *source);
+ANGLE_EXPORT void GL_APIENTRY GetShaderiv(GLuint shader, GLenum pname, GLint *params);
+ANGLE_EXPORT const GLubyte *GL_APIENTRY GetString(GLenum name);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterfv(GLenum target, GLenum pname, GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameteriv(GLenum target, GLenum pname, GLint *params);
+ANGLE_EXPORT GLint GL_APIENTRY GetUniformLocation(GLuint program, const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetUniformfv(GLuint program, GLint location, GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetUniformiv(GLuint program, GLint location, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribPointerv(GLuint index, GLenum pname, void **pointer);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribiv(GLuint index, GLenum pname, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY Hint(GLenum target, GLenum mode);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsBuffer(GLuint buffer);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsEnabled(GLenum cap);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsFramebuffer(GLuint framebuffer);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsProgram(GLuint program);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsRenderbuffer(GLuint renderbuffer);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsShader(GLuint shader);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsTexture(GLuint texture);
+ANGLE_EXPORT void GL_APIENTRY LineWidth(GLfloat width);
+ANGLE_EXPORT void GL_APIENTRY LinkProgram(GLuint program);
+ANGLE_EXPORT void GL_APIENTRY PixelStorei(GLenum pname, GLint param);
+ANGLE_EXPORT void GL_APIENTRY PolygonOffset(GLfloat factor, GLfloat units);
+ANGLE_EXPORT void GL_APIENTRY ReadPixels(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ void *pixels);
+ANGLE_EXPORT void GL_APIENTRY ReleaseShaderCompiler();
+ANGLE_EXPORT void GL_APIENTRY RenderbufferStorage(GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY SampleCoverage(GLfloat value, GLboolean invert);
+ANGLE_EXPORT void GL_APIENTRY Scissor(GLint x, GLint y, GLsizei width, GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY ShaderBinary(GLsizei count,
+ const GLuint *shaders,
+ GLenum binaryformat,
+ const void *binary,
+ GLsizei length);
+ANGLE_EXPORT void GL_APIENTRY ShaderSource(GLuint shader,
+ GLsizei count,
+ const GLchar *const *string,
+ const GLint *length);
+ANGLE_EXPORT void GL_APIENTRY StencilFunc(GLenum func, GLint ref, GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilMask(GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilMaskSeparate(GLenum face, GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilOp(GLenum fail, GLenum zfail, GLenum zpass);
+ANGLE_EXPORT void GL_APIENTRY StencilOpSeparate(GLenum face,
+ GLenum sfail,
+ GLenum dpfail,
+ GLenum dppass);
+ANGLE_EXPORT void GL_APIENTRY TexImage2D(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexParameterf(GLenum target, GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY TexParameterfv(GLenum target, GLenum pname, const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameteri(GLenum target, GLenum pname, GLint param);
+ANGLE_EXPORT void GL_APIENTRY TexParameteriv(GLenum target, GLenum pname, const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage2D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY Uniform1f(GLint location, GLfloat v0);
+ANGLE_EXPORT void GL_APIENTRY Uniform1fv(GLint location, GLsizei count, const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform1i(GLint location, GLint v0);
+ANGLE_EXPORT void GL_APIENTRY Uniform1iv(GLint location, GLsizei count, const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform2f(GLint location, GLfloat v0, GLfloat v1);
+ANGLE_EXPORT void GL_APIENTRY Uniform2fv(GLint location, GLsizei count, const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform2i(GLint location, GLint v0, GLint v1);
+ANGLE_EXPORT void GL_APIENTRY Uniform2iv(GLint location, GLsizei count, const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ANGLE_EXPORT void GL_APIENTRY Uniform3fv(GLint location, GLsizei count, const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform3i(GLint location, GLint v0, GLint v1, GLint v2);
+ANGLE_EXPORT void GL_APIENTRY Uniform3iv(GLint location, GLsizei count, const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY
+Uniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ANGLE_EXPORT void GL_APIENTRY Uniform4fv(GLint location, GLsizei count, const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ANGLE_EXPORT void GL_APIENTRY Uniform4iv(GLint location, GLsizei count, const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix2fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix3fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix4fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UseProgram(GLuint program);
+ANGLE_EXPORT void GL_APIENTRY ValidateProgram(GLuint program);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib1f(GLuint index, GLfloat x);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib1fv(GLuint index, const GLfloat *v);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib2fv(GLuint index, const GLfloat *v);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib3fv(GLuint index, const GLfloat *v);
+ANGLE_EXPORT void GL_APIENTRY
+VertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib4fv(GLuint index, const GLfloat *v);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribPointer(GLuint index,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY Viewport(GLint x, GLint y, GLsizei width, GLsizei height);
+} // namespace gl
+
+#endif // LIBGLESV2_ENTRY_POINTS_GLES_2_0_AUTOGEN_H_
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_0_autogen.cpp b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_0_autogen.cpp
new file mode 100644
index 0000000000..b57a8ddd19
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_0_autogen.cpp
@@ -0,0 +1,2005 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml.
+//
+// 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.
+//
+// entry_points_gles_3_0_autogen.cpp:
+// Defines the GLES 3.0 entry points.
+
+#include "libGLESv2/entry_points_gles_3_0_autogen.h"
+
+#include "libANGLE/Context.h"
+#include "libANGLE/Context.inl.h"
+#include "libANGLE/capture_gles_3_0_autogen.h"
+#include "libANGLE/entry_points_utils.h"
+#include "libANGLE/validationES3.h"
+#include "libGLESv2/global_state.h"
+
+namespace gl
+{
+void GL_APIENTRY BeginQuery(GLenum target, GLuint id)
+{
+ EVENT("(GLenum target = 0x%X, GLuint id = %u)", target, id);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(BeginQuery, context, targetPacked, id);
+ if (context->skipValidation() || ValidateBeginQuery(context, targetPacked, id))
+ {
+ context->beginQuery(targetPacked, id);
+ }
+ }
+}
+
+void GL_APIENTRY BeginTransformFeedback(GLenum primitiveMode)
+{
+ EVENT("(GLenum primitiveMode = 0x%X)", primitiveMode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode primitiveModePacked = FromGLenum<PrimitiveMode>(primitiveMode);
+ ANGLE_CAPTURE(BeginTransformFeedback, context, primitiveModePacked);
+ if (context->skipValidation() ||
+ ValidateBeginTransformFeedback(context, primitiveModePacked))
+ {
+ context->beginTransformFeedback(primitiveModePacked);
+ }
+ }
+}
+
+void GL_APIENTRY BindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLuint buffer = %u)", target, index, buffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(BindBufferBase, context, targetPacked, index, buffer);
+ if (context->skipValidation() ||
+ ValidateBindBufferBase(context, targetPacked, index, buffer))
+ {
+ context->bindBufferBase(targetPacked, index, buffer);
+ }
+ }
+}
+
+void GL_APIENTRY
+BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLuint index = %u, GLuint buffer = %u, GLintptr offset = %llu, "
+ "GLsizeiptr size = %llu)",
+ target, index, buffer, static_cast<unsigned long long>(offset),
+ static_cast<unsigned long long>(size));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(BindBufferRange, context, targetPacked, index, buffer, offset, size);
+ if (context->skipValidation() ||
+ ValidateBindBufferRange(context, targetPacked, index, buffer, offset, size))
+ {
+ context->bindBufferRange(targetPacked, index, buffer, offset, size);
+ }
+ }
+}
+
+void GL_APIENTRY BindSampler(GLuint unit, GLuint sampler)
+{
+ EVENT("(GLuint unit = %u, GLuint sampler = %u)", unit, sampler);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindSampler, context, unit, sampler);
+ if (context->skipValidation() || ValidateBindSampler(context, unit, sampler))
+ {
+ context->bindSampler(unit, sampler);
+ }
+ }
+}
+
+void GL_APIENTRY BindTransformFeedback(GLenum target, GLuint id)
+{
+ EVENT("(GLenum target = 0x%X, GLuint id = %u)", target, id);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindTransformFeedback, context, target, id);
+ if (context->skipValidation() || ValidateBindTransformFeedback(context, target, id))
+ {
+ context->bindTransformFeedback(target, id);
+ }
+ }
+}
+
+void GL_APIENTRY BindVertexArray(GLuint array)
+{
+ EVENT("(GLuint array = %u)", array);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindVertexArray, context, array);
+ if (context->skipValidation() || ValidateBindVertexArray(context, array))
+ {
+ context->bindVertexArray(array);
+ }
+ }
+}
+
+void GL_APIENTRY BlitFramebuffer(GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter)
+{
+ EVENT(
+ "(GLint srcX0 = %d, GLint srcY0 = %d, GLint srcX1 = %d, GLint srcY1 = %d, GLint dstX0 = "
+ "%d, GLint dstY0 = %d, GLint dstX1 = %d, GLint dstY1 = %d, GLbitfield mask = 0x%X, GLenum "
+ "filter = 0x%X)",
+ srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BlitFramebuffer, context, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1,
+ dstY1, mask, filter);
+ if (context->skipValidation() ||
+ ValidateBlitFramebuffer(context, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1,
+ mask, filter))
+ {
+ context->blitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask,
+ filter);
+ }
+ }
+}
+
+void GL_APIENTRY ClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ EVENT("(GLenum buffer = 0x%X, GLint drawbuffer = %d, GLfloat depth = %f, GLint stencil = %d)",
+ buffer, drawbuffer, depth, stencil);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClearBufferfi, context, buffer, drawbuffer, depth, stencil);
+ if (context->skipValidation() ||
+ ValidateClearBufferfi(context, buffer, drawbuffer, depth, stencil))
+ {
+ context->clearBufferfi(buffer, drawbuffer, depth, stencil);
+ }
+ }
+}
+
+void GL_APIENTRY ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ EVENT("(GLenum buffer = 0x%X, GLint drawbuffer = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ buffer, drawbuffer, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClearBufferfv, context, buffer, drawbuffer, value);
+ if (context->skipValidation() || ValidateClearBufferfv(context, buffer, drawbuffer, value))
+ {
+ context->clearBufferfv(buffer, drawbuffer, value);
+ }
+ }
+}
+
+void GL_APIENTRY ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ EVENT("(GLenum buffer = 0x%X, GLint drawbuffer = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ buffer, drawbuffer, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClearBufferiv, context, buffer, drawbuffer, value);
+ if (context->skipValidation() || ValidateClearBufferiv(context, buffer, drawbuffer, value))
+ {
+ context->clearBufferiv(buffer, drawbuffer, value);
+ }
+ }
+}
+
+void GL_APIENTRY ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ EVENT("(GLenum buffer = 0x%X, GLint drawbuffer = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ buffer, drawbuffer, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClearBufferuiv, context, buffer, drawbuffer, value);
+ if (context->skipValidation() || ValidateClearBufferuiv(context, buffer, drawbuffer, value))
+ {
+ context->clearBufferuiv(buffer, drawbuffer, value);
+ }
+ }
+}
+
+GLenum GL_APIENTRY ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR ", GLbitfield flags = 0x%X, GLuint64 timeout = %llu)",
+ (uintptr_t)sync, flags, static_cast<unsigned long long>(timeout));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ClientWaitSync, context, sync, flags, timeout);
+ if (context->skipValidation() || ValidateClientWaitSync(context, sync, flags, timeout))
+ {
+ return context->clientWaitSync(sync, flags, timeout);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::ClientWaitSync, GLenum>();
+}
+
+void GL_APIENTRY CompressedTexImage3D(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLsizei imageSize = %d, "
+ "const void *data = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, imageSize, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage3D, context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexImage3D(context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, data))
+ {
+ context->compressedTexImage3D(targetPacked, level, internalformat, width, height, depth,
+ border, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage3D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLsizei imageSize = %d, const void *data = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize,
+ (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage3D, context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexSubImage3D(context, targetPacked, level, xoffset, yoffset, zoffset,
+ width, height, depth, format, imageSize, data))
+ {
+ context->compressedTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CopyBufferSubData(GLenum readTarget,
+ GLenum writeTarget,
+ GLintptr readOffset,
+ GLintptr writeOffset,
+ GLsizeiptr size)
+{
+ EVENT(
+ "(GLenum readTarget = 0x%X, GLenum writeTarget = 0x%X, GLintptr readOffset = %llu, "
+ "GLintptr writeOffset = %llu, GLsizeiptr size = %llu)",
+ readTarget, writeTarget, static_cast<unsigned long long>(readOffset),
+ static_cast<unsigned long long>(writeOffset), static_cast<unsigned long long>(size));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding readTargetPacked = FromGLenum<BufferBinding>(readTarget);
+ BufferBinding writeTargetPacked = FromGLenum<BufferBinding>(writeTarget);
+ ANGLE_CAPTURE(CopyBufferSubData, context, readTargetPacked, writeTargetPacked, readOffset,
+ writeOffset, size);
+ if (context->skipValidation() ||
+ ValidateCopyBufferSubData(context, readTargetPacked, writeTargetPacked, readOffset,
+ writeOffset, size))
+ {
+ context->copyBufferSubData(readTargetPacked, writeTargetPacked, readOffset, writeOffset,
+ size);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTexSubImage3D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
+ target, level, xoffset, yoffset, zoffset, x, y, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CopyTexSubImage3D, context, targetPacked, level, xoffset, yoffset, zoffset, x,
+ y, width, height);
+ if (context->skipValidation() ||
+ ValidateCopyTexSubImage3D(context, targetPacked, level, xoffset, yoffset, zoffset, x, y,
+ width, height))
+ {
+ context->copyTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, x, y, width,
+ height);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteQueries(GLsizei n, const GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, const GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteQueries, context, n, ids);
+ if (context->skipValidation() || ValidateDeleteQueries(context, n, ids))
+ {
+ context->deleteQueries(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ EVENT("(GLsizei count = %d, const GLuint *samplers = 0x%016" PRIxPTR ")", count,
+ (uintptr_t)samplers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteSamplers, context, count, samplers);
+ if (context->skipValidation() || ValidateDeleteSamplers(context, count, samplers))
+ {
+ context->deleteSamplers(count, samplers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteSync(GLsync sync)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR ")", (uintptr_t)sync);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteSync, context, sync);
+ if (context->skipValidation() || ValidateDeleteSync(context, sync))
+ {
+ context->deleteSync(sync);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, const GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteTransformFeedbacks, context, n, ids);
+ if (context->skipValidation() || ValidateDeleteTransformFeedbacks(context, n, ids))
+ {
+ context->deleteTransformFeedbacks(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ EVENT("(GLsizei n = %d, const GLuint *arrays = 0x%016" PRIxPTR ")", n, (uintptr_t)arrays);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteVertexArrays, context, n, arrays);
+ if (context->skipValidation() || ValidateDeleteVertexArrays(context, n, arrays))
+ {
+ context->deleteVertexArrays(n, arrays);
+ }
+ }
+}
+
+void GL_APIENTRY DrawArraysInstanced(GLenum mode, GLint first, GLsizei count, GLsizei instancecount)
+{
+ EVENT("(GLenum mode = 0x%X, GLint first = %d, GLsizei count = %d, GLsizei instancecount = %d)",
+ mode, first, count, instancecount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArraysInstanced, context, modePacked, first, count, instancecount);
+ if (context->skipValidation() ||
+ ValidateDrawArraysInstanced(context, modePacked, first, count, instancecount))
+ {
+ context->drawArraysInstanced(modePacked, first, count, instancecount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ EVENT("(GLsizei n = %d, const GLenum *bufs = 0x%016" PRIxPTR ")", n, (uintptr_t)bufs);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawBuffers, context, n, bufs);
+ if (context->skipValidation() || ValidateDrawBuffers(context, n, bufs))
+ {
+ context->drawBuffers(n, bufs);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElementsInstanced(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei instancecount)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
+ "0x%016" PRIxPTR ", GLsizei instancecount = %d)",
+ mode, count, type, (uintptr_t)indices, instancecount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElementsInstanced, context, modePacked, count, typePacked, indices,
+ instancecount);
+ if (context->skipValidation() ||
+ ValidateDrawElementsInstanced(context, modePacked, count, typePacked, indices,
+ instancecount))
+ {
+ context->drawElementsInstanced(modePacked, count, typePacked, indices, instancecount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawRangeElements(GLenum mode,
+ GLuint start,
+ GLuint end,
+ GLsizei count,
+ GLenum type,
+ const void *indices)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLuint start = %u, GLuint end = %u, GLsizei count = %d, GLenum type "
+ "= 0x%X, const void *indices = 0x%016" PRIxPTR ")",
+ mode, start, end, count, type, (uintptr_t)indices);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawRangeElements, context, modePacked, start, end, count, typePacked,
+ indices);
+ if (context->skipValidation() ||
+ ValidateDrawRangeElements(context, modePacked, start, end, count, typePacked, indices))
+ {
+ context->drawRangeElements(modePacked, start, end, count, typePacked, indices);
+ }
+ }
+}
+
+void GL_APIENTRY EndQuery(GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(EndQuery, context, targetPacked);
+ if (context->skipValidation() || ValidateEndQuery(context, targetPacked))
+ {
+ context->endQuery(targetPacked);
+ }
+ }
+}
+
+void GL_APIENTRY EndTransformFeedback()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(EndTransformFeedback, context);
+ if (context->skipValidation() || ValidateEndTransformFeedback(context))
+ {
+ context->endTransformFeedback();
+ }
+ }
+}
+
+GLsync GL_APIENTRY FenceSync(GLenum condition, GLbitfield flags)
+{
+ EVENT("(GLenum condition = 0x%X, GLbitfield flags = 0x%X)", condition, flags);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(FenceSync, context, condition, flags);
+ if (context->skipValidation() || ValidateFenceSync(context, condition, flags))
+ {
+ return context->fenceSync(condition, flags);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::FenceSync, GLsync>();
+}
+
+void GL_APIENTRY FlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ EVENT("(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr length = %llu)", target,
+ static_cast<unsigned long long>(offset), static_cast<unsigned long long>(length));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(FlushMappedBufferRange, context, targetPacked, offset, length);
+ if (context->skipValidation() ||
+ ValidateFlushMappedBufferRange(context, targetPacked, offset, length))
+ {
+ context->flushMappedBufferRange(targetPacked, offset, length);
+ }
+ }
+}
+
+void GL_APIENTRY
+FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLuint texture = %u, GLint level = %d, "
+ "GLint layer = %d)",
+ target, attachment, texture, level, layer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(FramebufferTextureLayer, context, target, attachment, texture, level, layer);
+ if (context->skipValidation() ||
+ ValidateFramebufferTextureLayer(context, target, attachment, texture, level, layer))
+ {
+ context->framebufferTextureLayer(target, attachment, texture, level, layer);
+ }
+ }
+}
+
+void GL_APIENTRY GenQueries(GLsizei n, GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenQueries, context, n, ids);
+ if (context->skipValidation() || ValidateGenQueries(context, n, ids))
+ {
+ context->genQueries(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY GenSamplers(GLsizei count, GLuint *samplers)
+{
+ EVENT("(GLsizei count = %d, GLuint *samplers = 0x%016" PRIxPTR ")", count, (uintptr_t)samplers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenSamplers, context, count, samplers);
+ if (context->skipValidation() || ValidateGenSamplers(context, count, samplers))
+ {
+ context->genSamplers(count, samplers);
+ }
+ }
+}
+
+void GL_APIENTRY GenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenTransformFeedbacks, context, n, ids);
+ if (context->skipValidation() || ValidateGenTransformFeedbacks(context, n, ids))
+ {
+ context->genTransformFeedbacks(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY GenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ EVENT("(GLsizei n = %d, GLuint *arrays = 0x%016" PRIxPTR ")", n, (uintptr_t)arrays);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenVertexArrays, context, n, arrays);
+ if (context->skipValidation() || ValidateGenVertexArrays(context, n, arrays))
+ {
+ context->genVertexArrays(n, arrays);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniformBlockName(GLuint program,
+ GLuint uniformBlockIndex,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *uniformBlockName)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint uniformBlockIndex = %u, GLsizei bufSize = %d, GLsizei "
+ "*length = 0x%016" PRIxPTR ", GLchar *uniformBlockName = 0x%016" PRIxPTR ")",
+ program, uniformBlockIndex, bufSize, (uintptr_t)length, (uintptr_t)uniformBlockName);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetActiveUniformBlockName, context, program, uniformBlockIndex, bufSize,
+ length, uniformBlockName);
+ if (context->skipValidation() ||
+ ValidateGetActiveUniformBlockName(context, program, uniformBlockIndex, bufSize, length,
+ uniformBlockName))
+ {
+ context->getActiveUniformBlockName(program, uniformBlockIndex, bufSize, length,
+ uniformBlockName);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniformBlockiv(GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint uniformBlockIndex = %u, GLenum pname = 0x%X, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ program, uniformBlockIndex, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetActiveUniformBlockiv, context, program, uniformBlockIndex, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetActiveUniformBlockiv(context, program, uniformBlockIndex, pname, params))
+ {
+ context->getActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniformsiv(GLuint program,
+ GLsizei uniformCount,
+ const GLuint *uniformIndices,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLsizei uniformCount = %d, const GLuint *uniformIndices = "
+ "0x%016" PRIxPTR ", GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")",
+ program, uniformCount, (uintptr_t)uniformIndices, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetActiveUniformsiv, context, program, uniformCount, uniformIndices, pname,
+ params);
+ if (context->skipValidation() || ValidateGetActiveUniformsiv(context, program, uniformCount,
+ uniformIndices, pname, params))
+ {
+ context->getActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint64 *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferParameteri64v, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetBufferParameteri64v(context, targetPacked, pname, params))
+ {
+ context->getBufferParameteri64v(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferPointerv(GLenum target, GLenum pname, void **params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferPointerv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetBufferPointerv(context, targetPacked, pname, params))
+ {
+ context->getBufferPointerv(targetPacked, pname, params);
+ }
+ }
+}
+
+GLint GL_APIENTRY GetFragDataLocation(GLuint program, const GLchar *name)
+{
+ EVENT("(GLuint program = %u, const GLchar *name = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFragDataLocation, context, program, name);
+ if (context->skipValidation() || ValidateGetFragDataLocation(context, program, name))
+ {
+ return context->getFragDataLocation(program, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetFragDataLocation, GLint>();
+}
+
+void GL_APIENTRY GetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLint64 *data = 0x%016" PRIxPTR ")", target,
+ index, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetInteger64i_v, context, target, index, data);
+ if (context->skipValidation() || ValidateGetInteger64i_v(context, target, index, data))
+ {
+ context->getInteger64i_v(target, index, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetInteger64v(GLenum pname, GLint64 *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLint64 *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetInteger64v, context, pname, data);
+ if (context->skipValidation() || ValidateGetInteger64v(context, pname, data))
+ {
+ context->getInteger64v(pname, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLint *data = 0x%016" PRIxPTR ")", target,
+ index, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetIntegeri_v, context, target, index, data);
+ if (context->skipValidation() || ValidateGetIntegeri_v(context, target, index, data))
+ {
+ context->getIntegeri_v(target, index, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetInternalformativ(GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum internalformat = 0x%X, GLenum pname = 0x%X, GLsizei bufSize "
+ "= %d, GLint *params = 0x%016" PRIxPTR ")",
+ target, internalformat, pname, bufSize, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetInternalformativ, context, target, internalformat, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateGetInternalformativ(context, target, internalformat, pname, bufSize, params))
+ {
+ context->getInternalformativ(target, internalformat, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramBinary(GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary)
+{
+ EVENT("(GLuint program = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLenum *binaryFormat = 0x%016" PRIxPTR ", void *binary = 0x%016" PRIxPTR ")",
+ program, bufSize, (uintptr_t)length, (uintptr_t)binaryFormat, (uintptr_t)binary);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramBinary, context, program, bufSize, length, binaryFormat, binary);
+ if (context->skipValidation() ||
+ ValidateGetProgramBinary(context, program, bufSize, length, binaryFormat, binary))
+ {
+ context->getProgramBinary(program, bufSize, length, binaryFormat, binary);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetQueryObjectuiv, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjectuiv(context, id, pname, params))
+ {
+ context->getQueryObjectuiv(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(GetQueryiv, context, targetPacked, pname, params);
+ if (context->skipValidation() || ValidateGetQueryiv(context, targetPacked, pname, params))
+ {
+ context->getQueryiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSamplerParameterfv, context, sampler, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSamplerParameterfv(context, sampler, pname, params))
+ {
+ context->getSamplerParameterfv(sampler, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", sampler,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSamplerParameteriv, context, sampler, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSamplerParameteriv(context, sampler, pname, params))
+ {
+ context->getSamplerParameteriv(sampler, pname, params);
+ }
+ }
+}
+
+const GLubyte *GL_APIENTRY GetStringi(GLenum name, GLuint index)
+{
+ EVENT("(GLenum name = 0x%X, GLuint index = %u)", name, index);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetStringi, context, name, index);
+ if (context->skipValidation() || ValidateGetStringi(context, name, index))
+ {
+ return context->getStringi(name, index);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetStringi, const GLubyte *>();
+}
+
+void GL_APIENTRY
+GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR
+ ", GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLint *values = 0x%016" PRIxPTR ")",
+ (uintptr_t)sync, pname, bufSize, (uintptr_t)length, (uintptr_t)values);
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSynciv, context, sync, pname, bufSize, length, values);
+ if (context->skipValidation() ||
+ ValidateGetSynciv(context, sync, pname, bufSize, length, values))
+ {
+ context->getSynciv(sync, pname, bufSize, length, values);
+ }
+ }
+}
+
+void GL_APIENTRY GetTransformFeedbackVarying(GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *size,
+ GLenum *type,
+ GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint index = %u, GLsizei bufSize = %d, GLsizei *length = "
+ "0x%016" PRIxPTR ", GLsizei *size = 0x%016" PRIxPTR ", GLenum *type = 0x%016" PRIxPTR
+ ", GLchar *name = 0x%016" PRIxPTR ")",
+ program, index, bufSize, (uintptr_t)length, (uintptr_t)size, (uintptr_t)type,
+ (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetTransformFeedbackVarying, context, program, index, bufSize, length, size,
+ type, name);
+ if (context->skipValidation() ||
+ ValidateGetTransformFeedbackVarying(context, program, index, bufSize, length, size,
+ type, name))
+ {
+ context->getTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+ }
+ }
+}
+
+GLuint GL_APIENTRY GetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ EVENT("(GLuint program = %u, const GLchar *uniformBlockName = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)uniformBlockName);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUniformBlockIndex, context, program, uniformBlockName);
+ if (context->skipValidation() ||
+ ValidateGetUniformBlockIndex(context, program, uniformBlockName))
+ {
+ return context->getUniformBlockIndex(program, uniformBlockName);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetUniformBlockIndex, GLuint>();
+}
+
+void GL_APIENTRY GetUniformIndices(GLuint program,
+ GLsizei uniformCount,
+ const GLchar *const *uniformNames,
+ GLuint *uniformIndices)
+{
+ EVENT(
+ "(GLuint program = %u, GLsizei uniformCount = %d, const GLchar *const*uniformNames = "
+ "0x%016" PRIxPTR ", GLuint *uniformIndices = 0x%016" PRIxPTR ")",
+ program, uniformCount, (uintptr_t)uniformNames, (uintptr_t)uniformIndices);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUniformIndices, context, program, uniformCount, uniformNames,
+ uniformIndices);
+ if (context->skipValidation() ||
+ ValidateGetUniformIndices(context, program, uniformCount, uniformNames, uniformIndices))
+ {
+ context->getUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLuint *params = 0x%016" PRIxPTR ")", program,
+ location, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUniformuiv, context, program, location, params);
+ if (context->skipValidation() || ValidateGetUniformuiv(context, program, location, params))
+ {
+ context->getUniformuiv(program, location, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribIiv, context, index, pname, params);
+ if (context->skipValidation() || ValidateGetVertexAttribIiv(context, index, pname, params))
+ {
+ context->getVertexAttribIiv(index, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribIuiv, context, index, pname, params);
+ if (context->skipValidation() || ValidateGetVertexAttribIuiv(context, index, pname, params))
+ {
+ context->getVertexAttribIuiv(index, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY InvalidateFramebuffer(GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei numAttachments = %d, const GLenum *attachments = "
+ "0x%016" PRIxPTR ")",
+ target, numAttachments, (uintptr_t)attachments);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(InvalidateFramebuffer, context, target, numAttachments, attachments);
+ if (context->skipValidation() ||
+ ValidateInvalidateFramebuffer(context, target, numAttachments, attachments))
+ {
+ context->invalidateFramebuffer(target, numAttachments, attachments);
+ }
+ }
+}
+
+void GL_APIENTRY InvalidateSubFramebuffer(GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei numAttachments = %d, const GLenum *attachments = "
+ "0x%016" PRIxPTR ", GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
+ target, numAttachments, (uintptr_t)attachments, x, y, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(InvalidateSubFramebuffer, context, target, numAttachments, attachments, x, y,
+ width, height);
+ if (context->skipValidation() ||
+ ValidateInvalidateSubFramebuffer(context, target, numAttachments, attachments, x, y,
+ width, height))
+ {
+ context->invalidateSubFramebuffer(target, numAttachments, attachments, x, y, width,
+ height);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsQuery(GLuint id)
+{
+ EVENT("(GLuint id = %u)", id);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsQuery, context, id);
+ if (context->skipValidation() || ValidateIsQuery(context, id))
+ {
+ return context->isQuery(id);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsQuery, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsSampler(GLuint sampler)
+{
+ EVENT("(GLuint sampler = %u)", sampler);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsSampler, context, sampler);
+ if (context->skipValidation() || ValidateIsSampler(context, sampler))
+ {
+ return context->isSampler(sampler);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsSampler, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsSync(GLsync sync)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR ")", (uintptr_t)sync);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsSync, context, sync);
+ if (context->skipValidation() || ValidateIsSync(context, sync))
+ {
+ return context->isSync(sync);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsSync, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsTransformFeedback(GLuint id)
+{
+ EVENT("(GLuint id = %u)", id);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsTransformFeedback, context, id);
+ if (context->skipValidation() || ValidateIsTransformFeedback(context, id))
+ {
+ return context->isTransformFeedback(id);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsTransformFeedback, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsVertexArray(GLuint array)
+{
+ EVENT("(GLuint array = %u)", array);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsVertexArray, context, array);
+ if (context->skipValidation() || ValidateIsVertexArray(context, array))
+ {
+ return context->isVertexArray(array);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsVertexArray, GLboolean>();
+}
+
+void *GL_APIENTRY MapBufferRange(GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr length = %llu, GLbitfield "
+ "access = 0x%X)",
+ target, static_cast<unsigned long long>(offset), static_cast<unsigned long long>(length),
+ access);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(MapBufferRange, context, targetPacked, offset, length, access);
+ if (context->skipValidation() ||
+ ValidateMapBufferRange(context, targetPacked, offset, length, access))
+ {
+ return context->mapBufferRange(targetPacked, offset, length, access);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::MapBufferRange, void *>();
+}
+
+void GL_APIENTRY PauseTransformFeedback()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PauseTransformFeedback, context);
+ if (context->skipValidation() || ValidatePauseTransformFeedback(context))
+ {
+ context->pauseTransformFeedback();
+ }
+ }
+}
+
+void GL_APIENTRY ProgramBinary(GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLsizei length)
+{
+ EVENT("(GLuint program = %u, GLenum binaryFormat = 0x%X, const void *binary = 0x%016" PRIxPTR
+ ", GLsizei length = %d)",
+ program, binaryFormat, (uintptr_t)binary, length);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramBinary, context, program, binaryFormat, binary, length);
+ if (context->skipValidation() ||
+ ValidateProgramBinary(context, program, binaryFormat, binary, length))
+ {
+ context->programBinary(program, binaryFormat, binary, length);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramParameteri(GLuint program, GLenum pname, GLint value)
+{
+ EVENT("(GLuint program = %u, GLenum pname = 0x%X, GLint value = %d)", program, pname, value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramParameteri, context, program, pname, value);
+ if (context->skipValidation() || ValidateProgramParameteri(context, program, pname, value))
+ {
+ context->programParameteri(program, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY ReadBuffer(GLenum src)
+{
+ EVENT("(GLenum src = 0x%X)", src);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ReadBuffer, context, src);
+ if (context->skipValidation() || ValidateReadBuffer(context, src))
+ {
+ context->readBuffer(src);
+ }
+ }
+}
+
+void GL_APIENTRY RenderbufferStorageMultisample(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d)",
+ target, samples, internalformat, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(RenderbufferStorageMultisample, context, target, samples, internalformat,
+ width, height);
+ if (context->skipValidation() ||
+ ValidateRenderbufferStorageMultisample(context, target, samples, internalformat, width,
+ height))
+ {
+ context->renderbufferStorageMultisample(target, samples, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY ResumeTransformFeedback()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ResumeTransformFeedback, context);
+ if (context->skipValidation() || ValidateResumeTransformFeedback(context))
+ {
+ context->resumeTransformFeedback();
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLfloat param = %f)", sampler, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameterf, context, sampler, pname, param);
+ if (context->skipValidation() || ValidateSamplerParameterf(context, sampler, pname, param))
+ {
+ context->samplerParameterf(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, const GLfloat *param = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameterfv, context, sampler, pname, param);
+ if (context->skipValidation() || ValidateSamplerParameterfv(context, sampler, pname, param))
+ {
+ context->samplerParameterfv(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLint param = %d)", sampler, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameteri, context, sampler, pname, param);
+ if (context->skipValidation() || ValidateSamplerParameteri(context, sampler, pname, param))
+ {
+ context->samplerParameteri(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, const GLint *param = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameteriv, context, sampler, pname, param);
+ if (context->skipValidation() || ValidateSamplerParameteriv(context, sampler, pname, param))
+ {
+ context->samplerParameteriv(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage3D(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLenum format = 0x%X, GLenum "
+ "type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, format, type,
+ (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage3D, context, targetPacked, level, internalformat, width, height,
+ depth, border, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage3D(context, targetPacked, level, internalformat, width, height, depth,
+ border, format, type, pixels))
+ {
+ context->texImage3D(targetPacked, level, internalformat, width, height, depth, border,
+ format, type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY
+TexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d)",
+ target, levels, internalformat, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage2D, context, targetPacked, levels, internalformat, width, height);
+ if (context->skipValidation() ||
+ ValidateTexStorage2D(context, targetPacked, levels, internalformat, width, height))
+ {
+ context->texStorage2D(targetPacked, levels, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage3D(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d)",
+ target, levels, internalformat, width, height, depth);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage3D, context, targetPacked, levels, internalformat, width, height,
+ depth);
+ if (context->skipValidation() || ValidateTexStorage3D(context, targetPacked, levels,
+ internalformat, width, height, depth))
+ {
+ context->texStorage3D(targetPacked, levels, internalformat, width, height, depth);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage3D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLenum type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, type,
+ (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage3D, context, targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage3D(context, targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, pixels))
+ {
+ context->texSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width, height,
+ depth, format, type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TransformFeedbackVaryings(GLuint program,
+ GLsizei count,
+ const GLchar *const *varyings,
+ GLenum bufferMode)
+{
+ EVENT("(GLuint program = %u, GLsizei count = %d, const GLchar *const*varyings = 0x%016" PRIxPTR
+ ", GLenum bufferMode = 0x%X)",
+ program, count, (uintptr_t)varyings, bufferMode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(TransformFeedbackVaryings, context, program, count, varyings, bufferMode);
+ if (context->skipValidation() ||
+ ValidateTransformFeedbackVaryings(context, program, count, varyings, bufferMode))
+ {
+ context->transformFeedbackVaryings(program, count, varyings, bufferMode);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1ui(GLint location, GLuint v0)
+{
+ EVENT("(GLint location = %d, GLuint v0 = %u)", location, v0);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform1ui, context, location, v0);
+ if (context->skipValidation() || ValidateUniform1ui(context, location, v0))
+ {
+ context->uniform1ui(location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform1uiv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform1uiv(context, location, count, value))
+ {
+ context->uniform1uiv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ EVENT("(GLint location = %d, GLuint v0 = %u, GLuint v1 = %u)", location, v0, v1);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform2ui, context, location, v0, v1);
+ if (context->skipValidation() || ValidateUniform2ui(context, location, v0, v1))
+ {
+ context->uniform2ui(location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform2uiv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform2uiv(context, location, count, value))
+ {
+ context->uniform2uiv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ EVENT("(GLint location = %d, GLuint v0 = %u, GLuint v1 = %u, GLuint v2 = %u)", location, v0, v1,
+ v2);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform3ui, context, location, v0, v1, v2);
+ if (context->skipValidation() || ValidateUniform3ui(context, location, v0, v1, v2))
+ {
+ context->uniform3ui(location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform3uiv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform3uiv(context, location, count, value))
+ {
+ context->uniform3uiv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ EVENT("(GLint location = %d, GLuint v0 = %u, GLuint v1 = %u, GLuint v2 = %u, GLuint v3 = %u)",
+ location, v0, v1, v2, v3);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform4ui, context, location, v0, v1, v2, v3);
+ if (context->skipValidation() || ValidateUniform4ui(context, location, v0, v1, v2, v3))
+ {
+ context->uniform4ui(location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(Uniform4uiv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform4uiv(context, location, count, value))
+ {
+ context->uniform4uiv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformBlockBinding(GLuint program,
+ GLuint uniformBlockIndex,
+ GLuint uniformBlockBinding)
+{
+ EVENT("(GLuint program = %u, GLuint uniformBlockIndex = %u, GLuint uniformBlockBinding = %u)",
+ program, uniformBlockIndex, uniformBlockBinding);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformBlockBinding, context, program, uniformBlockIndex,
+ uniformBlockBinding);
+ if (context->skipValidation() ||
+ ValidateUniformBlockBinding(context, program, uniformBlockIndex, uniformBlockBinding))
+ {
+ context->uniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix2x3fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformMatrix2x3fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix2x3fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix2x3fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix2x4fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformMatrix2x4fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix2x4fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix2x4fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix3x2fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformMatrix3x2fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix3x2fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix3x2fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix3x4fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformMatrix3x4fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix3x4fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix3x4fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix4x2fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformMatrix4x2fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix4x2fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix4x2fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix4x3fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UniformMatrix4x3fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix4x3fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix4x3fv(location, count, transpose, value);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY UnmapBuffer(GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(UnmapBuffer, context, targetPacked);
+ if (context->skipValidation() || ValidateUnmapBuffer(context, targetPacked))
+ {
+ return context->unmapBuffer(targetPacked);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::UnmapBuffer, GLboolean>();
+}
+
+void GL_APIENTRY VertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ EVENT("(GLuint index = %u, GLuint divisor = %u)", index, divisor);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttribDivisor, context, index, divisor);
+ if (context->skipValidation() || ValidateVertexAttribDivisor(context, index, divisor))
+ {
+ context->vertexAttribDivisor(index, divisor);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ EVENT("(GLuint index = %u, GLint x = %d, GLint y = %d, GLint z = %d, GLint w = %d)", index, x,
+ y, z, w);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttribI4i, context, index, x, y, z, w);
+ if (context->skipValidation() || ValidateVertexAttribI4i(context, index, x, y, z, w))
+ {
+ context->vertexAttribI4i(index, x, y, z, w);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribI4iv(GLuint index, const GLint *v)
+{
+ EVENT("(GLuint index = %u, const GLint *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttribI4iv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttribI4iv(context, index, v))
+ {
+ context->vertexAttribI4iv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ EVENT("(GLuint index = %u, GLuint x = %u, GLuint y = %u, GLuint z = %u, GLuint w = %u)", index,
+ x, y, z, w);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttribI4ui, context, index, x, y, z, w);
+ if (context->skipValidation() || ValidateVertexAttribI4ui(context, index, x, y, z, w))
+ {
+ context->vertexAttribI4ui(index, x, y, z, w);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribI4uiv(GLuint index, const GLuint *v)
+{
+ EVENT("(GLuint index = %u, const GLuint *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttribI4uiv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttribI4uiv(context, index, v))
+ {
+ context->vertexAttribI4uiv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY
+VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ EVENT(
+ "(GLuint index = %u, GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void "
+ "*pointer = 0x%016" PRIxPTR ")",
+ index, size, type, stride, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexAttribIPointer, context, index, size, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateVertexAttribIPointer(context, index, size, typePacked, stride, pointer))
+ {
+ context->vertexAttribIPointer(index, size, typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR ", GLbitfield flags = 0x%X, GLuint64 timeout = %llu)",
+ (uintptr_t)sync, flags, static_cast<unsigned long long>(timeout));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(WaitSync, context, sync, flags, timeout);
+ if (context->skipValidation() || ValidateWaitSync(context, sync, flags, timeout))
+ {
+ context->waitSync(sync, flags, timeout);
+ }
+ }
+}
+} // namespace gl
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_0_autogen.h b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_0_autogen.h
new file mode 100644
index 0000000000..6c12fa80ba
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_0_autogen.h
@@ -0,0 +1,284 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml.
+//
+// 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.
+//
+// entry_points_gles_3_0_autogen.h:
+// Defines the GLES 3.0 entry points.
+
+#ifndef LIBGLESV2_ENTRY_POINTS_GLES_3_0_AUTOGEN_H_
+#define LIBGLESV2_ENTRY_POINTS_GLES_3_0_AUTOGEN_H_
+
+#include <GLES3/gl3.h>
+#include <export.h>
+
+namespace gl
+{
+ANGLE_EXPORT void GL_APIENTRY BeginQuery(GLenum target, GLuint id);
+ANGLE_EXPORT void GL_APIENTRY BeginTransformFeedback(GLenum primitiveMode);
+ANGLE_EXPORT void GL_APIENTRY BindBufferBase(GLenum target, GLuint index, GLuint buffer);
+ANGLE_EXPORT void GL_APIENTRY
+BindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
+ANGLE_EXPORT void GL_APIENTRY BindSampler(GLuint unit, GLuint sampler);
+ANGLE_EXPORT void GL_APIENTRY BindTransformFeedback(GLenum target, GLuint id);
+ANGLE_EXPORT void GL_APIENTRY BindVertexArray(GLuint array);
+ANGLE_EXPORT void GL_APIENTRY BlitFramebuffer(GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter);
+ANGLE_EXPORT void GL_APIENTRY ClearBufferfi(GLenum buffer,
+ GLint drawbuffer,
+ GLfloat depth,
+ GLint stencil);
+ANGLE_EXPORT void GL_APIENTRY ClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY ClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value);
+ANGLE_EXPORT GLenum GL_APIENTRY ClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage3D(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage3D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CopyBufferSubData(GLenum readTarget,
+ GLenum writeTarget,
+ GLintptr readOffset,
+ GLintptr writeOffset,
+ GLsizeiptr size);
+ANGLE_EXPORT void GL_APIENTRY CopyTexSubImage3D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY DeleteQueries(GLsizei n, const GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY DeleteSamplers(GLsizei count, const GLuint *samplers);
+ANGLE_EXPORT void GL_APIENTRY DeleteSync(GLsync sync);
+ANGLE_EXPORT void GL_APIENTRY DeleteTransformFeedbacks(GLsizei n, const GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY DeleteVertexArrays(GLsizei n, const GLuint *arrays);
+ANGLE_EXPORT void GL_APIENTRY DrawArraysInstanced(GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei instancecount);
+ANGLE_EXPORT void GL_APIENTRY DrawBuffers(GLsizei n, const GLenum *bufs);
+ANGLE_EXPORT void GL_APIENTRY DrawElementsInstanced(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei instancecount);
+ANGLE_EXPORT void GL_APIENTRY DrawRangeElements(GLenum mode,
+ GLuint start,
+ GLuint end,
+ GLsizei count,
+ GLenum type,
+ const void *indices);
+ANGLE_EXPORT void GL_APIENTRY EndQuery(GLenum target);
+ANGLE_EXPORT void GL_APIENTRY EndTransformFeedback();
+ANGLE_EXPORT GLsync GL_APIENTRY FenceSync(GLenum condition, GLbitfield flags);
+ANGLE_EXPORT void GL_APIENTRY FlushMappedBufferRange(GLenum target,
+ GLintptr offset,
+ GLsizeiptr length);
+ANGLE_EXPORT void GL_APIENTRY
+FramebufferTextureLayer(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
+ANGLE_EXPORT void GL_APIENTRY GenQueries(GLsizei n, GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY GenSamplers(GLsizei count, GLuint *samplers);
+ANGLE_EXPORT void GL_APIENTRY GenTransformFeedbacks(GLsizei n, GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY GenVertexArrays(GLsizei n, GLuint *arrays);
+ANGLE_EXPORT void GL_APIENTRY GetActiveUniformBlockName(GLuint program,
+ GLuint uniformBlockIndex,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *uniformBlockName);
+ANGLE_EXPORT void GL_APIENTRY GetActiveUniformBlockiv(GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetActiveUniformsiv(GLuint program,
+ GLsizei uniformCount,
+ const GLuint *uniformIndices,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params);
+ANGLE_EXPORT void GL_APIENTRY GetBufferPointerv(GLenum target, GLenum pname, void **params);
+ANGLE_EXPORT GLint GL_APIENTRY GetFragDataLocation(GLuint program, const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetInteger64i_v(GLenum target, GLuint index, GLint64 *data);
+ANGLE_EXPORT void GL_APIENTRY GetInteger64v(GLenum pname, GLint64 *data);
+ANGLE_EXPORT void GL_APIENTRY GetIntegeri_v(GLenum target, GLuint index, GLint *data);
+ANGLE_EXPORT void GL_APIENTRY GetInternalformativ(GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetProgramBinary(GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryiv(GLenum target, GLenum pname, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params);
+ANGLE_EXPORT const GLubyte *GL_APIENTRY GetStringi(GLenum name, GLuint index);
+ANGLE_EXPORT void GL_APIENTRY
+GetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
+ANGLE_EXPORT void GL_APIENTRY GetTransformFeedbackVarying(GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *size,
+ GLenum *type,
+ GLchar *name);
+ANGLE_EXPORT GLuint GL_APIENTRY GetUniformBlockIndex(GLuint program,
+ const GLchar *uniformBlockName);
+ANGLE_EXPORT void GL_APIENTRY GetUniformIndices(GLuint program,
+ GLsizei uniformCount,
+ const GLchar *const *uniformNames,
+ GLuint *uniformIndices);
+ANGLE_EXPORT void GL_APIENTRY GetUniformuiv(GLuint program, GLint location, GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIiv(GLuint index, GLenum pname, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY InvalidateFramebuffer(GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments);
+ANGLE_EXPORT void GL_APIENTRY InvalidateSubFramebuffer(GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsQuery(GLuint id);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsSampler(GLuint sampler);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsSync(GLsync sync);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsTransformFeedback(GLuint id);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsVertexArray(GLuint array);
+ANGLE_EXPORT void *GL_APIENTRY MapBufferRange(GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access);
+ANGLE_EXPORT void GL_APIENTRY PauseTransformFeedback();
+ANGLE_EXPORT void GL_APIENTRY ProgramBinary(GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLsizei length);
+ANGLE_EXPORT void GL_APIENTRY ProgramParameteri(GLuint program, GLenum pname, GLint value);
+ANGLE_EXPORT void GL_APIENTRY ReadBuffer(GLenum src);
+ANGLE_EXPORT void GL_APIENTRY RenderbufferStorageMultisample(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY ResumeTransformFeedback();
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterf(GLuint sampler, GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterfv(GLuint sampler,
+ GLenum pname,
+ const GLfloat *param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameteri(GLuint sampler, GLenum pname, GLint param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param);
+ANGLE_EXPORT void GL_APIENTRY TexImage3D(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY
+TexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY TexStorage3D(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage3D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TransformFeedbackVaryings(GLuint program,
+ GLsizei count,
+ const GLchar *const *varyings,
+ GLenum bufferMode);
+ANGLE_EXPORT void GL_APIENTRY Uniform1ui(GLint location, GLuint v0);
+ANGLE_EXPORT void GL_APIENTRY Uniform1uiv(GLint location, GLsizei count, const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform2ui(GLint location, GLuint v0, GLuint v1);
+ANGLE_EXPORT void GL_APIENTRY Uniform2uiv(GLint location, GLsizei count, const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2);
+ANGLE_EXPORT void GL_APIENTRY Uniform3uiv(GLint location, GLsizei count, const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY
+Uniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ANGLE_EXPORT void GL_APIENTRY Uniform4uiv(GLint location, GLsizei count, const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY UniformBlockBinding(GLuint program,
+ GLuint uniformBlockIndex,
+ GLuint uniformBlockBinding);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix2x3fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix2x4fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix3x2fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix3x4fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix4x2fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix4x3fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT GLboolean GL_APIENTRY UnmapBuffer(GLenum target);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribDivisor(GLuint index, GLuint divisor);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribI4iv(GLuint index, const GLint *v);
+ANGLE_EXPORT void GL_APIENTRY
+VertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribI4uiv(GLuint index, const GLuint *v);
+ANGLE_EXPORT void GL_APIENTRY
+VertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY WaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout);
+} // namespace gl
+
+#endif // LIBGLESV2_ENTRY_POINTS_GLES_3_0_AUTOGEN_H_
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_1_autogen.cpp b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_1_autogen.cpp
new file mode 100644
index 0000000000..e1848fdf70
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_1_autogen.cpp
@@ -0,0 +1,1380 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml.
+//
+// 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.
+//
+// entry_points_gles_3_1_autogen.cpp:
+// Defines the GLES 3.1 entry points.
+
+#include "libGLESv2/entry_points_gles_3_1_autogen.h"
+
+#include "libANGLE/Context.h"
+#include "libANGLE/Context.inl.h"
+#include "libANGLE/capture_gles_3_1_autogen.h"
+#include "libANGLE/entry_points_utils.h"
+#include "libANGLE/validationES31.h"
+#include "libGLESv2/global_state.h"
+
+namespace gl
+{
+void GL_APIENTRY ActiveShaderProgram(GLuint pipeline, GLuint program)
+{
+ EVENT("(GLuint pipeline = %u, GLuint program = %u)", pipeline, program);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ActiveShaderProgram, context, pipeline, program);
+ if (context->skipValidation() || ValidateActiveShaderProgram(context, pipeline, program))
+ {
+ context->activeShaderProgram(pipeline, program);
+ }
+ }
+}
+
+void GL_APIENTRY BindImageTexture(GLuint unit,
+ GLuint texture,
+ GLint level,
+ GLboolean layered,
+ GLint layer,
+ GLenum access,
+ GLenum format)
+{
+ EVENT(
+ "(GLuint unit = %u, GLuint texture = %u, GLint level = %d, GLboolean layered = %u, GLint "
+ "layer = %d, GLenum access = 0x%X, GLenum format = 0x%X)",
+ unit, texture, level, layered, layer, access, format);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindImageTexture, context, unit, texture, level, layered, layer, access,
+ format);
+ if (context->skipValidation() ||
+ ValidateBindImageTexture(context, unit, texture, level, layered, layer, access, format))
+ {
+ context->bindImageTexture(unit, texture, level, layered, layer, access, format);
+ }
+ }
+}
+
+void GL_APIENTRY BindProgramPipeline(GLuint pipeline)
+{
+ EVENT("(GLuint pipeline = %u)", pipeline);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindProgramPipeline, context, pipeline);
+ if (context->skipValidation() || ValidateBindProgramPipeline(context, pipeline))
+ {
+ context->bindProgramPipeline(pipeline);
+ }
+ }
+}
+
+void GL_APIENTRY BindVertexBuffer(GLuint bindingindex,
+ GLuint buffer,
+ GLintptr offset,
+ GLsizei stride)
+{
+ EVENT(
+ "(GLuint bindingindex = %u, GLuint buffer = %u, GLintptr offset = %llu, GLsizei stride = "
+ "%d)",
+ bindingindex, buffer, static_cast<unsigned long long>(offset), stride);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindVertexBuffer, context, bindingindex, buffer, offset, stride);
+ if (context->skipValidation() ||
+ ValidateBindVertexBuffer(context, bindingindex, buffer, offset, stride))
+ {
+ context->bindVertexBuffer(bindingindex, buffer, offset, stride);
+ }
+ }
+}
+
+GLuint GL_APIENTRY CreateShaderProgramv(GLenum type, GLsizei count, const GLchar *const *strings)
+{
+ EVENT("(GLenum type = 0x%X, GLsizei count = %d, const GLchar *const*strings = 0x%016" PRIxPTR
+ ")",
+ type, count, (uintptr_t)strings);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ShaderType typePacked = FromGLenum<ShaderType>(type);
+ ANGLE_CAPTURE(CreateShaderProgramv, context, typePacked, count, strings);
+ if (context->skipValidation() ||
+ ValidateCreateShaderProgramv(context, typePacked, count, strings))
+ {
+ return context->createShaderProgramv(typePacked, count, strings);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CreateShaderProgramv, GLuint>();
+}
+
+void GL_APIENTRY DeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
+{
+ EVENT("(GLsizei n = %d, const GLuint *pipelines = 0x%016" PRIxPTR ")", n, (uintptr_t)pipelines);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteProgramPipelines, context, n, pipelines);
+ if (context->skipValidation() || ValidateDeleteProgramPipelines(context, n, pipelines))
+ {
+ context->deleteProgramPipelines(n, pipelines);
+ }
+ }
+}
+
+void GL_APIENTRY DispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)
+{
+ EVENT("(GLuint num_groups_x = %u, GLuint num_groups_y = %u, GLuint num_groups_z = %u)",
+ num_groups_x, num_groups_y, num_groups_z);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DispatchCompute, context, num_groups_x, num_groups_y, num_groups_z);
+ if (context->skipValidation() ||
+ ValidateDispatchCompute(context, num_groups_x, num_groups_y, num_groups_z))
+ {
+ context->dispatchCompute(num_groups_x, num_groups_y, num_groups_z);
+ }
+ }
+}
+
+void GL_APIENTRY DispatchComputeIndirect(GLintptr indirect)
+{
+ EVENT("(GLintptr indirect = %llu)", static_cast<unsigned long long>(indirect));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DispatchComputeIndirect, context, indirect);
+ if (context->skipValidation() || ValidateDispatchComputeIndirect(context, indirect))
+ {
+ context->dispatchComputeIndirect(indirect);
+ }
+ }
+}
+
+void GL_APIENTRY DrawArraysIndirect(GLenum mode, const void *indirect)
+{
+ EVENT("(GLenum mode = 0x%X, const void *indirect = 0x%016" PRIxPTR ")", mode,
+ (uintptr_t)indirect);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArraysIndirect, context, modePacked, indirect);
+ if (context->skipValidation() || ValidateDrawArraysIndirect(context, modePacked, indirect))
+ {
+ context->drawArraysIndirect(modePacked, indirect);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
+{
+ EVENT("(GLenum mode = 0x%X, GLenum type = 0x%X, const void *indirect = 0x%016" PRIxPTR ")",
+ mode, type, (uintptr_t)indirect);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElementsIndirect, context, modePacked, typePacked, indirect);
+ if (context->skipValidation() ||
+ ValidateDrawElementsIndirect(context, modePacked, typePacked, indirect))
+ {
+ context->drawElementsIndirect(modePacked, typePacked, indirect);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferParameteri(GLenum target, GLenum pname, GLint param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint param = %d)", target, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(FramebufferParameteri, context, target, pname, param);
+ if (context->skipValidation() ||
+ ValidateFramebufferParameteri(context, target, pname, param))
+ {
+ context->framebufferParameteri(target, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY GenProgramPipelines(GLsizei n, GLuint *pipelines)
+{
+ EVENT("(GLsizei n = %d, GLuint *pipelines = 0x%016" PRIxPTR ")", n, (uintptr_t)pipelines);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenProgramPipelines, context, n, pipelines);
+ if (context->skipValidation() || ValidateGenProgramPipelines(context, n, pipelines))
+ {
+ context->genProgramPipelines(n, pipelines);
+ }
+ }
+}
+
+void GL_APIENTRY GetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLboolean *data = 0x%016" PRIxPTR ")", target,
+ index, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetBooleani_v, context, target, index, data);
+ if (context->skipValidation() || ValidateGetBooleani_v(context, target, index, data))
+ {
+ context->getBooleani_v(target, index, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFramebufferParameteriv, context, target, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetFramebufferParameteriv(context, target, pname, params))
+ {
+ context->getFramebufferParameteriv(target, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ EVENT("(GLenum pname = 0x%X, GLuint index = %u, GLfloat *val = 0x%016" PRIxPTR ")", pname,
+ index, (uintptr_t)val);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetMultisamplefv, context, pname, index, val);
+ if (context->skipValidation() || ValidateGetMultisamplefv(context, pname, index, val))
+ {
+ context->getMultisamplefv(pname, index, val);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramInterfaceiv(GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, GLenum pname = 0x%X, GLint *params "
+ "= 0x%016" PRIxPTR ")",
+ program, programInterface, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramInterfaceiv, context, program, programInterface, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramInterfaceiv(context, program, programInterface, pname, params))
+ {
+ context->getProgramInterfaceiv(program, programInterface, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramPipelineInfoLog(GLuint pipeline,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ EVENT("(GLuint pipeline = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *infoLog = 0x%016" PRIxPTR ")",
+ pipeline, bufSize, (uintptr_t)length, (uintptr_t)infoLog);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramPipelineInfoLog, context, pipeline, bufSize, length, infoLog);
+ if (context->skipValidation() ||
+ ValidateGetProgramPipelineInfoLog(context, pipeline, bufSize, length, infoLog))
+ {
+ context->getProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint pipeline = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")",
+ pipeline, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramPipelineiv, context, pipeline, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramPipelineiv(context, pipeline, pname, params))
+ {
+ context->getProgramPipelineiv(pipeline, pname, params);
+ }
+ }
+}
+
+GLuint GL_APIENTRY GetProgramResourceIndex(GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, const GLchar *name = 0x%016" PRIxPTR
+ ")",
+ program, programInterface, (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramResourceIndex, context, program, programInterface, name);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceIndex(context, program, programInterface, name))
+ {
+ return context->getProgramResourceIndex(program, programInterface, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetProgramResourceIndex, GLuint>();
+}
+
+GLint GL_APIENTRY GetProgramResourceLocation(GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, const GLchar *name = 0x%016" PRIxPTR
+ ")",
+ program, programInterface, (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramResourceLocation, context, program, programInterface, name);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceLocation(context, program, programInterface, name))
+ {
+ return context->getProgramResourceLocation(program, programInterface, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetProgramResourceLocation, GLint>();
+}
+
+void GL_APIENTRY GetProgramResourceName(GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, GLuint index = %u, GLsizei bufSize "
+ "= %d, GLsizei *length = 0x%016" PRIxPTR ", GLchar *name = 0x%016" PRIxPTR ")",
+ program, programInterface, index, bufSize, (uintptr_t)length, (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramResourceName, context, program, programInterface, index, bufSize,
+ length, name);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceName(context, program, programInterface, index, bufSize,
+ length, name))
+ {
+ context->getProgramResourceName(program, programInterface, index, bufSize, length,
+ name);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramResourceiv(GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei propCount,
+ const GLenum *props,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, GLuint index = %u, GLsizei "
+ "propCount = %d, const GLenum *props = 0x%016" PRIxPTR
+ ", GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLint *params = 0x%016" PRIxPTR ")",
+ program, programInterface, index, propCount, (uintptr_t)props, bufSize, (uintptr_t)length,
+ (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramResourceiv, context, program, programInterface, index, propCount,
+ props, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceiv(context, program, programInterface, index, propCount,
+ props, bufSize, length, params))
+ {
+ context->getProgramResourceiv(program, programInterface, index, propCount, props,
+ bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLfloat *params = "
+ "0x%016" PRIxPTR ")",
+ target, level, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterfv, context, targetPacked, level, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterfv(context, targetPacked, level, pname, params))
+ {
+ context->getTexLevelParameterfv(targetPacked, level, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ target, level, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameteriv, context, targetPacked, level, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameteriv(context, targetPacked, level, pname, params))
+ {
+ context->getTexLevelParameteriv(targetPacked, level, pname, params);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsProgramPipeline(GLuint pipeline)
+{
+ EVENT("(GLuint pipeline = %u)", pipeline);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsProgramPipeline, context, pipeline);
+ if (context->skipValidation() || ValidateIsProgramPipeline(context, pipeline))
+ {
+ return context->isProgramPipeline(pipeline);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsProgramPipeline, GLboolean>();
+}
+
+void GL_APIENTRY MemoryBarrier(GLbitfield barriers)
+{
+ EVENT("(GLbitfield barriers = 0x%X)", barriers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MemoryBarrier, context, barriers);
+ if (context->skipValidation() || ValidateMemoryBarrier(context, barriers))
+ {
+ context->memoryBarrier(barriers);
+ }
+ }
+}
+
+void GL_APIENTRY MemoryBarrierByRegion(GLbitfield barriers)
+{
+ EVENT("(GLbitfield barriers = 0x%X)", barriers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MemoryBarrierByRegion, context, barriers);
+ if (context->skipValidation() || ValidateMemoryBarrierByRegion(context, barriers))
+ {
+ context->memoryBarrierByRegion(barriers);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1f(GLuint program, GLint location, GLfloat v0)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLfloat v0 = %f)", program, location, v0);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform1f, context, program, location, v0);
+ if (context->skipValidation() || ValidateProgramUniform1f(context, program, location, v0))
+ {
+ context->programUniform1f(program, location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLfloat *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform1fv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform1fv(context, program, location, count, value))
+ {
+ context->programUniform1fv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1i(GLuint program, GLint location, GLint v0)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLint v0 = %d)", program, location, v0);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform1i, context, program, location, v0);
+ if (context->skipValidation() || ValidateProgramUniform1i(context, program, location, v0))
+ {
+ context->programUniform1i(program, location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform1iv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform1iv(context, program, location, count, value))
+ {
+ context->programUniform1iv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1ui(GLuint program, GLint location, GLuint v0)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLuint v0 = %u)", program, location, v0);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform1ui, context, program, location, v0);
+ if (context->skipValidation() || ValidateProgramUniform1ui(context, program, location, v0))
+ {
+ context->programUniform1ui(program, location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLuint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform1uiv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform1uiv(context, program, location, count, value))
+ {
+ context->programUniform1uiv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f)", program,
+ location, v0, v1);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform2f, context, program, location, v0, v1);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2f(context, program, location, v0, v1))
+ {
+ context->programUniform2f(program, location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLfloat *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform2fv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2fv(context, program, location, count, value))
+ {
+ context->programUniform2fv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLint v0 = %d, GLint v1 = %d)", program,
+ location, v0, v1);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform2i, context, program, location, v0, v1);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2i(context, program, location, v0, v1))
+ {
+ context->programUniform2i(program, location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform2iv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2iv(context, program, location, count, value))
+ {
+ context->programUniform2iv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLuint v0 = %u, GLuint v1 = %u)", program,
+ location, v0, v1);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform2ui, context, program, location, v0, v1);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2ui(context, program, location, v0, v1))
+ {
+ context->programUniform2ui(program, location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLuint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform2uiv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2uiv(context, program, location, count, value))
+ {
+ context->programUniform2uiv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+ProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f, GLfloat v2 = "
+ "%f)",
+ program, location, v0, v1, v2);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform3f, context, program, location, v0, v1, v2);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3f(context, program, location, v0, v1, v2))
+ {
+ context->programUniform3f(program, location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLfloat *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform3fv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3fv(context, program, location, count, value))
+ {
+ context->programUniform3fv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLint v0 = %d, GLint v1 = %d, GLint v2 = %d)",
+ program, location, v0, v1, v2);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform3i, context, program, location, v0, v1, v2);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3i(context, program, location, v0, v1, v2))
+ {
+ context->programUniform3i(program, location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform3iv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3iv(context, program, location, count, value))
+ {
+ context->programUniform3iv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLuint v0 = %u, GLuint v1 = %u, GLuint v2 = "
+ "%u)",
+ program, location, v0, v1, v2);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform3ui, context, program, location, v0, v1, v2);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3ui(context, program, location, v0, v1, v2))
+ {
+ context->programUniform3ui(program, location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLuint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform3uiv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3uiv(context, program, location, count, value))
+ {
+ context->programUniform3uiv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+ProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f, GLfloat v2 = "
+ "%f, GLfloat v3 = %f)",
+ program, location, v0, v1, v2, v3);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform4f, context, program, location, v0, v1, v2, v3);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4f(context, program, location, v0, v1, v2, v3))
+ {
+ context->programUniform4f(program, location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLfloat *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform4fv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4fv(context, program, location, count, value))
+ {
+ context->programUniform4fv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+ProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLint v0 = %d, GLint v1 = %d, GLint v2 = %d, "
+ "GLint v3 = %d)",
+ program, location, v0, v1, v2, v3);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform4i, context, program, location, v0, v1, v2, v3);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4i(context, program, location, v0, v1, v2, v3))
+ {
+ context->programUniform4i(program, location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform4iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform4iv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4iv(context, program, location, count, value))
+ {
+ context->programUniform4iv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+ProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLuint v0 = %u, GLuint v1 = %u, GLuint v2 = "
+ "%u, GLuint v3 = %u)",
+ program, location, v0, v1, v2, v3);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform4ui, context, program, location, v0, v1, v2, v3);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4ui(context, program, location, v0, v1, v2, v3))
+ {
+ context->programUniform4ui(program, location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform4uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLuint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniform4uiv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4uiv(context, program, location, count, value))
+ {
+ context->programUniform4uiv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniformMatrix2fv, context, program, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix2fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix2fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix2x3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniformMatrix2x3fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix2x3fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix2x3fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix2x4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniformMatrix2x4fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix2x4fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix2x4fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniformMatrix3fv, context, program, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix3fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix3fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix3x2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniformMatrix3x2fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix3x2fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix3x2fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix3x4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniformMatrix3x4fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix3x4fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix3x4fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniformMatrix4fv, context, program, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix4fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix4fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix4x2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniformMatrix4x2fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix4x2fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix4x2fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix4x3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramUniformMatrix4x3fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix4x3fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix4x3fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY SampleMaski(GLuint maskNumber, GLbitfield mask)
+{
+ EVENT("(GLuint maskNumber = %u, GLbitfield mask = 0x%X)", maskNumber, mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SampleMaski, context, maskNumber, mask);
+ if (context->skipValidation() || ValidateSampleMaski(context, maskNumber, mask))
+ {
+ context->sampleMaski(maskNumber, mask);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage2DMultisample(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLboolean fixedsamplelocations = %u)",
+ target, samples, internalformat, width, height, fixedsamplelocations);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage2DMultisample, context, targetPacked, samples, internalformat,
+ width, height, fixedsamplelocations);
+ if (context->skipValidation() ||
+ ValidateTexStorage2DMultisample(context, targetPacked, samples, internalformat, width,
+ height, fixedsamplelocations))
+ {
+ context->texStorage2DMultisample(targetPacked, samples, internalformat, width, height,
+ fixedsamplelocations);
+ }
+ }
+}
+
+void GL_APIENTRY UseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
+{
+ EVENT("(GLuint pipeline = %u, GLbitfield stages = 0x%X, GLuint program = %u)", pipeline, stages,
+ program);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(UseProgramStages, context, pipeline, stages, program);
+ if (context->skipValidation() ||
+ ValidateUseProgramStages(context, pipeline, stages, program))
+ {
+ context->useProgramStages(pipeline, stages, program);
+ }
+ }
+}
+
+void GL_APIENTRY ValidateProgramPipeline(GLuint pipeline)
+{
+ EVENT("(GLuint pipeline = %u)", pipeline);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ValidateProgramPipeline, context, pipeline);
+ if (context->skipValidation() || ValidateValidateProgramPipeline(context, pipeline))
+ {
+ context->validateProgramPipeline(pipeline);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribBinding(GLuint attribindex, GLuint bindingindex)
+{
+ EVENT("(GLuint attribindex = %u, GLuint bindingindex = %u)", attribindex, bindingindex);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttribBinding, context, attribindex, bindingindex);
+ if (context->skipValidation() ||
+ ValidateVertexAttribBinding(context, attribindex, bindingindex))
+ {
+ context->vertexAttribBinding(attribindex, bindingindex);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribFormat(GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLuint relativeoffset)
+{
+ EVENT(
+ "(GLuint attribindex = %u, GLint size = %d, GLenum type = 0x%X, GLboolean normalized = %u, "
+ "GLuint relativeoffset = %u)",
+ attribindex, size, type, normalized, relativeoffset);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexAttribFormat, context, attribindex, size, typePacked, normalized,
+ relativeoffset);
+ if (context->skipValidation() ||
+ ValidateVertexAttribFormat(context, attribindex, size, typePacked, normalized,
+ relativeoffset))
+ {
+ context->vertexAttribFormat(attribindex, size, typePacked, normalized, relativeoffset);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribIFormat(GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLuint relativeoffset)
+{
+ EVENT(
+ "(GLuint attribindex = %u, GLint size = %d, GLenum type = 0x%X, GLuint relativeoffset = "
+ "%u)",
+ attribindex, size, type, relativeoffset);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexAttribIFormat, context, attribindex, size, typePacked, relativeoffset);
+ if (context->skipValidation() ||
+ ValidateVertexAttribIFormat(context, attribindex, size, typePacked, relativeoffset))
+ {
+ context->vertexAttribIFormat(attribindex, size, typePacked, relativeoffset);
+ }
+ }
+}
+
+void GL_APIENTRY VertexBindingDivisor(GLuint bindingindex, GLuint divisor)
+{
+ EVENT("(GLuint bindingindex = %u, GLuint divisor = %u)", bindingindex, divisor);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexBindingDivisor, context, bindingindex, divisor);
+ if (context->skipValidation() ||
+ ValidateVertexBindingDivisor(context, bindingindex, divisor))
+ {
+ context->vertexBindingDivisor(bindingindex, divisor);
+ }
+ }
+}
+} // namespace gl
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_1_autogen.h b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_1_autogen.h
new file mode 100644
index 0000000000..bdb4905133
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_3_1_autogen.h
@@ -0,0 +1,227 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml.
+//
+// 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.
+//
+// entry_points_gles_3_1_autogen.h:
+// Defines the GLES 3.1 entry points.
+
+#ifndef LIBGLESV2_ENTRY_POINTS_GLES_3_1_AUTOGEN_H_
+#define LIBGLESV2_ENTRY_POINTS_GLES_3_1_AUTOGEN_H_
+
+#include <GLES3/gl31.h>
+#include <export.h>
+#include "common/platform.h"
+
+namespace gl
+{
+ANGLE_EXPORT void GL_APIENTRY ActiveShaderProgram(GLuint pipeline, GLuint program);
+ANGLE_EXPORT void GL_APIENTRY BindImageTexture(GLuint unit,
+ GLuint texture,
+ GLint level,
+ GLboolean layered,
+ GLint layer,
+ GLenum access,
+ GLenum format);
+ANGLE_EXPORT void GL_APIENTRY BindProgramPipeline(GLuint pipeline);
+ANGLE_EXPORT void GL_APIENTRY BindVertexBuffer(GLuint bindingindex,
+ GLuint buffer,
+ GLintptr offset,
+ GLsizei stride);
+ANGLE_EXPORT GLuint GL_APIENTRY CreateShaderProgramv(GLenum type,
+ GLsizei count,
+ const GLchar *const *strings);
+ANGLE_EXPORT void GL_APIENTRY DeleteProgramPipelines(GLsizei n, const GLuint *pipelines);
+ANGLE_EXPORT void GL_APIENTRY DispatchCompute(GLuint num_groups_x,
+ GLuint num_groups_y,
+ GLuint num_groups_z);
+ANGLE_EXPORT void GL_APIENTRY DispatchComputeIndirect(GLintptr indirect);
+ANGLE_EXPORT void GL_APIENTRY DrawArraysIndirect(GLenum mode, const void *indirect);
+ANGLE_EXPORT void GL_APIENTRY DrawElementsIndirect(GLenum mode, GLenum type, const void *indirect);
+ANGLE_EXPORT void GL_APIENTRY FramebufferParameteri(GLenum target, GLenum pname, GLint param);
+ANGLE_EXPORT void GL_APIENTRY GenProgramPipelines(GLsizei n, GLuint *pipelines);
+ANGLE_EXPORT void GL_APIENTRY GetBooleani_v(GLenum target, GLuint index, GLboolean *data);
+ANGLE_EXPORT void GL_APIENTRY GetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetMultisamplefv(GLenum pname, GLuint index, GLfloat *val);
+ANGLE_EXPORT void GL_APIENTRY GetProgramInterfaceiv(GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetProgramPipelineInfoLog(GLuint pipeline,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog);
+ANGLE_EXPORT void GL_APIENTRY GetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params);
+ANGLE_EXPORT GLuint GL_APIENTRY GetProgramResourceIndex(GLuint program,
+ GLenum programInterface,
+ const GLchar *name);
+ANGLE_EXPORT GLint GL_APIENTRY GetProgramResourceLocation(GLuint program,
+ GLenum programInterface,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetProgramResourceName(GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetProgramResourceiv(GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei propCount,
+ const GLenum *props,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterfv(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameteriv(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsProgramPipeline(GLuint pipeline);
+ANGLE_EXPORT void GL_APIENTRY MemoryBarrier(GLbitfield barriers);
+ANGLE_EXPORT void GL_APIENTRY MemoryBarrierByRegion(GLbitfield barriers);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1f(GLuint program, GLint location, GLfloat v0);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1i(GLuint program, GLint location, GLint v0);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1ui(GLuint program, GLint location, GLuint v0);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2f(GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2ui(GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY
+ProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY
+ProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform3iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY
+ProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform3uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY
+ProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY
+ProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform4iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY
+ProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform4uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix2x3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix2x4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix3x2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix3x4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix4x2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix4x3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY SampleMaski(GLuint maskNumber, GLbitfield mask);
+ANGLE_EXPORT void GL_APIENTRY TexStorage2DMultisample(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations);
+ANGLE_EXPORT void GL_APIENTRY UseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);
+ANGLE_EXPORT void GL_APIENTRY ValidateProgramPipeline(GLuint pipeline);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribBinding(GLuint attribindex, GLuint bindingindex);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribFormat(GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLuint relativeoffset);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribIFormat(GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLuint relativeoffset);
+ANGLE_EXPORT void GL_APIENTRY VertexBindingDivisor(GLuint bindingindex, GLuint divisor);
+} // namespace gl
+
+#endif // LIBGLESV2_ENTRY_POINTS_GLES_3_1_AUTOGEN_H_
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_ext_autogen.cpp b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_ext_autogen.cpp
new file mode 100644
index 0000000000..043634e01d
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_ext_autogen.cpp
@@ -0,0 +1,19759 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml and gl_angle_ext.xml.
+//
+// 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.
+//
+// entry_points_gles_ext_autogen.cpp:
+// Defines the GLES extension entry points.
+
+#include "libGLESv2/entry_points_gles_ext_autogen.h"
+
+#include "libANGLE/Context.h"
+#include "libANGLE/Context.inl.h"
+#include "libANGLE/capture_gles_ext_autogen.h"
+#include "libANGLE/entry_points_utils.h"
+#include "libANGLE/validationESEXT.h"
+#include "libGLESv2/global_state.h"
+
+#include "libANGLE/capture_gles_1_0_autogen.h"
+#include "libANGLE/capture_gles_2_0_autogen.h"
+#include "libANGLE/capture_gles_3_0_autogen.h"
+#include "libANGLE/capture_gles_3_1_autogen.h"
+#include "libANGLE/validationES1.h"
+#include "libANGLE/validationES2.h"
+#include "libANGLE/validationES3.h"
+#include "libANGLE/validationES31.h"
+
+namespace gl
+{
+
+// GL_ANGLE_copy_texture_3d
+void GL_APIENTRY CopyTexture3DANGLE(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ EVENT(
+ "(GLuint sourceId = %u, GLint sourceLevel = %d, GLenum destTarget = 0x%X, GLuint destId = "
+ "%u, GLint destLevel = %d, GLint internalFormat = %d, GLenum destType = 0x%X, GLboolean "
+ "unpackFlipY = %u, GLboolean unpackPremultiplyAlpha = %u, GLboolean unpackUnmultiplyAlpha "
+ "= %u)",
+ sourceId, sourceLevel, destTarget, destId, destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget destTargetPacked = FromGLenum<TextureTarget>(destTarget);
+ ANGLE_CAPTURE(CopyTexture3DANGLE, context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+ if (context->skipValidation() ||
+ ValidateCopyTexture3DANGLE(context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha))
+ {
+ context->copyTexture3D(sourceId, sourceLevel, destTargetPacked, destId, destLevel,
+ internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY CopySubTexture3DANGLE(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLint z,
+ GLint width,
+ GLint height,
+ GLint depth,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ EVENT(
+ "(GLuint sourceId = %u, GLint sourceLevel = %d, GLenum destTarget = 0x%X, GLuint destId = "
+ "%u, GLint destLevel = %d, GLint xoffset = %d, GLint yoffset = %d, GLint zoffset = %d, "
+ "GLint x = %d, GLint y = %d, GLint z = %d, GLint width = %d, GLint height = %d, GLint "
+ "depth = %d, GLboolean unpackFlipY = %u, GLboolean unpackPremultiplyAlpha = %u, GLboolean "
+ "unpackUnmultiplyAlpha = %u)",
+ sourceId, sourceLevel, destTarget, destId, destLevel, xoffset, yoffset, zoffset, x, y, z,
+ width, height, depth, unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget destTargetPacked = FromGLenum<TextureTarget>(destTarget);
+ ANGLE_CAPTURE(CopySubTexture3DANGLE, context, sourceId, sourceLevel, destTargetPacked,
+ destId, destLevel, xoffset, yoffset, zoffset, x, y, z, width, height, depth,
+ unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+ if (context->skipValidation() ||
+ ValidateCopySubTexture3DANGLE(context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, xoffset, yoffset, zoffset, x, y, z, width,
+ height, depth, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha))
+ {
+ context->copySubTexture3D(sourceId, sourceLevel, destTargetPacked, destId, destLevel,
+ xoffset, yoffset, zoffset, x, y, z, width, height, depth,
+ unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+ }
+ }
+}
+
+// GL_ANGLE_framebuffer_blit
+void GL_APIENTRY BlitFramebufferANGLE(GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter)
+{
+ EVENT(
+ "(GLint srcX0 = %d, GLint srcY0 = %d, GLint srcX1 = %d, GLint srcY1 = %d, GLint dstX0 = "
+ "%d, GLint dstY0 = %d, GLint dstX1 = %d, GLint dstY1 = %d, GLbitfield mask = 0x%X, GLenum "
+ "filter = 0x%X)",
+ srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BlitFramebufferANGLE, context, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
+ dstX1, dstY1, mask, filter);
+ if (context->skipValidation() ||
+ ValidateBlitFramebufferANGLE(context, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1,
+ dstY1, mask, filter))
+ {
+ context->blitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask,
+ filter);
+ }
+ }
+}
+
+// GL_ANGLE_framebuffer_multisample
+void GL_APIENTRY RenderbufferStorageMultisampleANGLE(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d)",
+ target, samples, internalformat, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(RenderbufferStorageMultisampleANGLE, context, target, samples, internalformat,
+ width, height);
+ if (context->skipValidation() ||
+ ValidateRenderbufferStorageMultisampleANGLE(context, target, samples, internalformat,
+ width, height))
+ {
+ context->renderbufferStorageMultisample(target, samples, internalformat, width, height);
+ }
+ }
+}
+
+// GL_ANGLE_instanced_arrays
+void GL_APIENTRY DrawArraysInstancedANGLE(GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei primcount)
+{
+ EVENT("(GLenum mode = 0x%X, GLint first = %d, GLsizei count = %d, GLsizei primcount = %d)",
+ mode, first, count, primcount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArraysInstancedANGLE, context, modePacked, first, count, primcount);
+ if (context->skipValidation() ||
+ ValidateDrawArraysInstancedANGLE(context, modePacked, first, count, primcount))
+ {
+ context->drawArraysInstanced(modePacked, first, count, primcount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElementsInstancedANGLE(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
+ "0x%016" PRIxPTR ", GLsizei primcount = %d)",
+ mode, count, type, (uintptr_t)indices, primcount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElementsInstancedANGLE, context, modePacked, count, typePacked, indices,
+ primcount);
+ if (context->skipValidation() ||
+ ValidateDrawElementsInstancedANGLE(context, modePacked, count, typePacked, indices,
+ primcount))
+ {
+ context->drawElementsInstanced(modePacked, count, typePacked, indices, primcount);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribDivisorANGLE(GLuint index, GLuint divisor)
+{
+ EVENT("(GLuint index = %u, GLuint divisor = %u)", index, divisor);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttribDivisorANGLE, context, index, divisor);
+ if (context->skipValidation() || ValidateVertexAttribDivisorANGLE(context, index, divisor))
+ {
+ context->vertexAttribDivisor(index, divisor);
+ }
+ }
+}
+
+// GL_ANGLE_multi_draw
+void GL_APIENTRY MultiDrawArraysANGLE(GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ GLsizei drawcount)
+{
+ EVENT("(GLenum mode = 0x%X, const GLint *firsts = 0x%016" PRIxPTR
+ ", const GLsizei *counts = 0x%016" PRIxPTR ", GLsizei drawcount = %d)",
+ mode, (uintptr_t)firsts, (uintptr_t)counts, drawcount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(MultiDrawArraysANGLE, context, modePacked, firsts, counts, drawcount);
+ if (context->skipValidation() ||
+ ValidateMultiDrawArraysANGLE(context, modePacked, firsts, counts, drawcount))
+ {
+ context->multiDrawArrays(modePacked, firsts, counts, drawcount);
+ }
+ }
+}
+
+void GL_APIENTRY MultiDrawArraysInstancedANGLE(GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount)
+{
+ EVENT("(GLenum mode = 0x%X, const GLint *firsts = 0x%016" PRIxPTR
+ ", const GLsizei *counts = 0x%016" PRIxPTR
+ ", const GLsizei *instanceCounts = 0x%016" PRIxPTR ", GLsizei drawcount = %d)",
+ mode, (uintptr_t)firsts, (uintptr_t)counts, (uintptr_t)instanceCounts, drawcount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(MultiDrawArraysInstancedANGLE, context, modePacked, firsts, counts,
+ instanceCounts, drawcount);
+ if (context->skipValidation() ||
+ ValidateMultiDrawArraysInstancedANGLE(context, modePacked, firsts, counts,
+ instanceCounts, drawcount))
+ {
+ context->multiDrawArraysInstanced(modePacked, firsts, counts, instanceCounts,
+ drawcount);
+ }
+ }
+}
+
+void GL_APIENTRY MultiDrawElementsANGLE(GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ GLsizei drawcount)
+{
+ EVENT("(GLenum mode = 0x%X, const GLsizei *counts = 0x%016" PRIxPTR
+ ", GLenum type = 0x%X, const GLvoid *const*indices = 0x%016" PRIxPTR
+ ", GLsizei drawcount = %d)",
+ mode, (uintptr_t)counts, type, (uintptr_t)indices, drawcount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(MultiDrawElementsANGLE, context, modePacked, counts, typePacked, indices,
+ drawcount);
+ if (context->skipValidation() ||
+ ValidateMultiDrawElementsANGLE(context, modePacked, counts, typePacked, indices,
+ drawcount))
+ {
+ context->multiDrawElements(modePacked, counts, typePacked, indices, drawcount);
+ }
+ }
+}
+
+void GL_APIENTRY MultiDrawElementsInstancedANGLE(GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount)
+{
+ EVENT("(GLenum mode = 0x%X, const GLsizei *counts = 0x%016" PRIxPTR
+ ", GLenum type = 0x%X, const GLvoid *const*indices = 0x%016" PRIxPTR
+ ", const GLsizei*instanceCounts = 0x%016" PRIxPTR ", GLsizei drawcount = %d)",
+ mode, (uintptr_t)counts, type, (uintptr_t)indices, (uintptr_t)instanceCounts, drawcount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(MultiDrawElementsInstancedANGLE, context, modePacked, counts, typePacked,
+ indices, instanceCounts, drawcount);
+ if (context->skipValidation() ||
+ ValidateMultiDrawElementsInstancedANGLE(context, modePacked, counts, typePacked,
+ indices, instanceCounts, drawcount))
+ {
+ context->multiDrawElementsInstanced(modePacked, counts, typePacked, indices,
+ instanceCounts, drawcount);
+ }
+ }
+}
+
+// GL_ANGLE_provoking_vertex
+void GL_APIENTRY ProvokingVertexANGLE(GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ProvokingVertexConvention modePacked = FromGLenum<ProvokingVertexConvention>(mode);
+ ANGLE_CAPTURE(ProvokingVertexANGLE, context, modePacked);
+ if (context->skipValidation() || ValidateProvokingVertexANGLE(context, modePacked))
+ {
+ context->provokingVertex(modePacked);
+ }
+ }
+}
+
+// GL_ANGLE_request_extension
+void GL_APIENTRY RequestExtensionANGLE(const GLchar *name)
+{
+ EVENT("(const GLchar * name = 0x%016" PRIxPTR ")", (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(RequestExtensionANGLE, context, name);
+ if (context->skipValidation() || ValidateRequestExtensionANGLE(context, name))
+ {
+ context->requestExtension(name);
+ }
+ }
+}
+
+// GL_ANGLE_robust_client_memory
+void GL_APIENTRY GetBooleanvRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *params)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLboolean * params = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetBooleanvRobustANGLE, context, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetBooleanvRobustANGLE(context, pname, bufSize, length, params))
+ {
+ context->getBooleanvRobust(pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferParameterivRobustANGLE, context, targetPacked, pname, bufSize,
+ length, params);
+ if (context->skipValidation() || ValidateGetBufferParameterivRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getBufferParameterivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFloatvRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLfloat * params = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFloatvRobustANGLE, context, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetFloatvRobustANGLE(context, pname, bufSize, length, params))
+ {
+ context->getFloatvRobust(pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFramebufferAttachmentParameterivRobustANGLE(GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = "
+ "%d, GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, attachment, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFramebufferAttachmentParameterivRobustANGLE, context, target, attachment,
+ pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetFramebufferAttachmentParameterivRobustANGLE(context, target, attachment,
+ pname, bufSize, length, params))
+ {
+ context->getFramebufferAttachmentParameterivRobust(target, attachment, pname, bufSize,
+ length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetIntegervRobustANGLE(GLenum pname, GLsizei bufSize, GLsizei *length, GLint *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLint * data = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetIntegervRobustANGLE, context, pname, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetIntegervRobustANGLE(context, pname, bufSize, length, data))
+ {
+ context->getIntegervRobust(pname, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramivRobustANGLE(GLuint program,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramivRobustANGLE, context, program, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramivRobustANGLE(context, program, pname, bufSize, length, params))
+ {
+ context->getProgramivRobust(program, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetRenderbufferParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetRenderbufferParameterivRobustANGLE, context, target, pname, bufSize,
+ length, params);
+ if (context->skipValidation() || ValidateGetRenderbufferParameterivRobustANGLE(
+ context, target, pname, bufSize, length, params))
+ {
+ context->getRenderbufferParameterivRobust(target, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY
+GetShaderivRobustANGLE(GLuint shader, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params)
+{
+ EVENT(
+ "(GLuint shader = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ shader, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetShaderivRobustANGLE, context, shader, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetShaderivRobustANGLE(context, shader, pname, bufSize, length, params))
+ {
+ context->getShaderivRobust(shader, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterfvRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterfvRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetTexParameterfvRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getTexParameterfvRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterivRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetTexParameterivRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getTexParameterivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformfvRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUniformfvRobustANGLE, context, program, location, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetUniformfvRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getUniformfvRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUniformivRobustANGLE, context, program, location, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetUniformivRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getUniformivRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribfvRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribfvRobustANGLE, context, index, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribfvRobustANGLE(context, index, pname, bufSize, length, params))
+ {
+ context->getVertexAttribfvRobust(index, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribivRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribivRobustANGLE, context, index, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribivRobustANGLE(context, index, pname, bufSize, length, params))
+ {
+ context->getVertexAttribivRobust(index, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribPointervRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **pointer)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", void ** pointer = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribPointervRobustANGLE, context, index, pname, bufSize, length,
+ pointer);
+ if (context->skipValidation() || ValidateGetVertexAttribPointervRobustANGLE(
+ context, index, pname, bufSize, length, pointer))
+ {
+ context->getVertexAttribPointervRobust(index, pname, bufSize, length, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY ReadPixelsRobustANGLE(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *pixels)
+{
+ EVENT(
+ "(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLenum format = "
+ "0x%X, GLenum type = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLsizei * columns = 0x%016" PRIxPTR ", GLsizei * rows = 0x%016" PRIxPTR
+ ", void * pixels = 0x%016" PRIxPTR ")",
+ x, y, width, height, format, type, bufSize, (uintptr_t)length, (uintptr_t)columns,
+ (uintptr_t)rows, (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ReadPixelsRobustANGLE, context, x, y, width, height, format, type, bufSize,
+ length, columns, rows, pixels);
+ if (context->skipValidation() ||
+ ValidateReadPixelsRobustANGLE(context, x, y, width, height, format, type, bufSize,
+ length, columns, rows, pixels))
+ {
+ context->readPixelsRobust(x, y, width, height, format, type, bufSize, length, columns,
+ rows, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLint border = %d, GLenum format = 0x%X, GLenum type = 0x%X, GLsizei "
+ "bufSize = %d, const void * pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, border, format, type, bufSize,
+ (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage2DRobustANGLE, context, targetPacked, level, internalformat, width,
+ height, border, format, type, bufSize, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage2DRobustANGLE(context, targetPacked, level, internalformat, width,
+ height, border, format, type, bufSize, pixels))
+ {
+ context->texImage2DRobust(targetPacked, level, internalformat, width, height, border,
+ format, type, bufSize, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterfvRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLfloat * params "
+ "= 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterfvRobustANGLE, context, targetPacked, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterfvRobustANGLE(context, targetPacked, pname, bufSize, params))
+ {
+ context->texParameterfvRobust(targetPacked, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLint * params = "
+ "0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterivRobustANGLE, context, targetPacked, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterivRobustANGLE(context, targetPacked, pname, bufSize, params))
+ {
+ context->texParameterivRobust(targetPacked, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLsizei "
+ "width = %d, GLsizei height = %d, GLenum format = 0x%X, GLenum type = 0x%X, GLsizei "
+ "bufSize = %d, const void * pixels = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, width, height, format, type, bufSize, (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage2DRobustANGLE, context, targetPacked, level, xoffset, yoffset,
+ width, height, format, type, bufSize, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage2DRobustANGLE(context, targetPacked, level, xoffset, yoffset, width,
+ height, format, type, bufSize, pixels))
+ {
+ context->texSubImage2DRobust(targetPacked, level, xoffset, yoffset, width, height,
+ format, type, bufSize, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLenum format = 0x%X, GLenum "
+ "type = 0x%X, GLsizei bufSize = %d, const void * pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, format, type, bufSize,
+ (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage3DRobustANGLE, context, targetPacked, level, internalformat, width,
+ height, depth, border, format, type, bufSize, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage3DRobustANGLE(context, targetPacked, level, internalformat, width,
+ height, depth, border, format, type, bufSize, pixels))
+ {
+ context->texImage3DRobust(targetPacked, level, internalformat, width, height, depth,
+ border, format, type, bufSize, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLenum type = 0x%X, GLsizei bufSize = %d, const void * pixels = 0x%016" PRIxPTR
+ ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize,
+ (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage3DRobustANGLE, context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, type, bufSize, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage3DRobustANGLE(context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, type, bufSize,
+ pixels))
+ {
+ context->texSubImage3DRobust(targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, bufSize, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLint border = %d, GLsizei imageSize = %d, GLsizei dataSize = "
+ "%d, const GLvoid * data = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, border, imageSize, dataSize, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage2DRobustANGLE, context, targetPacked, level, internalformat,
+ width, height, border, imageSize, dataSize, data);
+ if (context->skipValidation() || ValidateCompressedTexImage2DRobustANGLE(
+ context, targetPacked, level, internalformat, width,
+ height, border, imageSize, dataSize, data))
+ {
+ context->compressedTexImage2DRobust(targetPacked, level, internalformat, width, height,
+ border, imageSize, dataSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLsizei xoffset,
+ GLsizei yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLsizei xoffset = %d, GLsizei yoffset = %d, "
+ "GLsizei width = %d, GLsizei height = %d, GLenum format = 0x%X, GLsizei imageSize = %d, "
+ "GLsizei dataSize = %d, const GLvoid * data = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, width, height, format, imageSize, dataSize,
+ (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage2DRobustANGLE, context, targetPacked, level, xoffset,
+ yoffset, width, height, format, imageSize, dataSize, data);
+ if (context->skipValidation() || ValidateCompressedTexSubImage2DRobustANGLE(
+ context, targetPacked, level, xoffset, yoffset, width,
+ height, format, imageSize, dataSize, data))
+ {
+ context->compressedTexSubImage2DRobust(targetPacked, level, xoffset, yoffset, width,
+ height, format, imageSize, dataSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLsizei imageSize = %d, "
+ "GLsizei dataSize = %d, const GLvoid * data = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, imageSize, dataSize,
+ (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage3DRobustANGLE, context, targetPacked, level, internalformat,
+ width, height, depth, border, imageSize, dataSize, data);
+ if (context->skipValidation() || ValidateCompressedTexImage3DRobustANGLE(
+ context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, dataSize, data))
+ {
+ context->compressedTexImage3DRobust(targetPacked, level, internalformat, width, height,
+ depth, border, imageSize, dataSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLsizei imageSize = %d, GLsizei dataSize = %d, const GLvoid * data = "
+ "0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, dataSize,
+ (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage3DRobustANGLE, context, targetPacked, level, xoffset,
+ yoffset, zoffset, width, height, depth, format, imageSize, dataSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexSubImage3DRobustANGLE(context, targetPacked, level, xoffset,
+ yoffset, zoffset, width, height, depth,
+ format, imageSize, dataSize, data))
+ {
+ context->compressedTexSubImage3DRobust(targetPacked, level, xoffset, yoffset, zoffset,
+ width, height, depth, format, imageSize,
+ dataSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY
+GetQueryivRobustANGLE(GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(GetQueryivRobustANGLE, context, targetPacked, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryivRobustANGLE(context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getQueryivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectuivRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint id = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ id, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetQueryObjectuivRobustANGLE, context, id, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryObjectuivRobustANGLE(context, id, pname, bufSize, length, params))
+ {
+ context->getQueryObjectuivRobust(id, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferPointervRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", void ** params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferPointervRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetBufferPointervRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getBufferPointervRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY
+GetIntegeri_vRobustANGLE(GLenum target, GLuint index, GLsizei bufSize, GLsizei *length, GLint *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLuint index = %u, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * data = 0x%016" PRIxPTR ")",
+ target, index, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetIntegeri_vRobustANGLE, context, target, index, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetIntegeri_vRobustANGLE(context, target, index, bufSize, length, data))
+ {
+ context->getIntegeri_vRobust(target, index, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetInternalformativRobustANGLE(GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum internalformat = 0x%X, GLenum pname = 0x%X, GLsizei bufSize "
+ "= %d, GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, internalformat, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetInternalformativRobustANGLE, context, target, internalformat, pname,
+ bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetInternalformativRobustANGLE(context, target, internalformat, pname, bufSize,
+ length, params))
+ {
+ context->getInternalformativRobust(target, internalformat, pname, bufSize, length,
+ params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribIivRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribIivRobustANGLE, context, index, pname, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribIivRobustANGLE(context, index, pname, bufSize, length, params))
+ {
+ context->getVertexAttribIivRobust(index, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribIuivRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetVertexAttribIuivRobustANGLE, context, index, pname, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribIuivRobustANGLE(context, index, pname, bufSize, length, params))
+ {
+ context->getVertexAttribIuivRobust(index, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformuivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUniformuivRobustANGLE, context, program, location, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetUniformuivRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getUniformuivRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniformBlockivRobustANGLE(GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint uniformBlockIndex = %u, GLenum pname = 0x%X, GLsizei bufSize "
+ "= %d, GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, uniformBlockIndex, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetActiveUniformBlockivRobustANGLE, context, program, uniformBlockIndex,
+ pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetActiveUniformBlockivRobustANGLE(context, program, uniformBlockIndex, pname,
+ bufSize, length, params))
+ {
+ context->getActiveUniformBlockivRobust(program, uniformBlockIndex, pname, bufSize,
+ length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetInteger64vRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLint64 * data = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetInteger64vRobustANGLE, context, pname, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetInteger64vRobustANGLE(context, pname, bufSize, length, data))
+ {
+ context->getInteger64vRobust(pname, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetInteger64i_vRobustANGLE(GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLuint index = %u, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint64 * data = 0x%016" PRIxPTR ")",
+ target, index, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetInteger64i_vRobustANGLE, context, target, index, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetInteger64i_vRobustANGLE(context, target, index, bufSize, length, data))
+ {
+ context->getInteger64i_vRobust(target, index, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferParameteri64vRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint64 * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferParameteri64vRobustANGLE, context, targetPacked, pname, bufSize,
+ length, params);
+ if (context->skipValidation() || ValidateGetBufferParameteri64vRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getBufferParameteri64vRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterivRobustANGLE(GLuint sampler,
+ GLuint pname,
+ GLsizei bufSize,
+ const GLint *param)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLuint pname = %u, GLsizei bufSize = %d, const GLint * param = "
+ "0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameterivRobustANGLE, context, sampler, pname, bufSize, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterivRobustANGLE(context, sampler, pname, bufSize, param))
+ {
+ context->samplerParameterivRobust(sampler, pname, bufSize, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterfvRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *param)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLfloat * param = "
+ "0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameterfvRobustANGLE, context, sampler, pname, bufSize, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterfvRobustANGLE(context, sampler, pname, bufSize, param))
+ {
+ context->samplerParameterfvRobust(sampler, pname, bufSize, param);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSamplerParameterivRobustANGLE, context, sampler, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetSamplerParameterivRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getSamplerParameterivRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterfvRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSamplerParameterfvRobustANGLE, context, sampler, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetSamplerParameterfvRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getSamplerParameterfvRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFramebufferParameterivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFramebufferParameterivRobustANGLE, context, sampler, pname, bufSize,
+ length, params);
+ if (context->skipValidation() || ValidateGetFramebufferParameterivRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getFramebufferParameterivRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramInterfaceivRobustANGLE(GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, GLenum pname = 0x%X, GLsizei "
+ "bufSize = %d, GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, programInterface, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramInterfaceivRobustANGLE, context, program, programInterface, pname,
+ bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramInterfaceivRobustANGLE(context, program, programInterface, pname,
+ bufSize, length, params))
+ {
+ context->getProgramInterfaceivRobust(program, programInterface, pname, bufSize, length,
+ params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBooleani_vRobustANGLE(GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLuint index = %u, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLboolean * data = 0x%016" PRIxPTR ")",
+ target, index, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetBooleani_vRobustANGLE, context, target, index, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetBooleani_vRobustANGLE(context, target, index, bufSize, length, data))
+ {
+ context->getBooleani_vRobust(target, index, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetMultisamplefvRobustANGLE(GLenum pname,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *val)
+{
+ EVENT(
+ "(GLenum pname = 0x%X, GLuint index = %u, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * val = 0x%016" PRIxPTR ")",
+ pname, index, bufSize, (uintptr_t)length, (uintptr_t)val);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetMultisamplefvRobustANGLE, context, pname, index, bufSize, length, val);
+ if (context->skipValidation() ||
+ ValidateGetMultisamplefvRobustANGLE(context, pname, index, bufSize, length, val))
+ {
+ context->getMultisamplefvRobust(pname, index, bufSize, length, val);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterivRobustANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLsizei bufSize = %d, "
+ "GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, level, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterivRobustANGLE, context, targetPacked, level, pname,
+ bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterivRobustANGLE(context, targetPacked, level, pname, bufSize,
+ length, params))
+ {
+ context->getTexLevelParameterivRobust(targetPacked, level, pname, bufSize, length,
+ params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterfvRobustANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLsizei bufSize = %d, "
+ "GLsizei * length = 0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ target, level, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterfvRobustANGLE, context, targetPacked, level, pname,
+ bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterfvRobustANGLE(context, targetPacked, level, pname, bufSize,
+ length, params))
+ {
+ context->getTexLevelParameterfvRobust(targetPacked, level, pname, bufSize, length,
+ params);
+ }
+ }
+}
+
+void GL_APIENTRY GetPointervRobustANGLERobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", void ** params = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetPointervRobustANGLERobustANGLE, context, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetPointervRobustANGLERobustANGLE(context, pname, bufSize, length, params))
+ {
+ context->getPointervRobustANGLERobust(pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY ReadnPixelsRobustANGLE(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *data)
+{
+ EVENT(
+ "(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLenum format = "
+ "0x%X, GLenum type = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLsizei * columns = 0x%016" PRIxPTR ", GLsizei * rows = 0x%016" PRIxPTR
+ ", void * data = 0x%016" PRIxPTR ")",
+ x, y, width, height, format, type, bufSize, (uintptr_t)length, (uintptr_t)columns,
+ (uintptr_t)rows, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ReadnPixelsRobustANGLE, context, x, y, width, height, format, type, bufSize,
+ length, columns, rows, data);
+ if (context->skipValidation() ||
+ ValidateReadnPixelsRobustANGLE(context, x, y, width, height, format, type, bufSize,
+ length, columns, rows, data))
+ {
+ context->readnPixelsRobust(x, y, width, height, format, type, bufSize, length, columns,
+ rows, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetnUniformfvRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetnUniformfvRobustANGLE, context, program, location, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformfvRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getnUniformfvRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetnUniformivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetnUniformivRobustANGLE, context, program, location, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformivRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getnUniformivRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetnUniformuivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetnUniformuivRobustANGLE, context, program, location, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformuivRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getnUniformuivRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterIivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLint * params = "
+ "0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterIivRobustANGLE, context, targetPacked, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterIivRobustANGLE(context, targetPacked, pname, bufSize, params))
+ {
+ context->texParameterIivRobust(targetPacked, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterIuivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLuint * params = "
+ "0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterIuivRobustANGLE, context, targetPacked, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterIuivRobustANGLE(context, targetPacked, pname, bufSize, params))
+ {
+ context->texParameterIuivRobust(targetPacked, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterIivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterIivRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetTexParameterIivRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getTexParameterIivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterIuivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterIuivRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetTexParameterIuivRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getTexParameterIuivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterIivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *param)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLint * param = "
+ "0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameterIivRobustANGLE, context, sampler, pname, bufSize, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterIivRobustANGLE(context, sampler, pname, bufSize, param))
+ {
+ context->samplerParameterIivRobust(sampler, pname, bufSize, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterIuivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *param)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLuint * param = "
+ "0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameterIuivRobustANGLE, context, sampler, pname, bufSize, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterIuivRobustANGLE(context, sampler, pname, bufSize, param))
+ {
+ context->samplerParameterIuivRobust(sampler, pname, bufSize, param);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterIivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSamplerParameterIivRobustANGLE, context, sampler, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetSamplerParameterIivRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getSamplerParameterIivRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterIuivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSamplerParameterIuivRobustANGLE, context, sampler, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetSamplerParameterIuivRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getSamplerParameterIuivRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectivRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint id = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ id, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetQueryObjectivRobustANGLE, context, id, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryObjectivRobustANGLE(context, id, pname, bufSize, length, params))
+ {
+ context->getQueryObjectivRobust(id, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjecti64vRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params)
+{
+ EVENT(
+ "(GLuint id = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint64 * params = 0x%016" PRIxPTR ")",
+ id, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetQueryObjecti64vRobustANGLE, context, id, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryObjecti64vRobustANGLE(context, id, pname, bufSize, length, params))
+ {
+ context->getQueryObjecti64vRobust(id, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectui64vRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint64 *params)
+{
+ EVENT(
+ "(GLuint id = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint64 * params = 0x%016" PRIxPTR ")",
+ id, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetQueryObjectui64vRobustANGLE, context, id, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryObjectui64vRobustANGLE(context, id, pname, bufSize, length, params))
+ {
+ context->getQueryObjectui64vRobust(id, pname, bufSize, length, params);
+ }
+ }
+}
+
+// GL_ANGLE_texture_external_update
+void GL_APIENTRY TexImage2DExternalANGLE(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLint border = %d, GLenum format = 0x%X, GLenum type = 0x%X)",
+ target, level, internalformat, width, height, border, format, type);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage2DExternalANGLE, context, targetPacked, level, internalformat, width,
+ height, border, format, type);
+ if (context->skipValidation() ||
+ ValidateTexImage2DExternalANGLE(context, targetPacked, level, internalformat, width,
+ height, border, format, type))
+ {
+ context->texImage2DExternal(targetPacked, level, internalformat, width, height, border,
+ format, type);
+ }
+ }
+}
+
+void GL_APIENTRY InvalidateTextureANGLE(GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(InvalidateTextureANGLE, context, targetPacked);
+ if (context->skipValidation() || ValidateInvalidateTextureANGLE(context, targetPacked))
+ {
+ context->invalidateTexture(targetPacked);
+ }
+ }
+}
+
+// GL_ANGLE_texture_multisample
+void GL_APIENTRY TexStorage2DMultisampleANGLE(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLboolean fixedsamplelocations = %u)",
+ target, samples, internalformat, width, height, fixedsamplelocations);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage2DMultisampleANGLE, context, targetPacked, samples, internalformat,
+ width, height, fixedsamplelocations);
+ if (context->skipValidation() ||
+ ValidateTexStorage2DMultisampleANGLE(context, targetPacked, samples, internalformat,
+ width, height, fixedsamplelocations))
+ {
+ context->texStorage2DMultisample(targetPacked, samples, internalformat, width, height,
+ fixedsamplelocations);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterivANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLint * params = "
+ "0x%016" PRIxPTR ")",
+ target, level, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterivANGLE, context, targetPacked, level, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterivANGLE(context, targetPacked, level, pname, params))
+ {
+ context->getTexLevelParameteriv(targetPacked, level, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterfvANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLfloat * params = "
+ "0x%016" PRIxPTR ")",
+ target, level, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterfvANGLE, context, targetPacked, level, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterfvANGLE(context, targetPacked, level, pname, params))
+ {
+ context->getTexLevelParameterfv(targetPacked, level, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetMultisamplefvANGLE(GLenum pname, GLuint index, GLfloat *val)
+{
+ EVENT("(GLenum pname = 0x%X, GLuint index = %u, GLfloat * val = 0x%016" PRIxPTR ")", pname,
+ index, (uintptr_t)val);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetMultisamplefvANGLE, context, pname, index, val);
+ if (context->skipValidation() || ValidateGetMultisamplefvANGLE(context, pname, index, val))
+ {
+ context->getMultisamplefv(pname, index, val);
+ }
+ }
+}
+
+void GL_APIENTRY SampleMaskiANGLE(GLuint maskNumber, GLbitfield mask)
+{
+ EVENT("(GLuint maskNumber = %u, GLbitfield mask = 0x%X)", maskNumber, mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SampleMaskiANGLE, context, maskNumber, mask);
+ if (context->skipValidation() || ValidateSampleMaskiANGLE(context, maskNumber, mask))
+ {
+ context->sampleMaski(maskNumber, mask);
+ }
+ }
+}
+
+// GL_ANGLE_translated_shader_source
+void GL_APIENTRY GetTranslatedShaderSourceANGLE(GLuint shader,
+ GLsizei bufsize,
+ GLsizei *length,
+ GLchar *source)
+{
+ EVENT("(GLuint shader = %u, GLsizei bufsize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *source = 0x%016" PRIxPTR ")",
+ shader, bufsize, (uintptr_t)length, (uintptr_t)source);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetTranslatedShaderSourceANGLE, context, shader, bufsize, length, source);
+ if (context->skipValidation() ||
+ ValidateGetTranslatedShaderSourceANGLE(context, shader, bufsize, length, source))
+ {
+ context->getTranslatedShaderSource(shader, bufsize, length, source);
+ }
+ }
+}
+
+// GL_CHROMIUM_bind_uniform_location
+void GL_APIENTRY BindUniformLocationCHROMIUM(GLuint program, GLint location, const GLchar *name)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, const GLchar* name = 0x%016" PRIxPTR ")",
+ program, location, (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindUniformLocationCHROMIUM, context, program, location, name);
+ if (context->skipValidation() ||
+ ValidateBindUniformLocationCHROMIUM(context, program, location, name))
+ {
+ context->bindUniformLocation(program, location, name);
+ }
+ }
+}
+
+// GL_CHROMIUM_copy_compressed_texture
+void GL_APIENTRY CompressedCopyTextureCHROMIUM(GLuint sourceId, GLuint destId)
+{
+ EVENT("(GLuint sourceId = %u, GLuint destId = %u)", sourceId, destId);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CompressedCopyTextureCHROMIUM, context, sourceId, destId);
+ if (context->skipValidation() ||
+ ValidateCompressedCopyTextureCHROMIUM(context, sourceId, destId))
+ {
+ context->compressedCopyTexture(sourceId, destId);
+ }
+ }
+}
+
+// GL_CHROMIUM_copy_texture
+void GL_APIENTRY CopyTextureCHROMIUM(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ EVENT(
+ "(GLuint sourceId = %u, GLint sourceLevel = %d, GLenum destTarget = 0x%X, GLuint destId = "
+ "%u, GLint destLevel = %d, GLint internalFormat = %d, GLenum destType = 0x%X, GLboolean "
+ "unpackFlipY = %u, GLboolean unpackPremultiplyAlpha = %u, GLboolean unpackUnmultiplyAlpha "
+ "= %u)",
+ sourceId, sourceLevel, destTarget, destId, destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget destTargetPacked = FromGLenum<TextureTarget>(destTarget);
+ ANGLE_CAPTURE(CopyTextureCHROMIUM, context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+ if (context->skipValidation() ||
+ ValidateCopyTextureCHROMIUM(context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha))
+ {
+ context->copyTexture(sourceId, sourceLevel, destTargetPacked, destId, destLevel,
+ internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY CopySubTextureCHROMIUM(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLint width,
+ GLint height,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ EVENT(
+ "(GLuint sourceId = %u, GLint sourceLevel = %d, GLenum destTarget = 0x%X, GLuint destId = "
+ "%u, GLint destLevel = %d, GLint xoffset = %d, GLint yoffset = %d, GLint x = %d, GLint y = "
+ "%d, GLint width = %d, GLint height = %d, GLboolean unpackFlipY = %u, GLboolean "
+ "unpackPremultiplyAlpha = %u, GLboolean unpackUnmultiplyAlpha = %u)",
+ sourceId, sourceLevel, destTarget, destId, destLevel, xoffset, yoffset, x, y, width, height,
+ unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget destTargetPacked = FromGLenum<TextureTarget>(destTarget);
+ ANGLE_CAPTURE(CopySubTextureCHROMIUM, context, sourceId, sourceLevel, destTargetPacked,
+ destId, destLevel, xoffset, yoffset, x, y, width, height, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+ if (context->skipValidation() ||
+ ValidateCopySubTextureCHROMIUM(context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, xoffset, yoffset, x, y, width, height,
+ unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha))
+ {
+ context->copySubTexture(sourceId, sourceLevel, destTargetPacked, destId, destLevel,
+ xoffset, yoffset, x, y, width, height, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+ }
+ }
+}
+
+// GL_CHROMIUM_framebuffer_mixed_samples
+void GL_APIENTRY CoverageModulationCHROMIUM(GLenum components)
+{
+ EVENT("(GLenum components = 0x%X)", components);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CoverageModulationCHROMIUM, context, components);
+ if (context->skipValidation() || ValidateCoverageModulationCHROMIUM(context, components))
+ {
+ context->coverageModulation(components);
+ }
+ }
+}
+
+void GL_APIENTRY MatrixLoadfCHROMIUM(GLenum matrixMode, const GLfloat *matrix)
+{
+ EVENT("(GLenum matrixMode = 0x%X, const GLfloat * matrix = 0x%016" PRIxPTR ")", matrixMode,
+ (uintptr_t)matrix);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MatrixLoadfCHROMIUM, context, matrixMode, matrix);
+ if (context->skipValidation() || ValidateMatrixLoadfCHROMIUM(context, matrixMode, matrix))
+ {
+ context->matrixLoadf(matrixMode, matrix);
+ }
+ }
+}
+
+void GL_APIENTRY MatrixLoadIdentityCHROMIUM(GLenum matrixMode)
+{
+ EVENT("(GLenum matrixMode = 0x%X)", matrixMode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MatrixLoadIdentityCHROMIUM, context, matrixMode);
+ if (context->skipValidation() || ValidateMatrixLoadIdentityCHROMIUM(context, matrixMode))
+ {
+ context->matrixLoadIdentity(matrixMode);
+ }
+ }
+}
+
+// GL_CHROMIUM_lose_context
+void GL_APIENTRY LoseContextCHROMIUM(GLenum current, GLenum other)
+{
+ EVENT("(GLenum current = 0x%X, GLenum other = 0x%X)", current, other);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ GraphicsResetStatus currentPacked = FromGLenum<GraphicsResetStatus>(current);
+ GraphicsResetStatus otherPacked = FromGLenum<GraphicsResetStatus>(other);
+ ANGLE_CAPTURE(LoseContextCHROMIUM, context, currentPacked, otherPacked);
+ if (context->skipValidation() ||
+ ValidateLoseContextCHROMIUM(context, currentPacked, otherPacked))
+ {
+ context->loseContext(currentPacked, otherPacked);
+ }
+ }
+}
+
+// GL_CHROMIUM_path_rendering
+GLuint GL_APIENTRY GenPathsCHROMIUM(GLsizei range)
+{
+ EVENT("(GLsizei range = %d)", range);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenPathsCHROMIUM, context, range);
+ if (context->skipValidation() || ValidateGenPathsCHROMIUM(context, range))
+ {
+ return context->genPaths(range);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GenPathsCHROMIUM, GLuint>();
+}
+
+void GL_APIENTRY DeletePathsCHROMIUM(GLuint first, GLsizei range)
+{
+ EVENT("(GLuint first = %u, GLsizei range = %d)", first, range);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeletePathsCHROMIUM, context, first, range);
+ if (context->skipValidation() || ValidateDeletePathsCHROMIUM(context, first, range))
+ {
+ context->deletePaths(first, range);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsPathCHROMIUM(GLuint path)
+{
+ EVENT("(GLuint path = %u)", path);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsPathCHROMIUM, context, path);
+ if (context->skipValidation() || ValidateIsPathCHROMIUM(context, path))
+ {
+ return context->isPath(path);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsPathCHROMIUM, GLboolean>();
+}
+
+void GL_APIENTRY PathCommandsCHROMIUM(GLuint path,
+ GLsizei numCommands,
+ const GLubyte *commands,
+ GLsizei numCoords,
+ GLenum coordType,
+ const void *coords)
+{
+ EVENT("(GLuint path = %u, GLsizei numCommands = %d, const GLubyte * commands = 0x%016" PRIxPTR
+ ", GLsizei numCoords = %d, GLenum coordType = 0x%X, const void* coords = 0x%016" PRIxPTR
+ ")",
+ path, numCommands, (uintptr_t)commands, numCoords, coordType, (uintptr_t)coords);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PathCommandsCHROMIUM, context, path, numCommands, commands, numCoords,
+ coordType, coords);
+ if (context->skipValidation() ||
+ ValidatePathCommandsCHROMIUM(context, path, numCommands, commands, numCoords, coordType,
+ coords))
+ {
+ context->pathCommands(path, numCommands, commands, numCoords, coordType, coords);
+ }
+ }
+}
+
+void GL_APIENTRY PathParameterfCHROMIUM(GLuint path, GLenum pname, GLfloat value)
+{
+ EVENT("(GLuint path = %u, GLenum pname = 0x%X, GLfloat value = %f)", path, pname, value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PathParameterfCHROMIUM, context, path, pname, value);
+ if (context->skipValidation() ||
+ ValidatePathParameterfCHROMIUM(context, path, pname, value))
+ {
+ context->pathParameterf(path, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY PathParameteriCHROMIUM(GLuint path, GLenum pname, GLint value)
+{
+ EVENT("(GLuint path = %u, GLenum pname = 0x%X, GLint value = %d)", path, pname, value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PathParameteriCHROMIUM, context, path, pname, value);
+ if (context->skipValidation() ||
+ ValidatePathParameteriCHROMIUM(context, path, pname, value))
+ {
+ context->pathParameteri(path, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY GetPathParameterfvCHROMIUM(GLuint path, GLenum pname, GLfloat *value)
+{
+ EVENT("(GLuint path = %u, GLenum pname = 0x%X, GLfloat * value = 0x%016" PRIxPTR ")", path,
+ pname, (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetPathParameterfvCHROMIUM, context, path, pname, value);
+ if (context->skipValidation() ||
+ ValidateGetPathParameterfvCHROMIUM(context, path, pname, value))
+ {
+ context->getPathParameterfv(path, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY GetPathParameterivCHROMIUM(GLuint path, GLenum pname, GLint *value)
+{
+ EVENT("(GLuint path = %u, GLenum pname = 0x%X, GLint * value = 0x%016" PRIxPTR ")", path, pname,
+ (uintptr_t)value);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetPathParameterivCHROMIUM, context, path, pname, value);
+ if (context->skipValidation() ||
+ ValidateGetPathParameterivCHROMIUM(context, path, pname, value))
+ {
+ context->getPathParameteriv(path, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY PathStencilFuncCHROMIUM(GLenum func, GLint ref, GLuint mask)
+{
+ EVENT("(GLenum func = 0x%X, GLint ref = %d, GLuint mask = %u)", func, ref, mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PathStencilFuncCHROMIUM, context, func, ref, mask);
+ if (context->skipValidation() || ValidatePathStencilFuncCHROMIUM(context, func, ref, mask))
+ {
+ context->pathStencilFunc(func, ref, mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilFillPathCHROMIUM(GLuint path, GLenum fillMode, GLuint mask)
+{
+ EVENT("(GLuint path = %u, GLenum fillMode = 0x%X, GLuint mask = %u)", path, fillMode, mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilFillPathCHROMIUM, context, path, fillMode, mask);
+ if (context->skipValidation() ||
+ ValidateStencilFillPathCHROMIUM(context, path, fillMode, mask))
+ {
+ context->stencilFillPath(path, fillMode, mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilStrokePathCHROMIUM(GLuint path, GLint reference, GLuint mask)
+{
+ EVENT("(GLuint path = %u, GLint reference = %d, GLuint mask = %u)", path, reference, mask);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilStrokePathCHROMIUM, context, path, reference, mask);
+ if (context->skipValidation() ||
+ ValidateStencilStrokePathCHROMIUM(context, path, reference, mask))
+ {
+ context->stencilStrokePath(path, reference, mask);
+ }
+ }
+}
+
+void GL_APIENTRY CoverFillPathCHROMIUM(GLuint path, GLenum coverMode)
+{
+ EVENT("(GLuint path = %u, GLenum coverMode = 0x%X)", path, coverMode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CoverFillPathCHROMIUM, context, path, coverMode);
+ if (context->skipValidation() || ValidateCoverFillPathCHROMIUM(context, path, coverMode))
+ {
+ context->coverFillPath(path, coverMode);
+ }
+ }
+}
+
+void GL_APIENTRY CoverStrokePathCHROMIUM(GLuint path, GLenum coverMode)
+{
+ EVENT("(GLuint path = %u, GLenum coverMode = 0x%X)", path, coverMode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CoverStrokePathCHROMIUM, context, path, coverMode);
+ if (context->skipValidation() || ValidateCoverStrokePathCHROMIUM(context, path, coverMode))
+ {
+ context->coverStrokePath(path, coverMode);
+ }
+ }
+}
+
+void GL_APIENTRY StencilThenCoverFillPathCHROMIUM(GLuint path,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode)
+{
+ EVENT("(GLuint path = %u, GLenum fillMode = 0x%X, GLuint mask = %u, GLenum coverMode = 0x%X)",
+ path, fillMode, mask, coverMode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilThenCoverFillPathCHROMIUM, context, path, fillMode, mask, coverMode);
+ if (context->skipValidation() ||
+ ValidateStencilThenCoverFillPathCHROMIUM(context, path, fillMode, mask, coverMode))
+ {
+ context->stencilThenCoverFillPath(path, fillMode, mask, coverMode);
+ }
+ }
+}
+
+void GL_APIENTRY StencilThenCoverStrokePathCHROMIUM(GLuint path,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode)
+{
+ EVENT("(GLuint path = %u, GLint reference = %d, GLuint mask = %u, GLenum coverMode = 0x%X)",
+ path, reference, mask, coverMode);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilThenCoverStrokePathCHROMIUM, context, path, reference, mask,
+ coverMode);
+ if (context->skipValidation() ||
+ ValidateStencilThenCoverStrokePathCHROMIUM(context, path, reference, mask, coverMode))
+ {
+ context->stencilThenCoverStrokePath(path, reference, mask, coverMode);
+ }
+ }
+}
+
+void GL_APIENTRY CoverFillPathInstancedCHROMIUM(GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPath = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLenum coverMode = 0x%X, GLenum transformType = 0x%X, const "
+ "GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPath, pathNameType, (uintptr_t)paths, pathBase, coverMode, transformType,
+ (uintptr_t)transformValues);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CoverFillPathInstancedCHROMIUM, context, numPath, pathNameType, paths,
+ pathBase, coverMode, transformType, transformValues);
+ if (context->skipValidation() ||
+ ValidateCoverFillPathInstancedCHROMIUM(context, numPath, pathNameType, paths, pathBase,
+ coverMode, transformType, transformValues))
+ {
+ context->coverFillPathInstanced(numPath, pathNameType, paths, pathBase, coverMode,
+ transformType, transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY CoverStrokePathInstancedCHROMIUM(GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPath = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLenum coverMode = 0x%X, GLenum transformType = 0x%X, const "
+ "GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPath, pathNameType, (uintptr_t)paths, pathBase, coverMode, transformType,
+ (uintptr_t)transformValues);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CoverStrokePathInstancedCHROMIUM, context, numPath, pathNameType, paths,
+ pathBase, coverMode, transformType, transformValues);
+ if (context->skipValidation() || ValidateCoverStrokePathInstancedCHROMIUM(
+ context, numPath, pathNameType, paths, pathBase,
+ coverMode, transformType, transformValues))
+ {
+ context->coverStrokePathInstanced(numPath, pathNameType, paths, pathBase, coverMode,
+ transformType, transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY StencilStrokePathInstancedCHROMIUM(GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPath = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLint reference = %d, GLuint mask = %u, GLenum transformType = "
+ "0x%X, const GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPath, pathNameType, (uintptr_t)paths, pathBase, reference, mask, transformType,
+ (uintptr_t)transformValues);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilStrokePathInstancedCHROMIUM, context, numPath, pathNameType, paths,
+ pathBase, reference, mask, transformType, transformValues);
+ if (context->skipValidation() || ValidateStencilStrokePathInstancedCHROMIUM(
+ context, numPath, pathNameType, paths, pathBase,
+ reference, mask, transformType, transformValues))
+ {
+ context->stencilStrokePathInstanced(numPath, pathNameType, paths, pathBase, reference,
+ mask, transformType, transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY StencilFillPathInstancedCHROMIUM(GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPaths = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLenum fillMode = 0x%X, GLuint mask = %u, GLenum transformType "
+ "= 0x%X, const GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPaths, pathNameType, (uintptr_t)paths, pathBase, fillMode, mask, transformType,
+ (uintptr_t)transformValues);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilFillPathInstancedCHROMIUM, context, numPaths, pathNameType, paths,
+ pathBase, fillMode, mask, transformType, transformValues);
+ if (context->skipValidation() || ValidateStencilFillPathInstancedCHROMIUM(
+ context, numPaths, pathNameType, paths, pathBase,
+ fillMode, mask, transformType, transformValues))
+ {
+ context->stencilFillPathInstanced(numPaths, pathNameType, paths, pathBase, fillMode,
+ mask, transformType, transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY StencilThenCoverFillPathInstancedCHROMIUM(GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPaths = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLenum fillMode = 0x%X, GLuint mask = %u, GLenum coverMode = "
+ "0x%X, GLenum transformType = 0x%X, const GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPaths, pathNameType, (uintptr_t)paths, pathBase, fillMode, mask, coverMode,
+ transformType, (uintptr_t)transformValues);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilThenCoverFillPathInstancedCHROMIUM, context, numPaths, pathNameType,
+ paths, pathBase, fillMode, mask, coverMode, transformType, transformValues);
+ if (context->skipValidation() ||
+ ValidateStencilThenCoverFillPathInstancedCHROMIUM(
+ context, numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode,
+ transformType, transformValues))
+ {
+ context->stencilThenCoverFillPathInstanced(numPaths, pathNameType, paths, pathBase,
+ fillMode, mask, coverMode, transformType,
+ transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY StencilThenCoverStrokePathInstancedCHROMIUM(GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPaths = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLint reference = %d, GLuint mask = %u, GLenum coverMode = "
+ "0x%X, GLenum transformType = 0x%X, const GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPaths, pathNameType, (uintptr_t)paths, pathBase, reference, mask, coverMode,
+ transformType, (uintptr_t)transformValues);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(StencilThenCoverStrokePathInstancedCHROMIUM, context, numPaths, pathNameType,
+ paths, pathBase, reference, mask, coverMode, transformType, transformValues);
+ if (context->skipValidation() ||
+ ValidateStencilThenCoverStrokePathInstancedCHROMIUM(
+ context, numPaths, pathNameType, paths, pathBase, reference, mask, coverMode,
+ transformType, transformValues))
+ {
+ context->stencilThenCoverStrokePathInstanced(numPaths, pathNameType, paths, pathBase,
+ reference, mask, coverMode, transformType,
+ transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY BindFragmentInputLocationCHROMIUM(GLuint programs,
+ GLint location,
+ const GLchar *name)
+{
+ EVENT("(GLuint programs = %u, GLint location = %d, const GLchar * name = 0x%016" PRIxPTR ")",
+ programs, location, (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindFragmentInputLocationCHROMIUM, context, programs, location, name);
+ if (context->skipValidation() ||
+ ValidateBindFragmentInputLocationCHROMIUM(context, programs, location, name))
+ {
+ context->bindFragmentInputLocation(programs, location, name);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramPathFragmentInputGenCHROMIUM(GLuint program,
+ GLint location,
+ GLenum genMode,
+ GLint components,
+ const GLfloat *coeffs)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLenum genMode = 0x%X, GLint components = %d, "
+ "const GLfloat * coeffs = 0x%016" PRIxPTR ")",
+ program, location, genMode, components, (uintptr_t)coeffs);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramPathFragmentInputGenCHROMIUM, context, program, location, genMode,
+ components, coeffs);
+ if (context->skipValidation() ||
+ ValidateProgramPathFragmentInputGenCHROMIUM(context, program, location, genMode,
+ components, coeffs))
+ {
+ context->programPathFragmentInputGen(program, location, genMode, components, coeffs);
+ }
+ }
+}
+
+// GL_EXT_blend_func_extended
+void GL_APIENTRY BindFragDataLocationEXT(GLuint program, GLuint color, const GLchar *name)
+{
+ EVENT("(GLuint program = %u, GLuint color = %u, const GLchar *name = 0x%016" PRIxPTR ")",
+ program, color, (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindFragDataLocationEXT, context, program, color, name);
+ if (context->skipValidation() ||
+ ValidateBindFragDataLocationEXT(context, program, color, name))
+ {
+ context->bindFragDataLocation(program, color, name);
+ }
+ }
+}
+
+void GL_APIENTRY BindFragDataLocationIndexedEXT(GLuint program,
+ GLuint colorNumber,
+ GLuint index,
+ const GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint colorNumber = %u, GLuint index = %u, const GLchar *name = "
+ "0x%016" PRIxPTR ")",
+ program, colorNumber, index, (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindFragDataLocationIndexedEXT, context, program, colorNumber, index, name);
+ if (context->skipValidation() ||
+ ValidateBindFragDataLocationIndexedEXT(context, program, colorNumber, index, name))
+ {
+ context->bindFragDataLocationIndexed(program, colorNumber, index, name);
+ }
+ }
+}
+
+GLint GL_APIENTRY GetFragDataIndexEXT(GLuint program, const GLchar *name)
+{
+ EVENT("(GLuint program = %u, const GLchar *name = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFragDataIndexEXT, context, program, name);
+ if (context->skipValidation() || ValidateGetFragDataIndexEXT(context, program, name))
+ {
+ return context->getFragDataIndex(program, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetFragDataIndexEXT, GLint>();
+}
+
+GLint GL_APIENTRY GetProgramResourceLocationIndexEXT(GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, const GLchar *name = 0x%016" PRIxPTR
+ ")",
+ program, programInterface, (uintptr_t)name);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramResourceLocationIndexEXT, context, program, programInterface, name);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceLocationIndexEXT(context, program, programInterface, name))
+ {
+ return context->getProgramResourceLocationIndex(program, programInterface, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetProgramResourceLocationIndexEXT, GLint>();
+}
+
+// GL_EXT_debug_marker
+void GL_APIENTRY InsertEventMarkerEXT(GLsizei length, const GLchar *marker)
+{
+ // Don't run an EVENT() macro on the EXT_debug_marker entry points.
+ // It can interfere with the debug events being set by the caller.
+ // EVENT("(GLsizei length = %d, const GLchar *marker = 0x%016" PRIxPTR ")", length,
+ // (uintptr_t)marker);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(InsertEventMarkerEXT, context, length, marker);
+ if (context->skipValidation() || ValidateInsertEventMarkerEXT(context, length, marker))
+ {
+ context->insertEventMarker(length, marker);
+ }
+ }
+}
+
+void GL_APIENTRY PopGroupMarkerEXT()
+{
+ // Don't run an EVENT() macro on the EXT_debug_marker entry points.
+ // It can interfere with the debug events being set by the caller.
+ // EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PopGroupMarkerEXT, context);
+ if (context->skipValidation() || ValidatePopGroupMarkerEXT(context))
+ {
+ context->popGroupMarker();
+ }
+ }
+}
+
+void GL_APIENTRY PushGroupMarkerEXT(GLsizei length, const GLchar *marker)
+{
+ // Don't run an EVENT() macro on the EXT_debug_marker entry points.
+ // It can interfere with the debug events being set by the caller.
+ // EVENT("(GLsizei length = %d, const GLchar *marker = 0x%016" PRIxPTR ")", length,
+ // (uintptr_t)marker);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PushGroupMarkerEXT, context, length, marker);
+ if (context->skipValidation() || ValidatePushGroupMarkerEXT(context, length, marker))
+ {
+ context->pushGroupMarker(length, marker);
+ }
+ }
+}
+
+// GL_EXT_discard_framebuffer
+void GL_APIENTRY DiscardFramebufferEXT(GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei numAttachments = %d, const GLenum *attachments = "
+ "0x%016" PRIxPTR ")",
+ target, numAttachments, (uintptr_t)attachments);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DiscardFramebufferEXT, context, target, numAttachments, attachments);
+ if (context->skipValidation() ||
+ ValidateDiscardFramebufferEXT(context, target, numAttachments, attachments))
+ {
+ context->discardFramebuffer(target, numAttachments, attachments);
+ }
+ }
+}
+
+// GL_EXT_disjoint_timer_query
+void GL_APIENTRY BeginQueryEXT(GLenum target, GLuint id)
+{
+ EVENT("(GLenum target = 0x%X, GLuint id = %u)", target, id);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(BeginQueryEXT, context, targetPacked, id);
+ if (context->skipValidation() || ValidateBeginQueryEXT(context, targetPacked, id))
+ {
+ context->beginQuery(targetPacked, id);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteQueriesEXT(GLsizei n, const GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, const GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteQueriesEXT, context, n, ids);
+ if (context->skipValidation() || ValidateDeleteQueriesEXT(context, n, ids))
+ {
+ context->deleteQueries(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY EndQueryEXT(GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(EndQueryEXT, context, targetPacked);
+ if (context->skipValidation() || ValidateEndQueryEXT(context, targetPacked))
+ {
+ context->endQuery(targetPacked);
+ }
+ }
+}
+
+void GL_APIENTRY GenQueriesEXT(GLsizei n, GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenQueriesEXT, context, n, ids);
+ if (context->skipValidation() || ValidateGenQueriesEXT(context, n, ids))
+ {
+ context->genQueries(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjecti64vEXT(GLuint id, GLenum pname, GLint64 *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLint64 *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetQueryObjecti64vEXT, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjecti64vEXT(context, id, pname, params))
+ {
+ context->getQueryObjecti64v(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectivEXT(GLuint id, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetQueryObjectivEXT, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjectivEXT(context, id, pname, params))
+ {
+ context->getQueryObjectiv(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectui64vEXT(GLuint id, GLenum pname, GLuint64 *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLuint64 *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetQueryObjectui64vEXT, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjectui64vEXT(context, id, pname, params))
+ {
+ context->getQueryObjectui64v(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectuivEXT(GLuint id, GLenum pname, GLuint *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetQueryObjectuivEXT, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjectuivEXT(context, id, pname, params))
+ {
+ context->getQueryObjectuiv(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryivEXT(GLenum target, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(GetQueryivEXT, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryivEXT(context, targetPacked, pname, params))
+ {
+ context->getQueryiv(targetPacked, pname, params);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsQueryEXT(GLuint id)
+{
+ EVENT("(GLuint id = %u)", id);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsQueryEXT, context, id);
+ if (context->skipValidation() || ValidateIsQueryEXT(context, id))
+ {
+ return context->isQuery(id);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsQueryEXT, GLboolean>();
+}
+
+void GL_APIENTRY QueryCounterEXT(GLuint id, GLenum target)
+{
+ EVENT("(GLuint id = %u, GLenum target = 0x%X)", id, target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(QueryCounterEXT, context, id, targetPacked);
+ if (context->skipValidation() || ValidateQueryCounterEXT(context, id, targetPacked))
+ {
+ context->queryCounter(id, targetPacked);
+ }
+ }
+}
+
+// GL_EXT_draw_buffers
+void GL_APIENTRY DrawBuffersEXT(GLsizei n, const GLenum *bufs)
+{
+ EVENT("(GLsizei n = %d, const GLenum *bufs = 0x%016" PRIxPTR ")", n, (uintptr_t)bufs);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawBuffersEXT, context, n, bufs);
+ if (context->skipValidation() || ValidateDrawBuffersEXT(context, n, bufs))
+ {
+ context->drawBuffers(n, bufs);
+ }
+ }
+}
+
+// GL_EXT_geometry_shader
+void GL_APIENTRY FramebufferTextureEXT(GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level)
+{
+ EVENT("(GLenum target = 0x%X, GLenum attachment = 0x%X, GLuint texture = %u, GLint level = %d)",
+ target, attachment, texture, level);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(FramebufferTextureEXT, context, target, attachment, texture, level);
+ if (context->skipValidation() ||
+ ValidateFramebufferTextureEXT(context, target, attachment, texture, level))
+ {
+ context->framebufferTexture(target, attachment, texture, level);
+ }
+ }
+}
+
+// GL_EXT_instanced_arrays
+void GL_APIENTRY DrawArraysInstancedEXT(GLenum mode, GLint start, GLsizei count, GLsizei primcount)
+{
+ EVENT("(GLenum mode = 0x%X, GLint start = %d, GLsizei count = %d, GLsizei primcount = %d)",
+ mode, start, count, primcount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArraysInstancedEXT, context, modePacked, start, count, primcount);
+ if (context->skipValidation() ||
+ ValidateDrawArraysInstancedEXT(context, modePacked, start, count, primcount))
+ {
+ context->drawArraysInstanced(modePacked, start, count, primcount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElementsInstancedEXT(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
+ "0x%016" PRIxPTR ", GLsizei primcount = %d)",
+ mode, count, type, (uintptr_t)indices, primcount);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElementsInstancedEXT, context, modePacked, count, typePacked, indices,
+ primcount);
+ if (context->skipValidation() ||
+ ValidateDrawElementsInstancedEXT(context, modePacked, count, typePacked, indices,
+ primcount))
+ {
+ context->drawElementsInstanced(modePacked, count, typePacked, indices, primcount);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribDivisorEXT(GLuint index, GLuint divisor)
+{
+ EVENT("(GLuint index = %u, GLuint divisor = %u)", index, divisor);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(VertexAttribDivisorEXT, context, index, divisor);
+ if (context->skipValidation() || ValidateVertexAttribDivisorEXT(context, index, divisor))
+ {
+ context->vertexAttribDivisor(index, divisor);
+ }
+ }
+}
+
+// GL_EXT_map_buffer_range
+void GL_APIENTRY FlushMappedBufferRangeEXT(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ EVENT("(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr length = %llu)", target,
+ static_cast<unsigned long long>(offset), static_cast<unsigned long long>(length));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(FlushMappedBufferRangeEXT, context, targetPacked, offset, length);
+ if (context->skipValidation() ||
+ ValidateFlushMappedBufferRangeEXT(context, targetPacked, offset, length))
+ {
+ context->flushMappedBufferRange(targetPacked, offset, length);
+ }
+ }
+}
+
+void *GL_APIENTRY MapBufferRangeEXT(GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr length = %llu, GLbitfield "
+ "access = 0x%X)",
+ target, static_cast<unsigned long long>(offset), static_cast<unsigned long long>(length),
+ access);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(MapBufferRangeEXT, context, targetPacked, offset, length, access);
+ if (context->skipValidation() ||
+ ValidateMapBufferRangeEXT(context, targetPacked, offset, length, access))
+ {
+ return context->mapBufferRange(targetPacked, offset, length, access);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::MapBufferRangeEXT, void *>();
+}
+
+// GL_EXT_memory_object
+void GL_APIENTRY BufferStorageMemEXT(GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizeiptr size = %llu, GLuint memory = %u, GLuint64 offset = "
+ "%llu)",
+ target, static_cast<unsigned long long>(size), memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(BufferStorageMemEXT, context, targetPacked, size, memory, offset);
+ if (context->skipValidation() ||
+ ValidateBufferStorageMemEXT(context, targetPacked, size, memory, offset))
+ {
+ context->bufferStorageMem(targetPacked, size, memory, offset);
+ }
+ }
+}
+
+void GL_APIENTRY CreateMemoryObjectsEXT(GLsizei n, GLuint *memoryObjects)
+{
+ EVENT("(GLsizei n = %d, GLuint *memoryObjects = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)memoryObjects);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CreateMemoryObjectsEXT, context, n, memoryObjects);
+ if (context->skipValidation() || ValidateCreateMemoryObjectsEXT(context, n, memoryObjects))
+ {
+ context->createMemoryObjects(n, memoryObjects);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteMemoryObjectsEXT(GLsizei n, const GLuint *memoryObjects)
+{
+ EVENT("(GLsizei n = %d, const GLuint *memoryObjects = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)memoryObjects);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteMemoryObjectsEXT, context, n, memoryObjects);
+ if (context->skipValidation() || ValidateDeleteMemoryObjectsEXT(context, n, memoryObjects))
+ {
+ context->deleteMemoryObjects(n, memoryObjects);
+ }
+ }
+}
+
+void GL_APIENTRY GetMemoryObjectParameterivEXT(GLuint memoryObject, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint memoryObject = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")",
+ memoryObject, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetMemoryObjectParameterivEXT, context, memoryObject, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetMemoryObjectParameterivEXT(context, memoryObject, pname, params))
+ {
+ context->getMemoryObjectParameteriv(memoryObject, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUnsignedBytevEXT(GLenum pname, GLubyte *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLubyte *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUnsignedBytevEXT, context, pname, data);
+ if (context->skipValidation() || ValidateGetUnsignedBytevEXT(context, pname, data))
+ {
+ context->getUnsignedBytev(pname, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetUnsignedBytei_vEXT(GLenum target, GLuint index, GLubyte *data)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLubyte *data = 0x%016" PRIxPTR ")", target,
+ index, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetUnsignedBytei_vEXT, context, target, index, data);
+ if (context->skipValidation() ||
+ ValidateGetUnsignedBytei_vEXT(context, target, index, data))
+ {
+ context->getUnsignedBytei_v(target, index, data);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsMemoryObjectEXT(GLuint memoryObject)
+{
+ EVENT("(GLuint memoryObject = %u)", memoryObject);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsMemoryObjectEXT, context, memoryObject);
+ if (context->skipValidation() || ValidateIsMemoryObjectEXT(context, memoryObject))
+ {
+ return context->isMemoryObject(memoryObject);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsMemoryObjectEXT, GLboolean>();
+}
+
+void GL_APIENTRY MemoryObjectParameterivEXT(GLuint memoryObject, GLenum pname, const GLint *params)
+{
+ EVENT("(GLuint memoryObject = %u, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR
+ ")",
+ memoryObject, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MemoryObjectParameterivEXT, context, memoryObject, pname, params);
+ if (context->skipValidation() ||
+ ValidateMemoryObjectParameterivEXT(context, memoryObject, pname, params))
+ {
+ context->memoryObjectParameteriv(memoryObject, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorageMem2DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLuint memory,
+ GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalFormat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLuint memory = %u, GLuint64 offset = %llu)",
+ target, levels, internalFormat, width, height, memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorageMem2DEXT, context, targetPacked, levels, internalFormat, width,
+ height, memory, offset);
+ if (context->skipValidation() ||
+ ValidateTexStorageMem2DEXT(context, targetPacked, levels, internalFormat, width, height,
+ memory, offset))
+ {
+ context->texStorageMem2D(targetPacked, levels, internalFormat, width, height, memory,
+ offset);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorageMem2DMultisampleEXT(GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalFormat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLboolean fixedSampleLocations = %u, GLuint memory = %u, "
+ "GLuint64 offset = %llu)",
+ target, samples, internalFormat, width, height, fixedSampleLocations, memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorageMem2DMultisampleEXT, context, targetPacked, samples, internalFormat,
+ width, height, fixedSampleLocations, memory, offset);
+ if (context->skipValidation() || ValidateTexStorageMem2DMultisampleEXT(
+ context, targetPacked, samples, internalFormat, width,
+ height, fixedSampleLocations, memory, offset))
+ {
+ context->texStorageMem2DMultisample(targetPacked, samples, internalFormat, width,
+ height, fixedSampleLocations, memory, offset);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorageMem3DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLuint memory,
+ GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalFormat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLuint memory = %u, GLuint64 offset = %llu)",
+ target, levels, internalFormat, width, height, depth, memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorageMem3DEXT, context, targetPacked, levels, internalFormat, width,
+ height, depth, memory, offset);
+ if (context->skipValidation() ||
+ ValidateTexStorageMem3DEXT(context, targetPacked, levels, internalFormat, width, height,
+ depth, memory, offset))
+ {
+ context->texStorageMem3D(targetPacked, levels, internalFormat, width, height, depth,
+ memory, offset);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorageMem3DMultisampleEXT(GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalFormat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLsizei depth = %d, GLboolean fixedSampleLocations = %u, "
+ "GLuint memory = %u, GLuint64 offset = %llu)",
+ target, samples, internalFormat, width, height, depth, fixedSampleLocations, memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorageMem3DMultisampleEXT, context, targetPacked, samples, internalFormat,
+ width, height, depth, fixedSampleLocations, memory, offset);
+ if (context->skipValidation() || ValidateTexStorageMem3DMultisampleEXT(
+ context, targetPacked, samples, internalFormat, width,
+ height, depth, fixedSampleLocations, memory, offset))
+ {
+ context->texStorageMem3DMultisample(targetPacked, samples, internalFormat, width,
+ height, depth, fixedSampleLocations, memory,
+ offset);
+ }
+ }
+}
+
+// GL_EXT_memory_object_fd
+void GL_APIENTRY ImportMemoryFdEXT(GLuint memory, GLuint64 size, GLenum handleType, GLint fd)
+{
+ EVENT("(GLuint memory = %u, GLuint64 size = %llu, GLenum handleType = 0x%X, GLint fd = %d)",
+ memory, static_cast<unsigned long long>(size), handleType, fd);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ HandleType handleTypePacked = FromGLenum<HandleType>(handleType);
+ ANGLE_CAPTURE(ImportMemoryFdEXT, context, memory, size, handleTypePacked, fd);
+ if (context->skipValidation() ||
+ ValidateImportMemoryFdEXT(context, memory, size, handleTypePacked, fd))
+ {
+ context->importMemoryFd(memory, size, handleTypePacked, fd);
+ }
+ }
+}
+
+// GL_EXT_occlusion_query_boolean
+// BeginQueryEXT is already defined.
+
+// DeleteQueriesEXT is already defined.
+
+// EndQueryEXT is already defined.
+
+// GenQueriesEXT is already defined.
+
+// GetQueryObjectuivEXT is already defined.
+
+// GetQueryivEXT is already defined.
+
+// IsQueryEXT is already defined.
+
+// GL_EXT_robustness
+GLenum GL_APIENTRY GetGraphicsResetStatusEXT()
+{
+ EVENT("()");
+
+ Context *context = GetGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetGraphicsResetStatusEXT, context);
+ if (context->skipValidation() || ValidateGetGraphicsResetStatusEXT(context))
+ {
+ return context->getGraphicsResetStatus();
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetGraphicsResetStatusEXT, GLenum>();
+}
+
+void GL_APIENTRY GetnUniformfvEXT(GLuint program, GLint location, GLsizei bufSize, GLfloat *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLfloat *params = "
+ "0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetnUniformfvEXT, context, program, location, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformfvEXT(context, program, location, bufSize, params))
+ {
+ context->getnUniformfv(program, location, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetnUniformivEXT(GLuint program, GLint location, GLsizei bufSize, GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetnUniformivEXT, context, program, location, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformivEXT(context, program, location, bufSize, params))
+ {
+ context->getnUniformiv(program, location, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY ReadnPixelsEXT(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ void *data)
+{
+ EVENT(
+ "(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLenum format = "
+ "0x%X, GLenum type = 0x%X, GLsizei bufSize = %d, void *data = 0x%016" PRIxPTR ")",
+ x, y, width, height, format, type, bufSize, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ReadnPixelsEXT, context, x, y, width, height, format, type, bufSize, data);
+ if (context->skipValidation() ||
+ ValidateReadnPixelsEXT(context, x, y, width, height, format, type, bufSize, data))
+ {
+ context->readnPixels(x, y, width, height, format, type, bufSize, data);
+ }
+ }
+}
+
+// GL_EXT_semaphore
+void GL_APIENTRY DeleteSemaphoresEXT(GLsizei n, const GLuint *semaphores)
+{
+ EVENT("(GLsizei n = %d, const GLuint *semaphores = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)semaphores);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteSemaphoresEXT, context, n, semaphores);
+ if (context->skipValidation() || ValidateDeleteSemaphoresEXT(context, n, semaphores))
+ {
+ context->deleteSemaphores(n, semaphores);
+ }
+ }
+}
+
+void GL_APIENTRY GenSemaphoresEXT(GLsizei n, GLuint *semaphores)
+{
+ EVENT("(GLsizei n = %d, GLuint *semaphores = 0x%016" PRIxPTR ")", n, (uintptr_t)semaphores);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenSemaphoresEXT, context, n, semaphores);
+ if (context->skipValidation() || ValidateGenSemaphoresEXT(context, n, semaphores))
+ {
+ context->genSemaphores(n, semaphores);
+ }
+ }
+}
+
+void GL_APIENTRY GetSemaphoreParameterui64vEXT(GLuint semaphore, GLenum pname, GLuint64 *params)
+{
+ EVENT("(GLuint semaphore = %u, GLenum pname = 0x%X, GLuint64 *params = 0x%016" PRIxPTR ")",
+ semaphore, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSemaphoreParameterui64vEXT, context, semaphore, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSemaphoreParameterui64vEXT(context, semaphore, pname, params))
+ {
+ context->getSemaphoreParameterui64v(semaphore, pname, params);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsSemaphoreEXT(GLuint semaphore)
+{
+ EVENT("(GLuint semaphore = %u)", semaphore);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsSemaphoreEXT, context, semaphore);
+ if (context->skipValidation() || ValidateIsSemaphoreEXT(context, semaphore))
+ {
+ return context->isSemaphore(semaphore);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsSemaphoreEXT, GLboolean>();
+}
+
+void GL_APIENTRY SemaphoreParameterui64vEXT(GLuint semaphore, GLenum pname, const GLuint64 *params)
+{
+ EVENT("(GLuint semaphore = %u, GLenum pname = 0x%X, const GLuint64 *params = 0x%016" PRIxPTR
+ ")",
+ semaphore, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SemaphoreParameterui64vEXT, context, semaphore, pname, params);
+ if (context->skipValidation() ||
+ ValidateSemaphoreParameterui64vEXT(context, semaphore, pname, params))
+ {
+ context->semaphoreParameterui64v(semaphore, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY SignalSemaphoreEXT(GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *dstLayouts)
+{
+ EVENT(
+ "(GLuint semaphore = %u, GLuint numBufferBarriers = %u, const GLuint *buffers = "
+ "0x%016" PRIxPTR ", GLuint numTextureBarriers = %u, const GLuint *textures = 0x%016" PRIxPTR
+ ", const GLenum *dstLayouts = 0x%016" PRIxPTR ")",
+ semaphore, numBufferBarriers, (uintptr_t)buffers, numTextureBarriers, (uintptr_t)textures,
+ (uintptr_t)dstLayouts);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SignalSemaphoreEXT, context, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, dstLayouts);
+ if (context->skipValidation() ||
+ ValidateSignalSemaphoreEXT(context, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, dstLayouts))
+ {
+ context->signalSemaphore(semaphore, numBufferBarriers, buffers, numTextureBarriers,
+ textures, dstLayouts);
+ }
+ }
+}
+
+void GL_APIENTRY WaitSemaphoreEXT(GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *srcLayouts)
+{
+ EVENT(
+ "(GLuint semaphore = %u, GLuint numBufferBarriers = %u, const GLuint *buffers = "
+ "0x%016" PRIxPTR ", GLuint numTextureBarriers = %u, const GLuint *textures = 0x%016" PRIxPTR
+ ", const GLenum *srcLayouts = 0x%016" PRIxPTR ")",
+ semaphore, numBufferBarriers, (uintptr_t)buffers, numTextureBarriers, (uintptr_t)textures,
+ (uintptr_t)srcLayouts);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(WaitSemaphoreEXT, context, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, srcLayouts);
+ if (context->skipValidation() ||
+ ValidateWaitSemaphoreEXT(context, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, srcLayouts))
+ {
+ context->waitSemaphore(semaphore, numBufferBarriers, buffers, numTextureBarriers,
+ textures, srcLayouts);
+ }
+ }
+}
+
+// GetUnsignedBytei_vEXT is already defined.
+
+// GetUnsignedBytevEXT is already defined.
+
+// GL_EXT_semaphore_fd
+void GL_APIENTRY ImportSemaphoreFdEXT(GLuint semaphore, GLenum handleType, GLint fd)
+{
+ EVENT("(GLuint semaphore = %u, GLenum handleType = 0x%X, GLint fd = %d)", semaphore, handleType,
+ fd);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ HandleType handleTypePacked = FromGLenum<HandleType>(handleType);
+ ANGLE_CAPTURE(ImportSemaphoreFdEXT, context, semaphore, handleTypePacked, fd);
+ if (context->skipValidation() ||
+ ValidateImportSemaphoreFdEXT(context, semaphore, handleTypePacked, fd))
+ {
+ context->importSemaphoreFd(semaphore, handleTypePacked, fd);
+ }
+ }
+}
+
+// GL_EXT_texture_storage
+void GL_APIENTRY TexStorage1DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d)",
+ target, levels, internalformat, width);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(TexStorage1DEXT, context, target, levels, internalformat, width);
+ if (context->skipValidation() ||
+ ValidateTexStorage1DEXT(context, target, levels, internalformat, width))
+ {
+ context->texStorage1D(target, levels, internalformat, width);
+ }
+ }
+}
+
+void GL_APIENTRY
+TexStorage2DEXT(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d)",
+ target, levels, internalformat, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage2DEXT, context, targetPacked, levels, internalformat, width,
+ height);
+ if (context->skipValidation() ||
+ ValidateTexStorage2DEXT(context, targetPacked, levels, internalformat, width, height))
+ {
+ context->texStorage2D(targetPacked, levels, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage3DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d)",
+ target, levels, internalformat, width, height, depth);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage3DEXT, context, targetPacked, levels, internalformat, width, height,
+ depth);
+ if (context->skipValidation() ||
+ ValidateTexStorage3DEXT(context, targetPacked, levels, internalformat, width, height,
+ depth))
+ {
+ context->texStorage3D(targetPacked, levels, internalformat, width, height, depth);
+ }
+ }
+}
+
+// GL_KHR_debug
+void GL_APIENTRY DebugMessageCallbackKHR(GLDEBUGPROCKHR callback, const void *userParam)
+{
+ EVENT("(GLDEBUGPROCKHR callback = 0x%016" PRIxPTR ", const void *userParam = 0x%016" PRIxPTR
+ ")",
+ (uintptr_t)callback, (uintptr_t)userParam);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DebugMessageCallbackKHR, context, callback, userParam);
+ if (context->skipValidation() ||
+ ValidateDebugMessageCallbackKHR(context, callback, userParam))
+ {
+ context->debugMessageCallback(callback, userParam);
+ }
+ }
+}
+
+void GL_APIENTRY DebugMessageControlKHR(GLenum source,
+ GLenum type,
+ GLenum severity,
+ GLsizei count,
+ const GLuint *ids,
+ GLboolean enabled)
+{
+ EVENT(
+ "(GLenum source = 0x%X, GLenum type = 0x%X, GLenum severity = 0x%X, GLsizei count = %d, "
+ "const GLuint *ids = 0x%016" PRIxPTR ", GLboolean enabled = %u)",
+ source, type, severity, count, (uintptr_t)ids, enabled);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DebugMessageControlKHR, context, source, type, severity, count, ids, enabled);
+ if (context->skipValidation() ||
+ ValidateDebugMessageControlKHR(context, source, type, severity, count, ids, enabled))
+ {
+ context->debugMessageControl(source, type, severity, count, ids, enabled);
+ }
+ }
+}
+
+void GL_APIENTRY DebugMessageInsertKHR(GLenum source,
+ GLenum type,
+ GLuint id,
+ GLenum severity,
+ GLsizei length,
+ const GLchar *buf)
+{
+ EVENT(
+ "(GLenum source = 0x%X, GLenum type = 0x%X, GLuint id = %u, GLenum severity = 0x%X, "
+ "GLsizei length = %d, const GLchar *buf = 0x%016" PRIxPTR ")",
+ source, type, id, severity, length, (uintptr_t)buf);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DebugMessageInsertKHR, context, source, type, id, severity, length, buf);
+ if (context->skipValidation() ||
+ ValidateDebugMessageInsertKHR(context, source, type, id, severity, length, buf))
+ {
+ context->debugMessageInsert(source, type, id, severity, length, buf);
+ }
+ }
+}
+
+GLuint GL_APIENTRY GetDebugMessageLogKHR(GLuint count,
+ GLsizei bufSize,
+ GLenum *sources,
+ GLenum *types,
+ GLuint *ids,
+ GLenum *severities,
+ GLsizei *lengths,
+ GLchar *messageLog)
+{
+ EVENT("(GLuint count = %u, GLsizei bufSize = %d, GLenum *sources = 0x%016" PRIxPTR
+ ", GLenum *types = 0x%016" PRIxPTR ", GLuint *ids = 0x%016" PRIxPTR
+ ", GLenum *severities = 0x%016" PRIxPTR ", GLsizei *lengths = 0x%016" PRIxPTR
+ ", GLchar *messageLog = 0x%016" PRIxPTR ")",
+ count, bufSize, (uintptr_t)sources, (uintptr_t)types, (uintptr_t)ids,
+ (uintptr_t)severities, (uintptr_t)lengths, (uintptr_t)messageLog);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetDebugMessageLogKHR, context, count, bufSize, sources, types, ids,
+ severities, lengths, messageLog);
+ if (context->skipValidation() ||
+ ValidateGetDebugMessageLogKHR(context, count, bufSize, sources, types, ids, severities,
+ lengths, messageLog))
+ {
+ return context->getDebugMessageLog(count, bufSize, sources, types, ids, severities,
+ lengths, messageLog);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetDebugMessageLogKHR, GLuint>();
+}
+
+void GL_APIENTRY
+GetObjectLabelKHR(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label)
+{
+ EVENT(
+ "(GLenum identifier = 0x%X, GLuint name = %u, GLsizei bufSize = %d, GLsizei *length = "
+ "0x%016" PRIxPTR ", GLchar *label = 0x%016" PRIxPTR ")",
+ identifier, name, bufSize, (uintptr_t)length, (uintptr_t)label);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetObjectLabelKHR, context, identifier, name, bufSize, length, label);
+ if (context->skipValidation() ||
+ ValidateGetObjectLabelKHR(context, identifier, name, bufSize, length, label))
+ {
+ context->getObjectLabel(identifier, name, bufSize, length, label);
+ }
+ }
+}
+
+void GL_APIENTRY GetObjectPtrLabelKHR(const void *ptr,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *label)
+{
+ EVENT("(const void *ptr = 0x%016" PRIxPTR
+ ", GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *label = 0x%016" PRIxPTR ")",
+ (uintptr_t)ptr, bufSize, (uintptr_t)length, (uintptr_t)label);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetObjectPtrLabelKHR, context, ptr, bufSize, length, label);
+ if (context->skipValidation() ||
+ ValidateGetObjectPtrLabelKHR(context, ptr, bufSize, length, label))
+ {
+ context->getObjectPtrLabel(ptr, bufSize, length, label);
+ }
+ }
+}
+
+void GL_APIENTRY GetPointervKHR(GLenum pname, void **params)
+{
+ EVENT("(GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetPointervKHR, context, pname, params);
+ if (context->skipValidation() || ValidateGetPointervKHR(context, pname, params))
+ {
+ context->getPointerv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY ObjectLabelKHR(GLenum identifier, GLuint name, GLsizei length, const GLchar *label)
+{
+ EVENT(
+ "(GLenum identifier = 0x%X, GLuint name = %u, GLsizei length = %d, const GLchar *label = "
+ "0x%016" PRIxPTR ")",
+ identifier, name, length, (uintptr_t)label);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ObjectLabelKHR, context, identifier, name, length, label);
+ if (context->skipValidation() ||
+ ValidateObjectLabelKHR(context, identifier, name, length, label))
+ {
+ context->objectLabel(identifier, name, length, label);
+ }
+ }
+}
+
+void GL_APIENTRY ObjectPtrLabelKHR(const void *ptr, GLsizei length, const GLchar *label)
+{
+ EVENT("(const void *ptr = 0x%016" PRIxPTR
+ ", GLsizei length = %d, const GLchar *label = 0x%016" PRIxPTR ")",
+ (uintptr_t)ptr, length, (uintptr_t)label);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ObjectPtrLabelKHR, context, ptr, length, label);
+ if (context->skipValidation() || ValidateObjectPtrLabelKHR(context, ptr, length, label))
+ {
+ context->objectPtrLabel(ptr, length, label);
+ }
+ }
+}
+
+void GL_APIENTRY PopDebugGroupKHR()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PopDebugGroupKHR, context);
+ if (context->skipValidation() || ValidatePopDebugGroupKHR(context))
+ {
+ context->popDebugGroup();
+ }
+ }
+}
+
+void GL_APIENTRY PushDebugGroupKHR(GLenum source, GLuint id, GLsizei length, const GLchar *message)
+{
+ EVENT(
+ "(GLenum source = 0x%X, GLuint id = %u, GLsizei length = %d, const GLchar *message = "
+ "0x%016" PRIxPTR ")",
+ source, id, length, (uintptr_t)message);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(PushDebugGroupKHR, context, source, id, length, message);
+ if (context->skipValidation() ||
+ ValidatePushDebugGroupKHR(context, source, id, length, message))
+ {
+ context->pushDebugGroup(source, id, length, message);
+ }
+ }
+}
+
+// GL_KHR_parallel_shader_compile
+void GL_APIENTRY MaxShaderCompilerThreadsKHR(GLuint count)
+{
+ EVENT("(GLuint count = %u)", count);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MaxShaderCompilerThreadsKHR, context, count);
+ if (context->skipValidation() || ValidateMaxShaderCompilerThreadsKHR(context, count))
+ {
+ context->maxShaderCompilerThreads(count);
+ }
+ }
+}
+
+// GL_NV_fence
+void GL_APIENTRY DeleteFencesNV(GLsizei n, const GLuint *fences)
+{
+ EVENT("(GLsizei n = %d, const GLuint *fences = 0x%016" PRIxPTR ")", n, (uintptr_t)fences);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteFencesNV, context, n, fences);
+ if (context->skipValidation() || ValidateDeleteFencesNV(context, n, fences))
+ {
+ context->deleteFencesNV(n, fences);
+ }
+ }
+}
+
+void GL_APIENTRY FinishFenceNV(GLuint fence)
+{
+ EVENT("(GLuint fence = %u)", fence);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(FinishFenceNV, context, fence);
+ if (context->skipValidation() || ValidateFinishFenceNV(context, fence))
+ {
+ context->finishFenceNV(fence);
+ }
+ }
+}
+
+void GL_APIENTRY GenFencesNV(GLsizei n, GLuint *fences)
+{
+ EVENT("(GLsizei n = %d, GLuint *fences = 0x%016" PRIxPTR ")", n, (uintptr_t)fences);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenFencesNV, context, n, fences);
+ if (context->skipValidation() || ValidateGenFencesNV(context, n, fences))
+ {
+ context->genFencesNV(n, fences);
+ }
+ }
+}
+
+void GL_APIENTRY GetFenceivNV(GLuint fence, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint fence = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", fence,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFenceivNV, context, fence, pname, params);
+ if (context->skipValidation() || ValidateGetFenceivNV(context, fence, pname, params))
+ {
+ context->getFenceivNV(fence, pname, params);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsFenceNV(GLuint fence)
+{
+ EVENT("(GLuint fence = %u)", fence);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsFenceNV, context, fence);
+ if (context->skipValidation() || ValidateIsFenceNV(context, fence))
+ {
+ return context->isFenceNV(fence);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsFenceNV, GLboolean>();
+}
+
+void GL_APIENTRY SetFenceNV(GLuint fence, GLenum condition)
+{
+ EVENT("(GLuint fence = %u, GLenum condition = 0x%X)", fence, condition);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SetFenceNV, context, fence, condition);
+ if (context->skipValidation() || ValidateSetFenceNV(context, fence, condition))
+ {
+ context->setFenceNV(fence, condition);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY TestFenceNV(GLuint fence)
+{
+ EVENT("(GLuint fence = %u)", fence);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(TestFenceNV, context, fence);
+ if (context->skipValidation() || ValidateTestFenceNV(context, fence))
+ {
+ return context->testFenceNV(fence);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::TestFenceNV, GLboolean>();
+}
+
+// GL_OES_EGL_image
+void GL_APIENTRY EGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image)
+{
+ EVENT("(GLenum target = 0x%X, GLeglImageOES image = 0x%016" PRIxPTR ")", target,
+ (uintptr_t)image);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(EGLImageTargetRenderbufferStorageOES, context, target, image);
+ if (context->skipValidation() ||
+ ValidateEGLImageTargetRenderbufferStorageOES(context, target, image))
+ {
+ context->eGLImageTargetRenderbufferStorage(target, image);
+ }
+ }
+}
+
+void GL_APIENTRY EGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image)
+{
+ EVENT("(GLenum target = 0x%X, GLeglImageOES image = 0x%016" PRIxPTR ")", target,
+ (uintptr_t)image);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(EGLImageTargetTexture2DOES, context, targetPacked, image);
+ if (context->skipValidation() ||
+ ValidateEGLImageTargetTexture2DOES(context, targetPacked, image))
+ {
+ context->eGLImageTargetTexture2D(targetPacked, image);
+ }
+ }
+}
+
+// GL_OES_draw_texture
+void GL_APIENTRY DrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
+{
+ EVENT(
+ "(GLfloat x = %f, GLfloat y = %f, GLfloat z = %f, GLfloat width = %f, GLfloat height = %f)",
+ x, y, z, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawTexfOES, context, x, y, z, width, height);
+ if (context->skipValidation() || ValidateDrawTexfOES(context, x, y, z, width, height))
+ {
+ context->drawTexf(x, y, z, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexfvOES(const GLfloat *coords)
+{
+ EVENT("(const GLfloat *coords = 0x%016" PRIxPTR ")", (uintptr_t)coords);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawTexfvOES, context, coords);
+ if (context->skipValidation() || ValidateDrawTexfvOES(context, coords))
+ {
+ context->drawTexfv(coords);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height)
+{
+ EVENT("(GLint x = %d, GLint y = %d, GLint z = %d, GLint width = %d, GLint height = %d)", x, y,
+ z, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawTexiOES, context, x, y, z, width, height);
+ if (context->skipValidation() || ValidateDrawTexiOES(context, x, y, z, width, height))
+ {
+ context->drawTexi(x, y, z, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexivOES(const GLint *coords)
+{
+ EVENT("(const GLint *coords = 0x%016" PRIxPTR ")", (uintptr_t)coords);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawTexivOES, context, coords);
+ if (context->skipValidation() || ValidateDrawTexivOES(context, coords))
+ {
+ context->drawTexiv(coords);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
+{
+ EVENT(
+ "(GLshort x = %d, GLshort y = %d, GLshort z = %d, GLshort width = %d, GLshort height = %d)",
+ x, y, z, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawTexsOES, context, x, y, z, width, height);
+ if (context->skipValidation() || ValidateDrawTexsOES(context, x, y, z, width, height))
+ {
+ context->drawTexs(x, y, z, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexsvOES(const GLshort *coords)
+{
+ EVENT("(const GLshort *coords = 0x%016" PRIxPTR ")", (uintptr_t)coords);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawTexsvOES, context, coords);
+ if (context->skipValidation() || ValidateDrawTexsvOES(context, coords))
+ {
+ context->drawTexsv(coords);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)
+{
+ EVENT(
+ "(GLfixed x = 0x%X, GLfixed y = 0x%X, GLfixed z = 0x%X, GLfixed width = 0x%X, GLfixed "
+ "height = 0x%X)",
+ x, y, z, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawTexxOES, context, x, y, z, width, height);
+ if (context->skipValidation() || ValidateDrawTexxOES(context, x, y, z, width, height))
+ {
+ context->drawTexx(x, y, z, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexxvOES(const GLfixed *coords)
+{
+ EVENT("(const GLfixed *coords = 0x%016" PRIxPTR ")", (uintptr_t)coords);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DrawTexxvOES, context, coords);
+ if (context->skipValidation() || ValidateDrawTexxvOES(context, coords))
+ {
+ context->drawTexxv(coords);
+ }
+ }
+}
+
+// GL_OES_framebuffer_object
+void GL_APIENTRY BindFramebufferOES(GLenum target, GLuint framebuffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint framebuffer = %u)", target, framebuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindFramebufferOES, context, target, framebuffer);
+ if (context->skipValidation() || ValidateBindFramebufferOES(context, target, framebuffer))
+ {
+ context->bindFramebuffer(target, framebuffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindRenderbufferOES(GLenum target, GLuint renderbuffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint renderbuffer = %u)", target, renderbuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindRenderbufferOES, context, target, renderbuffer);
+ if (context->skipValidation() || ValidateBindRenderbufferOES(context, target, renderbuffer))
+ {
+ context->bindRenderbuffer(target, renderbuffer);
+ }
+ }
+}
+
+GLenum GL_APIENTRY CheckFramebufferStatusOES(GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CheckFramebufferStatusOES, context, target);
+ if (context->skipValidation() || ValidateCheckFramebufferStatusOES(context, target))
+ {
+ return context->checkFramebufferStatus(target);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CheckFramebufferStatusOES, GLenum>();
+}
+
+void GL_APIENTRY DeleteFramebuffersOES(GLsizei n, const GLuint *framebuffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *framebuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)framebuffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteFramebuffersOES, context, n, framebuffers);
+ if (context->skipValidation() || ValidateDeleteFramebuffersOES(context, n, framebuffers))
+ {
+ context->deleteFramebuffers(n, framebuffers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteRenderbuffersOES(GLsizei n, const GLuint *renderbuffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *renderbuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)renderbuffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteRenderbuffersOES, context, n, renderbuffers);
+ if (context->skipValidation() || ValidateDeleteRenderbuffersOES(context, n, renderbuffers))
+ {
+ context->deleteRenderbuffers(n, renderbuffers);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferRenderbufferOES(GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum renderbuffertarget = 0x%X, GLuint "
+ "renderbuffer = %u)",
+ target, attachment, renderbuffertarget, renderbuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(FramebufferRenderbufferOES, context, target, attachment, renderbuffertarget,
+ renderbuffer);
+ if (context->skipValidation() ||
+ ValidateFramebufferRenderbufferOES(context, target, attachment, renderbuffertarget,
+ renderbuffer))
+ {
+ context->framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferTexture2DOES(GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum textarget = 0x%X, GLuint texture "
+ "= %u, GLint level = %d)",
+ target, attachment, textarget, texture, level);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget textargetPacked = FromGLenum<TextureTarget>(textarget);
+ ANGLE_CAPTURE(FramebufferTexture2DOES, context, target, attachment, textargetPacked,
+ texture, level);
+ if (context->skipValidation() ||
+ ValidateFramebufferTexture2DOES(context, target, attachment, textargetPacked, texture,
+ level))
+ {
+ context->framebufferTexture2D(target, attachment, textargetPacked, texture, level);
+ }
+ }
+}
+
+void GL_APIENTRY GenFramebuffersOES(GLsizei n, GLuint *framebuffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *framebuffers = 0x%016" PRIxPTR ")", n, (uintptr_t)framebuffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenFramebuffersOES, context, n, framebuffers);
+ if (context->skipValidation() || ValidateGenFramebuffersOES(context, n, framebuffers))
+ {
+ context->genFramebuffers(n, framebuffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenRenderbuffersOES(GLsizei n, GLuint *renderbuffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *renderbuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)renderbuffers);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenRenderbuffersOES, context, n, renderbuffers);
+ if (context->skipValidation() || ValidateGenRenderbuffersOES(context, n, renderbuffers))
+ {
+ context->genRenderbuffers(n, renderbuffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenerateMipmapOES(GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GenerateMipmapOES, context, targetPacked);
+ if (context->skipValidation() || ValidateGenerateMipmapOES(context, targetPacked))
+ {
+ context->generateMipmap(targetPacked);
+ }
+ }
+}
+
+void GL_APIENTRY GetFramebufferAttachmentParameterivOES(GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum pname = 0x%X, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ target, attachment, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetFramebufferAttachmentParameterivOES, context, target, attachment, pname,
+ params);
+ if (context->skipValidation() || ValidateGetFramebufferAttachmentParameterivOES(
+ context, target, attachment, pname, params))
+ {
+ context->getFramebufferAttachmentParameteriv(target, attachment, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetRenderbufferParameterivOES, context, target, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetRenderbufferParameterivOES(context, target, pname, params))
+ {
+ context->getRenderbufferParameteriv(target, pname, params);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsFramebufferOES(GLuint framebuffer)
+{
+ EVENT("(GLuint framebuffer = %u)", framebuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsFramebufferOES, context, framebuffer);
+ if (context->skipValidation() || ValidateIsFramebufferOES(context, framebuffer))
+ {
+ return context->isFramebuffer(framebuffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsFramebufferOES, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsRenderbufferOES(GLuint renderbuffer)
+{
+ EVENT("(GLuint renderbuffer = %u)", renderbuffer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsRenderbufferOES, context, renderbuffer);
+ if (context->skipValidation() || ValidateIsRenderbufferOES(context, renderbuffer))
+ {
+ return context->isRenderbuffer(renderbuffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsRenderbufferOES, GLboolean>();
+}
+
+void GL_APIENTRY RenderbufferStorageOES(GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum internalformat = 0x%X, GLsizei width = %d, GLsizei height = "
+ "%d)",
+ target, internalformat, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(RenderbufferStorageOES, context, target, internalformat, width, height);
+ if (context->skipValidation() ||
+ ValidateRenderbufferStorageOES(context, target, internalformat, width, height))
+ {
+ context->renderbufferStorage(target, internalformat, width, height);
+ }
+ }
+}
+
+// GL_OES_get_program_binary
+void GL_APIENTRY GetProgramBinaryOES(GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary)
+{
+ EVENT("(GLuint program = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLenum *binaryFormat = 0x%016" PRIxPTR ", void *binary = 0x%016" PRIxPTR ")",
+ program, bufSize, (uintptr_t)length, (uintptr_t)binaryFormat, (uintptr_t)binary);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetProgramBinaryOES, context, program, bufSize, length, binaryFormat, binary);
+ if (context->skipValidation() ||
+ ValidateGetProgramBinaryOES(context, program, bufSize, length, binaryFormat, binary))
+ {
+ context->getProgramBinary(program, bufSize, length, binaryFormat, binary);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramBinaryOES(GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLint length)
+{
+ EVENT("(GLuint program = %u, GLenum binaryFormat = 0x%X, const void *binary = 0x%016" PRIxPTR
+ ", GLint length = %d)",
+ program, binaryFormat, (uintptr_t)binary, length);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(ProgramBinaryOES, context, program, binaryFormat, binary, length);
+ if (context->skipValidation() ||
+ ValidateProgramBinaryOES(context, program, binaryFormat, binary, length))
+ {
+ context->programBinary(program, binaryFormat, binary, length);
+ }
+ }
+}
+
+// GL_OES_mapbuffer
+void GL_APIENTRY GetBufferPointervOES(GLenum target, GLenum pname, void **params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferPointervOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetBufferPointervOES(context, targetPacked, pname, params))
+ {
+ context->getBufferPointerv(targetPacked, pname, params);
+ }
+ }
+}
+
+void *GL_APIENTRY MapBufferOES(GLenum target, GLenum access)
+{
+ EVENT("(GLenum target = 0x%X, GLenum access = 0x%X)", target, access);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(MapBufferOES, context, targetPacked, access);
+ if (context->skipValidation() || ValidateMapBufferOES(context, targetPacked, access))
+ {
+ return context->mapBuffer(targetPacked, access);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::MapBufferOES, void *>();
+}
+
+GLboolean GL_APIENTRY UnmapBufferOES(GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(UnmapBufferOES, context, targetPacked);
+ if (context->skipValidation() || ValidateUnmapBufferOES(context, targetPacked))
+ {
+ return context->unmapBuffer(targetPacked);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::UnmapBufferOES, GLboolean>();
+}
+
+// GL_OES_matrix_palette
+void GL_APIENTRY CurrentPaletteMatrixOES(GLuint matrixpaletteindex)
+{
+ EVENT("(GLuint matrixpaletteindex = %u)", matrixpaletteindex);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(CurrentPaletteMatrixOES, context, matrixpaletteindex);
+ if (context->skipValidation() ||
+ ValidateCurrentPaletteMatrixOES(context, matrixpaletteindex))
+ {
+ context->currentPaletteMatrix(matrixpaletteindex);
+ }
+ }
+}
+
+void GL_APIENTRY LoadPaletteFromModelViewMatrixOES()
+{
+ EVENT("()");
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(LoadPaletteFromModelViewMatrixOES, context);
+ if (context->skipValidation() || ValidateLoadPaletteFromModelViewMatrixOES(context))
+ {
+ context->loadPaletteFromModelViewMatrix();
+ }
+ }
+}
+
+void GL_APIENTRY MatrixIndexPointerOES(GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(MatrixIndexPointerOES, context, size, type, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateMatrixIndexPointerOES(context, size, type, stride, pointer))
+ {
+ context->matrixIndexPointer(size, type, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY WeightPointerOES(GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(WeightPointerOES, context, size, type, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateWeightPointerOES(context, size, type, stride, pointer))
+ {
+ context->weightPointer(size, type, stride, pointer);
+ }
+ }
+}
+
+// GL_OES_point_size_array
+void GL_APIENTRY PointSizePointerOES(GLenum type, GLsizei stride, const void *pointer)
+{
+ EVENT("(GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
+ type, stride, (uintptr_t)pointer);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(PointSizePointerOES, context, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidatePointSizePointerOES(context, typePacked, stride, pointer))
+ {
+ context->pointSizePointer(typePacked, stride, pointer);
+ }
+ }
+}
+
+// GL_OES_query_matrix
+GLbitfield GL_APIENTRY QueryMatrixxOES(GLfixed *mantissa, GLint *exponent)
+{
+ EVENT("(GLfixed *mantissa = 0x%016" PRIxPTR ", GLint *exponent = 0x%016" PRIxPTR ")",
+ (uintptr_t)mantissa, (uintptr_t)exponent);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(QueryMatrixxOES, context, mantissa, exponent);
+ if (context->skipValidation() || ValidateQueryMatrixxOES(context, mantissa, exponent))
+ {
+ return context->queryMatrixx(mantissa, exponent);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::QueryMatrixxOES, GLbitfield>();
+}
+
+// GL_OES_texture_3D
+void GL_APIENTRY CompressedTexImage3DOES(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLsizei imageSize = %d, "
+ "const void *data = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, imageSize, (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage3DOES, context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexImage3DOES(context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, data))
+ {
+ context->compressedTexImage3D(targetPacked, level, internalformat, width, height, depth,
+ border, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage3DOES(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLsizei imageSize = %d, const void *data = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize,
+ (uintptr_t)data);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage3DOES, context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexSubImage3DOES(context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, imageSize,
+ data))
+ {
+ context->compressedTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTexSubImage3DOES(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
+ target, level, xoffset, yoffset, zoffset, x, y, width, height);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CopyTexSubImage3DOES, context, targetPacked, level, xoffset, yoffset, zoffset,
+ x, y, width, height);
+ if (context->skipValidation() ||
+ ValidateCopyTexSubImage3DOES(context, targetPacked, level, xoffset, yoffset, zoffset, x,
+ y, width, height))
+ {
+ context->copyTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, x, y, width,
+ height);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferTexture3DOES(GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level,
+ GLint zoffset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum textarget = 0x%X, GLuint texture "
+ "= %u, GLint level = %d, GLint zoffset = %d)",
+ target, attachment, textarget, texture, level, zoffset);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget textargetPacked = FromGLenum<TextureTarget>(textarget);
+ ANGLE_CAPTURE(FramebufferTexture3DOES, context, target, attachment, textargetPacked,
+ texture, level, zoffset);
+ if (context->skipValidation() ||
+ ValidateFramebufferTexture3DOES(context, target, attachment, textargetPacked, texture,
+ level, zoffset))
+ {
+ context->framebufferTexture3D(target, attachment, textargetPacked, texture, level,
+ zoffset);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage3DOES(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLenum format = 0x%X, "
+ "GLenum type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, format, type,
+ (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage3DOES, context, targetPacked, level, internalformat, width, height,
+ depth, border, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage3DOES(context, targetPacked, level, internalformat, width, height,
+ depth, border, format, type, pixels))
+ {
+ context->texImage3D(targetPacked, level, internalformat, width, height, depth, border,
+ format, type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage3DOES(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLenum type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, type,
+ (uintptr_t)pixels);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage3DOES, context, targetPacked, level, xoffset, yoffset, zoffset,
+ width, height, depth, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage3DOES(context, targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, pixels))
+ {
+ context->texSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width, height,
+ depth, format, type, pixels);
+ }
+ }
+}
+
+// GL_OES_texture_border_clamp
+void GL_APIENTRY GetSamplerParameterIivOES(GLuint sampler, GLenum pname, GLint *params)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", sampler,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSamplerParameterIivOES, context, sampler, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSamplerParameterIivOES(context, sampler, pname, params))
+ {
+ context->getSamplerParameterIiv(sampler, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterIuivOES(GLuint sampler, GLenum pname, GLuint *params)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", sampler,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetSamplerParameterIuivOES, context, sampler, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSamplerParameterIuivOES(context, sampler, pname, params))
+ {
+ context->getSamplerParameterIuiv(sampler, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterIivOES(GLenum target, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterIivOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameterIivOES(context, targetPacked, pname, params))
+ {
+ context->getTexParameterIiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterIuivOES(GLenum target, GLenum pname, GLuint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterIuivOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameterIuivOES(context, targetPacked, pname, params))
+ {
+ context->getTexParameterIuiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterIivOES(GLuint sampler, GLenum pname, const GLint *param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, const GLint *param = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameterIivOES, context, sampler, pname, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterIivOES(context, sampler, pname, param))
+ {
+ context->samplerParameterIiv(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterIuivOES(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, const GLuint *param = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(SamplerParameterIuivOES, context, sampler, pname, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterIuivOES(context, sampler, pname, param))
+ {
+ context->samplerParameterIuiv(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterIivOES(GLenum target, GLenum pname, const GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterIivOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterIivOES(context, targetPacked, pname, params))
+ {
+ context->texParameterIiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterIuivOES(GLenum target, GLenum pname, const GLuint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLuint *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterIuivOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterIuivOES(context, targetPacked, pname, params))
+ {
+ context->texParameterIuiv(targetPacked, pname, params);
+ }
+ }
+}
+
+// GL_OES_texture_cube_map
+void GL_APIENTRY GetTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")", coord,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetTexGenfvOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateGetTexGenfvOES(context, coord, pname, params))
+ {
+ context->getTexGenfv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexGenivOES(GLenum coord, GLenum pname, GLint *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", coord,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetTexGenivOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateGetTexGenivOES(context, coord, pname, params))
+ {
+ context->getTexGeniv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")", coord,
+ pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GetTexGenxvOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateGetTexGenxvOES(context, coord, pname, params))
+ {
+ context->getTexGenxv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenfOES(GLenum coord, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", coord, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(TexGenfOES, context, coord, pname, param);
+ if (context->skipValidation() || ValidateTexGenfOES(context, coord, pname, param))
+ {
+ context->texGenf(coord, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenfvOES(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ coord, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(TexGenfvOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateTexGenfvOES(context, coord, pname, params))
+ {
+ context->texGenfv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexGeniOES(GLenum coord, GLenum pname, GLint param)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLint param = %d)", coord, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(TexGeniOES, context, coord, pname, param);
+ if (context->skipValidation() || ValidateTexGeniOES(context, coord, pname, param))
+ {
+ context->texGeni(coord, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenivOES(GLenum coord, GLenum pname, const GLint *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR ")",
+ coord, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(TexGenivOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateTexGenivOES(context, coord, pname, params))
+ {
+ context->texGeniv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenxOES(GLenum coord, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", coord, pname, param);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(TexGenxOES, context, coord, pname, param);
+ if (context->skipValidation() || ValidateTexGenxOES(context, coord, pname, param))
+ {
+ context->texGenx(coord, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenxvOES(GLenum coord, GLenum pname, const GLfixed *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")",
+ coord, pname, (uintptr_t)params);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(TexGenxvOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateTexGenxvOES(context, coord, pname, params))
+ {
+ context->texGenxv(coord, pname, params);
+ }
+ }
+}
+
+// GL_OES_texture_storage_multisample_2d_array
+void GL_APIENTRY TexStorage3DMultisampleOES(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedsamplelocations)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLsizei depth = %d, GLboolean fixedsamplelocations = %u)",
+ target, samples, internalformat, width, height, depth, fixedsamplelocations);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage3DMultisampleOES, context, targetPacked, samples, internalformat,
+ width, height, depth, fixedsamplelocations);
+ if (context->skipValidation() ||
+ ValidateTexStorage3DMultisampleOES(context, targetPacked, samples, internalformat,
+ width, height, depth, fixedsamplelocations))
+ {
+ context->texStorage3DMultisample(targetPacked, samples, internalformat, width, height,
+ depth, fixedsamplelocations);
+ }
+ }
+}
+
+// GL_OES_vertex_array_object
+void GL_APIENTRY BindVertexArrayOES(GLuint array)
+{
+ EVENT("(GLuint array = %u)", array);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(BindVertexArrayOES, context, array);
+ if (context->skipValidation() || ValidateBindVertexArrayOES(context, array))
+ {
+ context->bindVertexArray(array);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteVertexArraysOES(GLsizei n, const GLuint *arrays)
+{
+ EVENT("(GLsizei n = %d, const GLuint *arrays = 0x%016" PRIxPTR ")", n, (uintptr_t)arrays);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(DeleteVertexArraysOES, context, n, arrays);
+ if (context->skipValidation() || ValidateDeleteVertexArraysOES(context, n, arrays))
+ {
+ context->deleteVertexArrays(n, arrays);
+ }
+ }
+}
+
+void GL_APIENTRY GenVertexArraysOES(GLsizei n, GLuint *arrays)
+{
+ EVENT("(GLsizei n = %d, GLuint *arrays = 0x%016" PRIxPTR ")", n, (uintptr_t)arrays);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(GenVertexArraysOES, context, n, arrays);
+ if (context->skipValidation() || ValidateGenVertexArraysOES(context, n, arrays))
+ {
+ context->genVertexArrays(n, arrays);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsVertexArrayOES(GLuint array)
+{
+ EVENT("(GLuint array = %u)", array);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(IsVertexArrayOES, context, array);
+ if (context->skipValidation() || ValidateIsVertexArrayOES(context, array))
+ {
+ return context->isVertexArray(array);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsVertexArrayOES, GLboolean>();
+}
+
+// GL_OVR_multiview
+void GL_APIENTRY FramebufferTextureMultiviewOVR(GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint baseViewIndex,
+ GLsizei numViews)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLuint texture = %u, GLint level = %d, "
+ "GLint baseViewIndex = %d, GLsizei numViews = %d)",
+ target, attachment, texture, level, baseViewIndex, numViews);
+
+ Context *context = GetValidGlobalContext();
+ if (context)
+ {
+ ANGLE_CAPTURE(FramebufferTextureMultiviewOVR, context, target, attachment, texture, level,
+ baseViewIndex, numViews);
+ if (context->skipValidation() ||
+ ValidateFramebufferTextureMultiviewOVR(context, target, attachment, texture, level,
+ baseViewIndex, numViews))
+ {
+ context->framebufferTextureMultiview(target, attachment, texture, level, baseViewIndex,
+ numViews);
+ }
+ }
+}
+
+// GL_OVR_multiview2
+
+// EGL_ANGLE_explicit_context
+void GL_APIENTRY ActiveShaderProgramContextANGLE(GLeglContext ctx, GLuint pipeline, GLuint program)
+{
+ EVENT("(GLuint pipeline = %u, GLuint program = %u)", pipeline, program);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ActiveShaderProgram, context, pipeline, program);
+ if (context->skipValidation() || ValidateActiveShaderProgram(context, pipeline, program))
+ {
+ context->activeShaderProgram(pipeline, program);
+ }
+ }
+}
+
+void GL_APIENTRY ActiveTextureContextANGLE(GLeglContext ctx, GLenum texture)
+{
+ EVENT("(GLenum texture = 0x%X)", texture);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ActiveTexture, context, texture);
+ if (context->skipValidation() || ValidateActiveTexture(context, texture))
+ {
+ context->activeTexture(texture);
+ }
+ }
+}
+
+void GL_APIENTRY AlphaFuncContextANGLE(GLeglContext ctx, GLenum func, GLfloat ref)
+{
+ EVENT("(GLenum func = 0x%X, GLfloat ref = %f)", func, ref);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ AlphaTestFunc funcPacked = FromGLenum<AlphaTestFunc>(func);
+ ANGLE_CAPTURE(AlphaFunc, context, funcPacked, ref);
+ if (context->skipValidation() || ValidateAlphaFunc(context, funcPacked, ref))
+ {
+ context->alphaFunc(funcPacked, ref);
+ }
+ }
+}
+
+void GL_APIENTRY AlphaFuncxContextANGLE(GLeglContext ctx, GLenum func, GLfixed ref)
+{
+ EVENT("(GLenum func = 0x%X, GLfixed ref = 0x%X)", func, ref);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ AlphaTestFunc funcPacked = FromGLenum<AlphaTestFunc>(func);
+ ANGLE_CAPTURE(AlphaFuncx, context, funcPacked, ref);
+ if (context->skipValidation() || ValidateAlphaFuncx(context, funcPacked, ref))
+ {
+ context->alphaFuncx(funcPacked, ref);
+ }
+ }
+}
+
+void GL_APIENTRY AttachShaderContextANGLE(GLeglContext ctx, GLuint program, GLuint shader)
+{
+ EVENT("(GLuint program = %u, GLuint shader = %u)", program, shader);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(AttachShader, context, program, shader);
+ if (context->skipValidation() || ValidateAttachShader(context, program, shader))
+ {
+ context->attachShader(program, shader);
+ }
+ }
+}
+
+void GL_APIENTRY BeginQueryContextANGLE(GLeglContext ctx, GLenum target, GLuint id)
+{
+ EVENT("(GLenum target = 0x%X, GLuint id = %u)", target, id);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(BeginQuery, context, targetPacked, id);
+ if (context->skipValidation() || ValidateBeginQuery(context, targetPacked, id))
+ {
+ context->beginQuery(targetPacked, id);
+ }
+ }
+}
+
+void GL_APIENTRY BeginQueryEXTContextANGLE(GLeglContext ctx, GLenum target, GLuint id)
+{
+ EVENT("(GLenum target = 0x%X, GLuint id = %u)", target, id);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(BeginQueryEXT, context, targetPacked, id);
+ if (context->skipValidation() || ValidateBeginQueryEXT(context, targetPacked, id))
+ {
+ context->beginQuery(targetPacked, id);
+ }
+ }
+}
+
+void GL_APIENTRY BeginTransformFeedbackContextANGLE(GLeglContext ctx, GLenum primitiveMode)
+{
+ EVENT("(GLenum primitiveMode = 0x%X)", primitiveMode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode primitiveModePacked = FromGLenum<PrimitiveMode>(primitiveMode);
+ ANGLE_CAPTURE(BeginTransformFeedback, context, primitiveModePacked);
+ if (context->skipValidation() ||
+ ValidateBeginTransformFeedback(context, primitiveModePacked))
+ {
+ context->beginTransformFeedback(primitiveModePacked);
+ }
+ }
+}
+
+void GL_APIENTRY BindAttribLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ const GLchar *name)
+{
+ EVENT("(GLuint program = %u, GLuint index = %u, const GLchar *name = 0x%016" PRIxPTR ")",
+ program, index, (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindAttribLocation, context, program, index, name);
+ if (context->skipValidation() || ValidateBindAttribLocation(context, program, index, name))
+ {
+ context->bindAttribLocation(program, index, name);
+ }
+ }
+}
+
+void GL_APIENTRY BindBufferContextANGLE(GLeglContext ctx, GLenum target, GLuint buffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint buffer = %u)", target, buffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(BindBuffer, context, targetPacked, buffer);
+ if (context->skipValidation() || ValidateBindBuffer(context, targetPacked, buffer))
+ {
+ context->bindBuffer(targetPacked, buffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindBufferBaseContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLuint buffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLuint buffer = %u)", target, index, buffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(BindBufferBase, context, targetPacked, index, buffer);
+ if (context->skipValidation() ||
+ ValidateBindBufferBase(context, targetPacked, index, buffer))
+ {
+ context->bindBufferBase(targetPacked, index, buffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindBufferRangeContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLuint buffer,
+ GLintptr offset,
+ GLsizeiptr size)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLuint index = %u, GLuint buffer = %u, GLintptr offset = %llu, "
+ "GLsizeiptr size = %llu)",
+ target, index, buffer, static_cast<unsigned long long>(offset),
+ static_cast<unsigned long long>(size));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(BindBufferRange, context, targetPacked, index, buffer, offset, size);
+ if (context->skipValidation() ||
+ ValidateBindBufferRange(context, targetPacked, index, buffer, offset, size))
+ {
+ context->bindBufferRange(targetPacked, index, buffer, offset, size);
+ }
+ }
+}
+
+void GL_APIENTRY BindFragDataLocationEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint color,
+ const GLchar *name)
+{
+ EVENT("(GLuint program = %u, GLuint color = %u, const GLchar *name = 0x%016" PRIxPTR ")",
+ program, color, (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindFragDataLocationEXT, context, program, color, name);
+ if (context->skipValidation() ||
+ ValidateBindFragDataLocationEXT(context, program, color, name))
+ {
+ context->bindFragDataLocation(program, color, name);
+ }
+ }
+}
+
+void GL_APIENTRY BindFragDataLocationIndexedEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint colorNumber,
+ GLuint index,
+ const GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint colorNumber = %u, GLuint index = %u, const GLchar *name = "
+ "0x%016" PRIxPTR ")",
+ program, colorNumber, index, (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindFragDataLocationIndexedEXT, context, program, colorNumber, index, name);
+ if (context->skipValidation() ||
+ ValidateBindFragDataLocationIndexedEXT(context, program, colorNumber, index, name))
+ {
+ context->bindFragDataLocationIndexed(program, colorNumber, index, name);
+ }
+ }
+}
+
+void GL_APIENTRY BindFramebufferContextANGLE(GLeglContext ctx, GLenum target, GLuint framebuffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint framebuffer = %u)", target, framebuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindFramebuffer, context, target, framebuffer);
+ if (context->skipValidation() || ValidateBindFramebuffer(context, target, framebuffer))
+ {
+ context->bindFramebuffer(target, framebuffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindFramebufferOESContextANGLE(GLeglContext ctx, GLenum target, GLuint framebuffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint framebuffer = %u)", target, framebuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindFramebufferOES, context, target, framebuffer);
+ if (context->skipValidation() || ValidateBindFramebufferOES(context, target, framebuffer))
+ {
+ context->bindFramebuffer(target, framebuffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindImageTextureContextANGLE(GLeglContext ctx,
+ GLuint unit,
+ GLuint texture,
+ GLint level,
+ GLboolean layered,
+ GLint layer,
+ GLenum access,
+ GLenum format)
+{
+ EVENT(
+ "(GLuint unit = %u, GLuint texture = %u, GLint level = %d, GLboolean layered = %u, GLint "
+ "layer = %d, GLenum access = 0x%X, GLenum format = 0x%X)",
+ unit, texture, level, layered, layer, access, format);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindImageTexture, context, unit, texture, level, layered, layer, access,
+ format);
+ if (context->skipValidation() ||
+ ValidateBindImageTexture(context, unit, texture, level, layered, layer, access, format))
+ {
+ context->bindImageTexture(unit, texture, level, layered, layer, access, format);
+ }
+ }
+}
+
+void GL_APIENTRY BindProgramPipelineContextANGLE(GLeglContext ctx, GLuint pipeline)
+{
+ EVENT("(GLuint pipeline = %u)", pipeline);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindProgramPipeline, context, pipeline);
+ if (context->skipValidation() || ValidateBindProgramPipeline(context, pipeline))
+ {
+ context->bindProgramPipeline(pipeline);
+ }
+ }
+}
+
+void GL_APIENTRY BindRenderbufferContextANGLE(GLeglContext ctx, GLenum target, GLuint renderbuffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint renderbuffer = %u)", target, renderbuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindRenderbuffer, context, target, renderbuffer);
+ if (context->skipValidation() || ValidateBindRenderbuffer(context, target, renderbuffer))
+ {
+ context->bindRenderbuffer(target, renderbuffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindRenderbufferOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint renderbuffer)
+{
+ EVENT("(GLenum target = 0x%X, GLuint renderbuffer = %u)", target, renderbuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindRenderbufferOES, context, target, renderbuffer);
+ if (context->skipValidation() || ValidateBindRenderbufferOES(context, target, renderbuffer))
+ {
+ context->bindRenderbuffer(target, renderbuffer);
+ }
+ }
+}
+
+void GL_APIENTRY BindSamplerContextANGLE(GLeglContext ctx, GLuint unit, GLuint sampler)
+{
+ EVENT("(GLuint unit = %u, GLuint sampler = %u)", unit, sampler);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindSampler, context, unit, sampler);
+ if (context->skipValidation() || ValidateBindSampler(context, unit, sampler))
+ {
+ context->bindSampler(unit, sampler);
+ }
+ }
+}
+
+void GL_APIENTRY BindTextureContextANGLE(GLeglContext ctx, GLenum target, GLuint texture)
+{
+ EVENT("(GLenum target = 0x%X, GLuint texture = %u)", target, texture);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(BindTexture, context, targetPacked, texture);
+ if (context->skipValidation() || ValidateBindTexture(context, targetPacked, texture))
+ {
+ context->bindTexture(targetPacked, texture);
+ }
+ }
+}
+
+void GL_APIENTRY BindTransformFeedbackContextANGLE(GLeglContext ctx, GLenum target, GLuint id)
+{
+ EVENT("(GLenum target = 0x%X, GLuint id = %u)", target, id);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindTransformFeedback, context, target, id);
+ if (context->skipValidation() || ValidateBindTransformFeedback(context, target, id))
+ {
+ context->bindTransformFeedback(target, id);
+ }
+ }
+}
+
+void GL_APIENTRY BindVertexArrayContextANGLE(GLeglContext ctx, GLuint array)
+{
+ EVENT("(GLuint array = %u)", array);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindVertexArray, context, array);
+ if (context->skipValidation() || ValidateBindVertexArray(context, array))
+ {
+ context->bindVertexArray(array);
+ }
+ }
+}
+
+void GL_APIENTRY BindVertexArrayOESContextANGLE(GLeglContext ctx, GLuint array)
+{
+ EVENT("(GLuint array = %u)", array);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindVertexArrayOES, context, array);
+ if (context->skipValidation() || ValidateBindVertexArrayOES(context, array))
+ {
+ context->bindVertexArray(array);
+ }
+ }
+}
+
+void GL_APIENTRY BindVertexBufferContextANGLE(GLeglContext ctx,
+ GLuint bindingindex,
+ GLuint buffer,
+ GLintptr offset,
+ GLsizei stride)
+{
+ EVENT(
+ "(GLuint bindingindex = %u, GLuint buffer = %u, GLintptr offset = %llu, GLsizei stride = "
+ "%d)",
+ bindingindex, buffer, static_cast<unsigned long long>(offset), stride);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindVertexBuffer, context, bindingindex, buffer, offset, stride);
+ if (context->skipValidation() ||
+ ValidateBindVertexBuffer(context, bindingindex, buffer, offset, stride))
+ {
+ context->bindVertexBuffer(bindingindex, buffer, offset, stride);
+ }
+ }
+}
+
+void GL_APIENTRY
+BlendColorContextANGLE(GLeglContext ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ EVENT("(GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f)", red,
+ green, blue, alpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BlendColor, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateBlendColor(context, red, green, blue, alpha))
+ {
+ context->blendColor(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY BlendEquationContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BlendEquation, context, mode);
+ if (context->skipValidation() || ValidateBlendEquation(context, mode))
+ {
+ context->blendEquation(mode);
+ }
+ }
+}
+
+void GL_APIENTRY BlendEquationSeparateContextANGLE(GLeglContext ctx,
+ GLenum modeRGB,
+ GLenum modeAlpha)
+{
+ EVENT("(GLenum modeRGB = 0x%X, GLenum modeAlpha = 0x%X)", modeRGB, modeAlpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BlendEquationSeparate, context, modeRGB, modeAlpha);
+ if (context->skipValidation() || ValidateBlendEquationSeparate(context, modeRGB, modeAlpha))
+ {
+ context->blendEquationSeparate(modeRGB, modeAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY BlendFuncContextANGLE(GLeglContext ctx, GLenum sfactor, GLenum dfactor)
+{
+ EVENT("(GLenum sfactor = 0x%X, GLenum dfactor = 0x%X)", sfactor, dfactor);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BlendFunc, context, sfactor, dfactor);
+ if (context->skipValidation() || ValidateBlendFunc(context, sfactor, dfactor))
+ {
+ context->blendFunc(sfactor, dfactor);
+ }
+ }
+}
+
+void GL_APIENTRY BlendFuncSeparateContextANGLE(GLeglContext ctx,
+ GLenum sfactorRGB,
+ GLenum dfactorRGB,
+ GLenum sfactorAlpha,
+ GLenum dfactorAlpha)
+{
+ EVENT(
+ "(GLenum sfactorRGB = 0x%X, GLenum dfactorRGB = 0x%X, GLenum sfactorAlpha = 0x%X, GLenum "
+ "dfactorAlpha = 0x%X)",
+ sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BlendFuncSeparate, context, sfactorRGB, dfactorRGB, sfactorAlpha,
+ dfactorAlpha);
+ if (context->skipValidation() ||
+ ValidateBlendFuncSeparate(context, sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha))
+ {
+ context->blendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY BlitFramebufferContextANGLE(GLeglContext ctx,
+ GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter)
+{
+ EVENT(
+ "(GLint srcX0 = %d, GLint srcY0 = %d, GLint srcX1 = %d, GLint srcY1 = %d, GLint dstX0 = "
+ "%d, GLint dstY0 = %d, GLint dstX1 = %d, GLint dstY1 = %d, GLbitfield mask = 0x%X, GLenum "
+ "filter = 0x%X)",
+ srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BlitFramebuffer, context, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1,
+ dstY1, mask, filter);
+ if (context->skipValidation() ||
+ ValidateBlitFramebuffer(context, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1,
+ mask, filter))
+ {
+ context->blitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask,
+ filter);
+ }
+ }
+}
+
+void GL_APIENTRY BlitFramebufferANGLEContextANGLE(GLeglContext ctx,
+ GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter)
+{
+ EVENT(
+ "(GLint srcX0 = %d, GLint srcY0 = %d, GLint srcX1 = %d, GLint srcY1 = %d, GLint dstX0 = "
+ "%d, GLint dstY0 = %d, GLint dstX1 = %d, GLint dstY1 = %d, GLbitfield mask = 0x%X, GLenum "
+ "filter = 0x%X)",
+ srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BlitFramebufferANGLE, context, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
+ dstX1, dstY1, mask, filter);
+ if (context->skipValidation() ||
+ ValidateBlitFramebufferANGLE(context, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1,
+ dstY1, mask, filter))
+ {
+ context->blitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask,
+ filter);
+ }
+ }
+}
+
+void GL_APIENTRY BufferDataContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizeiptr size,
+ const void *data,
+ GLenum usage)
+{
+ EVENT("(GLenum target = 0x%X, GLsizeiptr size = %llu, const void *data = 0x%016" PRIxPTR
+ ", GLenum usage = 0x%X)",
+ target, static_cast<unsigned long long>(size), (uintptr_t)data, usage);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ BufferUsage usagePacked = FromGLenum<BufferUsage>(usage);
+ ANGLE_CAPTURE(BufferData, context, targetPacked, size, data, usagePacked);
+ if (context->skipValidation() ||
+ ValidateBufferData(context, targetPacked, size, data, usagePacked))
+ {
+ context->bufferData(targetPacked, size, data, usagePacked);
+ }
+ }
+}
+
+void GL_APIENTRY BufferStorageMemEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizeiptr size,
+ GLuint memory,
+ GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizeiptr size = %llu, GLuint memory = %u, GLuint64 offset = "
+ "%llu)",
+ target, static_cast<unsigned long long>(size), memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(BufferStorageMemEXT, context, targetPacked, size, memory, offset);
+ if (context->skipValidation() ||
+ ValidateBufferStorageMemEXT(context, targetPacked, size, memory, offset))
+ {
+ context->bufferStorageMem(targetPacked, size, memory, offset);
+ }
+ }
+}
+
+void GL_APIENTRY BufferSubDataContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr size,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr size = %llu, const void *data = "
+ "0x%016" PRIxPTR ")",
+ target, static_cast<unsigned long long>(offset), static_cast<unsigned long long>(size),
+ (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(BufferSubData, context, targetPacked, offset, size, data);
+ if (context->skipValidation() ||
+ ValidateBufferSubData(context, targetPacked, offset, size, data))
+ {
+ context->bufferSubData(targetPacked, offset, size, data);
+ }
+ }
+}
+
+GLenum GL_APIENTRY CheckFramebufferStatusContextANGLE(GLeglContext ctx, GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CheckFramebufferStatus, context, target);
+ if (context->skipValidation() || ValidateCheckFramebufferStatus(context, target))
+ {
+ return context->checkFramebufferStatus(target);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CheckFramebufferStatus, GLenum>();
+}
+
+GLenum GL_APIENTRY CheckFramebufferStatusOESContextANGLE(GLeglContext ctx, GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CheckFramebufferStatusOES, context, target);
+ if (context->skipValidation() || ValidateCheckFramebufferStatusOES(context, target))
+ {
+ return context->checkFramebufferStatus(target);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CheckFramebufferStatusOES, GLenum>();
+}
+
+void GL_APIENTRY ClearContextANGLE(GLeglContext ctx, GLbitfield mask)
+{
+ EVENT("(GLbitfield mask = 0x%X)", mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Clear, context, mask);
+ if (context->skipValidation() || ValidateClear(context, mask))
+ {
+ context->clear(mask);
+ }
+ }
+}
+
+void GL_APIENTRY ClearBufferfiContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ GLfloat depth,
+ GLint stencil)
+{
+ EVENT("(GLenum buffer = 0x%X, GLint drawbuffer = %d, GLfloat depth = %f, GLint stencil = %d)",
+ buffer, drawbuffer, depth, stencil);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClearBufferfi, context, buffer, drawbuffer, depth, stencil);
+ if (context->skipValidation() ||
+ ValidateClearBufferfi(context, buffer, drawbuffer, depth, stencil))
+ {
+ context->clearBufferfi(buffer, drawbuffer, depth, stencil);
+ }
+ }
+}
+
+void GL_APIENTRY ClearBufferfvContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ const GLfloat *value)
+{
+ EVENT("(GLenum buffer = 0x%X, GLint drawbuffer = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ buffer, drawbuffer, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClearBufferfv, context, buffer, drawbuffer, value);
+ if (context->skipValidation() || ValidateClearBufferfv(context, buffer, drawbuffer, value))
+ {
+ context->clearBufferfv(buffer, drawbuffer, value);
+ }
+ }
+}
+
+void GL_APIENTRY ClearBufferivContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ const GLint *value)
+{
+ EVENT("(GLenum buffer = 0x%X, GLint drawbuffer = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ buffer, drawbuffer, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClearBufferiv, context, buffer, drawbuffer, value);
+ if (context->skipValidation() || ValidateClearBufferiv(context, buffer, drawbuffer, value))
+ {
+ context->clearBufferiv(buffer, drawbuffer, value);
+ }
+ }
+}
+
+void GL_APIENTRY ClearBufferuivContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ const GLuint *value)
+{
+ EVENT("(GLenum buffer = 0x%X, GLint drawbuffer = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ buffer, drawbuffer, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClearBufferuiv, context, buffer, drawbuffer, value);
+ if (context->skipValidation() || ValidateClearBufferuiv(context, buffer, drawbuffer, value))
+ {
+ context->clearBufferuiv(buffer, drawbuffer, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+ClearColorContextANGLE(GLeglContext ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ EVENT("(GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f)", red,
+ green, blue, alpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClearColor, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateClearColor(context, red, green, blue, alpha))
+ {
+ context->clearColor(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY
+ClearColorxContextANGLE(GLeglContext ctx, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ EVENT("(GLfixed red = 0x%X, GLfixed green = 0x%X, GLfixed blue = 0x%X, GLfixed alpha = 0x%X)",
+ red, green, blue, alpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClearColorx, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateClearColorx(context, red, green, blue, alpha))
+ {
+ context->clearColorx(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY ClearDepthfContextANGLE(GLeglContext ctx, GLfloat d)
+{
+ EVENT("(GLfloat d = %f)", d);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClearDepthf, context, d);
+ if (context->skipValidation() || ValidateClearDepthf(context, d))
+ {
+ context->clearDepthf(d);
+ }
+ }
+}
+
+void GL_APIENTRY ClearDepthxContextANGLE(GLeglContext ctx, GLfixed depth)
+{
+ EVENT("(GLfixed depth = 0x%X)", depth);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClearDepthx, context, depth);
+ if (context->skipValidation() || ValidateClearDepthx(context, depth))
+ {
+ context->clearDepthx(depth);
+ }
+ }
+}
+
+void GL_APIENTRY ClearStencilContextANGLE(GLeglContext ctx, GLint s)
+{
+ EVENT("(GLint s = %d)", s);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClearStencil, context, s);
+ if (context->skipValidation() || ValidateClearStencil(context, s))
+ {
+ context->clearStencil(s);
+ }
+ }
+}
+
+void GL_APIENTRY ClientActiveTextureContextANGLE(GLeglContext ctx, GLenum texture)
+{
+ EVENT("(GLenum texture = 0x%X)", texture);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClientActiveTexture, context, texture);
+ if (context->skipValidation() || ValidateClientActiveTexture(context, texture))
+ {
+ context->clientActiveTexture(texture);
+ }
+ }
+}
+
+GLenum GL_APIENTRY ClientWaitSyncContextANGLE(GLeglContext ctx,
+ GLsync sync,
+ GLbitfield flags,
+ GLuint64 timeout)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR ", GLbitfield flags = 0x%X, GLuint64 timeout = %llu)",
+ (uintptr_t)sync, flags, static_cast<unsigned long long>(timeout));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClientWaitSync, context, sync, flags, timeout);
+ if (context->skipValidation() || ValidateClientWaitSync(context, sync, flags, timeout))
+ {
+ return context->clientWaitSync(sync, flags, timeout);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::ClientWaitSync, GLenum>();
+}
+
+void GL_APIENTRY ClipPlanefContextANGLE(GLeglContext ctx, GLenum p, const GLfloat *eqn)
+{
+ EVENT("(GLenum p = 0x%X, const GLfloat *eqn = 0x%016" PRIxPTR ")", p, (uintptr_t)eqn);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClipPlanef, context, p, eqn);
+ if (context->skipValidation() || ValidateClipPlanef(context, p, eqn))
+ {
+ context->clipPlanef(p, eqn);
+ }
+ }
+}
+
+void GL_APIENTRY ClipPlanexContextANGLE(GLeglContext ctx, GLenum plane, const GLfixed *equation)
+{
+ EVENT("(GLenum plane = 0x%X, const GLfixed *equation = 0x%016" PRIxPTR ")", plane,
+ (uintptr_t)equation);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ClipPlanex, context, plane, equation);
+ if (context->skipValidation() || ValidateClipPlanex(context, plane, equation))
+ {
+ context->clipPlanex(plane, equation);
+ }
+ }
+}
+
+void GL_APIENTRY
+Color4fContextANGLE(GLeglContext ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ EVENT("(GLfloat red = %f, GLfloat green = %f, GLfloat blue = %f, GLfloat alpha = %f)", red,
+ green, blue, alpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Color4f, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateColor4f(context, red, green, blue, alpha))
+ {
+ context->color4f(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY
+Color4ubContextANGLE(GLeglContext ctx, GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ EVENT("(GLubyte red = %d, GLubyte green = %d, GLubyte blue = %d, GLubyte alpha = %d)", red,
+ green, blue, alpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Color4ub, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateColor4ub(context, red, green, blue, alpha))
+ {
+ context->color4ub(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY
+Color4xContextANGLE(GLeglContext ctx, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ EVENT("(GLfixed red = 0x%X, GLfixed green = 0x%X, GLfixed blue = 0x%X, GLfixed alpha = 0x%X)",
+ red, green, blue, alpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Color4x, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateColor4x(context, red, green, blue, alpha))
+ {
+ context->color4x(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY ColorMaskContextANGLE(GLeglContext ctx,
+ GLboolean red,
+ GLboolean green,
+ GLboolean blue,
+ GLboolean alpha)
+{
+ EVENT("(GLboolean red = %u, GLboolean green = %u, GLboolean blue = %u, GLboolean alpha = %u)",
+ red, green, blue, alpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ColorMask, context, red, green, blue, alpha);
+ if (context->skipValidation() || ValidateColorMask(context, red, green, blue, alpha))
+ {
+ context->colorMask(red, green, blue, alpha);
+ }
+ }
+}
+
+void GL_APIENTRY ColorPointerContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(ColorPointer, context, size, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateColorPointer(context, size, typePacked, stride, pointer))
+ {
+ context->colorPointer(size, typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY CompileShaderContextANGLE(GLeglContext ctx, GLuint shader)
+{
+ EVENT("(GLuint shader = %u)", shader);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CompileShader, context, shader);
+ if (context->skipValidation() || ValidateCompileShader(context, shader))
+ {
+ context->compileShader(shader);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLint border = %d, GLsizei imageSize = %d, const void *data = "
+ "0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, border, imageSize, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage2D, context, targetPacked, level, internalformat, width,
+ height, border, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexImage2D(context, targetPacked, level, internalformat, width,
+ height, border, imageSize, data))
+ {
+ context->compressedTexImage2D(targetPacked, level, internalformat, width, height,
+ border, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLsizei imageSize = %d, "
+ "const void *data = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, imageSize, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage3D, context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexImage3D(context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, data))
+ {
+ context->compressedTexImage3D(targetPacked, level, internalformat, width, height, depth,
+ border, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLsizei imageSize = %d, "
+ "const void *data = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, imageSize, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage3DOES, context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexImage3DOES(context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, data))
+ {
+ context->compressedTexImage3D(targetPacked, level, internalformat, width, height, depth,
+ border, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLsizei "
+ "width = %d, GLsizei height = %d, GLenum format = 0x%X, GLsizei imageSize = %d, const void "
+ "*data = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, width, height, format, imageSize, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage2D, context, targetPacked, level, xoffset, yoffset,
+ width, height, format, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexSubImage2D(context, targetPacked, level, xoffset, yoffset, width,
+ height, format, imageSize, data))
+ {
+ context->compressedTexSubImage2D(targetPacked, level, xoffset, yoffset, width, height,
+ format, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLsizei imageSize = %d, const void *data = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize,
+ (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage3D, context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexSubImage3D(context, targetPacked, level, xoffset, yoffset, zoffset,
+ width, height, depth, format, imageSize, data))
+ {
+ context->compressedTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLsizei imageSize = %d, const void *data = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize,
+ (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage3DOES, context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, imageSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexSubImage3DOES(context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, imageSize,
+ data))
+ {
+ context->compressedTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, imageSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CopyBufferSubDataContextANGLE(GLeglContext ctx,
+ GLenum readTarget,
+ GLenum writeTarget,
+ GLintptr readOffset,
+ GLintptr writeOffset,
+ GLsizeiptr size)
+{
+ EVENT(
+ "(GLenum readTarget = 0x%X, GLenum writeTarget = 0x%X, GLintptr readOffset = %llu, "
+ "GLintptr writeOffset = %llu, GLsizeiptr size = %llu)",
+ readTarget, writeTarget, static_cast<unsigned long long>(readOffset),
+ static_cast<unsigned long long>(writeOffset), static_cast<unsigned long long>(size));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding readTargetPacked = FromGLenum<BufferBinding>(readTarget);
+ BufferBinding writeTargetPacked = FromGLenum<BufferBinding>(writeTarget);
+ ANGLE_CAPTURE(CopyBufferSubData, context, readTargetPacked, writeTargetPacked, readOffset,
+ writeOffset, size);
+ if (context->skipValidation() ||
+ ValidateCopyBufferSubData(context, readTargetPacked, writeTargetPacked, readOffset,
+ writeOffset, size))
+ {
+ context->copyBufferSubData(readTargetPacked, writeTargetPacked, readOffset, writeOffset,
+ size);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTexImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLint border)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLint x = %d, "
+ "GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLint border = %d)",
+ target, level, internalformat, x, y, width, height, border);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CopyTexImage2D, context, targetPacked, level, internalformat, x, y, width,
+ height, border);
+ if (context->skipValidation() ||
+ ValidateCopyTexImage2D(context, targetPacked, level, internalformat, x, y, width,
+ height, border))
+ {
+ context->copyTexImage2D(targetPacked, level, internalformat, x, y, width, height,
+ border);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTexSubImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint x "
+ "= %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
+ target, level, xoffset, yoffset, x, y, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CopyTexSubImage2D, context, targetPacked, level, xoffset, yoffset, x, y,
+ width, height);
+ if (context->skipValidation() ||
+ ValidateCopyTexSubImage2D(context, targetPacked, level, xoffset, yoffset, x, y, width,
+ height))
+ {
+ context->copyTexSubImage2D(targetPacked, level, xoffset, yoffset, x, y, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTexSubImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
+ target, level, xoffset, yoffset, zoffset, x, y, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CopyTexSubImage3D, context, targetPacked, level, xoffset, yoffset, zoffset, x,
+ y, width, height);
+ if (context->skipValidation() ||
+ ValidateCopyTexSubImage3D(context, targetPacked, level, xoffset, yoffset, zoffset, x, y,
+ width, height))
+ {
+ context->copyTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, x, y, width,
+ height);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTexSubImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
+ target, level, xoffset, yoffset, zoffset, x, y, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CopyTexSubImage3DOES, context, targetPacked, level, xoffset, yoffset, zoffset,
+ x, y, width, height);
+ if (context->skipValidation() ||
+ ValidateCopyTexSubImage3DOES(context, targetPacked, level, xoffset, yoffset, zoffset, x,
+ y, width, height))
+ {
+ context->copyTexSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, x, y, width,
+ height);
+ }
+ }
+}
+
+void GL_APIENTRY CreateMemoryObjectsEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *memoryObjects)
+{
+ EVENT("(GLsizei n = %d, GLuint *memoryObjects = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)memoryObjects);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CreateMemoryObjectsEXT, context, n, memoryObjects);
+ if (context->skipValidation() || ValidateCreateMemoryObjectsEXT(context, n, memoryObjects))
+ {
+ context->createMemoryObjects(n, memoryObjects);
+ }
+ }
+}
+
+GLuint GL_APIENTRY CreateProgramContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CreateProgram, context);
+ if (context->skipValidation() || ValidateCreateProgram(context))
+ {
+ return context->createProgram();
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CreateProgram, GLuint>();
+}
+
+GLuint GL_APIENTRY CreateShaderContextANGLE(GLeglContext ctx, GLenum type)
+{
+ EVENT("(GLenum type = 0x%X)", type);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ShaderType typePacked = FromGLenum<ShaderType>(type);
+ ANGLE_CAPTURE(CreateShader, context, typePacked);
+ if (context->skipValidation() || ValidateCreateShader(context, typePacked))
+ {
+ return context->createShader(typePacked);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CreateShader, GLuint>();
+}
+
+GLuint GL_APIENTRY CreateShaderProgramvContextANGLE(GLeglContext ctx,
+ GLenum type,
+ GLsizei count,
+ const GLchar *const *strings)
+{
+ EVENT("(GLenum type = 0x%X, GLsizei count = %d, const GLchar *const*strings = 0x%016" PRIxPTR
+ ")",
+ type, count, (uintptr_t)strings);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ShaderType typePacked = FromGLenum<ShaderType>(type);
+ ANGLE_CAPTURE(CreateShaderProgramv, context, typePacked, count, strings);
+ if (context->skipValidation() ||
+ ValidateCreateShaderProgramv(context, typePacked, count, strings))
+ {
+ return context->createShaderProgramv(typePacked, count, strings);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::CreateShaderProgramv, GLuint>();
+}
+
+void GL_APIENTRY CullFaceContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ CullFaceMode modePacked = FromGLenum<CullFaceMode>(mode);
+ ANGLE_CAPTURE(CullFace, context, modePacked);
+ if (context->skipValidation() || ValidateCullFace(context, modePacked))
+ {
+ context->cullFace(modePacked);
+ }
+ }
+}
+
+void GL_APIENTRY CurrentPaletteMatrixOESContextANGLE(GLeglContext ctx, GLuint matrixpaletteindex)
+{
+ EVENT("(GLuint matrixpaletteindex = %u)", matrixpaletteindex);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CurrentPaletteMatrixOES, context, matrixpaletteindex);
+ if (context->skipValidation() ||
+ ValidateCurrentPaletteMatrixOES(context, matrixpaletteindex))
+ {
+ context->currentPaletteMatrix(matrixpaletteindex);
+ }
+ }
+}
+
+void GL_APIENTRY DebugMessageCallbackKHRContextANGLE(GLeglContext ctx,
+ GLDEBUGPROCKHR callback,
+ const void *userParam)
+{
+ EVENT("(GLDEBUGPROCKHR callback = 0x%016" PRIxPTR ", const void *userParam = 0x%016" PRIxPTR
+ ")",
+ (uintptr_t)callback, (uintptr_t)userParam);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DebugMessageCallbackKHR, context, callback, userParam);
+ if (context->skipValidation() ||
+ ValidateDebugMessageCallbackKHR(context, callback, userParam))
+ {
+ context->debugMessageCallback(callback, userParam);
+ }
+ }
+}
+
+void GL_APIENTRY DebugMessageControlKHRContextANGLE(GLeglContext ctx,
+ GLenum source,
+ GLenum type,
+ GLenum severity,
+ GLsizei count,
+ const GLuint *ids,
+ GLboolean enabled)
+{
+ EVENT(
+ "(GLenum source = 0x%X, GLenum type = 0x%X, GLenum severity = 0x%X, GLsizei count = %d, "
+ "const GLuint *ids = 0x%016" PRIxPTR ", GLboolean enabled = %u)",
+ source, type, severity, count, (uintptr_t)ids, enabled);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DebugMessageControlKHR, context, source, type, severity, count, ids, enabled);
+ if (context->skipValidation() ||
+ ValidateDebugMessageControlKHR(context, source, type, severity, count, ids, enabled))
+ {
+ context->debugMessageControl(source, type, severity, count, ids, enabled);
+ }
+ }
+}
+
+void GL_APIENTRY DebugMessageInsertKHRContextANGLE(GLeglContext ctx,
+ GLenum source,
+ GLenum type,
+ GLuint id,
+ GLenum severity,
+ GLsizei length,
+ const GLchar *buf)
+{
+ EVENT(
+ "(GLenum source = 0x%X, GLenum type = 0x%X, GLuint id = %u, GLenum severity = 0x%X, "
+ "GLsizei length = %d, const GLchar *buf = 0x%016" PRIxPTR ")",
+ source, type, id, severity, length, (uintptr_t)buf);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DebugMessageInsertKHR, context, source, type, id, severity, length, buf);
+ if (context->skipValidation() ||
+ ValidateDebugMessageInsertKHR(context, source, type, id, severity, length, buf))
+ {
+ context->debugMessageInsert(source, type, id, severity, length, buf);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteBuffersContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *buffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *buffers = 0x%016" PRIxPTR ")", n, (uintptr_t)buffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteBuffers, context, n, buffers);
+ if (context->skipValidation() || ValidateDeleteBuffers(context, n, buffers))
+ {
+ context->deleteBuffers(n, buffers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteFencesNVContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *fences)
+{
+ EVENT("(GLsizei n = %d, const GLuint *fences = 0x%016" PRIxPTR ")", n, (uintptr_t)fences);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteFencesNV, context, n, fences);
+ if (context->skipValidation() || ValidateDeleteFencesNV(context, n, fences))
+ {
+ context->deleteFencesNV(n, fences);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteFramebuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *framebuffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *framebuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)framebuffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteFramebuffers, context, n, framebuffers);
+ if (context->skipValidation() || ValidateDeleteFramebuffers(context, n, framebuffers))
+ {
+ context->deleteFramebuffers(n, framebuffers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteFramebuffersOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *framebuffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *framebuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)framebuffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteFramebuffersOES, context, n, framebuffers);
+ if (context->skipValidation() || ValidateDeleteFramebuffersOES(context, n, framebuffers))
+ {
+ context->deleteFramebuffers(n, framebuffers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteMemoryObjectsEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *memoryObjects)
+{
+ EVENT("(GLsizei n = %d, const GLuint *memoryObjects = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)memoryObjects);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteMemoryObjectsEXT, context, n, memoryObjects);
+ if (context->skipValidation() || ValidateDeleteMemoryObjectsEXT(context, n, memoryObjects))
+ {
+ context->deleteMemoryObjects(n, memoryObjects);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteProgram, context, program);
+ if (context->skipValidation() || ValidateDeleteProgram(context, program))
+ {
+ context->deleteProgram(program);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteProgramPipelinesContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *pipelines)
+{
+ EVENT("(GLsizei n = %d, const GLuint *pipelines = 0x%016" PRIxPTR ")", n, (uintptr_t)pipelines);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteProgramPipelines, context, n, pipelines);
+ if (context->skipValidation() || ValidateDeleteProgramPipelines(context, n, pipelines))
+ {
+ context->deleteProgramPipelines(n, pipelines);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteQueriesContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, const GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteQueries, context, n, ids);
+ if (context->skipValidation() || ValidateDeleteQueries(context, n, ids))
+ {
+ context->deleteQueries(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteQueriesEXTContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, const GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteQueriesEXT, context, n, ids);
+ if (context->skipValidation() || ValidateDeleteQueriesEXT(context, n, ids))
+ {
+ context->deleteQueries(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteRenderbuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *renderbuffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *renderbuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)renderbuffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteRenderbuffers, context, n, renderbuffers);
+ if (context->skipValidation() || ValidateDeleteRenderbuffers(context, n, renderbuffers))
+ {
+ context->deleteRenderbuffers(n, renderbuffers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteRenderbuffersOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *renderbuffers)
+{
+ EVENT("(GLsizei n = %d, const GLuint *renderbuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)renderbuffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteRenderbuffersOES, context, n, renderbuffers);
+ if (context->skipValidation() || ValidateDeleteRenderbuffersOES(context, n, renderbuffers))
+ {
+ context->deleteRenderbuffers(n, renderbuffers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteSamplersContextANGLE(GLeglContext ctx, GLsizei count, const GLuint *samplers)
+{
+ EVENT("(GLsizei count = %d, const GLuint *samplers = 0x%016" PRIxPTR ")", count,
+ (uintptr_t)samplers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteSamplers, context, count, samplers);
+ if (context->skipValidation() || ValidateDeleteSamplers(context, count, samplers))
+ {
+ context->deleteSamplers(count, samplers);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteSemaphoresEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *semaphores)
+{
+ EVENT("(GLsizei n = %d, const GLuint *semaphores = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)semaphores);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteSemaphoresEXT, context, n, semaphores);
+ if (context->skipValidation() || ValidateDeleteSemaphoresEXT(context, n, semaphores))
+ {
+ context->deleteSemaphores(n, semaphores);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteShaderContextANGLE(GLeglContext ctx, GLuint shader)
+{
+ EVENT("(GLuint shader = %u)", shader);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteShader, context, shader);
+ if (context->skipValidation() || ValidateDeleteShader(context, shader))
+ {
+ context->deleteShader(shader);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteSyncContextANGLE(GLeglContext ctx, GLsync sync)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR ")", (uintptr_t)sync);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteSync, context, sync);
+ if (context->skipValidation() || ValidateDeleteSync(context, sync))
+ {
+ context->deleteSync(sync);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteTexturesContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *textures)
+{
+ EVENT("(GLsizei n = %d, const GLuint *textures = 0x%016" PRIxPTR ")", n, (uintptr_t)textures);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteTextures, context, n, textures);
+ if (context->skipValidation() || ValidateDeleteTextures(context, n, textures))
+ {
+ context->deleteTextures(n, textures);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteTransformFeedbacksContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, const GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteTransformFeedbacks, context, n, ids);
+ if (context->skipValidation() || ValidateDeleteTransformFeedbacks(context, n, ids))
+ {
+ context->deleteTransformFeedbacks(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteVertexArraysContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *arrays)
+{
+ EVENT("(GLsizei n = %d, const GLuint *arrays = 0x%016" PRIxPTR ")", n, (uintptr_t)arrays);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteVertexArrays, context, n, arrays);
+ if (context->skipValidation() || ValidateDeleteVertexArrays(context, n, arrays))
+ {
+ context->deleteVertexArrays(n, arrays);
+ }
+ }
+}
+
+void GL_APIENTRY DeleteVertexArraysOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *arrays)
+{
+ EVENT("(GLsizei n = %d, const GLuint *arrays = 0x%016" PRIxPTR ")", n, (uintptr_t)arrays);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeleteVertexArraysOES, context, n, arrays);
+ if (context->skipValidation() || ValidateDeleteVertexArraysOES(context, n, arrays))
+ {
+ context->deleteVertexArrays(n, arrays);
+ }
+ }
+}
+
+void GL_APIENTRY DepthFuncContextANGLE(GLeglContext ctx, GLenum func)
+{
+ EVENT("(GLenum func = 0x%X)", func);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DepthFunc, context, func);
+ if (context->skipValidation() || ValidateDepthFunc(context, func))
+ {
+ context->depthFunc(func);
+ }
+ }
+}
+
+void GL_APIENTRY DepthMaskContextANGLE(GLeglContext ctx, GLboolean flag)
+{
+ EVENT("(GLboolean flag = %u)", flag);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DepthMask, context, flag);
+ if (context->skipValidation() || ValidateDepthMask(context, flag))
+ {
+ context->depthMask(flag);
+ }
+ }
+}
+
+void GL_APIENTRY DepthRangefContextANGLE(GLeglContext ctx, GLfloat n, GLfloat f)
+{
+ EVENT("(GLfloat n = %f, GLfloat f = %f)", n, f);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DepthRangef, context, n, f);
+ if (context->skipValidation() || ValidateDepthRangef(context, n, f))
+ {
+ context->depthRangef(n, f);
+ }
+ }
+}
+
+void GL_APIENTRY DepthRangexContextANGLE(GLeglContext ctx, GLfixed n, GLfixed f)
+{
+ EVENT("(GLfixed n = 0x%X, GLfixed f = 0x%X)", n, f);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DepthRangex, context, n, f);
+ if (context->skipValidation() || ValidateDepthRangex(context, n, f))
+ {
+ context->depthRangex(n, f);
+ }
+ }
+}
+
+void GL_APIENTRY DetachShaderContextANGLE(GLeglContext ctx, GLuint program, GLuint shader)
+{
+ EVENT("(GLuint program = %u, GLuint shader = %u)", program, shader);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DetachShader, context, program, shader);
+ if (context->skipValidation() || ValidateDetachShader(context, program, shader))
+ {
+ context->detachShader(program, shader);
+ }
+ }
+}
+
+void GL_APIENTRY DisableContextANGLE(GLeglContext ctx, GLenum cap)
+{
+ EVENT("(GLenum cap = 0x%X)", cap);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Disable, context, cap);
+ if (context->skipValidation() || ValidateDisable(context, cap))
+ {
+ context->disable(cap);
+ }
+ }
+}
+
+void GL_APIENTRY DisableClientStateContextANGLE(GLeglContext ctx, GLenum array)
+{
+ EVENT("(GLenum array = 0x%X)", array);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ClientVertexArrayType arrayPacked = FromGLenum<ClientVertexArrayType>(array);
+ ANGLE_CAPTURE(DisableClientState, context, arrayPacked);
+ if (context->skipValidation() || ValidateDisableClientState(context, arrayPacked))
+ {
+ context->disableClientState(arrayPacked);
+ }
+ }
+}
+
+void GL_APIENTRY DisableVertexAttribArrayContextANGLE(GLeglContext ctx, GLuint index)
+{
+ EVENT("(GLuint index = %u)", index);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DisableVertexAttribArray, context, index);
+ if (context->skipValidation() || ValidateDisableVertexAttribArray(context, index))
+ {
+ context->disableVertexAttribArray(index);
+ }
+ }
+}
+
+void GL_APIENTRY DiscardFramebufferEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei numAttachments = %d, const GLenum *attachments = "
+ "0x%016" PRIxPTR ")",
+ target, numAttachments, (uintptr_t)attachments);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DiscardFramebufferEXT, context, target, numAttachments, attachments);
+ if (context->skipValidation() ||
+ ValidateDiscardFramebufferEXT(context, target, numAttachments, attachments))
+ {
+ context->discardFramebuffer(target, numAttachments, attachments);
+ }
+ }
+}
+
+void GL_APIENTRY DispatchComputeContextANGLE(GLeglContext ctx,
+ GLuint num_groups_x,
+ GLuint num_groups_y,
+ GLuint num_groups_z)
+{
+ EVENT("(GLuint num_groups_x = %u, GLuint num_groups_y = %u, GLuint num_groups_z = %u)",
+ num_groups_x, num_groups_y, num_groups_z);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DispatchCompute, context, num_groups_x, num_groups_y, num_groups_z);
+ if (context->skipValidation() ||
+ ValidateDispatchCompute(context, num_groups_x, num_groups_y, num_groups_z))
+ {
+ context->dispatchCompute(num_groups_x, num_groups_y, num_groups_z);
+ }
+ }
+}
+
+void GL_APIENTRY DispatchComputeIndirectContextANGLE(GLeglContext ctx, GLintptr indirect)
+{
+ EVENT("(GLintptr indirect = %llu)", static_cast<unsigned long long>(indirect));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DispatchComputeIndirect, context, indirect);
+ if (context->skipValidation() || ValidateDispatchComputeIndirect(context, indirect))
+ {
+ context->dispatchComputeIndirect(indirect);
+ }
+ }
+}
+
+void GL_APIENTRY DrawArraysContextANGLE(GLeglContext ctx, GLenum mode, GLint first, GLsizei count)
+{
+ EVENT("(GLenum mode = 0x%X, GLint first = %d, GLsizei count = %d)", mode, first, count);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArrays, context, modePacked, first, count);
+ if (context->skipValidation() || ValidateDrawArrays(context, modePacked, first, count))
+ {
+ context->drawArrays(modePacked, first, count);
+ }
+ }
+}
+
+void GL_APIENTRY DrawArraysIndirectContextANGLE(GLeglContext ctx, GLenum mode, const void *indirect)
+{
+ EVENT("(GLenum mode = 0x%X, const void *indirect = 0x%016" PRIxPTR ")", mode,
+ (uintptr_t)indirect);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArraysIndirect, context, modePacked, indirect);
+ if (context->skipValidation() || ValidateDrawArraysIndirect(context, modePacked, indirect))
+ {
+ context->drawArraysIndirect(modePacked, indirect);
+ }
+ }
+}
+
+void GL_APIENTRY DrawArraysInstancedContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei instancecount)
+{
+ EVENT("(GLenum mode = 0x%X, GLint first = %d, GLsizei count = %d, GLsizei instancecount = %d)",
+ mode, first, count, instancecount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArraysInstanced, context, modePacked, first, count, instancecount);
+ if (context->skipValidation() ||
+ ValidateDrawArraysInstanced(context, modePacked, first, count, instancecount))
+ {
+ context->drawArraysInstanced(modePacked, first, count, instancecount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawArraysInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei primcount)
+{
+ EVENT("(GLenum mode = 0x%X, GLint first = %d, GLsizei count = %d, GLsizei primcount = %d)",
+ mode, first, count, primcount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArraysInstancedANGLE, context, modePacked, first, count, primcount);
+ if (context->skipValidation() ||
+ ValidateDrawArraysInstancedANGLE(context, modePacked, first, count, primcount))
+ {
+ context->drawArraysInstanced(modePacked, first, count, primcount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawArraysInstancedEXTContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint start,
+ GLsizei count,
+ GLsizei primcount)
+{
+ EVENT("(GLenum mode = 0x%X, GLint start = %d, GLsizei count = %d, GLsizei primcount = %d)",
+ mode, start, count, primcount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(DrawArraysInstancedEXT, context, modePacked, start, count, primcount);
+ if (context->skipValidation() ||
+ ValidateDrawArraysInstancedEXT(context, modePacked, start, count, primcount))
+ {
+ context->drawArraysInstanced(modePacked, start, count, primcount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawBuffersContextANGLE(GLeglContext ctx, GLsizei n, const GLenum *bufs)
+{
+ EVENT("(GLsizei n = %d, const GLenum *bufs = 0x%016" PRIxPTR ")", n, (uintptr_t)bufs);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawBuffers, context, n, bufs);
+ if (context->skipValidation() || ValidateDrawBuffers(context, n, bufs))
+ {
+ context->drawBuffers(n, bufs);
+ }
+ }
+}
+
+void GL_APIENTRY DrawBuffersEXTContextANGLE(GLeglContext ctx, GLsizei n, const GLenum *bufs)
+{
+ EVENT("(GLsizei n = %d, const GLenum *bufs = 0x%016" PRIxPTR ")", n, (uintptr_t)bufs);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawBuffersEXT, context, n, bufs);
+ if (context->skipValidation() || ValidateDrawBuffersEXT(context, n, bufs))
+ {
+ context->drawBuffers(n, bufs);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElementsContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
+ "0x%016" PRIxPTR ")",
+ mode, count, type, (uintptr_t)indices);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElements, context, modePacked, count, typePacked, indices);
+ if (context->skipValidation() ||
+ ValidateDrawElements(context, modePacked, count, typePacked, indices))
+ {
+ context->drawElements(modePacked, count, typePacked, indices);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElementsIndirectContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLenum type,
+ const void *indirect)
+{
+ EVENT("(GLenum mode = 0x%X, GLenum type = 0x%X, const void *indirect = 0x%016" PRIxPTR ")",
+ mode, type, (uintptr_t)indirect);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElementsIndirect, context, modePacked, typePacked, indirect);
+ if (context->skipValidation() ||
+ ValidateDrawElementsIndirect(context, modePacked, typePacked, indirect))
+ {
+ context->drawElementsIndirect(modePacked, typePacked, indirect);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElementsInstancedContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei instancecount)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
+ "0x%016" PRIxPTR ", GLsizei instancecount = %d)",
+ mode, count, type, (uintptr_t)indices, instancecount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElementsInstanced, context, modePacked, count, typePacked, indices,
+ instancecount);
+ if (context->skipValidation() ||
+ ValidateDrawElementsInstanced(context, modePacked, count, typePacked, indices,
+ instancecount))
+ {
+ context->drawElementsInstanced(modePacked, count, typePacked, indices, instancecount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElementsInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
+ "0x%016" PRIxPTR ", GLsizei primcount = %d)",
+ mode, count, type, (uintptr_t)indices, primcount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElementsInstancedANGLE, context, modePacked, count, typePacked, indices,
+ primcount);
+ if (context->skipValidation() ||
+ ValidateDrawElementsInstancedANGLE(context, modePacked, count, typePacked, indices,
+ primcount))
+ {
+ context->drawElementsInstanced(modePacked, count, typePacked, indices, primcount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawElementsInstancedEXTContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLsizei count = %d, GLenum type = 0x%X, const void *indices = "
+ "0x%016" PRIxPTR ", GLsizei primcount = %d)",
+ mode, count, type, (uintptr_t)indices, primcount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawElementsInstancedEXT, context, modePacked, count, typePacked, indices,
+ primcount);
+ if (context->skipValidation() ||
+ ValidateDrawElementsInstancedEXT(context, modePacked, count, typePacked, indices,
+ primcount))
+ {
+ context->drawElementsInstanced(modePacked, count, typePacked, indices, primcount);
+ }
+ }
+}
+
+void GL_APIENTRY DrawRangeElementsContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLuint start,
+ GLuint end,
+ GLsizei count,
+ GLenum type,
+ const void *indices)
+{
+ EVENT(
+ "(GLenum mode = 0x%X, GLuint start = %u, GLuint end = %u, GLsizei count = %d, GLenum type "
+ "= 0x%X, const void *indices = 0x%016" PRIxPTR ")",
+ mode, start, end, count, type, (uintptr_t)indices);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(DrawRangeElements, context, modePacked, start, end, count, typePacked,
+ indices);
+ if (context->skipValidation() ||
+ ValidateDrawRangeElements(context, modePacked, start, end, count, typePacked, indices))
+ {
+ context->drawRangeElements(modePacked, start, end, count, typePacked, indices);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexfOESContextANGLE(GLeglContext ctx,
+ GLfloat x,
+ GLfloat y,
+ GLfloat z,
+ GLfloat width,
+ GLfloat height)
+{
+ EVENT(
+ "(GLfloat x = %f, GLfloat y = %f, GLfloat z = %f, GLfloat width = %f, GLfloat height = %f)",
+ x, y, z, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawTexfOES, context, x, y, z, width, height);
+ if (context->skipValidation() || ValidateDrawTexfOES(context, x, y, z, width, height))
+ {
+ context->drawTexf(x, y, z, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexfvOESContextANGLE(GLeglContext ctx, const GLfloat *coords)
+{
+ EVENT("(const GLfloat *coords = 0x%016" PRIxPTR ")", (uintptr_t)coords);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawTexfvOES, context, coords);
+ if (context->skipValidation() || ValidateDrawTexfvOES(context, coords))
+ {
+ context->drawTexfv(coords);
+ }
+ }
+}
+
+void GL_APIENTRY
+DrawTexiOESContextANGLE(GLeglContext ctx, GLint x, GLint y, GLint z, GLint width, GLint height)
+{
+ EVENT("(GLint x = %d, GLint y = %d, GLint z = %d, GLint width = %d, GLint height = %d)", x, y,
+ z, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawTexiOES, context, x, y, z, width, height);
+ if (context->skipValidation() || ValidateDrawTexiOES(context, x, y, z, width, height))
+ {
+ context->drawTexi(x, y, z, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexivOESContextANGLE(GLeglContext ctx, const GLint *coords)
+{
+ EVENT("(const GLint *coords = 0x%016" PRIxPTR ")", (uintptr_t)coords);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawTexivOES, context, coords);
+ if (context->skipValidation() || ValidateDrawTexivOES(context, coords))
+ {
+ context->drawTexiv(coords);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexsOESContextANGLE(GLeglContext ctx,
+ GLshort x,
+ GLshort y,
+ GLshort z,
+ GLshort width,
+ GLshort height)
+{
+ EVENT(
+ "(GLshort x = %d, GLshort y = %d, GLshort z = %d, GLshort width = %d, GLshort height = %d)",
+ x, y, z, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawTexsOES, context, x, y, z, width, height);
+ if (context->skipValidation() || ValidateDrawTexsOES(context, x, y, z, width, height))
+ {
+ context->drawTexs(x, y, z, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexsvOESContextANGLE(GLeglContext ctx, const GLshort *coords)
+{
+ EVENT("(const GLshort *coords = 0x%016" PRIxPTR ")", (uintptr_t)coords);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawTexsvOES, context, coords);
+ if (context->skipValidation() || ValidateDrawTexsvOES(context, coords))
+ {
+ context->drawTexsv(coords);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexxOESContextANGLE(GLeglContext ctx,
+ GLfixed x,
+ GLfixed y,
+ GLfixed z,
+ GLfixed width,
+ GLfixed height)
+{
+ EVENT(
+ "(GLfixed x = 0x%X, GLfixed y = 0x%X, GLfixed z = 0x%X, GLfixed width = 0x%X, GLfixed "
+ "height = 0x%X)",
+ x, y, z, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawTexxOES, context, x, y, z, width, height);
+ if (context->skipValidation() || ValidateDrawTexxOES(context, x, y, z, width, height))
+ {
+ context->drawTexx(x, y, z, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY DrawTexxvOESContextANGLE(GLeglContext ctx, const GLfixed *coords)
+{
+ EVENT("(const GLfixed *coords = 0x%016" PRIxPTR ")", (uintptr_t)coords);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DrawTexxvOES, context, coords);
+ if (context->skipValidation() || ValidateDrawTexxvOES(context, coords))
+ {
+ context->drawTexxv(coords);
+ }
+ }
+}
+
+void GL_APIENTRY EGLImageTargetRenderbufferStorageOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLeglImageOES image)
+{
+ EVENT("(GLenum target = 0x%X, GLeglImageOES image = 0x%016" PRIxPTR ")", target,
+ (uintptr_t)image);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(EGLImageTargetRenderbufferStorageOES, context, target, image);
+ if (context->skipValidation() ||
+ ValidateEGLImageTargetRenderbufferStorageOES(context, target, image))
+ {
+ context->eGLImageTargetRenderbufferStorage(target, image);
+ }
+ }
+}
+
+void GL_APIENTRY EGLImageTargetTexture2DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLeglImageOES image)
+{
+ EVENT("(GLenum target = 0x%X, GLeglImageOES image = 0x%016" PRIxPTR ")", target,
+ (uintptr_t)image);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(EGLImageTargetTexture2DOES, context, targetPacked, image);
+ if (context->skipValidation() ||
+ ValidateEGLImageTargetTexture2DOES(context, targetPacked, image))
+ {
+ context->eGLImageTargetTexture2D(targetPacked, image);
+ }
+ }
+}
+
+void GL_APIENTRY EnableContextANGLE(GLeglContext ctx, GLenum cap)
+{
+ EVENT("(GLenum cap = 0x%X)", cap);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Enable, context, cap);
+ if (context->skipValidation() || ValidateEnable(context, cap))
+ {
+ context->enable(cap);
+ }
+ }
+}
+
+void GL_APIENTRY EnableClientStateContextANGLE(GLeglContext ctx, GLenum array)
+{
+ EVENT("(GLenum array = 0x%X)", array);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ClientVertexArrayType arrayPacked = FromGLenum<ClientVertexArrayType>(array);
+ ANGLE_CAPTURE(EnableClientState, context, arrayPacked);
+ if (context->skipValidation() || ValidateEnableClientState(context, arrayPacked))
+ {
+ context->enableClientState(arrayPacked);
+ }
+ }
+}
+
+void GL_APIENTRY EnableVertexAttribArrayContextANGLE(GLeglContext ctx, GLuint index)
+{
+ EVENT("(GLuint index = %u)", index);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(EnableVertexAttribArray, context, index);
+ if (context->skipValidation() || ValidateEnableVertexAttribArray(context, index))
+ {
+ context->enableVertexAttribArray(index);
+ }
+ }
+}
+
+void GL_APIENTRY EndQueryContextANGLE(GLeglContext ctx, GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(EndQuery, context, targetPacked);
+ if (context->skipValidation() || ValidateEndQuery(context, targetPacked))
+ {
+ context->endQuery(targetPacked);
+ }
+ }
+}
+
+void GL_APIENTRY EndQueryEXTContextANGLE(GLeglContext ctx, GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(EndQueryEXT, context, targetPacked);
+ if (context->skipValidation() || ValidateEndQueryEXT(context, targetPacked))
+ {
+ context->endQuery(targetPacked);
+ }
+ }
+}
+
+void GL_APIENTRY EndTransformFeedbackContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(EndTransformFeedback, context);
+ if (context->skipValidation() || ValidateEndTransformFeedback(context))
+ {
+ context->endTransformFeedback();
+ }
+ }
+}
+
+GLsync GL_APIENTRY FenceSyncContextANGLE(GLeglContext ctx, GLenum condition, GLbitfield flags)
+{
+ EVENT("(GLenum condition = 0x%X, GLbitfield flags = 0x%X)", condition, flags);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(FenceSync, context, condition, flags);
+ if (context->skipValidation() || ValidateFenceSync(context, condition, flags))
+ {
+ return context->fenceSync(condition, flags);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::FenceSync, GLsync>();
+}
+
+void GL_APIENTRY FinishContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Finish, context);
+ if (context->skipValidation() || ValidateFinish(context))
+ {
+ context->finish();
+ }
+ }
+}
+
+void GL_APIENTRY FinishFenceNVContextANGLE(GLeglContext ctx, GLuint fence)
+{
+ EVENT("(GLuint fence = %u)", fence);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(FinishFenceNV, context, fence);
+ if (context->skipValidation() || ValidateFinishFenceNV(context, fence))
+ {
+ context->finishFenceNV(fence);
+ }
+ }
+}
+
+void GL_APIENTRY FlushContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Flush, context);
+ if (context->skipValidation() || ValidateFlush(context))
+ {
+ context->flush();
+ }
+ }
+}
+
+void GL_APIENTRY FlushMappedBufferRangeContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length)
+{
+ EVENT("(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr length = %llu)", target,
+ static_cast<unsigned long long>(offset), static_cast<unsigned long long>(length));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(FlushMappedBufferRange, context, targetPacked, offset, length);
+ if (context->skipValidation() ||
+ ValidateFlushMappedBufferRange(context, targetPacked, offset, length))
+ {
+ context->flushMappedBufferRange(targetPacked, offset, length);
+ }
+ }
+}
+
+void GL_APIENTRY FlushMappedBufferRangeEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length)
+{
+ EVENT("(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr length = %llu)", target,
+ static_cast<unsigned long long>(offset), static_cast<unsigned long long>(length));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(FlushMappedBufferRangeEXT, context, targetPacked, offset, length);
+ if (context->skipValidation() ||
+ ValidateFlushMappedBufferRangeEXT(context, targetPacked, offset, length))
+ {
+ context->flushMappedBufferRange(targetPacked, offset, length);
+ }
+ }
+}
+
+void GL_APIENTRY FogfContextANGLE(GLeglContext ctx, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfloat param = %f)", pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Fogf, context, pname, param);
+ if (context->skipValidation() || ValidateFogf(context, pname, param))
+ {
+ context->fogf(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY FogfvContextANGLE(GLeglContext ctx, GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Fogfv, context, pname, params);
+ if (context->skipValidation() || ValidateFogfv(context, pname, params))
+ {
+ context->fogfv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY FogxContextANGLE(GLeglContext ctx, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfixed param = 0x%X)", pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Fogx, context, pname, param);
+ if (context->skipValidation() || ValidateFogx(context, pname, param))
+ {
+ context->fogx(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY FogxvContextANGLE(GLeglContext ctx, GLenum pname, const GLfixed *param)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfixed *param = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Fogxv, context, pname, param);
+ if (context->skipValidation() || ValidateFogxv(context, pname, param))
+ {
+ context->fogxv(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferParameteriContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint param = %d)", target, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(FramebufferParameteri, context, target, pname, param);
+ if (context->skipValidation() ||
+ ValidateFramebufferParameteri(context, target, pname, param))
+ {
+ context->framebufferParameteri(target, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferRenderbufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum renderbuffertarget = 0x%X, GLuint "
+ "renderbuffer = %u)",
+ target, attachment, renderbuffertarget, renderbuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(FramebufferRenderbuffer, context, target, attachment, renderbuffertarget,
+ renderbuffer);
+ if (context->skipValidation() ||
+ ValidateFramebufferRenderbuffer(context, target, attachment, renderbuffertarget,
+ renderbuffer))
+ {
+ context->framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferRenderbufferOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum renderbuffertarget = 0x%X, GLuint "
+ "renderbuffer = %u)",
+ target, attachment, renderbuffertarget, renderbuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(FramebufferRenderbufferOES, context, target, attachment, renderbuffertarget,
+ renderbuffer);
+ if (context->skipValidation() ||
+ ValidateFramebufferRenderbufferOES(context, target, attachment, renderbuffertarget,
+ renderbuffer))
+ {
+ context->framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferTexture2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum textarget = 0x%X, GLuint texture "
+ "= %u, GLint level = %d)",
+ target, attachment, textarget, texture, level);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget textargetPacked = FromGLenum<TextureTarget>(textarget);
+ ANGLE_CAPTURE(FramebufferTexture2D, context, target, attachment, textargetPacked, texture,
+ level);
+ if (context->skipValidation() ||
+ ValidateFramebufferTexture2D(context, target, attachment, textargetPacked, texture,
+ level))
+ {
+ context->framebufferTexture2D(target, attachment, textargetPacked, texture, level);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferTexture2DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum textarget = 0x%X, GLuint texture "
+ "= %u, GLint level = %d)",
+ target, attachment, textarget, texture, level);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget textargetPacked = FromGLenum<TextureTarget>(textarget);
+ ANGLE_CAPTURE(FramebufferTexture2DOES, context, target, attachment, textargetPacked,
+ texture, level);
+ if (context->skipValidation() ||
+ ValidateFramebufferTexture2DOES(context, target, attachment, textargetPacked, texture,
+ level))
+ {
+ context->framebufferTexture2D(target, attachment, textargetPacked, texture, level);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferTexture3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level,
+ GLint zoffset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum textarget = 0x%X, GLuint texture "
+ "= %u, GLint level = %d, GLint zoffset = %d)",
+ target, attachment, textarget, texture, level, zoffset);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget textargetPacked = FromGLenum<TextureTarget>(textarget);
+ ANGLE_CAPTURE(FramebufferTexture3DOES, context, target, attachment, textargetPacked,
+ texture, level, zoffset);
+ if (context->skipValidation() ||
+ ValidateFramebufferTexture3DOES(context, target, attachment, textargetPacked, texture,
+ level, zoffset))
+ {
+ context->framebufferTexture3D(target, attachment, textargetPacked, texture, level,
+ zoffset);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferTextureEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level)
+{
+ EVENT("(GLenum target = 0x%X, GLenum attachment = 0x%X, GLuint texture = %u, GLint level = %d)",
+ target, attachment, texture, level);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(FramebufferTextureEXT, context, target, attachment, texture, level);
+ if (context->skipValidation() ||
+ ValidateFramebufferTextureEXT(context, target, attachment, texture, level))
+ {
+ context->framebufferTexture(target, attachment, texture, level);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferTextureLayerContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint layer)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLuint texture = %u, GLint level = %d, "
+ "GLint layer = %d)",
+ target, attachment, texture, level, layer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(FramebufferTextureLayer, context, target, attachment, texture, level, layer);
+ if (context->skipValidation() ||
+ ValidateFramebufferTextureLayer(context, target, attachment, texture, level, layer))
+ {
+ context->framebufferTextureLayer(target, attachment, texture, level, layer);
+ }
+ }
+}
+
+void GL_APIENTRY FramebufferTextureMultiviewOVRContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint baseViewIndex,
+ GLsizei numViews)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLuint texture = %u, GLint level = %d, "
+ "GLint baseViewIndex = %d, GLsizei numViews = %d)",
+ target, attachment, texture, level, baseViewIndex, numViews);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(FramebufferTextureMultiviewOVR, context, target, attachment, texture, level,
+ baseViewIndex, numViews);
+ if (context->skipValidation() ||
+ ValidateFramebufferTextureMultiviewOVR(context, target, attachment, texture, level,
+ baseViewIndex, numViews))
+ {
+ context->framebufferTextureMultiview(target, attachment, texture, level, baseViewIndex,
+ numViews);
+ }
+ }
+}
+
+void GL_APIENTRY FrontFaceContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(FrontFace, context, mode);
+ if (context->skipValidation() || ValidateFrontFace(context, mode))
+ {
+ context->frontFace(mode);
+ }
+ }
+}
+
+void GL_APIENTRY FrustumfContextANGLE(GLeglContext ctx,
+ GLfloat l,
+ GLfloat r,
+ GLfloat b,
+ GLfloat t,
+ GLfloat n,
+ GLfloat f)
+{
+ EVENT(
+ "(GLfloat l = %f, GLfloat r = %f, GLfloat b = %f, GLfloat t = %f, GLfloat n = %f, GLfloat "
+ "f = %f)",
+ l, r, b, t, n, f);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Frustumf, context, l, r, b, t, n, f);
+ if (context->skipValidation() || ValidateFrustumf(context, l, r, b, t, n, f))
+ {
+ context->frustumf(l, r, b, t, n, f);
+ }
+ }
+}
+
+void GL_APIENTRY FrustumxContextANGLE(GLeglContext ctx,
+ GLfixed l,
+ GLfixed r,
+ GLfixed b,
+ GLfixed t,
+ GLfixed n,
+ GLfixed f)
+{
+ EVENT(
+ "(GLfixed l = 0x%X, GLfixed r = 0x%X, GLfixed b = 0x%X, GLfixed t = 0x%X, GLfixed n = "
+ "0x%X, GLfixed f = 0x%X)",
+ l, r, b, t, n, f);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Frustumx, context, l, r, b, t, n, f);
+ if (context->skipValidation() || ValidateFrustumx(context, l, r, b, t, n, f))
+ {
+ context->frustumx(l, r, b, t, n, f);
+ }
+ }
+}
+
+void GL_APIENTRY GenBuffersContextANGLE(GLeglContext ctx, GLsizei n, GLuint *buffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *buffers = 0x%016" PRIxPTR ")", n, (uintptr_t)buffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenBuffers, context, n, buffers);
+ if (context->skipValidation() || ValidateGenBuffers(context, n, buffers))
+ {
+ context->genBuffers(n, buffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenFencesNVContextANGLE(GLeglContext ctx, GLsizei n, GLuint *fences)
+{
+ EVENT("(GLsizei n = %d, GLuint *fences = 0x%016" PRIxPTR ")", n, (uintptr_t)fences);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenFencesNV, context, n, fences);
+ if (context->skipValidation() || ValidateGenFencesNV(context, n, fences))
+ {
+ context->genFencesNV(n, fences);
+ }
+ }
+}
+
+void GL_APIENTRY GenFramebuffersContextANGLE(GLeglContext ctx, GLsizei n, GLuint *framebuffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *framebuffers = 0x%016" PRIxPTR ")", n, (uintptr_t)framebuffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenFramebuffers, context, n, framebuffers);
+ if (context->skipValidation() || ValidateGenFramebuffers(context, n, framebuffers))
+ {
+ context->genFramebuffers(n, framebuffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenFramebuffersOESContextANGLE(GLeglContext ctx, GLsizei n, GLuint *framebuffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *framebuffers = 0x%016" PRIxPTR ")", n, (uintptr_t)framebuffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenFramebuffersOES, context, n, framebuffers);
+ if (context->skipValidation() || ValidateGenFramebuffersOES(context, n, framebuffers))
+ {
+ context->genFramebuffers(n, framebuffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenProgramPipelinesContextANGLE(GLeglContext ctx, GLsizei n, GLuint *pipelines)
+{
+ EVENT("(GLsizei n = %d, GLuint *pipelines = 0x%016" PRIxPTR ")", n, (uintptr_t)pipelines);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenProgramPipelines, context, n, pipelines);
+ if (context->skipValidation() || ValidateGenProgramPipelines(context, n, pipelines))
+ {
+ context->genProgramPipelines(n, pipelines);
+ }
+ }
+}
+
+void GL_APIENTRY GenQueriesContextANGLE(GLeglContext ctx, GLsizei n, GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenQueries, context, n, ids);
+ if (context->skipValidation() || ValidateGenQueries(context, n, ids))
+ {
+ context->genQueries(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY GenQueriesEXTContextANGLE(GLeglContext ctx, GLsizei n, GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenQueriesEXT, context, n, ids);
+ if (context->skipValidation() || ValidateGenQueriesEXT(context, n, ids))
+ {
+ context->genQueries(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY GenRenderbuffersContextANGLE(GLeglContext ctx, GLsizei n, GLuint *renderbuffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *renderbuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)renderbuffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenRenderbuffers, context, n, renderbuffers);
+ if (context->skipValidation() || ValidateGenRenderbuffers(context, n, renderbuffers))
+ {
+ context->genRenderbuffers(n, renderbuffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenRenderbuffersOESContextANGLE(GLeglContext ctx, GLsizei n, GLuint *renderbuffers)
+{
+ EVENT("(GLsizei n = %d, GLuint *renderbuffers = 0x%016" PRIxPTR ")", n,
+ (uintptr_t)renderbuffers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenRenderbuffersOES, context, n, renderbuffers);
+ if (context->skipValidation() || ValidateGenRenderbuffersOES(context, n, renderbuffers))
+ {
+ context->genRenderbuffers(n, renderbuffers);
+ }
+ }
+}
+
+void GL_APIENTRY GenSamplersContextANGLE(GLeglContext ctx, GLsizei count, GLuint *samplers)
+{
+ EVENT("(GLsizei count = %d, GLuint *samplers = 0x%016" PRIxPTR ")", count, (uintptr_t)samplers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenSamplers, context, count, samplers);
+ if (context->skipValidation() || ValidateGenSamplers(context, count, samplers))
+ {
+ context->genSamplers(count, samplers);
+ }
+ }
+}
+
+void GL_APIENTRY GenSemaphoresEXTContextANGLE(GLeglContext ctx, GLsizei n, GLuint *semaphores)
+{
+ EVENT("(GLsizei n = %d, GLuint *semaphores = 0x%016" PRIxPTR ")", n, (uintptr_t)semaphores);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenSemaphoresEXT, context, n, semaphores);
+ if (context->skipValidation() || ValidateGenSemaphoresEXT(context, n, semaphores))
+ {
+ context->genSemaphores(n, semaphores);
+ }
+ }
+}
+
+void GL_APIENTRY GenTexturesContextANGLE(GLeglContext ctx, GLsizei n, GLuint *textures)
+{
+ EVENT("(GLsizei n = %d, GLuint *textures = 0x%016" PRIxPTR ")", n, (uintptr_t)textures);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenTextures, context, n, textures);
+ if (context->skipValidation() || ValidateGenTextures(context, n, textures))
+ {
+ context->genTextures(n, textures);
+ }
+ }
+}
+
+void GL_APIENTRY GenTransformFeedbacksContextANGLE(GLeglContext ctx, GLsizei n, GLuint *ids)
+{
+ EVENT("(GLsizei n = %d, GLuint *ids = 0x%016" PRIxPTR ")", n, (uintptr_t)ids);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenTransformFeedbacks, context, n, ids);
+ if (context->skipValidation() || ValidateGenTransformFeedbacks(context, n, ids))
+ {
+ context->genTransformFeedbacks(n, ids);
+ }
+ }
+}
+
+void GL_APIENTRY GenVertexArraysContextANGLE(GLeglContext ctx, GLsizei n, GLuint *arrays)
+{
+ EVENT("(GLsizei n = %d, GLuint *arrays = 0x%016" PRIxPTR ")", n, (uintptr_t)arrays);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenVertexArrays, context, n, arrays);
+ if (context->skipValidation() || ValidateGenVertexArrays(context, n, arrays))
+ {
+ context->genVertexArrays(n, arrays);
+ }
+ }
+}
+
+void GL_APIENTRY GenVertexArraysOESContextANGLE(GLeglContext ctx, GLsizei n, GLuint *arrays)
+{
+ EVENT("(GLsizei n = %d, GLuint *arrays = 0x%016" PRIxPTR ")", n, (uintptr_t)arrays);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenVertexArraysOES, context, n, arrays);
+ if (context->skipValidation() || ValidateGenVertexArraysOES(context, n, arrays))
+ {
+ context->genVertexArrays(n, arrays);
+ }
+ }
+}
+
+void GL_APIENTRY GenerateMipmapContextANGLE(GLeglContext ctx, GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GenerateMipmap, context, targetPacked);
+ if (context->skipValidation() || ValidateGenerateMipmap(context, targetPacked))
+ {
+ context->generateMipmap(targetPacked);
+ }
+ }
+}
+
+void GL_APIENTRY GenerateMipmapOESContextANGLE(GLeglContext ctx, GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GenerateMipmapOES, context, targetPacked);
+ if (context->skipValidation() || ValidateGenerateMipmapOES(context, targetPacked))
+ {
+ context->generateMipmap(targetPacked);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveAttribContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint index = %u, GLsizei bufSize = %d, GLsizei *length = "
+ "0x%016" PRIxPTR ", GLint *size = 0x%016" PRIxPTR ", GLenum *type = 0x%016" PRIxPTR
+ ", GLchar *name = 0x%016" PRIxPTR ")",
+ program, index, bufSize, (uintptr_t)length, (uintptr_t)size, (uintptr_t)type,
+ (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetActiveAttrib, context, program, index, bufSize, length, size, type, name);
+ if (context->skipValidation() ||
+ ValidateGetActiveAttrib(context, program, index, bufSize, length, size, type, name))
+ {
+ context->getActiveAttrib(program, index, bufSize, length, size, type, name);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniformContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint index = %u, GLsizei bufSize = %d, GLsizei *length = "
+ "0x%016" PRIxPTR ", GLint *size = 0x%016" PRIxPTR ", GLenum *type = 0x%016" PRIxPTR
+ ", GLchar *name = 0x%016" PRIxPTR ")",
+ program, index, bufSize, (uintptr_t)length, (uintptr_t)size, (uintptr_t)type,
+ (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetActiveUniform, context, program, index, bufSize, length, size, type, name);
+ if (context->skipValidation() ||
+ ValidateGetActiveUniform(context, program, index, bufSize, length, size, type, name))
+ {
+ context->getActiveUniform(program, index, bufSize, length, size, type, name);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniformBlockNameContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *uniformBlockName)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint uniformBlockIndex = %u, GLsizei bufSize = %d, GLsizei "
+ "*length = 0x%016" PRIxPTR ", GLchar *uniformBlockName = 0x%016" PRIxPTR ")",
+ program, uniformBlockIndex, bufSize, (uintptr_t)length, (uintptr_t)uniformBlockName);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetActiveUniformBlockName, context, program, uniformBlockIndex, bufSize,
+ length, uniformBlockName);
+ if (context->skipValidation() ||
+ ValidateGetActiveUniformBlockName(context, program, uniformBlockIndex, bufSize, length,
+ uniformBlockName))
+ {
+ context->getActiveUniformBlockName(program, uniformBlockIndex, bufSize, length,
+ uniformBlockName);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniformBlockivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint uniformBlockIndex = %u, GLenum pname = 0x%X, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ program, uniformBlockIndex, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetActiveUniformBlockiv, context, program, uniformBlockIndex, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetActiveUniformBlockiv(context, program, uniformBlockIndex, pname, params))
+ {
+ context->getActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniformsivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei uniformCount,
+ const GLuint *uniformIndices,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLsizei uniformCount = %d, const GLuint *uniformIndices = "
+ "0x%016" PRIxPTR ", GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")",
+ program, uniformCount, (uintptr_t)uniformIndices, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetActiveUniformsiv, context, program, uniformCount, uniformIndices, pname,
+ params);
+ if (context->skipValidation() || ValidateGetActiveUniformsiv(context, program, uniformCount,
+ uniformIndices, pname, params))
+ {
+ context->getActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetAttachedShadersContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei maxCount,
+ GLsizei *count,
+ GLuint *shaders)
+{
+ EVENT("(GLuint program = %u, GLsizei maxCount = %d, GLsizei *count = 0x%016" PRIxPTR
+ ", GLuint *shaders = 0x%016" PRIxPTR ")",
+ program, maxCount, (uintptr_t)count, (uintptr_t)shaders);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetAttachedShaders, context, program, maxCount, count, shaders);
+ if (context->skipValidation() ||
+ ValidateGetAttachedShaders(context, program, maxCount, count, shaders))
+ {
+ context->getAttachedShaders(program, maxCount, count, shaders);
+ }
+ }
+}
+
+GLint GL_APIENTRY GetAttribLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name)
+{
+ EVENT("(GLuint program = %u, const GLchar *name = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetAttribLocation, context, program, name);
+ if (context->skipValidation() || ValidateGetAttribLocation(context, program, name))
+ {
+ return context->getAttribLocation(program, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetAttribLocation, GLint>();
+}
+
+void GL_APIENTRY GetBooleani_vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLboolean *data)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLboolean *data = 0x%016" PRIxPTR ")", target,
+ index, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetBooleani_v, context, target, index, data);
+ if (context->skipValidation() || ValidateGetBooleani_v(context, target, index, data))
+ {
+ context->getBooleani_v(target, index, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetBooleanvContextANGLE(GLeglContext ctx, GLenum pname, GLboolean *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLboolean *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetBooleanv, context, pname, data);
+ if (context->skipValidation() || ValidateGetBooleanv(context, pname, data))
+ {
+ context->getBooleanv(pname, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferParameteri64vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint64 *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint64 *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferParameteri64v, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetBufferParameteri64v(context, targetPacked, pname, params))
+ {
+ context->getBufferParameteri64v(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferParameteriv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetBufferParameteriv(context, targetPacked, pname, params))
+ {
+ context->getBufferParameteriv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferPointervContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ void **params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferPointerv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetBufferPointerv(context, targetPacked, pname, params))
+ {
+ context->getBufferPointerv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferPointervOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ void **params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferPointervOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetBufferPointervOES(context, targetPacked, pname, params))
+ {
+ context->getBufferPointerv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetClipPlanefContextANGLE(GLeglContext ctx, GLenum plane, GLfloat *equation)
+{
+ EVENT("(GLenum plane = 0x%X, GLfloat *equation = 0x%016" PRIxPTR ")", plane,
+ (uintptr_t)equation);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetClipPlanef, context, plane, equation);
+ if (context->skipValidation() || ValidateGetClipPlanef(context, plane, equation))
+ {
+ context->getClipPlanef(plane, equation);
+ }
+ }
+}
+
+void GL_APIENTRY GetClipPlanexContextANGLE(GLeglContext ctx, GLenum plane, GLfixed *equation)
+{
+ EVENT("(GLenum plane = 0x%X, GLfixed *equation = 0x%016" PRIxPTR ")", plane,
+ (uintptr_t)equation);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetClipPlanex, context, plane, equation);
+ if (context->skipValidation() || ValidateGetClipPlanex(context, plane, equation))
+ {
+ context->getClipPlanex(plane, equation);
+ }
+ }
+}
+
+GLuint GL_APIENTRY GetDebugMessageLogKHRContextANGLE(GLeglContext ctx,
+ GLuint count,
+ GLsizei bufSize,
+ GLenum *sources,
+ GLenum *types,
+ GLuint *ids,
+ GLenum *severities,
+ GLsizei *lengths,
+ GLchar *messageLog)
+{
+ EVENT("(GLuint count = %u, GLsizei bufSize = %d, GLenum *sources = 0x%016" PRIxPTR
+ ", GLenum *types = 0x%016" PRIxPTR ", GLuint *ids = 0x%016" PRIxPTR
+ ", GLenum *severities = 0x%016" PRIxPTR ", GLsizei *lengths = 0x%016" PRIxPTR
+ ", GLchar *messageLog = 0x%016" PRIxPTR ")",
+ count, bufSize, (uintptr_t)sources, (uintptr_t)types, (uintptr_t)ids,
+ (uintptr_t)severities, (uintptr_t)lengths, (uintptr_t)messageLog);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetDebugMessageLogKHR, context, count, bufSize, sources, types, ids,
+ severities, lengths, messageLog);
+ if (context->skipValidation() ||
+ ValidateGetDebugMessageLogKHR(context, count, bufSize, sources, types, ids, severities,
+ lengths, messageLog))
+ {
+ return context->getDebugMessageLog(count, bufSize, sources, types, ids, severities,
+ lengths, messageLog);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetDebugMessageLogKHR, GLuint>();
+}
+
+GLenum GL_APIENTRY GetErrorContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetError, context);
+ if (context->skipValidation() || ValidateGetError(context))
+ {
+ return context->getError();
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetError, GLenum>();
+}
+
+void GL_APIENTRY GetFenceivNVContextANGLE(GLeglContext ctx,
+ GLuint fence,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint fence = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", fence,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFenceivNV, context, fence, pname, params);
+ if (context->skipValidation() || ValidateGetFenceivNV(context, fence, pname, params))
+ {
+ context->getFenceivNV(fence, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFixedvContextANGLE(GLeglContext ctx, GLenum pname, GLfixed *params)
+{
+ EVENT("(GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")", pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFixedv, context, pname, params);
+ if (context->skipValidation() || ValidateGetFixedv(context, pname, params))
+ {
+ context->getFixedv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFloatvContextANGLE(GLeglContext ctx, GLenum pname, GLfloat *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLfloat *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFloatv, context, pname, data);
+ if (context->skipValidation() || ValidateGetFloatv(context, pname, data))
+ {
+ context->getFloatv(pname, data);
+ }
+ }
+}
+
+GLint GL_APIENTRY GetFragDataIndexEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name)
+{
+ EVENT("(GLuint program = %u, const GLchar *name = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFragDataIndexEXT, context, program, name);
+ if (context->skipValidation() || ValidateGetFragDataIndexEXT(context, program, name))
+ {
+ return context->getFragDataIndex(program, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetFragDataIndexEXT, GLint>();
+}
+
+GLint GL_APIENTRY GetFragDataLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name)
+{
+ EVENT("(GLuint program = %u, const GLchar *name = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFragDataLocation, context, program, name);
+ if (context->skipValidation() || ValidateGetFragDataLocation(context, program, name))
+ {
+ return context->getFragDataLocation(program, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetFragDataLocation, GLint>();
+}
+
+void GL_APIENTRY GetFramebufferAttachmentParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum pname = 0x%X, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ target, attachment, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFramebufferAttachmentParameteriv, context, target, attachment, pname,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetFramebufferAttachmentParameteriv(context, target, attachment, pname, params))
+ {
+ context->getFramebufferAttachmentParameteriv(target, attachment, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFramebufferAttachmentParameterivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum pname = 0x%X, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ target, attachment, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFramebufferAttachmentParameterivOES, context, target, attachment, pname,
+ params);
+ if (context->skipValidation() || ValidateGetFramebufferAttachmentParameterivOES(
+ context, target, attachment, pname, params))
+ {
+ context->getFramebufferAttachmentParameteriv(target, attachment, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFramebufferParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFramebufferParameteriv, context, target, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetFramebufferParameteriv(context, target, pname, params))
+ {
+ context->getFramebufferParameteriv(target, pname, params);
+ }
+ }
+}
+
+GLenum GL_APIENTRY GetGraphicsResetStatusEXTContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetGraphicsResetStatusEXT, context);
+ if (context->skipValidation() || ValidateGetGraphicsResetStatusEXT(context))
+ {
+ return context->getGraphicsResetStatus();
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetGraphicsResetStatusEXT, GLenum>();
+}
+
+void GL_APIENTRY GetInteger64i_vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLint64 *data)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLint64 *data = 0x%016" PRIxPTR ")", target,
+ index, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetInteger64i_v, context, target, index, data);
+ if (context->skipValidation() || ValidateGetInteger64i_v(context, target, index, data))
+ {
+ context->getInteger64i_v(target, index, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetInteger64vContextANGLE(GLeglContext ctx, GLenum pname, GLint64 *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLint64 *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetInteger64v, context, pname, data);
+ if (context->skipValidation() || ValidateGetInteger64v(context, pname, data))
+ {
+ context->getInteger64v(pname, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetIntegeri_vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLint *data)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLint *data = 0x%016" PRIxPTR ")", target,
+ index, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetIntegeri_v, context, target, index, data);
+ if (context->skipValidation() || ValidateGetIntegeri_v(context, target, index, data))
+ {
+ context->getIntegeri_v(target, index, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetIntegervContextANGLE(GLeglContext ctx, GLenum pname, GLint *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLint *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetIntegerv, context, pname, data);
+ if (context->skipValidation() || ValidateGetIntegerv(context, pname, data))
+ {
+ context->getIntegerv(pname, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetInternalformativContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum internalformat = 0x%X, GLenum pname = 0x%X, GLsizei bufSize "
+ "= %d, GLint *params = 0x%016" PRIxPTR ")",
+ target, internalformat, pname, bufSize, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetInternalformativ, context, target, internalformat, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateGetInternalformativ(context, target, internalformat, pname, bufSize, params))
+ {
+ context->getInternalformativ(target, internalformat, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetLightfvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")", light,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(GetLightfv, context, light, pnamePacked, params);
+ if (context->skipValidation() || ValidateGetLightfv(context, light, pnamePacked, params))
+ {
+ context->getLightfv(light, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetLightxvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ GLfixed *params)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")", light,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(GetLightxv, context, light, pnamePacked, params);
+ if (context->skipValidation() || ValidateGetLightxv(context, light, pnamePacked, params))
+ {
+ context->getLightxv(light, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetMaterialfvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")", face,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(GetMaterialfv, context, face, pnamePacked, params);
+ if (context->skipValidation() || ValidateGetMaterialfv(context, face, pnamePacked, params))
+ {
+ context->getMaterialfv(face, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetMaterialxvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ GLfixed *params)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")", face,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(GetMaterialxv, context, face, pnamePacked, params);
+ if (context->skipValidation() || ValidateGetMaterialxv(context, face, pnamePacked, params))
+ {
+ context->getMaterialxv(face, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetMemoryObjectParameterivEXTContextANGLE(GLeglContext ctx,
+ GLuint memoryObject,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint memoryObject = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")",
+ memoryObject, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetMemoryObjectParameterivEXT, context, memoryObject, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetMemoryObjectParameterivEXT(context, memoryObject, pname, params))
+ {
+ context->getMemoryObjectParameteriv(memoryObject, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetMultisamplefvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLuint index,
+ GLfloat *val)
+{
+ EVENT("(GLenum pname = 0x%X, GLuint index = %u, GLfloat *val = 0x%016" PRIxPTR ")", pname,
+ index, (uintptr_t)val);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetMultisamplefv, context, pname, index, val);
+ if (context->skipValidation() || ValidateGetMultisamplefv(context, pname, index, val))
+ {
+ context->getMultisamplefv(pname, index, val);
+ }
+ }
+}
+
+void GL_APIENTRY GetObjectLabelKHRContextANGLE(GLeglContext ctx,
+ GLenum identifier,
+ GLuint name,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *label)
+{
+ EVENT(
+ "(GLenum identifier = 0x%X, GLuint name = %u, GLsizei bufSize = %d, GLsizei *length = "
+ "0x%016" PRIxPTR ", GLchar *label = 0x%016" PRIxPTR ")",
+ identifier, name, bufSize, (uintptr_t)length, (uintptr_t)label);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetObjectLabelKHR, context, identifier, name, bufSize, length, label);
+ if (context->skipValidation() ||
+ ValidateGetObjectLabelKHR(context, identifier, name, bufSize, length, label))
+ {
+ context->getObjectLabel(identifier, name, bufSize, length, label);
+ }
+ }
+}
+
+void GL_APIENTRY GetObjectPtrLabelKHRContextANGLE(GLeglContext ctx,
+ const void *ptr,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *label)
+{
+ EVENT("(const void *ptr = 0x%016" PRIxPTR
+ ", GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *label = 0x%016" PRIxPTR ")",
+ (uintptr_t)ptr, bufSize, (uintptr_t)length, (uintptr_t)label);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetObjectPtrLabelKHR, context, ptr, bufSize, length, label);
+ if (context->skipValidation() ||
+ ValidateGetObjectPtrLabelKHR(context, ptr, bufSize, length, label))
+ {
+ context->getObjectPtrLabel(ptr, bufSize, length, label);
+ }
+ }
+}
+
+void GL_APIENTRY GetPointervContextANGLE(GLeglContext ctx, GLenum pname, void **params)
+{
+ EVENT("(GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetPointerv, context, pname, params);
+ if (context->skipValidation() || ValidateGetPointerv(context, pname, params))
+ {
+ context->getPointerv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetPointervKHRContextANGLE(GLeglContext ctx, GLenum pname, void **params)
+{
+ EVENT("(GLenum pname = 0x%X, void **params = 0x%016" PRIxPTR ")", pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetPointervKHR, context, pname, params);
+ if (context->skipValidation() || ValidateGetPointervKHR(context, pname, params))
+ {
+ context->getPointerv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramBinaryContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary)
+{
+ EVENT("(GLuint program = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLenum *binaryFormat = 0x%016" PRIxPTR ", void *binary = 0x%016" PRIxPTR ")",
+ program, bufSize, (uintptr_t)length, (uintptr_t)binaryFormat, (uintptr_t)binary);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramBinary, context, program, bufSize, length, binaryFormat, binary);
+ if (context->skipValidation() ||
+ ValidateGetProgramBinary(context, program, bufSize, length, binaryFormat, binary))
+ {
+ context->getProgramBinary(program, bufSize, length, binaryFormat, binary);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramBinaryOESContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary)
+{
+ EVENT("(GLuint program = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLenum *binaryFormat = 0x%016" PRIxPTR ", void *binary = 0x%016" PRIxPTR ")",
+ program, bufSize, (uintptr_t)length, (uintptr_t)binaryFormat, (uintptr_t)binary);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramBinaryOES, context, program, bufSize, length, binaryFormat, binary);
+ if (context->skipValidation() ||
+ ValidateGetProgramBinaryOES(context, program, bufSize, length, binaryFormat, binary))
+ {
+ context->getProgramBinary(program, bufSize, length, binaryFormat, binary);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramInfoLogContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ EVENT("(GLuint program = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *infoLog = 0x%016" PRIxPTR ")",
+ program, bufSize, (uintptr_t)length, (uintptr_t)infoLog);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramInfoLog, context, program, bufSize, length, infoLog);
+ if (context->skipValidation() ||
+ ValidateGetProgramInfoLog(context, program, bufSize, length, infoLog))
+ {
+ context->getProgramInfoLog(program, bufSize, length, infoLog);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramInterfaceivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, GLenum pname = 0x%X, GLint *params "
+ "= 0x%016" PRIxPTR ")",
+ program, programInterface, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramInterfaceiv, context, program, programInterface, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramInterfaceiv(context, program, programInterface, pname, params))
+ {
+ context->getProgramInterfaceiv(program, programInterface, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramPipelineInfoLogContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ EVENT("(GLuint pipeline = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *infoLog = 0x%016" PRIxPTR ")",
+ pipeline, bufSize, (uintptr_t)length, (uintptr_t)infoLog);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramPipelineInfoLog, context, pipeline, bufSize, length, infoLog);
+ if (context->skipValidation() ||
+ ValidateGetProgramPipelineInfoLog(context, pipeline, bufSize, length, infoLog))
+ {
+ context->getProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramPipelineivContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint pipeline = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")",
+ pipeline, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramPipelineiv, context, pipeline, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramPipelineiv(context, pipeline, pname, params))
+ {
+ context->getProgramPipelineiv(pipeline, pname, params);
+ }
+ }
+}
+
+GLuint GL_APIENTRY GetProgramResourceIndexContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, const GLchar *name = 0x%016" PRIxPTR
+ ")",
+ program, programInterface, (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramResourceIndex, context, program, programInterface, name);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceIndex(context, program, programInterface, name))
+ {
+ return context->getProgramResourceIndex(program, programInterface, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetProgramResourceIndex, GLuint>();
+}
+
+GLint GL_APIENTRY GetProgramResourceLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, const GLchar *name = 0x%016" PRIxPTR
+ ")",
+ program, programInterface, (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramResourceLocation, context, program, programInterface, name);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceLocation(context, program, programInterface, name))
+ {
+ return context->getProgramResourceLocation(program, programInterface, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetProgramResourceLocation, GLint>();
+}
+
+GLint GL_APIENTRY GetProgramResourceLocationIndexEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, const GLchar *name = 0x%016" PRIxPTR
+ ")",
+ program, programInterface, (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramResourceLocationIndexEXT, context, program, programInterface, name);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceLocationIndexEXT(context, program, programInterface, name))
+ {
+ return context->getProgramResourceLocationIndex(program, programInterface, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetProgramResourceLocationIndexEXT, GLint>();
+}
+
+void GL_APIENTRY GetProgramResourceNameContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, GLuint index = %u, GLsizei bufSize "
+ "= %d, GLsizei *length = 0x%016" PRIxPTR ", GLchar *name = 0x%016" PRIxPTR ")",
+ program, programInterface, index, bufSize, (uintptr_t)length, (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramResourceName, context, program, programInterface, index, bufSize,
+ length, name);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceName(context, program, programInterface, index, bufSize,
+ length, name))
+ {
+ context->getProgramResourceName(program, programInterface, index, bufSize, length,
+ name);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramResourceivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei propCount,
+ const GLenum *props,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, GLuint index = %u, GLsizei "
+ "propCount = %d, const GLenum *props = 0x%016" PRIxPTR
+ ", GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLint *params = 0x%016" PRIxPTR ")",
+ program, programInterface, index, propCount, (uintptr_t)props, bufSize, (uintptr_t)length,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramResourceiv, context, program, programInterface, index, propCount,
+ props, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramResourceiv(context, program, programInterface, index, propCount,
+ props, bufSize, length, params))
+ {
+ context->getProgramResourceiv(program, programInterface, index, propCount, props,
+ bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint program = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", program,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramiv, context, program, pname, params);
+ if (context->skipValidation() || ValidateGetProgramiv(context, program, pname, params))
+ {
+ context->getProgramiv(program, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjecti64vEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLint64 *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLint64 *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetQueryObjecti64vEXT, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjecti64vEXT(context, id, pname, params))
+ {
+ context->getQueryObjecti64v(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectivEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetQueryObjectivEXT, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjectivEXT(context, id, pname, params))
+ {
+ context->getQueryObjectiv(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectui64vEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLuint64 *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLuint64 *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetQueryObjectui64vEXT, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjectui64vEXT(context, id, pname, params))
+ {
+ context->getQueryObjectui64v(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectuivContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLuint *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetQueryObjectuiv, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjectuiv(context, id, pname, params))
+ {
+ context->getQueryObjectuiv(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectuivEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLuint *params)
+{
+ EVENT("(GLuint id = %u, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", id, pname,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetQueryObjectuivEXT, context, id, pname, params);
+ if (context->skipValidation() || ValidateGetQueryObjectuivEXT(context, id, pname, params))
+ {
+ context->getQueryObjectuiv(id, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(GetQueryiv, context, targetPacked, pname, params);
+ if (context->skipValidation() || ValidateGetQueryiv(context, targetPacked, pname, params))
+ {
+ context->getQueryiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryivEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(GetQueryivEXT, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryivEXT(context, targetPacked, pname, params))
+ {
+ context->getQueryiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetRenderbufferParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetRenderbufferParameteriv, context, target, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetRenderbufferParameteriv(context, target, pname, params))
+ {
+ context->getRenderbufferParameteriv(target, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetRenderbufferParameterivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetRenderbufferParameterivOES, context, target, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetRenderbufferParameterivOES(context, target, pname, params))
+ {
+ context->getRenderbufferParameteriv(target, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterIivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", sampler,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSamplerParameterIivOES, context, sampler, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSamplerParameterIivOES(context, sampler, pname, params))
+ {
+ context->getSamplerParameterIiv(sampler, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLuint *params)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", sampler,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSamplerParameterIuivOES, context, sampler, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSamplerParameterIuivOES(context, sampler, pname, params))
+ {
+ context->getSamplerParameterIuiv(sampler, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterfvContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSamplerParameterfv, context, sampler, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSamplerParameterfv(context, sampler, pname, params))
+ {
+ context->getSamplerParameterfv(sampler, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterivContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", sampler,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSamplerParameteriv, context, sampler, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSamplerParameteriv(context, sampler, pname, params))
+ {
+ context->getSamplerParameteriv(sampler, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSemaphoreParameterui64vEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLenum pname,
+ GLuint64 *params)
+{
+ EVENT("(GLuint semaphore = %u, GLenum pname = 0x%X, GLuint64 *params = 0x%016" PRIxPTR ")",
+ semaphore, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSemaphoreParameterui64vEXT, context, semaphore, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetSemaphoreParameterui64vEXT(context, semaphore, pname, params))
+ {
+ context->getSemaphoreParameterui64v(semaphore, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetShaderInfoLogContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ EVENT("(GLuint shader = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *infoLog = 0x%016" PRIxPTR ")",
+ shader, bufSize, (uintptr_t)length, (uintptr_t)infoLog);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetShaderInfoLog, context, shader, bufSize, length, infoLog);
+ if (context->skipValidation() ||
+ ValidateGetShaderInfoLog(context, shader, bufSize, length, infoLog))
+ {
+ context->getShaderInfoLog(shader, bufSize, length, infoLog);
+ }
+ }
+}
+
+void GL_APIENTRY GetShaderPrecisionFormatContextANGLE(GLeglContext ctx,
+ GLenum shadertype,
+ GLenum precisiontype,
+ GLint *range,
+ GLint *precision)
+{
+ EVENT("(GLenum shadertype = 0x%X, GLenum precisiontype = 0x%X, GLint *range = 0x%016" PRIxPTR
+ ", GLint *precision = 0x%016" PRIxPTR ")",
+ shadertype, precisiontype, (uintptr_t)range, (uintptr_t)precision);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetShaderPrecisionFormat, context, shadertype, precisiontype, range,
+ precision);
+ if (context->skipValidation() ||
+ ValidateGetShaderPrecisionFormat(context, shadertype, precisiontype, range, precision))
+ {
+ context->getShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+ }
+ }
+}
+
+void GL_APIENTRY GetShaderSourceContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *source)
+{
+ EVENT("(GLuint shader = %u, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *source = 0x%016" PRIxPTR ")",
+ shader, bufSize, (uintptr_t)length, (uintptr_t)source);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetShaderSource, context, shader, bufSize, length, source);
+ if (context->skipValidation() ||
+ ValidateGetShaderSource(context, shader, bufSize, length, source))
+ {
+ context->getShaderSource(shader, bufSize, length, source);
+ }
+ }
+}
+
+void GL_APIENTRY GetShaderivContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint shader = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", shader,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetShaderiv, context, shader, pname, params);
+ if (context->skipValidation() || ValidateGetShaderiv(context, shader, pname, params))
+ {
+ context->getShaderiv(shader, pname, params);
+ }
+ }
+}
+
+const GLubyte *GL_APIENTRY GetStringContextANGLE(GLeglContext ctx, GLenum name)
+{
+ EVENT("(GLenum name = 0x%X)", name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetString, context, name);
+ if (context->skipValidation() || ValidateGetString(context, name))
+ {
+ return context->getString(name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetString, const GLubyte *>();
+}
+
+const GLubyte *GL_APIENTRY GetStringiContextANGLE(GLeglContext ctx, GLenum name, GLuint index)
+{
+ EVENT("(GLenum name = 0x%X, GLuint index = %u)", name, index);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetStringi, context, name, index);
+ if (context->skipValidation() || ValidateGetStringi(context, name, index))
+ {
+ return context->getStringi(name, index);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetStringi, const GLubyte *>();
+}
+
+void GL_APIENTRY GetSyncivContextANGLE(GLeglContext ctx,
+ GLsync sync,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *values)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR
+ ", GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLint *values = 0x%016" PRIxPTR ")",
+ (uintptr_t)sync, pname, bufSize, (uintptr_t)length, (uintptr_t)values);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSynciv, context, sync, pname, bufSize, length, values);
+ if (context->skipValidation() ||
+ ValidateGetSynciv(context, sync, pname, bufSize, length, values))
+ {
+ context->getSynciv(sync, pname, bufSize, length, values);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexEnvfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(GetTexEnvfv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateGetTexEnvfv(context, targetPacked, pnamePacked, params))
+ {
+ context->getTexEnvfv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexEnvivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(GetTexEnviv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateGetTexEnviv(context, targetPacked, pnamePacked, params))
+ {
+ context->getTexEnviv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexEnvxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(GetTexEnvxv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateGetTexEnvxv(context, targetPacked, pnamePacked, params))
+ {
+ context->getTexEnvxv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexGenfvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")", coord,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetTexGenfvOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateGetTexGenfvOES(context, coord, pname, params))
+ {
+ context->getTexGenfv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexGenivOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", coord,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetTexGenivOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateGetTexGenivOES(context, coord, pname, params))
+ {
+ context->getTexGeniv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexGenxvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfixed *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")", coord,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetTexGenxvOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateGetTexGenxvOES(context, coord, pname, params))
+ {
+ context->getTexGenxv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLfloat *params = "
+ "0x%016" PRIxPTR ")",
+ target, level, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterfv, context, targetPacked, level, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterfv(context, targetPacked, level, pname, params))
+ {
+ context->getTexLevelParameterfv(targetPacked, level, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ target, level, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameteriv, context, targetPacked, level, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameteriv(context, targetPacked, level, pname, params))
+ {
+ context->getTexLevelParameteriv(targetPacked, level, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterIivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterIivOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameterIivOES(context, targetPacked, pname, params))
+ {
+ context->getTexParameterIiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLuint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterIuivOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameterIuivOES(context, targetPacked, pname, params))
+ {
+ context->getTexParameterIuiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterfv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameterfv(context, targetPacked, pname, params))
+ {
+ context->getTexParameterfv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", target,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameteriv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameteriv(context, targetPacked, pname, params))
+ {
+ context->getTexParameteriv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfixed *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterxv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexParameterxv(context, targetPacked, pname, params))
+ {
+ context->getTexParameterxv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTransformFeedbackVaryingContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *size,
+ GLenum *type,
+ GLchar *name)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint index = %u, GLsizei bufSize = %d, GLsizei *length = "
+ "0x%016" PRIxPTR ", GLsizei *size = 0x%016" PRIxPTR ", GLenum *type = 0x%016" PRIxPTR
+ ", GLchar *name = 0x%016" PRIxPTR ")",
+ program, index, bufSize, (uintptr_t)length, (uintptr_t)size, (uintptr_t)type,
+ (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetTransformFeedbackVarying, context, program, index, bufSize, length, size,
+ type, name);
+ if (context->skipValidation() ||
+ ValidateGetTransformFeedbackVarying(context, program, index, bufSize, length, size,
+ type, name))
+ {
+ context->getTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+ }
+ }
+}
+
+void GL_APIENTRY GetTranslatedShaderSourceANGLEContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei bufsize,
+ GLsizei *length,
+ GLchar *source)
+{
+ EVENT("(GLuint shader = %u, GLsizei bufsize = %d, GLsizei *length = 0x%016" PRIxPTR
+ ", GLchar *source = 0x%016" PRIxPTR ")",
+ shader, bufsize, (uintptr_t)length, (uintptr_t)source);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetTranslatedShaderSourceANGLE, context, shader, bufsize, length, source);
+ if (context->skipValidation() ||
+ ValidateGetTranslatedShaderSourceANGLE(context, shader, bufsize, length, source))
+ {
+ context->getTranslatedShaderSource(shader, bufsize, length, source);
+ }
+ }
+}
+
+GLuint GL_APIENTRY GetUniformBlockIndexContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *uniformBlockName)
+{
+ EVENT("(GLuint program = %u, const GLchar *uniformBlockName = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)uniformBlockName);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUniformBlockIndex, context, program, uniformBlockName);
+ if (context->skipValidation() ||
+ ValidateGetUniformBlockIndex(context, program, uniformBlockName))
+ {
+ return context->getUniformBlockIndex(program, uniformBlockName);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetUniformBlockIndex, GLuint>();
+}
+
+void GL_APIENTRY GetUniformIndicesContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei uniformCount,
+ const GLchar *const *uniformNames,
+ GLuint *uniformIndices)
+{
+ EVENT(
+ "(GLuint program = %u, GLsizei uniformCount = %d, const GLchar *const*uniformNames = "
+ "0x%016" PRIxPTR ", GLuint *uniformIndices = 0x%016" PRIxPTR ")",
+ program, uniformCount, (uintptr_t)uniformNames, (uintptr_t)uniformIndices);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUniformIndices, context, program, uniformCount, uniformNames,
+ uniformIndices);
+ if (context->skipValidation() ||
+ ValidateGetUniformIndices(context, program, uniformCount, uniformNames, uniformIndices))
+ {
+ context->getUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+ }
+ }
+}
+
+GLint GL_APIENTRY GetUniformLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name)
+{
+ EVENT("(GLuint program = %u, const GLchar *name = 0x%016" PRIxPTR ")", program,
+ (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUniformLocation, context, program, name);
+ if (context->skipValidation() || ValidateGetUniformLocation(context, program, name))
+ {
+ return context->getUniformLocation(program, name);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GetUniformLocation, GLint>();
+}
+
+void GL_APIENTRY GetUniformfvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat *params)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLfloat *params = 0x%016" PRIxPTR ")",
+ program, location, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUniformfv, context, program, location, params);
+ if (context->skipValidation() || ValidateGetUniformfv(context, program, location, params))
+ {
+ context->getUniformfv(program, location, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint *params)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLint *params = 0x%016" PRIxPTR ")", program,
+ location, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUniformiv, context, program, location, params);
+ if (context->skipValidation() || ValidateGetUniformiv(context, program, location, params))
+ {
+ context->getUniformiv(program, location, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformuivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint *params)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLuint *params = 0x%016" PRIxPTR ")", program,
+ location, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUniformuiv, context, program, location, params);
+ if (context->skipValidation() || ValidateGetUniformuiv(context, program, location, params))
+ {
+ context->getUniformuiv(program, location, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUnsignedBytevEXTContextANGLE(GLeglContext ctx, GLenum pname, GLubyte *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLubyte *data = 0x%016" PRIxPTR ")", pname, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUnsignedBytevEXT, context, pname, data);
+ if (context->skipValidation() || ValidateGetUnsignedBytevEXT(context, pname, data))
+ {
+ context->getUnsignedBytev(pname, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetUnsignedBytei_vEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLubyte *data)
+{
+ EVENT("(GLenum target = 0x%X, GLuint index = %u, GLubyte *data = 0x%016" PRIxPTR ")", target,
+ index, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUnsignedBytei_vEXT, context, target, index, data);
+ if (context->skipValidation() ||
+ ValidateGetUnsignedBytei_vEXT(context, target, index, data))
+ {
+ context->getUnsignedBytei_v(target, index, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribIivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribIiv, context, index, pname, params);
+ if (context->skipValidation() || ValidateGetVertexAttribIiv(context, index, pname, params))
+ {
+ context->getVertexAttribIiv(index, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribIuivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLuint *params)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, GLuint *params = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribIuiv, context, index, pname, params);
+ if (context->skipValidation() || ValidateGetVertexAttribIuiv(context, index, pname, params))
+ {
+ context->getVertexAttribIuiv(index, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribPointervContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ void **pointer)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, void **pointer = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribPointerv, context, index, pname, pointer);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribPointerv(context, index, pname, pointer))
+ {
+ context->getVertexAttribPointerv(index, pname, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribfvContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, GLfloat *params = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribfv, context, index, pname, params);
+ if (context->skipValidation() || ValidateGetVertexAttribfv(context, index, pname, params))
+ {
+ context->getVertexAttribfv(index, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT("(GLuint index = %u, GLenum pname = 0x%X, GLint *params = 0x%016" PRIxPTR ")", index,
+ pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribiv, context, index, pname, params);
+ if (context->skipValidation() || ValidateGetVertexAttribiv(context, index, pname, params))
+ {
+ context->getVertexAttribiv(index, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetnUniformfvEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLfloat *params = "
+ "0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetnUniformfvEXT, context, program, location, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformfvEXT(context, program, location, bufSize, params))
+ {
+ context->getnUniformfv(program, location, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetnUniformivEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLint *params = "
+ "0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetnUniformivEXT, context, program, location, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformivEXT(context, program, location, bufSize, params))
+ {
+ context->getnUniformiv(program, location, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY HintContextANGLE(GLeglContext ctx, GLenum target, GLenum mode)
+{
+ EVENT("(GLenum target = 0x%X, GLenum mode = 0x%X)", target, mode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Hint, context, target, mode);
+ if (context->skipValidation() || ValidateHint(context, target, mode))
+ {
+ context->hint(target, mode);
+ }
+ }
+}
+
+void GL_APIENTRY ImportMemoryFdEXTContextANGLE(GLeglContext ctx,
+ GLuint memory,
+ GLuint64 size,
+ GLenum handleType,
+ GLint fd)
+{
+ EVENT("(GLuint memory = %u, GLuint64 size = %llu, GLenum handleType = 0x%X, GLint fd = %d)",
+ memory, static_cast<unsigned long long>(size), handleType, fd);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ HandleType handleTypePacked = FromGLenum<HandleType>(handleType);
+ ANGLE_CAPTURE(ImportMemoryFdEXT, context, memory, size, handleTypePacked, fd);
+ if (context->skipValidation() ||
+ ValidateImportMemoryFdEXT(context, memory, size, handleTypePacked, fd))
+ {
+ context->importMemoryFd(memory, size, handleTypePacked, fd);
+ }
+ }
+}
+
+void GL_APIENTRY ImportSemaphoreFdEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLenum handleType,
+ GLint fd)
+{
+ EVENT("(GLuint semaphore = %u, GLenum handleType = 0x%X, GLint fd = %d)", semaphore, handleType,
+ fd);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ HandleType handleTypePacked = FromGLenum<HandleType>(handleType);
+ ANGLE_CAPTURE(ImportSemaphoreFdEXT, context, semaphore, handleTypePacked, fd);
+ if (context->skipValidation() ||
+ ValidateImportSemaphoreFdEXT(context, semaphore, handleTypePacked, fd))
+ {
+ context->importSemaphoreFd(semaphore, handleTypePacked, fd);
+ }
+ }
+}
+
+void GL_APIENTRY InsertEventMarkerEXTContextANGLE(GLeglContext ctx,
+ GLsizei length,
+ const GLchar *marker)
+{
+ // Don't run an EVENT() macro on the EXT_debug_marker entry points.
+ // It can interfere with the debug events being set by the caller.
+ // EVENT("(GLsizei length = %d, const GLchar *marker = 0x%016" PRIxPTR ")", length,
+ // (uintptr_t)marker);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(InsertEventMarkerEXT, context, length, marker);
+ if (context->skipValidation() || ValidateInsertEventMarkerEXT(context, length, marker))
+ {
+ context->insertEventMarker(length, marker);
+ }
+ }
+}
+
+void GL_APIENTRY InvalidateFramebufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei numAttachments = %d, const GLenum *attachments = "
+ "0x%016" PRIxPTR ")",
+ target, numAttachments, (uintptr_t)attachments);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(InvalidateFramebuffer, context, target, numAttachments, attachments);
+ if (context->skipValidation() ||
+ ValidateInvalidateFramebuffer(context, target, numAttachments, attachments))
+ {
+ context->invalidateFramebuffer(target, numAttachments, attachments);
+ }
+ }
+}
+
+void GL_APIENTRY InvalidateSubFramebufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei numAttachments = %d, const GLenum *attachments = "
+ "0x%016" PRIxPTR ", GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)",
+ target, numAttachments, (uintptr_t)attachments, x, y, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(InvalidateSubFramebuffer, context, target, numAttachments, attachments, x, y,
+ width, height);
+ if (context->skipValidation() ||
+ ValidateInvalidateSubFramebuffer(context, target, numAttachments, attachments, x, y,
+ width, height))
+ {
+ context->invalidateSubFramebuffer(target, numAttachments, attachments, x, y, width,
+ height);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsBufferContextANGLE(GLeglContext ctx, GLuint buffer)
+{
+ EVENT("(GLuint buffer = %u)", buffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsBuffer, context, buffer);
+ if (context->skipValidation() || ValidateIsBuffer(context, buffer))
+ {
+ return context->isBuffer(buffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsBuffer, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsEnabledContextANGLE(GLeglContext ctx, GLenum cap)
+{
+ EVENT("(GLenum cap = 0x%X)", cap);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsEnabled, context, cap);
+ if (context->skipValidation() || ValidateIsEnabled(context, cap))
+ {
+ return context->isEnabled(cap);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsEnabled, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsFenceNVContextANGLE(GLeglContext ctx, GLuint fence)
+{
+ EVENT("(GLuint fence = %u)", fence);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsFenceNV, context, fence);
+ if (context->skipValidation() || ValidateIsFenceNV(context, fence))
+ {
+ return context->isFenceNV(fence);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsFenceNV, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsFramebufferContextANGLE(GLeglContext ctx, GLuint framebuffer)
+{
+ EVENT("(GLuint framebuffer = %u)", framebuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsFramebuffer, context, framebuffer);
+ if (context->skipValidation() || ValidateIsFramebuffer(context, framebuffer))
+ {
+ return context->isFramebuffer(framebuffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsFramebuffer, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsFramebufferOESContextANGLE(GLeglContext ctx, GLuint framebuffer)
+{
+ EVENT("(GLuint framebuffer = %u)", framebuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsFramebufferOES, context, framebuffer);
+ if (context->skipValidation() || ValidateIsFramebufferOES(context, framebuffer))
+ {
+ return context->isFramebuffer(framebuffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsFramebufferOES, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsMemoryObjectEXTContextANGLE(GLeglContext ctx, GLuint memoryObject)
+{
+ EVENT("(GLuint memoryObject = %u)", memoryObject);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsMemoryObjectEXT, context, memoryObject);
+ if (context->skipValidation() || ValidateIsMemoryObjectEXT(context, memoryObject))
+ {
+ return context->isMemoryObject(memoryObject);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsMemoryObjectEXT, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsProgram, context, program);
+ if (context->skipValidation() || ValidateIsProgram(context, program))
+ {
+ return context->isProgram(program);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsProgram, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsProgramPipelineContextANGLE(GLeglContext ctx, GLuint pipeline)
+{
+ EVENT("(GLuint pipeline = %u)", pipeline);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsProgramPipeline, context, pipeline);
+ if (context->skipValidation() || ValidateIsProgramPipeline(context, pipeline))
+ {
+ return context->isProgramPipeline(pipeline);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsProgramPipeline, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsQueryContextANGLE(GLeglContext ctx, GLuint id)
+{
+ EVENT("(GLuint id = %u)", id);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsQuery, context, id);
+ if (context->skipValidation() || ValidateIsQuery(context, id))
+ {
+ return context->isQuery(id);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsQuery, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsQueryEXTContextANGLE(GLeglContext ctx, GLuint id)
+{
+ EVENT("(GLuint id = %u)", id);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsQueryEXT, context, id);
+ if (context->skipValidation() || ValidateIsQueryEXT(context, id))
+ {
+ return context->isQuery(id);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsQueryEXT, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsRenderbufferContextANGLE(GLeglContext ctx, GLuint renderbuffer)
+{
+ EVENT("(GLuint renderbuffer = %u)", renderbuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsRenderbuffer, context, renderbuffer);
+ if (context->skipValidation() || ValidateIsRenderbuffer(context, renderbuffer))
+ {
+ return context->isRenderbuffer(renderbuffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsRenderbuffer, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsRenderbufferOESContextANGLE(GLeglContext ctx, GLuint renderbuffer)
+{
+ EVENT("(GLuint renderbuffer = %u)", renderbuffer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsRenderbufferOES, context, renderbuffer);
+ if (context->skipValidation() || ValidateIsRenderbufferOES(context, renderbuffer))
+ {
+ return context->isRenderbuffer(renderbuffer);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsRenderbufferOES, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsSemaphoreEXTContextANGLE(GLeglContext ctx, GLuint semaphore)
+{
+ EVENT("(GLuint semaphore = %u)", semaphore);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsSemaphoreEXT, context, semaphore);
+ if (context->skipValidation() || ValidateIsSemaphoreEXT(context, semaphore))
+ {
+ return context->isSemaphore(semaphore);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsSemaphoreEXT, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsSamplerContextANGLE(GLeglContext ctx, GLuint sampler)
+{
+ EVENT("(GLuint sampler = %u)", sampler);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsSampler, context, sampler);
+ if (context->skipValidation() || ValidateIsSampler(context, sampler))
+ {
+ return context->isSampler(sampler);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsSampler, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsShaderContextANGLE(GLeglContext ctx, GLuint shader)
+{
+ EVENT("(GLuint shader = %u)", shader);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsShader, context, shader);
+ if (context->skipValidation() || ValidateIsShader(context, shader))
+ {
+ return context->isShader(shader);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsShader, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsSyncContextANGLE(GLeglContext ctx, GLsync sync)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR ")", (uintptr_t)sync);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsSync, context, sync);
+ if (context->skipValidation() || ValidateIsSync(context, sync))
+ {
+ return context->isSync(sync);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsSync, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsTextureContextANGLE(GLeglContext ctx, GLuint texture)
+{
+ EVENT("(GLuint texture = %u)", texture);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsTexture, context, texture);
+ if (context->skipValidation() || ValidateIsTexture(context, texture))
+ {
+ return context->isTexture(texture);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsTexture, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsTransformFeedbackContextANGLE(GLeglContext ctx, GLuint id)
+{
+ EVENT("(GLuint id = %u)", id);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsTransformFeedback, context, id);
+ if (context->skipValidation() || ValidateIsTransformFeedback(context, id))
+ {
+ return context->isTransformFeedback(id);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsTransformFeedback, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsVertexArrayContextANGLE(GLeglContext ctx, GLuint array)
+{
+ EVENT("(GLuint array = %u)", array);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsVertexArray, context, array);
+ if (context->skipValidation() || ValidateIsVertexArray(context, array))
+ {
+ return context->isVertexArray(array);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsVertexArray, GLboolean>();
+}
+
+GLboolean GL_APIENTRY IsVertexArrayOESContextANGLE(GLeglContext ctx, GLuint array)
+{
+ EVENT("(GLuint array = %u)", array);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsVertexArrayOES, context, array);
+ if (context->skipValidation() || ValidateIsVertexArrayOES(context, array))
+ {
+ return context->isVertexArray(array);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsVertexArrayOES, GLboolean>();
+}
+
+void GL_APIENTRY LightModelfContextANGLE(GLeglContext ctx, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfloat param = %f)", pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LightModelf, context, pname, param);
+ if (context->skipValidation() || ValidateLightModelf(context, pname, param))
+ {
+ context->lightModelf(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY LightModelfvContextANGLE(GLeglContext ctx, GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LightModelfv, context, pname, params);
+ if (context->skipValidation() || ValidateLightModelfv(context, pname, params))
+ {
+ context->lightModelfv(pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY LightModelxContextANGLE(GLeglContext ctx, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfixed param = 0x%X)", pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LightModelx, context, pname, param);
+ if (context->skipValidation() || ValidateLightModelx(context, pname, param))
+ {
+ context->lightModelx(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY LightModelxvContextANGLE(GLeglContext ctx, GLenum pname, const GLfixed *param)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfixed *param = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LightModelxv, context, pname, param);
+ if (context->skipValidation() || ValidateLightModelxv(context, pname, param))
+ {
+ context->lightModelxv(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY LightfContextANGLE(GLeglContext ctx, GLenum light, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", light, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(Lightf, context, light, pnamePacked, param);
+ if (context->skipValidation() || ValidateLightf(context, light, pnamePacked, param))
+ {
+ context->lightf(light, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY LightfvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ const GLfloat *params)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ light, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(Lightfv, context, light, pnamePacked, params);
+ if (context->skipValidation() || ValidateLightfv(context, light, pnamePacked, params))
+ {
+ context->lightfv(light, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY LightxContextANGLE(GLeglContext ctx, GLenum light, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", light, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(Lightx, context, light, pnamePacked, param);
+ if (context->skipValidation() || ValidateLightx(context, light, pnamePacked, param))
+ {
+ context->lightx(light, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY LightxvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ const GLfixed *params)
+{
+ EVENT("(GLenum light = 0x%X, GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")",
+ light, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ LightParameter pnamePacked = FromGLenum<LightParameter>(pname);
+ ANGLE_CAPTURE(Lightxv, context, light, pnamePacked, params);
+ if (context->skipValidation() || ValidateLightxv(context, light, pnamePacked, params))
+ {
+ context->lightxv(light, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY LineWidthContextANGLE(GLeglContext ctx, GLfloat width)
+{
+ EVENT("(GLfloat width = %f)", width);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LineWidth, context, width);
+ if (context->skipValidation() || ValidateLineWidth(context, width))
+ {
+ context->lineWidth(width);
+ }
+ }
+}
+
+void GL_APIENTRY LineWidthxContextANGLE(GLeglContext ctx, GLfixed width)
+{
+ EVENT("(GLfixed width = 0x%X)", width);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LineWidthx, context, width);
+ if (context->skipValidation() || ValidateLineWidthx(context, width))
+ {
+ context->lineWidthx(width);
+ }
+ }
+}
+
+void GL_APIENTRY LinkProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LinkProgram, context, program);
+ if (context->skipValidation() || ValidateLinkProgram(context, program))
+ {
+ context->linkProgram(program);
+ }
+ }
+}
+
+void GL_APIENTRY LoadIdentityContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LoadIdentity, context);
+ if (context->skipValidation() || ValidateLoadIdentity(context))
+ {
+ context->loadIdentity();
+ }
+ }
+}
+
+void GL_APIENTRY LoadMatrixfContextANGLE(GLeglContext ctx, const GLfloat *m)
+{
+ EVENT("(const GLfloat *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LoadMatrixf, context, m);
+ if (context->skipValidation() || ValidateLoadMatrixf(context, m))
+ {
+ context->loadMatrixf(m);
+ }
+ }
+}
+
+void GL_APIENTRY LoadMatrixxContextANGLE(GLeglContext ctx, const GLfixed *m)
+{
+ EVENT("(const GLfixed *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LoadMatrixx, context, m);
+ if (context->skipValidation() || ValidateLoadMatrixx(context, m))
+ {
+ context->loadMatrixx(m);
+ }
+ }
+}
+
+void GL_APIENTRY LoadPaletteFromModelViewMatrixOESContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(LoadPaletteFromModelViewMatrixOES, context);
+ if (context->skipValidation() || ValidateLoadPaletteFromModelViewMatrixOES(context))
+ {
+ context->loadPaletteFromModelViewMatrix();
+ }
+ }
+}
+
+void GL_APIENTRY LogicOpContextANGLE(GLeglContext ctx, GLenum opcode)
+{
+ EVENT("(GLenum opcode = 0x%X)", opcode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ LogicalOperation opcodePacked = FromGLenum<LogicalOperation>(opcode);
+ ANGLE_CAPTURE(LogicOp, context, opcodePacked);
+ if (context->skipValidation() || ValidateLogicOp(context, opcodePacked))
+ {
+ context->logicOp(opcodePacked);
+ }
+ }
+}
+
+void *GL_APIENTRY MapBufferOESContextANGLE(GLeglContext ctx, GLenum target, GLenum access)
+{
+ EVENT("(GLenum target = 0x%X, GLenum access = 0x%X)", target, access);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(MapBufferOES, context, targetPacked, access);
+ if (context->skipValidation() || ValidateMapBufferOES(context, targetPacked, access))
+ {
+ return context->mapBuffer(targetPacked, access);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::MapBufferOES, void *>();
+}
+
+void *GL_APIENTRY MapBufferRangeContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr length = %llu, GLbitfield "
+ "access = 0x%X)",
+ target, static_cast<unsigned long long>(offset), static_cast<unsigned long long>(length),
+ access);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(MapBufferRange, context, targetPacked, offset, length, access);
+ if (context->skipValidation() ||
+ ValidateMapBufferRange(context, targetPacked, offset, length, access))
+ {
+ return context->mapBufferRange(targetPacked, offset, length, access);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::MapBufferRange, void *>();
+}
+
+void *GL_APIENTRY MapBufferRangeEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLintptr offset = %llu, GLsizeiptr length = %llu, GLbitfield "
+ "access = 0x%X)",
+ target, static_cast<unsigned long long>(offset), static_cast<unsigned long long>(length),
+ access);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(MapBufferRangeEXT, context, targetPacked, offset, length, access);
+ if (context->skipValidation() ||
+ ValidateMapBufferRangeEXT(context, targetPacked, offset, length, access))
+ {
+ return context->mapBufferRange(targetPacked, offset, length, access);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::MapBufferRangeEXT, void *>();
+}
+
+void GL_APIENTRY MaterialfContextANGLE(GLeglContext ctx, GLenum face, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", face, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(Materialf, context, face, pnamePacked, param);
+ if (context->skipValidation() || ValidateMaterialf(context, face, pnamePacked, param))
+ {
+ context->materialf(face, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY MaterialfvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ const GLfloat *params)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ face, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(Materialfv, context, face, pnamePacked, params);
+ if (context->skipValidation() || ValidateMaterialfv(context, face, pnamePacked, params))
+ {
+ context->materialfv(face, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY MaterialxContextANGLE(GLeglContext ctx, GLenum face, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", face, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(Materialx, context, face, pnamePacked, param);
+ if (context->skipValidation() || ValidateMaterialx(context, face, pnamePacked, param))
+ {
+ context->materialx(face, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY MaterialxvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ const GLfixed *param)
+{
+ EVENT("(GLenum face = 0x%X, GLenum pname = 0x%X, const GLfixed *param = 0x%016" PRIxPTR ")",
+ face, pname, (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ MaterialParameter pnamePacked = FromGLenum<MaterialParameter>(pname);
+ ANGLE_CAPTURE(Materialxv, context, face, pnamePacked, param);
+ if (context->skipValidation() || ValidateMaterialxv(context, face, pnamePacked, param))
+ {
+ context->materialxv(face, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY MatrixIndexPointerOESContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MatrixIndexPointerOES, context, size, type, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateMatrixIndexPointerOES(context, size, type, stride, pointer))
+ {
+ context->matrixIndexPointer(size, type, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY MatrixModeContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ MatrixType modePacked = FromGLenum<MatrixType>(mode);
+ ANGLE_CAPTURE(MatrixMode, context, modePacked);
+ if (context->skipValidation() || ValidateMatrixMode(context, modePacked))
+ {
+ context->matrixMode(modePacked);
+ }
+ }
+}
+
+void GL_APIENTRY MaxShaderCompilerThreadsKHRContextANGLE(GLeglContext ctx, GLuint count)
+{
+ EVENT("(GLuint count = %u)", count);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MaxShaderCompilerThreadsKHR, context, count);
+ if (context->skipValidation() || ValidateMaxShaderCompilerThreadsKHR(context, count))
+ {
+ context->maxShaderCompilerThreads(count);
+ }
+ }
+}
+
+void GL_APIENTRY MemoryBarrierContextANGLE(GLeglContext ctx, GLbitfield barriers)
+{
+ EVENT("(GLbitfield barriers = 0x%X)", barriers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MemoryBarrier, context, barriers);
+ if (context->skipValidation() || ValidateMemoryBarrier(context, barriers))
+ {
+ context->memoryBarrier(barriers);
+ }
+ }
+}
+
+void GL_APIENTRY MemoryBarrierByRegionContextANGLE(GLeglContext ctx, GLbitfield barriers)
+{
+ EVENT("(GLbitfield barriers = 0x%X)", barriers);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MemoryBarrierByRegion, context, barriers);
+ if (context->skipValidation() || ValidateMemoryBarrierByRegion(context, barriers))
+ {
+ context->memoryBarrierByRegion(barriers);
+ }
+ }
+}
+
+void GL_APIENTRY MemoryObjectParameterivEXTContextANGLE(GLeglContext ctx,
+ GLuint memoryObject,
+ GLenum pname,
+ const GLint *params)
+{
+ EVENT("(GLuint memoryObject = %u, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR
+ ")",
+ memoryObject, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MemoryObjectParameterivEXT, context, memoryObject, pname, params);
+ if (context->skipValidation() ||
+ ValidateMemoryObjectParameterivEXT(context, memoryObject, pname, params))
+ {
+ context->memoryObjectParameteriv(memoryObject, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY MultMatrixfContextANGLE(GLeglContext ctx, const GLfloat *m)
+{
+ EVENT("(const GLfloat *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MultMatrixf, context, m);
+ if (context->skipValidation() || ValidateMultMatrixf(context, m))
+ {
+ context->multMatrixf(m);
+ }
+ }
+}
+
+void GL_APIENTRY MultMatrixxContextANGLE(GLeglContext ctx, const GLfixed *m)
+{
+ EVENT("(const GLfixed *m = 0x%016" PRIxPTR ")", (uintptr_t)m);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MultMatrixx, context, m);
+ if (context->skipValidation() || ValidateMultMatrixx(context, m))
+ {
+ context->multMatrixx(m);
+ }
+ }
+}
+
+void GL_APIENTRY MultiTexCoord4fContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLfloat s,
+ GLfloat t,
+ GLfloat r,
+ GLfloat q)
+{
+ EVENT("(GLenum target = 0x%X, GLfloat s = %f, GLfloat t = %f, GLfloat r = %f, GLfloat q = %f)",
+ target, s, t, r, q);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MultiTexCoord4f, context, target, s, t, r, q);
+ if (context->skipValidation() || ValidateMultiTexCoord4f(context, target, s, t, r, q))
+ {
+ context->multiTexCoord4f(target, s, t, r, q);
+ }
+ }
+}
+
+void GL_APIENTRY MultiTexCoord4xContextANGLE(GLeglContext ctx,
+ GLenum texture,
+ GLfixed s,
+ GLfixed t,
+ GLfixed r,
+ GLfixed q)
+{
+ EVENT(
+ "(GLenum texture = 0x%X, GLfixed s = 0x%X, GLfixed t = 0x%X, GLfixed r = 0x%X, GLfixed q = "
+ "0x%X)",
+ texture, s, t, r, q);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MultiTexCoord4x, context, texture, s, t, r, q);
+ if (context->skipValidation() || ValidateMultiTexCoord4x(context, texture, s, t, r, q))
+ {
+ context->multiTexCoord4x(texture, s, t, r, q);
+ }
+ }
+}
+
+void GL_APIENTRY Normal3fContextANGLE(GLeglContext ctx, GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ EVENT("(GLfloat nx = %f, GLfloat ny = %f, GLfloat nz = %f)", nx, ny, nz);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Normal3f, context, nx, ny, nz);
+ if (context->skipValidation() || ValidateNormal3f(context, nx, ny, nz))
+ {
+ context->normal3f(nx, ny, nz);
+ }
+ }
+}
+
+void GL_APIENTRY Normal3xContextANGLE(GLeglContext ctx, GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ EVENT("(GLfixed nx = 0x%X, GLfixed ny = 0x%X, GLfixed nz = 0x%X)", nx, ny, nz);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Normal3x, context, nx, ny, nz);
+ if (context->skipValidation() || ValidateNormal3x(context, nx, ny, nz))
+ {
+ context->normal3x(nx, ny, nz);
+ }
+ }
+}
+
+void GL_APIENTRY NormalPointerContextANGLE(GLeglContext ctx,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT("(GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
+ type, stride, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(NormalPointer, context, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateNormalPointer(context, typePacked, stride, pointer))
+ {
+ context->normalPointer(typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY ObjectLabelKHRContextANGLE(GLeglContext ctx,
+ GLenum identifier,
+ GLuint name,
+ GLsizei length,
+ const GLchar *label)
+{
+ EVENT(
+ "(GLenum identifier = 0x%X, GLuint name = %u, GLsizei length = %d, const GLchar *label = "
+ "0x%016" PRIxPTR ")",
+ identifier, name, length, (uintptr_t)label);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ObjectLabelKHR, context, identifier, name, length, label);
+ if (context->skipValidation() ||
+ ValidateObjectLabelKHR(context, identifier, name, length, label))
+ {
+ context->objectLabel(identifier, name, length, label);
+ }
+ }
+}
+
+void GL_APIENTRY ObjectPtrLabelKHRContextANGLE(GLeglContext ctx,
+ const void *ptr,
+ GLsizei length,
+ const GLchar *label)
+{
+ EVENT("(const void *ptr = 0x%016" PRIxPTR
+ ", GLsizei length = %d, const GLchar *label = 0x%016" PRIxPTR ")",
+ (uintptr_t)ptr, length, (uintptr_t)label);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ObjectPtrLabelKHR, context, ptr, length, label);
+ if (context->skipValidation() || ValidateObjectPtrLabelKHR(context, ptr, length, label))
+ {
+ context->objectPtrLabel(ptr, length, label);
+ }
+ }
+}
+
+void GL_APIENTRY OrthofContextANGLE(GLeglContext ctx,
+ GLfloat l,
+ GLfloat r,
+ GLfloat b,
+ GLfloat t,
+ GLfloat n,
+ GLfloat f)
+{
+ EVENT(
+ "(GLfloat l = %f, GLfloat r = %f, GLfloat b = %f, GLfloat t = %f, GLfloat n = %f, GLfloat "
+ "f = %f)",
+ l, r, b, t, n, f);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Orthof, context, l, r, b, t, n, f);
+ if (context->skipValidation() || ValidateOrthof(context, l, r, b, t, n, f))
+ {
+ context->orthof(l, r, b, t, n, f);
+ }
+ }
+}
+
+void GL_APIENTRY OrthoxContextANGLE(GLeglContext ctx,
+ GLfixed l,
+ GLfixed r,
+ GLfixed b,
+ GLfixed t,
+ GLfixed n,
+ GLfixed f)
+{
+ EVENT(
+ "(GLfixed l = 0x%X, GLfixed r = 0x%X, GLfixed b = 0x%X, GLfixed t = 0x%X, GLfixed n = "
+ "0x%X, GLfixed f = 0x%X)",
+ l, r, b, t, n, f);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Orthox, context, l, r, b, t, n, f);
+ if (context->skipValidation() || ValidateOrthox(context, l, r, b, t, n, f))
+ {
+ context->orthox(l, r, b, t, n, f);
+ }
+ }
+}
+
+void GL_APIENTRY PauseTransformFeedbackContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PauseTransformFeedback, context);
+ if (context->skipValidation() || ValidatePauseTransformFeedback(context))
+ {
+ context->pauseTransformFeedback();
+ }
+ }
+}
+
+void GL_APIENTRY PixelStoreiContextANGLE(GLeglContext ctx, GLenum pname, GLint param)
+{
+ EVENT("(GLenum pname = 0x%X, GLint param = %d)", pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PixelStorei, context, pname, param);
+ if (context->skipValidation() || ValidatePixelStorei(context, pname, param))
+ {
+ context->pixelStorei(pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY PointParameterfContextANGLE(GLeglContext ctx, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfloat param = %f)", pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
+ ANGLE_CAPTURE(PointParameterf, context, pnamePacked, param);
+ if (context->skipValidation() || ValidatePointParameterf(context, pnamePacked, param))
+ {
+ context->pointParameterf(pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY PointParameterfvContextANGLE(GLeglContext ctx, GLenum pname, const GLfloat *params)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
+ ANGLE_CAPTURE(PointParameterfv, context, pnamePacked, params);
+ if (context->skipValidation() || ValidatePointParameterfv(context, pnamePacked, params))
+ {
+ context->pointParameterfv(pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY PointParameterxContextANGLE(GLeglContext ctx, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum pname = 0x%X, GLfixed param = 0x%X)", pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
+ ANGLE_CAPTURE(PointParameterx, context, pnamePacked, param);
+ if (context->skipValidation() || ValidatePointParameterx(context, pnamePacked, param))
+ {
+ context->pointParameterx(pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY PointParameterxvContextANGLE(GLeglContext ctx, GLenum pname, const GLfixed *params)
+{
+ EVENT("(GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")", pname,
+ (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PointParameter pnamePacked = FromGLenum<PointParameter>(pname);
+ ANGLE_CAPTURE(PointParameterxv, context, pnamePacked, params);
+ if (context->skipValidation() || ValidatePointParameterxv(context, pnamePacked, params))
+ {
+ context->pointParameterxv(pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY PointSizeContextANGLE(GLeglContext ctx, GLfloat size)
+{
+ EVENT("(GLfloat size = %f)", size);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PointSize, context, size);
+ if (context->skipValidation() || ValidatePointSize(context, size))
+ {
+ context->pointSize(size);
+ }
+ }
+}
+
+void GL_APIENTRY PointSizePointerOESContextANGLE(GLeglContext ctx,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT("(GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
+ type, stride, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(PointSizePointerOES, context, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidatePointSizePointerOES(context, typePacked, stride, pointer))
+ {
+ context->pointSizePointer(typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY PointSizexContextANGLE(GLeglContext ctx, GLfixed size)
+{
+ EVENT("(GLfixed size = 0x%X)", size);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PointSizex, context, size);
+ if (context->skipValidation() || ValidatePointSizex(context, size))
+ {
+ context->pointSizex(size);
+ }
+ }
+}
+
+void GL_APIENTRY PolygonOffsetContextANGLE(GLeglContext ctx, GLfloat factor, GLfloat units)
+{
+ EVENT("(GLfloat factor = %f, GLfloat units = %f)", factor, units);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PolygonOffset, context, factor, units);
+ if (context->skipValidation() || ValidatePolygonOffset(context, factor, units))
+ {
+ context->polygonOffset(factor, units);
+ }
+ }
+}
+
+void GL_APIENTRY PolygonOffsetxContextANGLE(GLeglContext ctx, GLfixed factor, GLfixed units)
+{
+ EVENT("(GLfixed factor = 0x%X, GLfixed units = 0x%X)", factor, units);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PolygonOffsetx, context, factor, units);
+ if (context->skipValidation() || ValidatePolygonOffsetx(context, factor, units))
+ {
+ context->polygonOffsetx(factor, units);
+ }
+ }
+}
+
+void GL_APIENTRY PopDebugGroupKHRContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PopDebugGroupKHR, context);
+ if (context->skipValidation() || ValidatePopDebugGroupKHR(context))
+ {
+ context->popDebugGroup();
+ }
+ }
+}
+
+void GL_APIENTRY PopGroupMarkerEXTContextANGLE(GLeglContext ctx)
+{
+ // Don't run an EVENT() macro on the EXT_debug_marker entry points.
+ // It can interfere with the debug events being set by the caller.
+ // EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PopGroupMarkerEXT, context);
+ if (context->skipValidation() || ValidatePopGroupMarkerEXT(context))
+ {
+ context->popGroupMarker();
+ }
+ }
+}
+
+void GL_APIENTRY PopMatrixContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PopMatrix, context);
+ if (context->skipValidation() || ValidatePopMatrix(context))
+ {
+ context->popMatrix();
+ }
+ }
+}
+
+void GL_APIENTRY ProgramBinaryContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLsizei length)
+{
+ EVENT("(GLuint program = %u, GLenum binaryFormat = 0x%X, const void *binary = 0x%016" PRIxPTR
+ ", GLsizei length = %d)",
+ program, binaryFormat, (uintptr_t)binary, length);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramBinary, context, program, binaryFormat, binary, length);
+ if (context->skipValidation() ||
+ ValidateProgramBinary(context, program, binaryFormat, binary, length))
+ {
+ context->programBinary(program, binaryFormat, binary, length);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramBinaryOESContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLint length)
+{
+ EVENT("(GLuint program = %u, GLenum binaryFormat = 0x%X, const void *binary = 0x%016" PRIxPTR
+ ", GLint length = %d)",
+ program, binaryFormat, (uintptr_t)binary, length);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramBinaryOES, context, program, binaryFormat, binary, length);
+ if (context->skipValidation() ||
+ ValidateProgramBinaryOES(context, program, binaryFormat, binary, length))
+ {
+ context->programBinary(program, binaryFormat, binary, length);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramParameteriContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum pname,
+ GLint value)
+{
+ EVENT("(GLuint program = %u, GLenum pname = 0x%X, GLint value = %d)", program, pname, value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramParameteri, context, program, pname, value);
+ if (context->skipValidation() || ValidateProgramParameteri(context, program, pname, value))
+ {
+ context->programParameteri(program, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLfloat v0 = %f)", program, location, v0);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform1f, context, program, location, v0);
+ if (context->skipValidation() || ValidateProgramUniform1f(context, program, location, v0))
+ {
+ context->programUniform1f(program, location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLfloat *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform1fv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform1fv(context, program, location, count, value))
+ {
+ context->programUniform1fv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1iContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint v0)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLint v0 = %d)", program, location, v0);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform1i, context, program, location, v0);
+ if (context->skipValidation() || ValidateProgramUniform1i(context, program, location, v0))
+ {
+ context->programUniform1i(program, location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform1iv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform1iv(context, program, location, count, value))
+ {
+ context->programUniform1iv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLuint v0 = %u)", program, location, v0);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform1ui, context, program, location, v0);
+ if (context->skipValidation() || ValidateProgramUniform1ui(context, program, location, v0))
+ {
+ context->programUniform1ui(program, location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform1uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLuint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform1uiv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform1uiv(context, program, location, count, value))
+ {
+ context->programUniform1uiv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f)", program,
+ location, v0, v1);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform2f, context, program, location, v0, v1);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2f(context, program, location, v0, v1))
+ {
+ context->programUniform2f(program, location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLfloat *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform2fv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2fv(context, program, location, count, value))
+ {
+ context->programUniform2fv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+ProgramUniform2iContextANGLE(GLeglContext ctx, GLuint program, GLint location, GLint v0, GLint v1)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLint v0 = %d, GLint v1 = %d)", program,
+ location, v0, v1);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform2i, context, program, location, v0, v1);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2i(context, program, location, v0, v1))
+ {
+ context->programUniform2i(program, location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform2iv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2iv(context, program, location, count, value))
+ {
+ context->programUniform2iv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLuint v0 = %u, GLuint v1 = %u)", program,
+ location, v0, v1);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform2ui, context, program, location, v0, v1);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2ui(context, program, location, v0, v1))
+ {
+ context->programUniform2ui(program, location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform2uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLuint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform2uiv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform2uiv(context, program, location, count, value))
+ {
+ context->programUniform2uiv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1,
+ GLfloat v2)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f, GLfloat v2 = "
+ "%f)",
+ program, location, v0, v1, v2);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform3f, context, program, location, v0, v1, v2);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3f(context, program, location, v0, v1, v2))
+ {
+ context->programUniform3f(program, location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLfloat *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform3fv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3fv(context, program, location, count, value))
+ {
+ context->programUniform3fv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3iContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint v0,
+ GLint v1,
+ GLint v2)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, GLint v0 = %d, GLint v1 = %d, GLint v2 = %d)",
+ program, location, v0, v1, v2);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform3i, context, program, location, v0, v1, v2);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3i(context, program, location, v0, v1, v2))
+ {
+ context->programUniform3i(program, location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform3iv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3iv(context, program, location, count, value))
+ {
+ context->programUniform3iv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1,
+ GLuint v2)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLuint v0 = %u, GLuint v1 = %u, GLuint v2 = "
+ "%u)",
+ program, location, v0, v1, v2);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform3ui, context, program, location, v0, v1, v2);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3ui(context, program, location, v0, v1, v2))
+ {
+ context->programUniform3ui(program, location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform3uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLuint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform3uiv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform3uiv(context, program, location, count, value))
+ {
+ context->programUniform3uiv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform4fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1,
+ GLfloat v2,
+ GLfloat v3)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f, GLfloat v2 = "
+ "%f, GLfloat v3 = %f)",
+ program, location, v0, v1, v2, v3);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform4f, context, program, location, v0, v1, v2, v3);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4f(context, program, location, v0, v1, v2, v3))
+ {
+ context->programUniform4f(program, location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLfloat *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform4fv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4fv(context, program, location, count, value))
+ {
+ context->programUniform4fv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform4iContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint v0,
+ GLint v1,
+ GLint v2,
+ GLint v3)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLint v0 = %d, GLint v1 = %d, GLint v2 = %d, "
+ "GLint v3 = %d)",
+ program, location, v0, v1, v2, v3);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform4i, context, program, location, v0, v1, v2, v3);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4i(context, program, location, v0, v1, v2, v3))
+ {
+ context->programUniform4i(program, location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform4ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform4iv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4iv(context, program, location, count, value))
+ {
+ context->programUniform4iv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform4uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1,
+ GLuint v2,
+ GLuint v3)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLuint v0 = %u, GLuint v1 = %u, GLuint v2 = "
+ "%u, GLuint v3 = %u)",
+ program, location, v0, v1, v2, v3);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform4ui, context, program, location, v0, v1, v2, v3);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4ui(context, program, location, v0, v1, v2, v3))
+ {
+ context->programUniform4ui(program, location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniform4uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, const GLuint *value = "
+ "0x%016" PRIxPTR ")",
+ program, location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniform4uiv, context, program, location, count, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniform4uiv(context, program, location, count, value))
+ {
+ context->programUniform4uiv(program, location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniformMatrix2fv, context, program, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix2fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix2fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix2x3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniformMatrix2x3fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix2x3fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix2x3fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix2x4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniformMatrix2x4fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix2x4fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix2x4fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniformMatrix3fv, context, program, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix3fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix3fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix3x2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniformMatrix3x2fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix3x2fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix3x2fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix3x4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniformMatrix3x4fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix3x4fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix3x4fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniformMatrix4fv, context, program, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix4fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix4fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix4x2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniformMatrix4x2fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix4x2fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix4x2fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramUniformMatrix4x3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, "
+ "const GLfloat *value = 0x%016" PRIxPTR ")",
+ program, location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramUniformMatrix4x3fv, context, program, location, count, transpose,
+ value);
+ if (context->skipValidation() ||
+ ValidateProgramUniformMatrix4x3fv(context, program, location, count, transpose, value))
+ {
+ context->programUniformMatrix4x3fv(program, location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY PushDebugGroupKHRContextANGLE(GLeglContext ctx,
+ GLenum source,
+ GLuint id,
+ GLsizei length,
+ const GLchar *message)
+{
+ EVENT(
+ "(GLenum source = 0x%X, GLuint id = %u, GLsizei length = %d, const GLchar *message = "
+ "0x%016" PRIxPTR ")",
+ source, id, length, (uintptr_t)message);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PushDebugGroupKHR, context, source, id, length, message);
+ if (context->skipValidation() ||
+ ValidatePushDebugGroupKHR(context, source, id, length, message))
+ {
+ context->pushDebugGroup(source, id, length, message);
+ }
+ }
+}
+
+void GL_APIENTRY PushGroupMarkerEXTContextANGLE(GLeglContext ctx,
+ GLsizei length,
+ const GLchar *marker)
+{
+ // Don't run an EVENT() macro on the EXT_debug_marker entry points.
+ // It can interfere with the debug events being set by the caller.
+ // EVENT("(GLsizei length = %d, const GLchar *marker = 0x%016" PRIxPTR ")", length,
+ // (uintptr_t)marker);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PushGroupMarkerEXT, context, length, marker);
+ if (context->skipValidation() || ValidatePushGroupMarkerEXT(context, length, marker))
+ {
+ context->pushGroupMarker(length, marker);
+ }
+ }
+}
+
+void GL_APIENTRY PushMatrixContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PushMatrix, context);
+ if (context->skipValidation() || ValidatePushMatrix(context))
+ {
+ context->pushMatrix();
+ }
+ }
+}
+
+void GL_APIENTRY QueryCounterEXTContextANGLE(GLeglContext ctx, GLuint id, GLenum target)
+{
+ EVENT("(GLuint id = %u, GLenum target = 0x%X)", id, target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(QueryCounterEXT, context, id, targetPacked);
+ if (context->skipValidation() || ValidateQueryCounterEXT(context, id, targetPacked))
+ {
+ context->queryCounter(id, targetPacked);
+ }
+ }
+}
+
+GLbitfield GL_APIENTRY QueryMatrixxOESContextANGLE(GLeglContext ctx,
+ GLfixed *mantissa,
+ GLint *exponent)
+{
+ EVENT("(GLfixed *mantissa = 0x%016" PRIxPTR ", GLint *exponent = 0x%016" PRIxPTR ")",
+ (uintptr_t)mantissa, (uintptr_t)exponent);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(QueryMatrixxOES, context, mantissa, exponent);
+ if (context->skipValidation() || ValidateQueryMatrixxOES(context, mantissa, exponent))
+ {
+ return context->queryMatrixx(mantissa, exponent);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::QueryMatrixxOES, GLbitfield>();
+}
+
+void GL_APIENTRY ReadBufferContextANGLE(GLeglContext ctx, GLenum src)
+{
+ EVENT("(GLenum src = 0x%X)", src);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ReadBuffer, context, src);
+ if (context->skipValidation() || ValidateReadBuffer(context, src))
+ {
+ context->readBuffer(src);
+ }
+ }
+}
+
+void GL_APIENTRY ReadPixelsContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ void *pixels)
+{
+ EVENT(
+ "(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLenum format = "
+ "0x%X, GLenum type = 0x%X, void *pixels = 0x%016" PRIxPTR ")",
+ x, y, width, height, format, type, (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ReadPixels, context, x, y, width, height, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateReadPixels(context, x, y, width, height, format, type, pixels))
+ {
+ context->readPixels(x, y, width, height, format, type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY ReadnPixelsEXTContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ void *data)
+{
+ EVENT(
+ "(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLenum format = "
+ "0x%X, GLenum type = 0x%X, GLsizei bufSize = %d, void *data = 0x%016" PRIxPTR ")",
+ x, y, width, height, format, type, bufSize, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ReadnPixelsEXT, context, x, y, width, height, format, type, bufSize, data);
+ if (context->skipValidation() ||
+ ValidateReadnPixelsEXT(context, x, y, width, height, format, type, bufSize, data))
+ {
+ context->readnPixels(x, y, width, height, format, type, bufSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY ReleaseShaderCompilerContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ReleaseShaderCompiler, context);
+ if (context->skipValidation() || ValidateReleaseShaderCompiler(context))
+ {
+ context->releaseShaderCompiler();
+ }
+ }
+}
+
+void GL_APIENTRY RenderbufferStorageContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum internalformat = 0x%X, GLsizei width = %d, GLsizei height = "
+ "%d)",
+ target, internalformat, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(RenderbufferStorage, context, target, internalformat, width, height);
+ if (context->skipValidation() ||
+ ValidateRenderbufferStorage(context, target, internalformat, width, height))
+ {
+ context->renderbufferStorage(target, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY RenderbufferStorageMultisampleContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d)",
+ target, samples, internalformat, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(RenderbufferStorageMultisample, context, target, samples, internalformat,
+ width, height);
+ if (context->skipValidation() ||
+ ValidateRenderbufferStorageMultisample(context, target, samples, internalformat, width,
+ height))
+ {
+ context->renderbufferStorageMultisample(target, samples, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY RenderbufferStorageMultisampleANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d)",
+ target, samples, internalformat, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(RenderbufferStorageMultisampleANGLE, context, target, samples, internalformat,
+ width, height);
+ if (context->skipValidation() ||
+ ValidateRenderbufferStorageMultisampleANGLE(context, target, samples, internalformat,
+ width, height))
+ {
+ context->renderbufferStorageMultisample(target, samples, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY RenderbufferStorageOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum internalformat = 0x%X, GLsizei width = %d, GLsizei height = "
+ "%d)",
+ target, internalformat, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(RenderbufferStorageOES, context, target, internalformat, width, height);
+ if (context->skipValidation() ||
+ ValidateRenderbufferStorageOES(context, target, internalformat, width, height))
+ {
+ context->renderbufferStorage(target, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY ResumeTransformFeedbackContextANGLE(GLeglContext ctx)
+{
+ EVENT("()");
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ResumeTransformFeedback, context);
+ if (context->skipValidation() || ValidateResumeTransformFeedback(context))
+ {
+ context->resumeTransformFeedback();
+ }
+ }
+}
+
+void GL_APIENTRY
+RotatefContextANGLE(GLeglContext ctx, GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ EVENT("(GLfloat angle = %f, GLfloat x = %f, GLfloat y = %f, GLfloat z = %f)", angle, x, y, z);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Rotatef, context, angle, x, y, z);
+ if (context->skipValidation() || ValidateRotatef(context, angle, x, y, z))
+ {
+ context->rotatef(angle, x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY
+RotatexContextANGLE(GLeglContext ctx, GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ EVENT("(GLfixed angle = 0x%X, GLfixed x = 0x%X, GLfixed y = 0x%X, GLfixed z = 0x%X)", angle, x,
+ y, z);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Rotatex, context, angle, x, y, z);
+ if (context->skipValidation() || ValidateRotatex(context, angle, x, y, z))
+ {
+ context->rotatex(angle, x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY SampleCoverageContextANGLE(GLeglContext ctx, GLfloat value, GLboolean invert)
+{
+ EVENT("(GLfloat value = %f, GLboolean invert = %u)", value, invert);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SampleCoverage, context, value, invert);
+ if (context->skipValidation() || ValidateSampleCoverage(context, value, invert))
+ {
+ context->sampleCoverage(value, invert);
+ }
+ }
+}
+
+void GL_APIENTRY SampleCoveragexContextANGLE(GLeglContext ctx, GLclampx value, GLboolean invert)
+{
+ EVENT("(GLclampx value = 0x%X, GLboolean invert = %u)", value, invert);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SampleCoveragex, context, value, invert);
+ if (context->skipValidation() || ValidateSampleCoveragex(context, value, invert))
+ {
+ context->sampleCoveragex(value, invert);
+ }
+ }
+}
+
+void GL_APIENTRY SampleMaskiContextANGLE(GLeglContext ctx, GLuint maskNumber, GLbitfield mask)
+{
+ EVENT("(GLuint maskNumber = %u, GLbitfield mask = 0x%X)", maskNumber, mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SampleMaski, context, maskNumber, mask);
+ if (context->skipValidation() || ValidateSampleMaski(context, maskNumber, mask))
+ {
+ context->sampleMaski(maskNumber, mask);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterIivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLint *param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, const GLint *param = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameterIivOES, context, sampler, pname, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterIivOES(context, sampler, pname, param))
+ {
+ context->samplerParameterIiv(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLuint *param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, const GLuint *param = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameterIuivOES, context, sampler, pname, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterIuivOES(context, sampler, pname, param))
+ {
+ context->samplerParameterIuiv(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterfContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLfloat param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLfloat param = %f)", sampler, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameterf, context, sampler, pname, param);
+ if (context->skipValidation() || ValidateSamplerParameterf(context, sampler, pname, param))
+ {
+ context->samplerParameterf(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterfvContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLfloat *param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, const GLfloat *param = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameterfv, context, sampler, pname, param);
+ if (context->skipValidation() || ValidateSamplerParameterfv(context, sampler, pname, param))
+ {
+ context->samplerParameterfv(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameteriContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLint param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, GLint param = %d)", sampler, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameteri, context, sampler, pname, param);
+ if (context->skipValidation() || ValidateSamplerParameteri(context, sampler, pname, param))
+ {
+ context->samplerParameteri(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterivContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLint *param)
+{
+ EVENT("(GLuint sampler = %u, GLenum pname = 0x%X, const GLint *param = 0x%016" PRIxPTR ")",
+ sampler, pname, (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameteriv, context, sampler, pname, param);
+ if (context->skipValidation() || ValidateSamplerParameteriv(context, sampler, pname, param))
+ {
+ context->samplerParameteriv(sampler, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY ScalefContextANGLE(GLeglContext ctx, GLfloat x, GLfloat y, GLfloat z)
+{
+ EVENT("(GLfloat x = %f, GLfloat y = %f, GLfloat z = %f)", x, y, z);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Scalef, context, x, y, z);
+ if (context->skipValidation() || ValidateScalef(context, x, y, z))
+ {
+ context->scalef(x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY ScalexContextANGLE(GLeglContext ctx, GLfixed x, GLfixed y, GLfixed z)
+{
+ EVENT("(GLfixed x = 0x%X, GLfixed y = 0x%X, GLfixed z = 0x%X)", x, y, z);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Scalex, context, x, y, z);
+ if (context->skipValidation() || ValidateScalex(context, x, y, z))
+ {
+ context->scalex(x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY
+ScissorContextANGLE(GLeglContext ctx, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ EVENT("(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)", x, y, width,
+ height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Scissor, context, x, y, width, height);
+ if (context->skipValidation() || ValidateScissor(context, x, y, width, height))
+ {
+ context->scissor(x, y, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY SemaphoreParameterui64vEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLenum pname,
+ const GLuint64 *params)
+{
+ EVENT("(GLuint semaphore = %u, GLenum pname = 0x%X, const GLuint64 *params = 0x%016" PRIxPTR
+ ")",
+ semaphore, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SemaphoreParameterui64vEXT, context, semaphore, pname, params);
+ if (context->skipValidation() ||
+ ValidateSemaphoreParameterui64vEXT(context, semaphore, pname, params))
+ {
+ context->semaphoreParameterui64v(semaphore, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY SetFenceNVContextANGLE(GLeglContext ctx, GLuint fence, GLenum condition)
+{
+ EVENT("(GLuint fence = %u, GLenum condition = 0x%X)", fence, condition);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SetFenceNV, context, fence, condition);
+ if (context->skipValidation() || ValidateSetFenceNV(context, fence, condition))
+ {
+ context->setFenceNV(fence, condition);
+ }
+ }
+}
+
+void GL_APIENTRY ShadeModelContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ShadingModel modePacked = FromGLenum<ShadingModel>(mode);
+ ANGLE_CAPTURE(ShadeModel, context, modePacked);
+ if (context->skipValidation() || ValidateShadeModel(context, modePacked))
+ {
+ context->shadeModel(modePacked);
+ }
+ }
+}
+
+void GL_APIENTRY ShaderBinaryContextANGLE(GLeglContext ctx,
+ GLsizei count,
+ const GLuint *shaders,
+ GLenum binaryformat,
+ const void *binary,
+ GLsizei length)
+{
+ EVENT("(GLsizei count = %d, const GLuint *shaders = 0x%016" PRIxPTR
+ ", GLenum binaryformat = 0x%X, const void *binary = 0x%016" PRIxPTR
+ ", GLsizei length = %d)",
+ count, (uintptr_t)shaders, binaryformat, (uintptr_t)binary, length);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ShaderBinary, context, count, shaders, binaryformat, binary, length);
+ if (context->skipValidation() ||
+ ValidateShaderBinary(context, count, shaders, binaryformat, binary, length))
+ {
+ context->shaderBinary(count, shaders, binaryformat, binary, length);
+ }
+ }
+}
+
+void GL_APIENTRY ShaderSourceContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei count,
+ const GLchar *const *string,
+ const GLint *length)
+{
+ EVENT("(GLuint shader = %u, GLsizei count = %d, const GLchar *const*string = 0x%016" PRIxPTR
+ ", const GLint *length = 0x%016" PRIxPTR ")",
+ shader, count, (uintptr_t)string, (uintptr_t)length);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ShaderSource, context, shader, count, string, length);
+ if (context->skipValidation() ||
+ ValidateShaderSource(context, shader, count, string, length))
+ {
+ context->shaderSource(shader, count, string, length);
+ }
+ }
+}
+
+void GL_APIENTRY SignalSemaphoreEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *dstLayouts)
+{
+ EVENT(
+ "(GLuint semaphore = %u, GLuint numBufferBarriers = %u, const GLuint *buffers = "
+ "0x%016" PRIxPTR ", GLuint numTextureBarriers = %u, const GLuint *textures = 0x%016" PRIxPTR
+ ", const GLenum *dstLayouts = 0x%016" PRIxPTR ")",
+ semaphore, numBufferBarriers, (uintptr_t)buffers, numTextureBarriers, (uintptr_t)textures,
+ (uintptr_t)dstLayouts);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SignalSemaphoreEXT, context, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, dstLayouts);
+ if (context->skipValidation() ||
+ ValidateSignalSemaphoreEXT(context, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, dstLayouts))
+ {
+ context->signalSemaphore(semaphore, numBufferBarriers, buffers, numTextureBarriers,
+ textures, dstLayouts);
+ }
+ }
+}
+
+void GL_APIENTRY StencilFuncContextANGLE(GLeglContext ctx, GLenum func, GLint ref, GLuint mask)
+{
+ EVENT("(GLenum func = 0x%X, GLint ref = %d, GLuint mask = %u)", func, ref, mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilFunc, context, func, ref, mask);
+ if (context->skipValidation() || ValidateStencilFunc(context, func, ref, mask))
+ {
+ context->stencilFunc(func, ref, mask);
+ }
+ }
+}
+
+void GL_APIENTRY
+StencilFuncSeparateContextANGLE(GLeglContext ctx, GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ EVENT("(GLenum face = 0x%X, GLenum func = 0x%X, GLint ref = %d, GLuint mask = %u)", face, func,
+ ref, mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilFuncSeparate, context, face, func, ref, mask);
+ if (context->skipValidation() ||
+ ValidateStencilFuncSeparate(context, face, func, ref, mask))
+ {
+ context->stencilFuncSeparate(face, func, ref, mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilMaskContextANGLE(GLeglContext ctx, GLuint mask)
+{
+ EVENT("(GLuint mask = %u)", mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilMask, context, mask);
+ if (context->skipValidation() || ValidateStencilMask(context, mask))
+ {
+ context->stencilMask(mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilMaskSeparateContextANGLE(GLeglContext ctx, GLenum face, GLuint mask)
+{
+ EVENT("(GLenum face = 0x%X, GLuint mask = %u)", face, mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilMaskSeparate, context, face, mask);
+ if (context->skipValidation() || ValidateStencilMaskSeparate(context, face, mask))
+ {
+ context->stencilMaskSeparate(face, mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilOpContextANGLE(GLeglContext ctx, GLenum fail, GLenum zfail, GLenum zpass)
+{
+ EVENT("(GLenum fail = 0x%X, GLenum zfail = 0x%X, GLenum zpass = 0x%X)", fail, zfail, zpass);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilOp, context, fail, zfail, zpass);
+ if (context->skipValidation() || ValidateStencilOp(context, fail, zfail, zpass))
+ {
+ context->stencilOp(fail, zfail, zpass);
+ }
+ }
+}
+
+void GL_APIENTRY StencilOpSeparateContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum sfail,
+ GLenum dpfail,
+ GLenum dppass)
+{
+ EVENT("(GLenum face = 0x%X, GLenum sfail = 0x%X, GLenum dpfail = 0x%X, GLenum dppass = 0x%X)",
+ face, sfail, dpfail, dppass);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilOpSeparate, context, face, sfail, dpfail, dppass);
+ if (context->skipValidation() ||
+ ValidateStencilOpSeparate(context, face, sfail, dpfail, dppass))
+ {
+ context->stencilOpSeparate(face, sfail, dpfail, dppass);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY TestFenceNVContextANGLE(GLeglContext ctx, GLuint fence)
+{
+ EVENT("(GLuint fence = %u)", fence);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(TestFenceNV, context, fence);
+ if (context->skipValidation() || ValidateTestFenceNV(context, fence))
+ {
+ return context->testFenceNV(fence);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::TestFenceNV, GLboolean>();
+}
+
+void GL_APIENTRY TexCoordPointerContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(TexCoordPointer, context, size, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateTexCoordPointer(context, size, typePacked, stride, pointer))
+ {
+ context->texCoordPointer(size, typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvfContextANGLE(GLeglContext ctx, GLenum target, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", target, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvf, context, targetPacked, pnamePacked, param);
+ if (context->skipValidation() || ValidateTexEnvf(context, targetPacked, pnamePacked, param))
+ {
+ context->texEnvf(targetPacked, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfloat *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvfv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateTexEnvfv(context, targetPacked, pnamePacked, params))
+ {
+ context->texEnvfv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnviContextANGLE(GLeglContext ctx, GLenum target, GLenum pname, GLint param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint param = %d)", target, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvi, context, targetPacked, pnamePacked, param);
+ if (context->skipValidation() || ValidateTexEnvi(context, targetPacked, pnamePacked, param))
+ {
+ context->texEnvi(targetPacked, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnviv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateTexEnviv(context, targetPacked, pnamePacked, params))
+ {
+ context->texEnviv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvxContextANGLE(GLeglContext ctx, GLenum target, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", target, pname,
+ param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvx, context, targetPacked, pnamePacked, param);
+ if (context->skipValidation() || ValidateTexEnvx(context, targetPacked, pnamePacked, param))
+ {
+ context->texEnvx(targetPacked, pnamePacked, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexEnvxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfixed *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureEnvTarget targetPacked = FromGLenum<TextureEnvTarget>(target);
+ TextureEnvParameter pnamePacked = FromGLenum<TextureEnvParameter>(pname);
+ ANGLE_CAPTURE(TexEnvxv, context, targetPacked, pnamePacked, params);
+ if (context->skipValidation() ||
+ ValidateTexEnvxv(context, targetPacked, pnamePacked, params))
+ {
+ context->texEnvxv(targetPacked, pnamePacked, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenfOESContextANGLE(GLeglContext ctx, GLenum coord, GLenum pname, GLfloat param)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", coord, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(TexGenfOES, context, coord, pname, param);
+ if (context->skipValidation() || ValidateTexGenfOES(context, coord, pname, param))
+ {
+ context->texGenf(coord, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenfvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ const GLfloat *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ coord, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(TexGenfvOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateTexGenfvOES(context, coord, pname, params))
+ {
+ context->texGenfv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexGeniOESContextANGLE(GLeglContext ctx, GLenum coord, GLenum pname, GLint param)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLint param = %d)", coord, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(TexGeniOES, context, coord, pname, param);
+ if (context->skipValidation() || ValidateTexGeniOES(context, coord, pname, param))
+ {
+ context->texGeni(coord, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenivOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ const GLint *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR ")",
+ coord, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(TexGenivOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateTexGenivOES(context, coord, pname, params))
+ {
+ context->texGeniv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenxOESContextANGLE(GLeglContext ctx, GLenum coord, GLenum pname, GLfixed param)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", coord, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(TexGenxOES, context, coord, pname, param);
+ if (context->skipValidation() || ValidateTexGenxOES(context, coord, pname, param))
+ {
+ context->texGenx(coord, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexGenxvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ const GLfixed *params)
+{
+ EVENT("(GLenum coord = 0x%X, GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")",
+ coord, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(TexGenxvOES, context, coord, pname, params);
+ if (context->skipValidation() || ValidateTexGenxvOES(context, coord, pname, params))
+ {
+ context->texGenxv(coord, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLint border = %d, GLenum format = 0x%X, GLenum type = 0x%X, const "
+ "void *pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, border, format, type, (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage2D, context, targetPacked, level, internalformat, width, height,
+ border, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage2D(context, targetPacked, level, internalformat, width, height, border,
+ format, type, pixels))
+ {
+ context->texImage2D(targetPacked, level, internalformat, width, height, border, format,
+ type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLenum format = 0x%X, GLenum "
+ "type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, format, type,
+ (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage3D, context, targetPacked, level, internalformat, width, height,
+ depth, border, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage3D(context, targetPacked, level, internalformat, width, height, depth,
+ border, format, type, pixels))
+ {
+ context->texImage3D(targetPacked, level, internalformat, width, height, depth, border,
+ format, type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLenum format = 0x%X, "
+ "GLenum type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, format, type,
+ (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage3DOES, context, targetPacked, level, internalformat, width, height,
+ depth, border, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage3DOES(context, targetPacked, level, internalformat, width, height,
+ depth, border, format, type, pixels))
+ {
+ context->texImage3D(targetPacked, level, internalformat, width, height, depth, border,
+ format, type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterIivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterIivOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterIivOES(context, targetPacked, pname, params))
+ {
+ context->texParameterIiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLuint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLuint *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterIuivOES, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterIuivOES(context, targetPacked, pname, params))
+ {
+ context->texParameterIuiv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterfContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfloat param = %f)", target, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterf, context, targetPacked, pname, param);
+ if (context->skipValidation() || ValidateTexParameterf(context, targetPacked, pname, param))
+ {
+ context->texParameterf(targetPacked, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfloat *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLfloat *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterfv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterfv(context, targetPacked, pname, params))
+ {
+ context->texParameterfv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameteriContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLint param = %d)", target, pname, param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameteri, context, targetPacked, pname, param);
+ if (context->skipValidation() || ValidateTexParameteri(context, targetPacked, pname, param))
+ {
+ context->texParameteri(targetPacked, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLint *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLint *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameteriv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameteriv(context, targetPacked, pname, params))
+ {
+ context->texParameteriv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterxContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed param)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, GLfixed param = 0x%X)", target, pname,
+ param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterx, context, targetPacked, pname, param);
+ if (context->skipValidation() || ValidateTexParameterx(context, targetPacked, pname, param))
+ {
+ context->texParameterx(targetPacked, pname, param);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfixed *params)
+{
+ EVENT("(GLenum target = 0x%X, GLenum pname = 0x%X, const GLfixed *params = 0x%016" PRIxPTR ")",
+ target, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterxv, context, targetPacked, pname, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterxv(context, targetPacked, pname, params))
+ {
+ context->texParameterxv(targetPacked, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage1DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d)",
+ target, levels, internalformat, width);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(TexStorage1DEXT, context, target, levels, internalformat, width);
+ if (context->skipValidation() ||
+ ValidateTexStorage1DEXT(context, target, levels, internalformat, width))
+ {
+ context->texStorage1D(target, levels, internalformat, width);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d)",
+ target, levels, internalformat, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage2D, context, targetPacked, levels, internalformat, width, height);
+ if (context->skipValidation() ||
+ ValidateTexStorage2D(context, targetPacked, levels, internalformat, width, height))
+ {
+ context->texStorage2D(targetPacked, levels, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage2DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d)",
+ target, levels, internalformat, width, height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage2DEXT, context, targetPacked, levels, internalformat, width,
+ height);
+ if (context->skipValidation() ||
+ ValidateTexStorage2DEXT(context, targetPacked, levels, internalformat, width, height))
+ {
+ context->texStorage2D(targetPacked, levels, internalformat, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage2DMultisampleContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLboolean fixedsamplelocations = %u)",
+ target, samples, internalformat, width, height, fixedsamplelocations);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage2DMultisample, context, targetPacked, samples, internalformat,
+ width, height, fixedsamplelocations);
+ if (context->skipValidation() ||
+ ValidateTexStorage2DMultisample(context, targetPacked, samples, internalformat, width,
+ height, fixedsamplelocations))
+ {
+ context->texStorage2DMultisample(targetPacked, samples, internalformat, width, height,
+ fixedsamplelocations);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d)",
+ target, levels, internalformat, width, height, depth);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage3D, context, targetPacked, levels, internalformat, width, height,
+ depth);
+ if (context->skipValidation() || ValidateTexStorage3D(context, targetPacked, levels,
+ internalformat, width, height, depth))
+ {
+ context->texStorage3D(targetPacked, levels, internalformat, width, height, depth);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage3DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d)",
+ target, levels, internalformat, width, height, depth);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage3DEXT, context, targetPacked, levels, internalformat, width, height,
+ depth);
+ if (context->skipValidation() ||
+ ValidateTexStorage3DEXT(context, targetPacked, levels, internalformat, width, height,
+ depth))
+ {
+ context->texStorage3D(targetPacked, levels, internalformat, width, height, depth);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage3DMultisampleOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedsamplelocations)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLsizei depth = %d, GLboolean fixedsamplelocations = %u)",
+ target, samples, internalformat, width, height, depth, fixedsamplelocations);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage3DMultisampleOES, context, targetPacked, samples, internalformat,
+ width, height, depth, fixedsamplelocations);
+ if (context->skipValidation() ||
+ ValidateTexStorage3DMultisampleOES(context, targetPacked, samples, internalformat,
+ width, height, depth, fixedsamplelocations))
+ {
+ context->texStorage3DMultisample(targetPacked, samples, internalformat, width, height,
+ depth, fixedsamplelocations);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorageMem2DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLuint memory,
+ GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalFormat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLuint memory = %u, GLuint64 offset = %llu)",
+ target, levels, internalFormat, width, height, memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorageMem2DEXT, context, targetPacked, levels, internalFormat, width,
+ height, memory, offset);
+ if (context->skipValidation() ||
+ ValidateTexStorageMem2DEXT(context, targetPacked, levels, internalFormat, width, height,
+ memory, offset))
+ {
+ context->texStorageMem2D(targetPacked, levels, internalFormat, width, height, memory,
+ offset);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorageMem2DMultisampleEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalFormat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLboolean fixedSampleLocations = %u, GLuint memory = %u, "
+ "GLuint64 offset = %llu)",
+ target, samples, internalFormat, width, height, fixedSampleLocations, memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorageMem2DMultisampleEXT, context, targetPacked, samples, internalFormat,
+ width, height, fixedSampleLocations, memory, offset);
+ if (context->skipValidation() || ValidateTexStorageMem2DMultisampleEXT(
+ context, targetPacked, samples, internalFormat, width,
+ height, fixedSampleLocations, memory, offset))
+ {
+ context->texStorageMem2DMultisample(targetPacked, samples, internalFormat, width,
+ height, fixedSampleLocations, memory, offset);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorageMem3DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLuint memory,
+ GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei levels = %d, GLenum internalFormat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLuint memory = %u, GLuint64 offset = %llu)",
+ target, levels, internalFormat, width, height, depth, memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorageMem3DEXT, context, targetPacked, levels, internalFormat, width,
+ height, depth, memory, offset);
+ if (context->skipValidation() ||
+ ValidateTexStorageMem3DEXT(context, targetPacked, levels, internalFormat, width, height,
+ depth, memory, offset))
+ {
+ context->texStorageMem3D(targetPacked, levels, internalFormat, width, height, depth,
+ memory, offset);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorageMem3DMultisampleEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalFormat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLsizei depth = %d, GLboolean fixedSampleLocations = %u, "
+ "GLuint memory = %u, GLuint64 offset = %llu)",
+ target, samples, internalFormat, width, height, depth, fixedSampleLocations, memory,
+ static_cast<unsigned long long>(offset));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorageMem3DMultisampleEXT, context, targetPacked, samples, internalFormat,
+ width, height, depth, fixedSampleLocations, memory, offset);
+ if (context->skipValidation() || ValidateTexStorageMem3DMultisampleEXT(
+ context, targetPacked, samples, internalFormat, width,
+ height, depth, fixedSampleLocations, memory, offset))
+ {
+ context->texStorageMem3DMultisample(targetPacked, samples, internalFormat, width,
+ height, depth, fixedSampleLocations, memory,
+ offset);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLsizei "
+ "width = %d, GLsizei height = %d, GLenum format = 0x%X, GLenum type = 0x%X, const void "
+ "*pixels = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, width, height, format, type, (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage2D, context, targetPacked, level, xoffset, yoffset, width, height,
+ format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage2D(context, targetPacked, level, xoffset, yoffset, width, height,
+ format, type, pixels))
+ {
+ context->texSubImage2D(targetPacked, level, xoffset, yoffset, width, height, format,
+ type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLenum type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, type,
+ (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage3D, context, targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage3D(context, targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, pixels))
+ {
+ context->texSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width, height,
+ depth, format, type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLenum type = 0x%X, const void *pixels = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, type,
+ (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage3DOES, context, targetPacked, level, xoffset, yoffset, zoffset,
+ width, height, depth, format, type, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage3DOES(context, targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, pixels))
+ {
+ context->texSubImage3D(targetPacked, level, xoffset, yoffset, zoffset, width, height,
+ depth, format, type, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TransformFeedbackVaryingsContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei count,
+ const GLchar *const *varyings,
+ GLenum bufferMode)
+{
+ EVENT("(GLuint program = %u, GLsizei count = %d, const GLchar *const*varyings = 0x%016" PRIxPTR
+ ", GLenum bufferMode = 0x%X)",
+ program, count, (uintptr_t)varyings, bufferMode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(TransformFeedbackVaryings, context, program, count, varyings, bufferMode);
+ if (context->skipValidation() ||
+ ValidateTransformFeedbackVaryings(context, program, count, varyings, bufferMode))
+ {
+ context->transformFeedbackVaryings(program, count, varyings, bufferMode);
+ }
+ }
+}
+
+void GL_APIENTRY TranslatefContextANGLE(GLeglContext ctx, GLfloat x, GLfloat y, GLfloat z)
+{
+ EVENT("(GLfloat x = %f, GLfloat y = %f, GLfloat z = %f)", x, y, z);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Translatef, context, x, y, z);
+ if (context->skipValidation() || ValidateTranslatef(context, x, y, z))
+ {
+ context->translatef(x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY TranslatexContextANGLE(GLeglContext ctx, GLfixed x, GLfixed y, GLfixed z)
+{
+ EVENT("(GLfixed x = 0x%X, GLfixed y = 0x%X, GLfixed z = 0x%X)", x, y, z);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Translatex, context, x, y, z);
+ if (context->skipValidation() || ValidateTranslatex(context, x, y, z))
+ {
+ context->translatex(x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1fContextANGLE(GLeglContext ctx, GLint location, GLfloat v0)
+{
+ EVENT("(GLint location = %d, GLfloat v0 = %f)", location, v0);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform1f, context, location, v0);
+ if (context->skipValidation() || ValidateUniform1f(context, location, v0))
+ {
+ context->uniform1f(location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform1fv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform1fv(context, location, count, value))
+ {
+ context->uniform1fv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1iContextANGLE(GLeglContext ctx, GLint location, GLint v0)
+{
+ EVENT("(GLint location = %d, GLint v0 = %d)", location, v0);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform1i, context, location, v0);
+ if (context->skipValidation() || ValidateUniform1i(context, location, v0))
+ {
+ context->uniform1i(location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform1iv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform1iv(context, location, count, value))
+ {
+ context->uniform1iv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1uiContextANGLE(GLeglContext ctx, GLint location, GLuint v0)
+{
+ EVENT("(GLint location = %d, GLuint v0 = %u)", location, v0);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform1ui, context, location, v0);
+ if (context->skipValidation() || ValidateUniform1ui(context, location, v0))
+ {
+ context->uniform1ui(location, v0);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform1uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform1uiv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform1uiv(context, location, count, value))
+ {
+ context->uniform1uiv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2fContextANGLE(GLeglContext ctx, GLint location, GLfloat v0, GLfloat v1)
+{
+ EVENT("(GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f)", location, v0, v1);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform2f, context, location, v0, v1);
+ if (context->skipValidation() || ValidateUniform2f(context, location, v0, v1))
+ {
+ context->uniform2f(location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform2fv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform2fv(context, location, count, value))
+ {
+ context->uniform2fv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2iContextANGLE(GLeglContext ctx, GLint location, GLint v0, GLint v1)
+{
+ EVENT("(GLint location = %d, GLint v0 = %d, GLint v1 = %d)", location, v0, v1);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform2i, context, location, v0, v1);
+ if (context->skipValidation() || ValidateUniform2i(context, location, v0, v1))
+ {
+ context->uniform2i(location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform2iv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform2iv(context, location, count, value))
+ {
+ context->uniform2iv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2uiContextANGLE(GLeglContext ctx, GLint location, GLuint v0, GLuint v1)
+{
+ EVENT("(GLint location = %d, GLuint v0 = %u, GLuint v1 = %u)", location, v0, v1);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform2ui, context, location, v0, v1);
+ if (context->skipValidation() || ValidateUniform2ui(context, location, v0, v1))
+ {
+ context->uniform2ui(location, v0, v1);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform2uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform2uiv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform2uiv(context, location, count, value))
+ {
+ context->uniform2uiv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+Uniform3fContextANGLE(GLeglContext ctx, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ EVENT("(GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f, GLfloat v2 = %f)", location, v0,
+ v1, v2);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform3f, context, location, v0, v1, v2);
+ if (context->skipValidation() || ValidateUniform3f(context, location, v0, v1, v2))
+ {
+ context->uniform3f(location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform3fv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform3fv(context, location, count, value))
+ {
+ context->uniform3fv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+Uniform3iContextANGLE(GLeglContext ctx, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ EVENT("(GLint location = %d, GLint v0 = %d, GLint v1 = %d, GLint v2 = %d)", location, v0, v1,
+ v2);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform3i, context, location, v0, v1, v2);
+ if (context->skipValidation() || ValidateUniform3i(context, location, v0, v1, v2))
+ {
+ context->uniform3i(location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform3ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform3iv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform3iv(context, location, count, value))
+ {
+ context->uniform3iv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+Uniform3uiContextANGLE(GLeglContext ctx, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ EVENT("(GLint location = %d, GLuint v0 = %u, GLuint v1 = %u, GLuint v2 = %u)", location, v0, v1,
+ v2);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform3ui, context, location, v0, v1, v2);
+ if (context->skipValidation() || ValidateUniform3ui(context, location, v0, v1, v2))
+ {
+ context->uniform3ui(location, v0, v1, v2);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform3uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform3uiv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform3uiv(context, location, count, value))
+ {
+ context->uniform3uiv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4fContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1,
+ GLfloat v2,
+ GLfloat v3)
+{
+ EVENT(
+ "(GLint location = %d, GLfloat v0 = %f, GLfloat v1 = %f, GLfloat v2 = %f, GLfloat v3 = %f)",
+ location, v0, v1, v2, v3);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform4f, context, location, v0, v1, v2, v3);
+ if (context->skipValidation() || ValidateUniform4f(context, location, v0, v1, v2, v3))
+ {
+ context->uniform4f(location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLfloat *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform4fv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform4fv(context, location, count, value))
+ {
+ context->uniform4fv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+Uniform4iContextANGLE(GLeglContext ctx, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ EVENT("(GLint location = %d, GLint v0 = %d, GLint v1 = %d, GLint v2 = %d, GLint v3 = %d)",
+ location, v0, v1, v2, v3);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform4i, context, location, v0, v1, v2, v3);
+ if (context->skipValidation() || ValidateUniform4i(context, location, v0, v1, v2, v3))
+ {
+ context->uniform4i(location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform4iv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform4iv(context, location, count, value))
+ {
+ context->uniform4iv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY
+Uniform4uiContextANGLE(GLeglContext ctx, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ EVENT("(GLint location = %d, GLuint v0 = %u, GLuint v1 = %u, GLuint v2 = %u, GLuint v3 = %u)",
+ location, v0, v1, v2, v3);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform4ui, context, location, v0, v1, v2, v3);
+ if (context->skipValidation() || ValidateUniform4ui(context, location, v0, v1, v2, v3))
+ {
+ context->uniform4ui(location, v0, v1, v2, v3);
+ }
+ }
+}
+
+void GL_APIENTRY Uniform4uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ EVENT("(GLint location = %d, GLsizei count = %d, const GLuint *value = 0x%016" PRIxPTR ")",
+ location, count, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Uniform4uiv, context, location, count, value);
+ if (context->skipValidation() || ValidateUniform4uiv(context, location, count, value))
+ {
+ context->uniform4uiv(location, count, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformBlockBindingContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLuint uniformBlockBinding)
+{
+ EVENT("(GLuint program = %u, GLuint uniformBlockIndex = %u, GLuint uniformBlockBinding = %u)",
+ program, uniformBlockIndex, uniformBlockBinding);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformBlockBinding, context, program, uniformBlockIndex,
+ uniformBlockBinding);
+ if (context->skipValidation() ||
+ ValidateUniformBlockBinding(context, program, uniformBlockIndex, uniformBlockBinding))
+ {
+ context->uniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformMatrix2fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix2fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix2fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix2x3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformMatrix2x3fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix2x3fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix2x3fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix2x4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformMatrix2x4fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix2x4fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix2x4fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformMatrix3fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix3fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix3fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix3x2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformMatrix3x2fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix3x2fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix3x2fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix3x4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformMatrix3x4fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix3x4fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix3x4fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformMatrix4fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix4fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix4fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix4x2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformMatrix4x2fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix4x2fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix4x2fv(location, count, transpose, value);
+ }
+ }
+}
+
+void GL_APIENTRY UniformMatrix4x3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ EVENT(
+ "(GLint location = %d, GLsizei count = %d, GLboolean transpose = %u, const GLfloat *value "
+ "= 0x%016" PRIxPTR ")",
+ location, count, transpose, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UniformMatrix4x3fv, context, location, count, transpose, value);
+ if (context->skipValidation() ||
+ ValidateUniformMatrix4x3fv(context, location, count, transpose, value))
+ {
+ context->uniformMatrix4x3fv(location, count, transpose, value);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY UnmapBufferContextANGLE(GLeglContext ctx, GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(UnmapBuffer, context, targetPacked);
+ if (context->skipValidation() || ValidateUnmapBuffer(context, targetPacked))
+ {
+ return context->unmapBuffer(targetPacked);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::UnmapBuffer, GLboolean>();
+}
+
+GLboolean GL_APIENTRY UnmapBufferOESContextANGLE(GLeglContext ctx, GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(UnmapBufferOES, context, targetPacked);
+ if (context->skipValidation() || ValidateUnmapBufferOES(context, targetPacked))
+ {
+ return context->unmapBuffer(targetPacked);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::UnmapBufferOES, GLboolean>();
+}
+
+void GL_APIENTRY UseProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UseProgram, context, program);
+ if (context->skipValidation() || ValidateUseProgram(context, program))
+ {
+ context->useProgram(program);
+ }
+ }
+}
+
+void GL_APIENTRY UseProgramStagesContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLbitfield stages,
+ GLuint program)
+{
+ EVENT("(GLuint pipeline = %u, GLbitfield stages = 0x%X, GLuint program = %u)", pipeline, stages,
+ program);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(UseProgramStages, context, pipeline, stages, program);
+ if (context->skipValidation() ||
+ ValidateUseProgramStages(context, pipeline, stages, program))
+ {
+ context->useProgramStages(pipeline, stages, program);
+ }
+ }
+}
+
+void GL_APIENTRY ValidateProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ EVENT("(GLuint program = %u)", program);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ValidateProgram, context, program);
+ if (context->skipValidation() || ValidateValidateProgram(context, program))
+ {
+ context->validateProgram(program);
+ }
+ }
+}
+
+void GL_APIENTRY ValidateProgramPipelineContextANGLE(GLeglContext ctx, GLuint pipeline)
+{
+ EVENT("(GLuint pipeline = %u)", pipeline);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ValidateProgramPipeline, context, pipeline);
+ if (context->skipValidation() || ValidateValidateProgramPipeline(context, pipeline))
+ {
+ context->validateProgramPipeline(pipeline);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib1fContextANGLE(GLeglContext ctx, GLuint index, GLfloat x)
+{
+ EVENT("(GLuint index = %u, GLfloat x = %f)", index, x);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttrib1f, context, index, x);
+ if (context->skipValidation() || ValidateVertexAttrib1f(context, index, x))
+ {
+ context->vertexAttrib1f(index, x);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib1fvContextANGLE(GLeglContext ctx, GLuint index, const GLfloat *v)
+{
+ EVENT("(GLuint index = %u, const GLfloat *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttrib1fv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttrib1fv(context, index, v))
+ {
+ context->vertexAttrib1fv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib2fContextANGLE(GLeglContext ctx, GLuint index, GLfloat x, GLfloat y)
+{
+ EVENT("(GLuint index = %u, GLfloat x = %f, GLfloat y = %f)", index, x, y);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttrib2f, context, index, x, y);
+ if (context->skipValidation() || ValidateVertexAttrib2f(context, index, x, y))
+ {
+ context->vertexAttrib2f(index, x, y);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib2fvContextANGLE(GLeglContext ctx, GLuint index, const GLfloat *v)
+{
+ EVENT("(GLuint index = %u, const GLfloat *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttrib2fv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttrib2fv(context, index, v))
+ {
+ context->vertexAttrib2fv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY
+VertexAttrib3fContextANGLE(GLeglContext ctx, GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ EVENT("(GLuint index = %u, GLfloat x = %f, GLfloat y = %f, GLfloat z = %f)", index, x, y, z);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttrib3f, context, index, x, y, z);
+ if (context->skipValidation() || ValidateVertexAttrib3f(context, index, x, y, z))
+ {
+ context->vertexAttrib3f(index, x, y, z);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib3fvContextANGLE(GLeglContext ctx, GLuint index, const GLfloat *v)
+{
+ EVENT("(GLuint index = %u, const GLfloat *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttrib3fv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttrib3fv(context, index, v))
+ {
+ context->vertexAttrib3fv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib4fContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLfloat x,
+ GLfloat y,
+ GLfloat z,
+ GLfloat w)
+{
+ EVENT("(GLuint index = %u, GLfloat x = %f, GLfloat y = %f, GLfloat z = %f, GLfloat w = %f)",
+ index, x, y, z, w);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttrib4f, context, index, x, y, z, w);
+ if (context->skipValidation() || ValidateVertexAttrib4f(context, index, x, y, z, w))
+ {
+ context->vertexAttrib4f(index, x, y, z, w);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttrib4fvContextANGLE(GLeglContext ctx, GLuint index, const GLfloat *v)
+{
+ EVENT("(GLuint index = %u, const GLfloat *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttrib4fv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttrib4fv(context, index, v))
+ {
+ context->vertexAttrib4fv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribBindingContextANGLE(GLeglContext ctx,
+ GLuint attribindex,
+ GLuint bindingindex)
+{
+ EVENT("(GLuint attribindex = %u, GLuint bindingindex = %u)", attribindex, bindingindex);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttribBinding, context, attribindex, bindingindex);
+ if (context->skipValidation() ||
+ ValidateVertexAttribBinding(context, attribindex, bindingindex))
+ {
+ context->vertexAttribBinding(attribindex, bindingindex);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribDivisorContextANGLE(GLeglContext ctx, GLuint index, GLuint divisor)
+{
+ EVENT("(GLuint index = %u, GLuint divisor = %u)", index, divisor);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttribDivisor, context, index, divisor);
+ if (context->skipValidation() || ValidateVertexAttribDivisor(context, index, divisor))
+ {
+ context->vertexAttribDivisor(index, divisor);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribDivisorANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLuint divisor)
+{
+ EVENT("(GLuint index = %u, GLuint divisor = %u)", index, divisor);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttribDivisorANGLE, context, index, divisor);
+ if (context->skipValidation() || ValidateVertexAttribDivisorANGLE(context, index, divisor))
+ {
+ context->vertexAttribDivisor(index, divisor);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribDivisorEXTContextANGLE(GLeglContext ctx, GLuint index, GLuint divisor)
+{
+ EVENT("(GLuint index = %u, GLuint divisor = %u)", index, divisor);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttribDivisorEXT, context, index, divisor);
+ if (context->skipValidation() || ValidateVertexAttribDivisorEXT(context, index, divisor))
+ {
+ context->vertexAttribDivisor(index, divisor);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribFormatContextANGLE(GLeglContext ctx,
+ GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLuint relativeoffset)
+{
+ EVENT(
+ "(GLuint attribindex = %u, GLint size = %d, GLenum type = 0x%X, GLboolean normalized = %u, "
+ "GLuint relativeoffset = %u)",
+ attribindex, size, type, normalized, relativeoffset);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexAttribFormat, context, attribindex, size, typePacked, normalized,
+ relativeoffset);
+ if (context->skipValidation() ||
+ ValidateVertexAttribFormat(context, attribindex, size, typePacked, normalized,
+ relativeoffset))
+ {
+ context->vertexAttribFormat(attribindex, size, typePacked, normalized, relativeoffset);
+ }
+ }
+}
+
+void GL_APIENTRY
+VertexAttribI4iContextANGLE(GLeglContext ctx, GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ EVENT("(GLuint index = %u, GLint x = %d, GLint y = %d, GLint z = %d, GLint w = %d)", index, x,
+ y, z, w);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttribI4i, context, index, x, y, z, w);
+ if (context->skipValidation() || ValidateVertexAttribI4i(context, index, x, y, z, w))
+ {
+ context->vertexAttribI4i(index, x, y, z, w);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribI4ivContextANGLE(GLeglContext ctx, GLuint index, const GLint *v)
+{
+ EVENT("(GLuint index = %u, const GLint *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttribI4iv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttribI4iv(context, index, v))
+ {
+ context->vertexAttribI4iv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY
+VertexAttribI4uiContextANGLE(GLeglContext ctx, GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ EVENT("(GLuint index = %u, GLuint x = %u, GLuint y = %u, GLuint z = %u, GLuint w = %u)", index,
+ x, y, z, w);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttribI4ui, context, index, x, y, z, w);
+ if (context->skipValidation() || ValidateVertexAttribI4ui(context, index, x, y, z, w))
+ {
+ context->vertexAttribI4ui(index, x, y, z, w);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribI4uivContextANGLE(GLeglContext ctx, GLuint index, const GLuint *v)
+{
+ EVENT("(GLuint index = %u, const GLuint *v = 0x%016" PRIxPTR ")", index, (uintptr_t)v);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexAttribI4uiv, context, index, v);
+ if (context->skipValidation() || ValidateVertexAttribI4uiv(context, index, v))
+ {
+ context->vertexAttribI4uiv(index, v);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribIFormatContextANGLE(GLeglContext ctx,
+ GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLuint relativeoffset)
+{
+ EVENT(
+ "(GLuint attribindex = %u, GLint size = %d, GLenum type = 0x%X, GLuint relativeoffset = "
+ "%u)",
+ attribindex, size, type, relativeoffset);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexAttribIFormat, context, attribindex, size, typePacked, relativeoffset);
+ if (context->skipValidation() ||
+ ValidateVertexAttribIFormat(context, attribindex, size, typePacked, relativeoffset))
+ {
+ context->vertexAttribIFormat(attribindex, size, typePacked, relativeoffset);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribIPointerContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT(
+ "(GLuint index = %u, GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void "
+ "*pointer = 0x%016" PRIxPTR ")",
+ index, size, type, stride, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexAttribIPointer, context, index, size, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateVertexAttribIPointer(context, index, size, typePacked, stride, pointer))
+ {
+ context->vertexAttribIPointer(index, size, typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY VertexAttribPointerContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT(
+ "(GLuint index = %u, GLint size = %d, GLenum type = 0x%X, GLboolean normalized = %u, "
+ "GLsizei stride = %d, const void *pointer = 0x%016" PRIxPTR ")",
+ index, size, type, normalized, stride, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexAttribPointer, context, index, size, typePacked, normalized, stride,
+ pointer);
+ if (context->skipValidation() ||
+ ValidateVertexAttribPointer(context, index, size, typePacked, normalized, stride,
+ pointer))
+ {
+ context->vertexAttribPointer(index, size, typePacked, normalized, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY VertexBindingDivisorContextANGLE(GLeglContext ctx,
+ GLuint bindingindex,
+ GLuint divisor)
+{
+ EVENT("(GLuint bindingindex = %u, GLuint divisor = %u)", bindingindex, divisor);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(VertexBindingDivisor, context, bindingindex, divisor);
+ if (context->skipValidation() ||
+ ValidateVertexBindingDivisor(context, bindingindex, divisor))
+ {
+ context->vertexBindingDivisor(bindingindex, divisor);
+ }
+ }
+}
+
+void GL_APIENTRY VertexPointerContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ VertexAttribType typePacked = FromGLenum<VertexAttribType>(type);
+ ANGLE_CAPTURE(VertexPointer, context, size, typePacked, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateVertexPointer(context, size, typePacked, stride, pointer))
+ {
+ context->vertexPointer(size, typePacked, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY
+ViewportContextANGLE(GLeglContext ctx, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ EVENT("(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d)", x, y, width,
+ height);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(Viewport, context, x, y, width, height);
+ if (context->skipValidation() || ValidateViewport(context, x, y, width, height))
+ {
+ context->viewport(x, y, width, height);
+ }
+ }
+}
+
+void GL_APIENTRY WaitSemaphoreEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *srcLayouts)
+{
+ EVENT(
+ "(GLuint semaphore = %u, GLuint numBufferBarriers = %u, const GLuint *buffers = "
+ "0x%016" PRIxPTR ", GLuint numTextureBarriers = %u, const GLuint *textures = 0x%016" PRIxPTR
+ ", const GLenum *srcLayouts = 0x%016" PRIxPTR ")",
+ semaphore, numBufferBarriers, (uintptr_t)buffers, numTextureBarriers, (uintptr_t)textures,
+ (uintptr_t)srcLayouts);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(WaitSemaphoreEXT, context, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, srcLayouts);
+ if (context->skipValidation() ||
+ ValidateWaitSemaphoreEXT(context, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, srcLayouts))
+ {
+ context->waitSemaphore(semaphore, numBufferBarriers, buffers, numTextureBarriers,
+ textures, srcLayouts);
+ }
+ }
+}
+
+void GL_APIENTRY WaitSyncContextANGLE(GLeglContext ctx,
+ GLsync sync,
+ GLbitfield flags,
+ GLuint64 timeout)
+{
+ EVENT("(GLsync sync = 0x%016" PRIxPTR ", GLbitfield flags = 0x%X, GLuint64 timeout = %llu)",
+ (uintptr_t)sync, flags, static_cast<unsigned long long>(timeout));
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(WaitSync, context, sync, flags, timeout);
+ if (context->skipValidation() || ValidateWaitSync(context, sync, flags, timeout))
+ {
+ context->waitSync(sync, flags, timeout);
+ }
+ }
+}
+
+void GL_APIENTRY WeightPointerOESContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ EVENT(
+ "(GLint size = %d, GLenum type = 0x%X, GLsizei stride = %d, const void *pointer = "
+ "0x%016" PRIxPTR ")",
+ size, type, stride, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(WeightPointerOES, context, size, type, stride, pointer);
+ if (context->skipValidation() ||
+ ValidateWeightPointerOES(context, size, type, stride, pointer))
+ {
+ context->weightPointer(size, type, stride, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY BindUniformLocationCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ const GLchar *name)
+{
+ EVENT("(GLuint program = %u, GLint location = %d, const GLchar* name = 0x%016" PRIxPTR ")",
+ program, location, (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindUniformLocationCHROMIUM, context, program, location, name);
+ if (context->skipValidation() ||
+ ValidateBindUniformLocationCHROMIUM(context, program, location, name))
+ {
+ context->bindUniformLocation(program, location, name);
+ }
+ }
+}
+
+void GL_APIENTRY CoverageModulationCHROMIUMContextANGLE(GLeglContext ctx, GLenum components)
+{
+ EVENT("(GLenum components = 0x%X)", components);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CoverageModulationCHROMIUM, context, components);
+ if (context->skipValidation() || ValidateCoverageModulationCHROMIUM(context, components))
+ {
+ context->coverageModulation(components);
+ }
+ }
+}
+
+void GL_APIENTRY MatrixLoadfCHROMIUMContextANGLE(GLeglContext ctx,
+ GLenum matrixMode,
+ const GLfloat *matrix)
+{
+ EVENT("(GLenum matrixMode = 0x%X, const GLfloat * matrix = 0x%016" PRIxPTR ")", matrixMode,
+ (uintptr_t)matrix);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MatrixLoadfCHROMIUM, context, matrixMode, matrix);
+ if (context->skipValidation() || ValidateMatrixLoadfCHROMIUM(context, matrixMode, matrix))
+ {
+ context->matrixLoadf(matrixMode, matrix);
+ }
+ }
+}
+
+void GL_APIENTRY MatrixLoadIdentityCHROMIUMContextANGLE(GLeglContext ctx, GLenum matrixMode)
+{
+ EVENT("(GLenum matrixMode = 0x%X)", matrixMode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(MatrixLoadIdentityCHROMIUM, context, matrixMode);
+ if (context->skipValidation() || ValidateMatrixLoadIdentityCHROMIUM(context, matrixMode))
+ {
+ context->matrixLoadIdentity(matrixMode);
+ }
+ }
+}
+
+GLuint GL_APIENTRY GenPathsCHROMIUMContextANGLE(GLeglContext ctx, GLsizei range)
+{
+ EVENT("(GLsizei range = %d)", range);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GenPathsCHROMIUM, context, range);
+ if (context->skipValidation() || ValidateGenPathsCHROMIUM(context, range))
+ {
+ return context->genPaths(range);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::GenPathsCHROMIUM, GLuint>();
+}
+
+void GL_APIENTRY DeletePathsCHROMIUMContextANGLE(GLeglContext ctx, GLuint first, GLsizei range)
+{
+ EVENT("(GLuint first = %u, GLsizei range = %d)", first, range);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(DeletePathsCHROMIUM, context, first, range);
+ if (context->skipValidation() || ValidateDeletePathsCHROMIUM(context, first, range))
+ {
+ context->deletePaths(first, range);
+ }
+ }
+}
+
+GLboolean GL_APIENTRY IsPathCHROMIUMContextANGLE(GLeglContext ctx, GLuint path)
+{
+ EVENT("(GLuint path = %u)", path);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(IsPathCHROMIUM, context, path);
+ if (context->skipValidation() || ValidateIsPathCHROMIUM(context, path))
+ {
+ return context->isPath(path);
+ }
+ }
+
+ return GetDefaultReturnValue<EntryPoint::IsPathCHROMIUM, GLboolean>();
+}
+
+void GL_APIENTRY PathCommandsCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLsizei numCommands,
+ const GLubyte *commands,
+ GLsizei numCoords,
+ GLenum coordType,
+ const void *coords)
+{
+ EVENT("(GLuint path = %u, GLsizei numCommands = %d, const GLubyte * commands = 0x%016" PRIxPTR
+ ", GLsizei numCoords = %d, GLenum coordType = 0x%X, const void* coords = 0x%016" PRIxPTR
+ ")",
+ path, numCommands, (uintptr_t)commands, numCoords, coordType, (uintptr_t)coords);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PathCommandsCHROMIUM, context, path, numCommands, commands, numCoords,
+ coordType, coords);
+ if (context->skipValidation() ||
+ ValidatePathCommandsCHROMIUM(context, path, numCommands, commands, numCoords, coordType,
+ coords))
+ {
+ context->pathCommands(path, numCommands, commands, numCoords, coordType, coords);
+ }
+ }
+}
+
+void GL_APIENTRY PathParameterfCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLfloat value)
+{
+ EVENT("(GLuint path = %u, GLenum pname = 0x%X, GLfloat value = %f)", path, pname, value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PathParameterfCHROMIUM, context, path, pname, value);
+ if (context->skipValidation() ||
+ ValidatePathParameterfCHROMIUM(context, path, pname, value))
+ {
+ context->pathParameterf(path, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY PathParameteriCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLint value)
+{
+ EVENT("(GLuint path = %u, GLenum pname = 0x%X, GLint value = %d)", path, pname, value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PathParameteriCHROMIUM, context, path, pname, value);
+ if (context->skipValidation() ||
+ ValidatePathParameteriCHROMIUM(context, path, pname, value))
+ {
+ context->pathParameteri(path, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY GetPathParameterfvCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLfloat *value)
+{
+ EVENT("(GLuint path = %u, GLenum pname = 0x%X, GLfloat * value = 0x%016" PRIxPTR ")", path,
+ pname, (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetPathParameterfvCHROMIUM, context, path, pname, value);
+ if (context->skipValidation() ||
+ ValidateGetPathParameterfvCHROMIUM(context, path, pname, value))
+ {
+ context->getPathParameterfv(path, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY GetPathParameterivCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLint *value)
+{
+ EVENT("(GLuint path = %u, GLenum pname = 0x%X, GLint * value = 0x%016" PRIxPTR ")", path, pname,
+ (uintptr_t)value);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetPathParameterivCHROMIUM, context, path, pname, value);
+ if (context->skipValidation() ||
+ ValidateGetPathParameterivCHROMIUM(context, path, pname, value))
+ {
+ context->getPathParameteriv(path, pname, value);
+ }
+ }
+}
+
+void GL_APIENTRY PathStencilFuncCHROMIUMContextANGLE(GLeglContext ctx,
+ GLenum func,
+ GLint ref,
+ GLuint mask)
+{
+ EVENT("(GLenum func = 0x%X, GLint ref = %d, GLuint mask = %u)", func, ref, mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(PathStencilFuncCHROMIUM, context, func, ref, mask);
+ if (context->skipValidation() || ValidatePathStencilFuncCHROMIUM(context, func, ref, mask))
+ {
+ context->pathStencilFunc(func, ref, mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilFillPathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum fillMode,
+ GLuint mask)
+{
+ EVENT("(GLuint path = %u, GLenum fillMode = 0x%X, GLuint mask = %u)", path, fillMode, mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilFillPathCHROMIUM, context, path, fillMode, mask);
+ if (context->skipValidation() ||
+ ValidateStencilFillPathCHROMIUM(context, path, fillMode, mask))
+ {
+ context->stencilFillPath(path, fillMode, mask);
+ }
+ }
+}
+
+void GL_APIENTRY StencilStrokePathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLint reference,
+ GLuint mask)
+{
+ EVENT("(GLuint path = %u, GLint reference = %d, GLuint mask = %u)", path, reference, mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilStrokePathCHROMIUM, context, path, reference, mask);
+ if (context->skipValidation() ||
+ ValidateStencilStrokePathCHROMIUM(context, path, reference, mask))
+ {
+ context->stencilStrokePath(path, reference, mask);
+ }
+ }
+}
+
+void GL_APIENTRY CoverFillPathCHROMIUMContextANGLE(GLeglContext ctx, GLuint path, GLenum coverMode)
+{
+ EVENT("(GLuint path = %u, GLenum coverMode = 0x%X)", path, coverMode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CoverFillPathCHROMIUM, context, path, coverMode);
+ if (context->skipValidation() || ValidateCoverFillPathCHROMIUM(context, path, coverMode))
+ {
+ context->coverFillPath(path, coverMode);
+ }
+ }
+}
+
+void GL_APIENTRY CoverStrokePathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum coverMode)
+{
+ EVENT("(GLuint path = %u, GLenum coverMode = 0x%X)", path, coverMode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CoverStrokePathCHROMIUM, context, path, coverMode);
+ if (context->skipValidation() || ValidateCoverStrokePathCHROMIUM(context, path, coverMode))
+ {
+ context->coverStrokePath(path, coverMode);
+ }
+ }
+}
+
+void GL_APIENTRY StencilThenCoverFillPathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode)
+{
+ EVENT("(GLuint path = %u, GLenum fillMode = 0x%X, GLuint mask = %u, GLenum coverMode = 0x%X)",
+ path, fillMode, mask, coverMode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilThenCoverFillPathCHROMIUM, context, path, fillMode, mask, coverMode);
+ if (context->skipValidation() ||
+ ValidateStencilThenCoverFillPathCHROMIUM(context, path, fillMode, mask, coverMode))
+ {
+ context->stencilThenCoverFillPath(path, fillMode, mask, coverMode);
+ }
+ }
+}
+
+void GL_APIENTRY StencilThenCoverStrokePathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode)
+{
+ EVENT("(GLuint path = %u, GLint reference = %d, GLuint mask = %u, GLenum coverMode = 0x%X)",
+ path, reference, mask, coverMode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilThenCoverStrokePathCHROMIUM, context, path, reference, mask,
+ coverMode);
+ if (context->skipValidation() ||
+ ValidateStencilThenCoverStrokePathCHROMIUM(context, path, reference, mask, coverMode))
+ {
+ context->stencilThenCoverStrokePath(path, reference, mask, coverMode);
+ }
+ }
+}
+
+void GL_APIENTRY CoverFillPathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPath = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLenum coverMode = 0x%X, GLenum transformType = 0x%X, const "
+ "GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPath, pathNameType, (uintptr_t)paths, pathBase, coverMode, transformType,
+ (uintptr_t)transformValues);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CoverFillPathInstancedCHROMIUM, context, numPath, pathNameType, paths,
+ pathBase, coverMode, transformType, transformValues);
+ if (context->skipValidation() ||
+ ValidateCoverFillPathInstancedCHROMIUM(context, numPath, pathNameType, paths, pathBase,
+ coverMode, transformType, transformValues))
+ {
+ context->coverFillPathInstanced(numPath, pathNameType, paths, pathBase, coverMode,
+ transformType, transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY CoverStrokePathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPath = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLenum coverMode = 0x%X, GLenum transformType = 0x%X, const "
+ "GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPath, pathNameType, (uintptr_t)paths, pathBase, coverMode, transformType,
+ (uintptr_t)transformValues);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CoverStrokePathInstancedCHROMIUM, context, numPath, pathNameType, paths,
+ pathBase, coverMode, transformType, transformValues);
+ if (context->skipValidation() || ValidateCoverStrokePathInstancedCHROMIUM(
+ context, numPath, pathNameType, paths, pathBase,
+ coverMode, transformType, transformValues))
+ {
+ context->coverStrokePathInstanced(numPath, pathNameType, paths, pathBase, coverMode,
+ transformType, transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY StencilStrokePathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPath = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLint reference = %d, GLuint mask = %u, GLenum transformType = "
+ "0x%X, const GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPath, pathNameType, (uintptr_t)paths, pathBase, reference, mask, transformType,
+ (uintptr_t)transformValues);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilStrokePathInstancedCHROMIUM, context, numPath, pathNameType, paths,
+ pathBase, reference, mask, transformType, transformValues);
+ if (context->skipValidation() || ValidateStencilStrokePathInstancedCHROMIUM(
+ context, numPath, pathNameType, paths, pathBase,
+ reference, mask, transformType, transformValues))
+ {
+ context->stencilStrokePathInstanced(numPath, pathNameType, paths, pathBase, reference,
+ mask, transformType, transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY StencilFillPathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPaths = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLenum fillMode = 0x%X, GLuint mask = %u, GLenum transformType "
+ "= 0x%X, const GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPaths, pathNameType, (uintptr_t)paths, pathBase, fillMode, mask, transformType,
+ (uintptr_t)transformValues);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilFillPathInstancedCHROMIUM, context, numPaths, pathNameType, paths,
+ pathBase, fillMode, mask, transformType, transformValues);
+ if (context->skipValidation() || ValidateStencilFillPathInstancedCHROMIUM(
+ context, numPaths, pathNameType, paths, pathBase,
+ fillMode, mask, transformType, transformValues))
+ {
+ context->stencilFillPathInstanced(numPaths, pathNameType, paths, pathBase, fillMode,
+ mask, transformType, transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY
+StencilThenCoverFillPathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPaths = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLenum fillMode = 0x%X, GLuint mask = %u, GLenum coverMode = "
+ "0x%X, GLenum transformType = 0x%X, const GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPaths, pathNameType, (uintptr_t)paths, pathBase, fillMode, mask, coverMode,
+ transformType, (uintptr_t)transformValues);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilThenCoverFillPathInstancedCHROMIUM, context, numPaths, pathNameType,
+ paths, pathBase, fillMode, mask, coverMode, transformType, transformValues);
+ if (context->skipValidation() ||
+ ValidateStencilThenCoverFillPathInstancedCHROMIUM(
+ context, numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode,
+ transformType, transformValues))
+ {
+ context->stencilThenCoverFillPathInstanced(numPaths, pathNameType, paths, pathBase,
+ fillMode, mask, coverMode, transformType,
+ transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY
+StencilThenCoverStrokePathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ EVENT("(GLsizei numPaths = %d, GLenum pathNameType = 0x%X, const void * paths = 0x%016" PRIxPTR
+ ", GLuint pathBase = %u, GLint reference = %d, GLuint mask = %u, GLenum coverMode = "
+ "0x%X, GLenum transformType = 0x%X, const GLfloat * transformValues = 0x%016" PRIxPTR ")",
+ numPaths, pathNameType, (uintptr_t)paths, pathBase, reference, mask, coverMode,
+ transformType, (uintptr_t)transformValues);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(StencilThenCoverStrokePathInstancedCHROMIUM, context, numPaths, pathNameType,
+ paths, pathBase, reference, mask, coverMode, transformType, transformValues);
+ if (context->skipValidation() ||
+ ValidateStencilThenCoverStrokePathInstancedCHROMIUM(
+ context, numPaths, pathNameType, paths, pathBase, reference, mask, coverMode,
+ transformType, transformValues))
+ {
+ context->stencilThenCoverStrokePathInstanced(numPaths, pathNameType, paths, pathBase,
+ reference, mask, coverMode, transformType,
+ transformValues);
+ }
+ }
+}
+
+void GL_APIENTRY BindFragmentInputLocationCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint programs,
+ GLint location,
+ const GLchar *name)
+{
+ EVENT("(GLuint programs = %u, GLint location = %d, const GLchar * name = 0x%016" PRIxPTR ")",
+ programs, location, (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(BindFragmentInputLocationCHROMIUM, context, programs, location, name);
+ if (context->skipValidation() ||
+ ValidateBindFragmentInputLocationCHROMIUM(context, programs, location, name))
+ {
+ context->bindFragmentInputLocation(programs, location, name);
+ }
+ }
+}
+
+void GL_APIENTRY ProgramPathFragmentInputGenCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLenum genMode,
+ GLint components,
+ const GLfloat *coeffs)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLenum genMode = 0x%X, GLint components = %d, "
+ "const GLfloat * coeffs = 0x%016" PRIxPTR ")",
+ program, location, genMode, components, (uintptr_t)coeffs);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ProgramPathFragmentInputGenCHROMIUM, context, program, location, genMode,
+ components, coeffs);
+ if (context->skipValidation() ||
+ ValidateProgramPathFragmentInputGenCHROMIUM(context, program, location, genMode,
+ components, coeffs))
+ {
+ context->programPathFragmentInputGen(program, location, genMode, components, coeffs);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTextureCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ EVENT(
+ "(GLuint sourceId = %u, GLint sourceLevel = %d, GLenum destTarget = 0x%X, GLuint destId = "
+ "%u, GLint destLevel = %d, GLint internalFormat = %d, GLenum destType = 0x%X, GLboolean "
+ "unpackFlipY = %u, GLboolean unpackPremultiplyAlpha = %u, GLboolean unpackUnmultiplyAlpha "
+ "= %u)",
+ sourceId, sourceLevel, destTarget, destId, destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget destTargetPacked = FromGLenum<TextureTarget>(destTarget);
+ ANGLE_CAPTURE(CopyTextureCHROMIUM, context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+ if (context->skipValidation() ||
+ ValidateCopyTextureCHROMIUM(context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha))
+ {
+ context->copyTexture(sourceId, sourceLevel, destTargetPacked, destId, destLevel,
+ internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY CopySubTextureCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLint width,
+ GLint height,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ EVENT(
+ "(GLuint sourceId = %u, GLint sourceLevel = %d, GLenum destTarget = 0x%X, GLuint destId = "
+ "%u, GLint destLevel = %d, GLint xoffset = %d, GLint yoffset = %d, GLint x = %d, GLint y = "
+ "%d, GLint width = %d, GLint height = %d, GLboolean unpackFlipY = %u, GLboolean "
+ "unpackPremultiplyAlpha = %u, GLboolean unpackUnmultiplyAlpha = %u)",
+ sourceId, sourceLevel, destTarget, destId, destLevel, xoffset, yoffset, x, y, width, height,
+ unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget destTargetPacked = FromGLenum<TextureTarget>(destTarget);
+ ANGLE_CAPTURE(CopySubTextureCHROMIUM, context, sourceId, sourceLevel, destTargetPacked,
+ destId, destLevel, xoffset, yoffset, x, y, width, height, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+ if (context->skipValidation() ||
+ ValidateCopySubTextureCHROMIUM(context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, xoffset, yoffset, x, y, width, height,
+ unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha))
+ {
+ context->copySubTexture(sourceId, sourceLevel, destTargetPacked, destId, destLevel,
+ xoffset, yoffset, x, y, width, height, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedCopyTextureCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLuint destId)
+{
+ EVENT("(GLuint sourceId = %u, GLuint destId = %u)", sourceId, destId);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(CompressedCopyTextureCHROMIUM, context, sourceId, destId);
+ if (context->skipValidation() ||
+ ValidateCompressedCopyTextureCHROMIUM(context, sourceId, destId))
+ {
+ context->compressedCopyTexture(sourceId, destId);
+ }
+ }
+}
+
+void GL_APIENTRY RequestExtensionANGLEContextANGLE(GLeglContext ctx, const GLchar *name)
+{
+ EVENT("(const GLchar * name = 0x%016" PRIxPTR ")", (uintptr_t)name);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(RequestExtensionANGLE, context, name);
+ if (context->skipValidation() || ValidateRequestExtensionANGLE(context, name))
+ {
+ context->requestExtension(name);
+ }
+ }
+}
+
+void GL_APIENTRY GetBooleanvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *params)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLboolean * params = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetBooleanvRobustANGLE, context, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetBooleanvRobustANGLE(context, pname, bufSize, length, params))
+ {
+ context->getBooleanvRobust(pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferParameterivRobustANGLE, context, targetPacked, pname, bufSize,
+ length, params);
+ if (context->skipValidation() || ValidateGetBufferParameterivRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getBufferParameterivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFloatvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLfloat * params = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFloatvRobustANGLE, context, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetFloatvRobustANGLE(context, pname, bufSize, length, params))
+ {
+ context->getFloatvRobust(pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFramebufferAttachmentParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum attachment = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = "
+ "%d, GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, attachment, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFramebufferAttachmentParameterivRobustANGLE, context, target, attachment,
+ pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetFramebufferAttachmentParameterivRobustANGLE(context, target, attachment,
+ pname, bufSize, length, params))
+ {
+ context->getFramebufferAttachmentParameterivRobust(target, attachment, pname, bufSize,
+ length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetIntegervRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLint * data = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetIntegervRobustANGLE, context, pname, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetIntegervRobustANGLE(context, pname, bufSize, length, data))
+ {
+ context->getIntegervRobust(pname, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramivRobustANGLE, context, program, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramivRobustANGLE(context, program, pname, bufSize, length, params))
+ {
+ context->getProgramivRobust(program, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetRenderbufferParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetRenderbufferParameterivRobustANGLE, context, target, pname, bufSize,
+ length, params);
+ if (context->skipValidation() || ValidateGetRenderbufferParameterivRobustANGLE(
+ context, target, pname, bufSize, length, params))
+ {
+ context->getRenderbufferParameterivRobust(target, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetShaderivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint shader = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ shader, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetShaderivRobustANGLE, context, shader, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetShaderivRobustANGLE(context, shader, pname, bufSize, length, params))
+ {
+ context->getShaderivRobust(shader, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterfvRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetTexParameterfvRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getTexParameterfvRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterivRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetTexParameterivRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getTexParameterivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUniformfvRobustANGLE, context, program, location, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetUniformfvRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getUniformfvRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUniformivRobustANGLE, context, program, location, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetUniformivRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getUniformivRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribfvRobustANGLE, context, index, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribfvRobustANGLE(context, index, pname, bufSize, length, params))
+ {
+ context->getVertexAttribfvRobust(index, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribivRobustANGLE, context, index, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribivRobustANGLE(context, index, pname, bufSize, length, params))
+ {
+ context->getVertexAttribivRobust(index, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribPointervRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **pointer)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", void ** pointer = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)pointer);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribPointervRobustANGLE, context, index, pname, bufSize, length,
+ pointer);
+ if (context->skipValidation() || ValidateGetVertexAttribPointervRobustANGLE(
+ context, index, pname, bufSize, length, pointer))
+ {
+ context->getVertexAttribPointervRobust(index, pname, bufSize, length, pointer);
+ }
+ }
+}
+
+void GL_APIENTRY ReadPixelsRobustANGLEContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *pixels)
+{
+ EVENT(
+ "(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLenum format = "
+ "0x%X, GLenum type = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLsizei * columns = 0x%016" PRIxPTR ", GLsizei * rows = 0x%016" PRIxPTR
+ ", void * pixels = 0x%016" PRIxPTR ")",
+ x, y, width, height, format, type, bufSize, (uintptr_t)length, (uintptr_t)columns,
+ (uintptr_t)rows, (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ReadPixelsRobustANGLE, context, x, y, width, height, format, type, bufSize,
+ length, columns, rows, pixels);
+ if (context->skipValidation() ||
+ ValidateReadPixelsRobustANGLE(context, x, y, width, height, format, type, bufSize,
+ length, columns, rows, pixels))
+ {
+ context->readPixelsRobust(x, y, width, height, format, type, bufSize, length, columns,
+ rows, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLint border = %d, GLenum format = 0x%X, GLenum type = 0x%X, GLsizei "
+ "bufSize = %d, const void * pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, border, format, type, bufSize,
+ (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage2DRobustANGLE, context, targetPacked, level, internalformat, width,
+ height, border, format, type, bufSize, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage2DRobustANGLE(context, targetPacked, level, internalformat, width,
+ height, border, format, type, bufSize, pixels))
+ {
+ context->texImage2DRobust(targetPacked, level, internalformat, width, height, border,
+ format, type, bufSize, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLfloat * params "
+ "= 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterfvRobustANGLE, context, targetPacked, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterfvRobustANGLE(context, targetPacked, pname, bufSize, params))
+ {
+ context->texParameterfvRobust(targetPacked, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLint * params = "
+ "0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterivRobustANGLE, context, targetPacked, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterivRobustANGLE(context, targetPacked, pname, bufSize, params))
+ {
+ context->texParameterivRobust(targetPacked, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLsizei "
+ "width = %d, GLsizei height = %d, GLenum format = 0x%X, GLenum type = 0x%X, GLsizei "
+ "bufSize = %d, const void * pixels = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, width, height, format, type, bufSize, (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage2DRobustANGLE, context, targetPacked, level, xoffset, yoffset,
+ width, height, format, type, bufSize, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage2DRobustANGLE(context, targetPacked, level, xoffset, yoffset, width,
+ height, format, type, bufSize, pixels))
+ {
+ context->texSubImage2DRobust(targetPacked, level, xoffset, yoffset, width, height,
+ format, type, bufSize, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLenum format = 0x%X, GLenum "
+ "type = 0x%X, GLsizei bufSize = %d, const void * pixels = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, format, type, bufSize,
+ (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage3DRobustANGLE, context, targetPacked, level, internalformat, width,
+ height, depth, border, format, type, bufSize, pixels);
+ if (context->skipValidation() ||
+ ValidateTexImage3DRobustANGLE(context, targetPacked, level, internalformat, width,
+ height, depth, border, format, type, bufSize, pixels))
+ {
+ context->texImage3DRobust(targetPacked, level, internalformat, width, height, depth,
+ border, format, type, bufSize, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY TexSubImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLenum type = 0x%X, GLsizei bufSize = %d, const void * pixels = 0x%016" PRIxPTR
+ ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize,
+ (uintptr_t)pixels);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexSubImage3DRobustANGLE, context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, type, bufSize, pixels);
+ if (context->skipValidation() ||
+ ValidateTexSubImage3DRobustANGLE(context, targetPacked, level, xoffset, yoffset,
+ zoffset, width, height, depth, format, type, bufSize,
+ pixels))
+ {
+ context->texSubImage3DRobust(targetPacked, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, bufSize, pixels);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLint border = %d, GLsizei imageSize = %d, GLsizei dataSize = "
+ "%d, const GLvoid * data = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, border, imageSize, dataSize, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage2DRobustANGLE, context, targetPacked, level, internalformat,
+ width, height, border, imageSize, dataSize, data);
+ if (context->skipValidation() || ValidateCompressedTexImage2DRobustANGLE(
+ context, targetPacked, level, internalformat, width,
+ height, border, imageSize, dataSize, data))
+ {
+ context->compressedTexImage2DRobust(targetPacked, level, internalformat, width, height,
+ border, imageSize, dataSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLsizei xoffset,
+ GLsizei yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLsizei xoffset = %d, GLsizei yoffset = %d, "
+ "GLsizei width = %d, GLsizei height = %d, GLenum format = 0x%X, GLsizei imageSize = %d, "
+ "GLsizei dataSize = %d, const GLvoid * data = 0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, width, height, format, imageSize, dataSize,
+ (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage2DRobustANGLE, context, targetPacked, level, xoffset,
+ yoffset, width, height, format, imageSize, dataSize, data);
+ if (context->skipValidation() || ValidateCompressedTexSubImage2DRobustANGLE(
+ context, targetPacked, level, xoffset, yoffset, width,
+ height, format, imageSize, dataSize, data))
+ {
+ context->compressedTexSubImage2DRobust(targetPacked, level, xoffset, yoffset, width,
+ height, format, imageSize, dataSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum internalformat = 0x%X, GLsizei width = "
+ "%d, GLsizei height = %d, GLsizei depth = %d, GLint border = %d, GLsizei imageSize = %d, "
+ "GLsizei dataSize = %d, const GLvoid * data = 0x%016" PRIxPTR ")",
+ target, level, internalformat, width, height, depth, border, imageSize, dataSize,
+ (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexImage3DRobustANGLE, context, targetPacked, level, internalformat,
+ width, height, depth, border, imageSize, dataSize, data);
+ if (context->skipValidation() || ValidateCompressedTexImage3DRobustANGLE(
+ context, targetPacked, level, internalformat, width,
+ height, depth, border, imageSize, dataSize, data))
+ {
+ context->compressedTexImage3DRobust(targetPacked, level, internalformat, width, height,
+ depth, border, imageSize, dataSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY CompressedTexSubImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint xoffset = %d, GLint yoffset = %d, GLint "
+ "zoffset = %d, GLsizei width = %d, GLsizei height = %d, GLsizei depth = %d, GLenum format "
+ "= 0x%X, GLsizei imageSize = %d, GLsizei dataSize = %d, const GLvoid * data = "
+ "0x%016" PRIxPTR ")",
+ target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, dataSize,
+ (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(CompressedTexSubImage3DRobustANGLE, context, targetPacked, level, xoffset,
+ yoffset, zoffset, width, height, depth, format, imageSize, dataSize, data);
+ if (context->skipValidation() ||
+ ValidateCompressedTexSubImage3DRobustANGLE(context, targetPacked, level, xoffset,
+ yoffset, zoffset, width, height, depth,
+ format, imageSize, dataSize, data))
+ {
+ context->compressedTexSubImage3DRobust(targetPacked, level, xoffset, yoffset, zoffset,
+ width, height, depth, format, imageSize,
+ dataSize, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ QueryType targetPacked = FromGLenum<QueryType>(target);
+ ANGLE_CAPTURE(GetQueryivRobustANGLE, context, targetPacked, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryivRobustANGLE(context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getQueryivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint id = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ id, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetQueryObjectuivRobustANGLE, context, id, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryObjectuivRobustANGLE(context, id, pname, bufSize, length, params))
+ {
+ context->getQueryObjectuivRobust(id, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferPointervRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", void ** params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferPointervRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetBufferPointervRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getBufferPointervRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetIntegeri_vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLuint index = %u, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * data = 0x%016" PRIxPTR ")",
+ target, index, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetIntegeri_vRobustANGLE, context, target, index, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetIntegeri_vRobustANGLE(context, target, index, bufSize, length, data))
+ {
+ context->getIntegeri_vRobust(target, index, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetInternalformativRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum internalformat = 0x%X, GLenum pname = 0x%X, GLsizei bufSize "
+ "= %d, GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, internalformat, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetInternalformativRobustANGLE, context, target, internalformat, pname,
+ bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetInternalformativRobustANGLE(context, target, internalformat, pname, bufSize,
+ length, params))
+ {
+ context->getInternalformativRobust(target, internalformat, pname, bufSize, length,
+ params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribIivRobustANGLE, context, index, pname, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribIivRobustANGLE(context, index, pname, bufSize, length, params))
+ {
+ context->getVertexAttribIivRobust(index, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetVertexAttribIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint index = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ index, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetVertexAttribIuivRobustANGLE, context, index, pname, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetVertexAttribIuivRobustANGLE(context, index, pname, bufSize, length, params))
+ {
+ context->getVertexAttribIuivRobust(index, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetUniformuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetUniformuivRobustANGLE, context, program, location, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetUniformuivRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getUniformuivRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetActiveUniformBlockivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLuint uniformBlockIndex = %u, GLenum pname = 0x%X, GLsizei bufSize "
+ "= %d, GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, uniformBlockIndex, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetActiveUniformBlockivRobustANGLE, context, program, uniformBlockIndex,
+ pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetActiveUniformBlockivRobustANGLE(context, program, uniformBlockIndex, pname,
+ bufSize, length, params))
+ {
+ context->getActiveUniformBlockivRobust(program, uniformBlockIndex, pname, bufSize,
+ length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetInteger64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLint64 * data = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetInteger64vRobustANGLE, context, pname, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetInteger64vRobustANGLE(context, pname, bufSize, length, data))
+ {
+ context->getInteger64vRobust(pname, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetInteger64i_vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLuint index = %u, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint64 * data = 0x%016" PRIxPTR ")",
+ target, index, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetInteger64i_vRobustANGLE, context, target, index, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetInteger64i_vRobustANGLE(context, target, index, bufSize, length, data))
+ {
+ context->getInteger64i_vRobust(target, index, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetBufferParameteri64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint64 * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ BufferBinding targetPacked = FromGLenum<BufferBinding>(target);
+ ANGLE_CAPTURE(GetBufferParameteri64vRobustANGLE, context, targetPacked, pname, bufSize,
+ length, params);
+ if (context->skipValidation() || ValidateGetBufferParameteri64vRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getBufferParameteri64vRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLuint pname,
+ GLsizei bufSize,
+ const GLint *param)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLuint pname = %u, GLsizei bufSize = %d, const GLint * param = "
+ "0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameterivRobustANGLE, context, sampler, pname, bufSize, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterivRobustANGLE(context, sampler, pname, bufSize, param))
+ {
+ context->samplerParameterivRobust(sampler, pname, bufSize, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *param)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLfloat * param = "
+ "0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameterfvRobustANGLE, context, sampler, pname, bufSize, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterfvRobustANGLE(context, sampler, pname, bufSize, param))
+ {
+ context->samplerParameterfvRobust(sampler, pname, bufSize, param);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSamplerParameterivRobustANGLE, context, sampler, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetSamplerParameterivRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getSamplerParameterivRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSamplerParameterfvRobustANGLE, context, sampler, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetSamplerParameterfvRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getSamplerParameterfvRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetFramebufferParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetFramebufferParameterivRobustANGLE, context, sampler, pname, bufSize,
+ length, params);
+ if (context->skipValidation() || ValidateGetFramebufferParameterivRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getFramebufferParameterivRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetProgramInterfaceivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLenum programInterface = 0x%X, GLenum pname = 0x%X, GLsizei "
+ "bufSize = %d, GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, programInterface, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetProgramInterfaceivRobustANGLE, context, program, programInterface, pname,
+ bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetProgramInterfaceivRobustANGLE(context, program, programInterface, pname,
+ bufSize, length, params))
+ {
+ context->getProgramInterfaceivRobust(program, programInterface, pname, bufSize, length,
+ params);
+ }
+ }
+}
+
+void GL_APIENTRY GetBooleani_vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *data)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLuint index = %u, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLboolean * data = 0x%016" PRIxPTR ")",
+ target, index, bufSize, (uintptr_t)length, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetBooleani_vRobustANGLE, context, target, index, bufSize, length, data);
+ if (context->skipValidation() ||
+ ValidateGetBooleani_vRobustANGLE(context, target, index, bufSize, length, data))
+ {
+ context->getBooleani_vRobust(target, index, bufSize, length, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetMultisamplefvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *val)
+{
+ EVENT(
+ "(GLenum pname = 0x%X, GLuint index = %u, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * val = 0x%016" PRIxPTR ")",
+ pname, index, bufSize, (uintptr_t)length, (uintptr_t)val);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetMultisamplefvRobustANGLE, context, pname, index, bufSize, length, val);
+ if (context->skipValidation() ||
+ ValidateGetMultisamplefvRobustANGLE(context, pname, index, bufSize, length, val))
+ {
+ context->getMultisamplefvRobust(pname, index, bufSize, length, val);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLsizei bufSize = %d, "
+ "GLsizei * length = 0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, level, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterivRobustANGLE, context, targetPacked, level, pname,
+ bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterivRobustANGLE(context, targetPacked, level, pname, bufSize,
+ length, params))
+ {
+ context->getTexLevelParameterivRobust(targetPacked, level, pname, bufSize, length,
+ params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLsizei bufSize = %d, "
+ "GLsizei * length = 0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ target, level, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterfvRobustANGLE, context, targetPacked, level, pname,
+ bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterfvRobustANGLE(context, targetPacked, level, pname, bufSize,
+ length, params))
+ {
+ context->getTexLevelParameterfvRobust(targetPacked, level, pname, bufSize, length,
+ params);
+ }
+ }
+}
+
+void GL_APIENTRY GetPointervRobustANGLERobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params)
+{
+ EVENT("(GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", void ** params = 0x%016" PRIxPTR ")",
+ pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetPointervRobustANGLERobustANGLE, context, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetPointervRobustANGLERobustANGLE(context, pname, bufSize, length, params))
+ {
+ context->getPointervRobustANGLERobust(pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY ReadnPixelsRobustANGLEContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *data)
+{
+ EVENT(
+ "(GLint x = %d, GLint y = %d, GLsizei width = %d, GLsizei height = %d, GLenum format = "
+ "0x%X, GLenum type = 0x%X, GLsizei bufSize = %d, GLsizei * length = 0x%016" PRIxPTR
+ ", GLsizei * columns = 0x%016" PRIxPTR ", GLsizei * rows = 0x%016" PRIxPTR
+ ", void * data = 0x%016" PRIxPTR ")",
+ x, y, width, height, format, type, bufSize, (uintptr_t)length, (uintptr_t)columns,
+ (uintptr_t)rows, (uintptr_t)data);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(ReadnPixelsRobustANGLE, context, x, y, width, height, format, type, bufSize,
+ length, columns, rows, data);
+ if (context->skipValidation() ||
+ ValidateReadnPixelsRobustANGLE(context, x, y, width, height, format, type, bufSize,
+ length, columns, rows, data))
+ {
+ context->readnPixelsRobust(x, y, width, height, format, type, bufSize, length, columns,
+ rows, data);
+ }
+ }
+}
+
+void GL_APIENTRY GetnUniformfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLfloat * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetnUniformfvRobustANGLE, context, program, location, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformfvRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getnUniformfvRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetnUniformivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetnUniformivRobustANGLE, context, program, location, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformivRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getnUniformivRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetnUniformuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint program = %u, GLint location = %d, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ program, location, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetnUniformuivRobustANGLE, context, program, location, bufSize, length,
+ params);
+ if (context->skipValidation() ||
+ ValidateGetnUniformuivRobustANGLE(context, program, location, bufSize, length, params))
+ {
+ context->getnUniformuivRobust(program, location, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLint * params = "
+ "0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterIivRobustANGLE, context, targetPacked, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterIivRobustANGLE(context, targetPacked, pname, bufSize, params))
+ {
+ context->texParameterIivRobust(targetPacked, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY TexParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLuint * params = "
+ "0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexParameterIuivRobustANGLE, context, targetPacked, pname, bufSize, params);
+ if (context->skipValidation() ||
+ ValidateTexParameterIuivRobustANGLE(context, targetPacked, pname, bufSize, params))
+ {
+ context->texParameterIuivRobust(targetPacked, pname, bufSize, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterIivRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetTexParameterIivRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getTexParameterIivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ target, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(GetTexParameterIuivRobustANGLE, context, targetPacked, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetTexParameterIuivRobustANGLE(
+ context, targetPacked, pname, bufSize, length, params))
+ {
+ context->getTexParameterIuivRobust(targetPacked, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *param)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLint * param = "
+ "0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameterIivRobustANGLE, context, sampler, pname, bufSize, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterIivRobustANGLE(context, sampler, pname, bufSize, param))
+ {
+ context->samplerParameterIivRobust(sampler, pname, bufSize, param);
+ }
+ }
+}
+
+void GL_APIENTRY SamplerParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *param)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, const GLuint * param = "
+ "0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)param);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SamplerParameterIuivRobustANGLE, context, sampler, pname, bufSize, param);
+ if (context->skipValidation() ||
+ ValidateSamplerParameterIuivRobustANGLE(context, sampler, pname, bufSize, param))
+ {
+ context->samplerParameterIuivRobust(sampler, pname, bufSize, param);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSamplerParameterIivRobustANGLE, context, sampler, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetSamplerParameterIivRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getSamplerParameterIivRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetSamplerParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ EVENT(
+ "(GLuint sampler = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint * params = 0x%016" PRIxPTR ")",
+ sampler, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetSamplerParameterIuivRobustANGLE, context, sampler, pname, bufSize, length,
+ params);
+ if (context->skipValidation() || ValidateGetSamplerParameterIuivRobustANGLE(
+ context, sampler, pname, bufSize, length, params))
+ {
+ context->getSamplerParameterIuivRobust(sampler, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ EVENT(
+ "(GLuint id = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint * params = 0x%016" PRIxPTR ")",
+ id, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetQueryObjectivRobustANGLE, context, id, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryObjectivRobustANGLE(context, id, pname, bufSize, length, params))
+ {
+ context->getQueryObjectivRobust(id, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjecti64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params)
+{
+ EVENT(
+ "(GLuint id = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLint64 * params = 0x%016" PRIxPTR ")",
+ id, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetQueryObjecti64vRobustANGLE, context, id, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryObjecti64vRobustANGLE(context, id, pname, bufSize, length, params))
+ {
+ context->getQueryObjecti64vRobust(id, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetQueryObjectui64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint64 *params)
+{
+ EVENT(
+ "(GLuint id = %u, GLenum pname = 0x%X, GLsizei bufSize = %d, GLsizei * length = "
+ "0x%016" PRIxPTR ", GLuint64 * params = 0x%016" PRIxPTR ")",
+ id, pname, bufSize, (uintptr_t)length, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetQueryObjectui64vRobustANGLE, context, id, pname, bufSize, length, params);
+ if (context->skipValidation() ||
+ ValidateGetQueryObjectui64vRobustANGLE(context, id, pname, bufSize, length, params))
+ {
+ context->getQueryObjectui64vRobust(id, pname, bufSize, length, params);
+ }
+ }
+}
+
+void GL_APIENTRY CopyTexture3DANGLEContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ EVENT(
+ "(GLuint sourceId = %u, GLint sourceLevel = %d, GLenum destTarget = 0x%X, GLuint destId = "
+ "%u, GLint destLevel = %d, GLint internalFormat = %d, GLenum destType = 0x%X, GLboolean "
+ "unpackFlipY = %u, GLboolean unpackPremultiplyAlpha = %u, GLboolean unpackUnmultiplyAlpha "
+ "= %u)",
+ sourceId, sourceLevel, destTarget, destId, destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget destTargetPacked = FromGLenum<TextureTarget>(destTarget);
+ ANGLE_CAPTURE(CopyTexture3DANGLE, context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+ if (context->skipValidation() ||
+ ValidateCopyTexture3DANGLE(context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha))
+ {
+ context->copyTexture3D(sourceId, sourceLevel, destTargetPacked, destId, destLevel,
+ internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY CopySubTexture3DANGLEContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLint z,
+ GLint width,
+ GLint height,
+ GLint depth,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ EVENT(
+ "(GLuint sourceId = %u, GLint sourceLevel = %d, GLenum destTarget = 0x%X, GLuint destId = "
+ "%u, GLint destLevel = %d, GLint xoffset = %d, GLint yoffset = %d, GLint zoffset = %d, "
+ "GLint x = %d, GLint y = %d, GLint z = %d, GLint width = %d, GLint height = %d, GLint "
+ "depth = %d, GLboolean unpackFlipY = %u, GLboolean unpackPremultiplyAlpha = %u, GLboolean "
+ "unpackUnmultiplyAlpha = %u)",
+ sourceId, sourceLevel, destTarget, destId, destLevel, xoffset, yoffset, zoffset, x, y, z,
+ width, height, depth, unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget destTargetPacked = FromGLenum<TextureTarget>(destTarget);
+ ANGLE_CAPTURE(CopySubTexture3DANGLE, context, sourceId, sourceLevel, destTargetPacked,
+ destId, destLevel, xoffset, yoffset, zoffset, x, y, z, width, height, depth,
+ unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+ if (context->skipValidation() ||
+ ValidateCopySubTexture3DANGLE(context, sourceId, sourceLevel, destTargetPacked, destId,
+ destLevel, xoffset, yoffset, zoffset, x, y, z, width,
+ height, depth, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha))
+ {
+ context->copySubTexture3D(sourceId, sourceLevel, destTargetPacked, destId, destLevel,
+ xoffset, yoffset, zoffset, x, y, z, width, height, depth,
+ unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+ }
+ }
+}
+
+void GL_APIENTRY TexStorage2DMultisampleANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLsizei samples = %d, GLenum internalformat = 0x%X, GLsizei width "
+ "= %d, GLsizei height = %d, GLboolean fixedsamplelocations = %u)",
+ target, samples, internalformat, width, height, fixedsamplelocations);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(TexStorage2DMultisampleANGLE, context, targetPacked, samples, internalformat,
+ width, height, fixedsamplelocations);
+ if (context->skipValidation() ||
+ ValidateTexStorage2DMultisampleANGLE(context, targetPacked, samples, internalformat,
+ width, height, fixedsamplelocations))
+ {
+ context->texStorage2DMultisample(targetPacked, samples, internalformat, width, height,
+ fixedsamplelocations);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterivANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLint * params = "
+ "0x%016" PRIxPTR ")",
+ target, level, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterivANGLE, context, targetPacked, level, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterivANGLE(context, targetPacked, level, pname, params))
+ {
+ context->getTexLevelParameteriv(targetPacked, level, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY GetTexLevelParameterfvANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLenum pname = 0x%X, GLfloat * params = "
+ "0x%016" PRIxPTR ")",
+ target, level, pname, (uintptr_t)params);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(GetTexLevelParameterfvANGLE, context, targetPacked, level, pname, params);
+ if (context->skipValidation() ||
+ ValidateGetTexLevelParameterfvANGLE(context, targetPacked, level, pname, params))
+ {
+ context->getTexLevelParameterfv(targetPacked, level, pname, params);
+ }
+ }
+}
+
+void GL_APIENTRY MultiDrawArraysANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ GLsizei drawcount)
+{
+ EVENT("(GLenum mode = 0x%X, const GLint *firsts = 0x%016" PRIxPTR
+ ", const GLsizei *counts = 0x%016" PRIxPTR ", GLsizei drawcount = %d)",
+ mode, (uintptr_t)firsts, (uintptr_t)counts, drawcount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(MultiDrawArraysANGLE, context, modePacked, firsts, counts, drawcount);
+ if (context->skipValidation() ||
+ ValidateMultiDrawArraysANGLE(context, modePacked, firsts, counts, drawcount))
+ {
+ context->multiDrawArrays(modePacked, firsts, counts, drawcount);
+ }
+ }
+}
+
+void GL_APIENTRY MultiDrawArraysInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount)
+{
+ EVENT("(GLenum mode = 0x%X, const GLint *firsts = 0x%016" PRIxPTR
+ ", const GLsizei *counts = 0x%016" PRIxPTR
+ ", const GLsizei *instanceCounts = 0x%016" PRIxPTR ", GLsizei drawcount = %d)",
+ mode, (uintptr_t)firsts, (uintptr_t)counts, (uintptr_t)instanceCounts, drawcount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ ANGLE_CAPTURE(MultiDrawArraysInstancedANGLE, context, modePacked, firsts, counts,
+ instanceCounts, drawcount);
+ if (context->skipValidation() ||
+ ValidateMultiDrawArraysInstancedANGLE(context, modePacked, firsts, counts,
+ instanceCounts, drawcount))
+ {
+ context->multiDrawArraysInstanced(modePacked, firsts, counts, instanceCounts,
+ drawcount);
+ }
+ }
+}
+
+void GL_APIENTRY MultiDrawElementsANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ GLsizei drawcount)
+{
+ EVENT("(GLenum mode = 0x%X, const GLsizei *counts = 0x%016" PRIxPTR
+ ", GLenum type = 0x%X, const GLvoid *const*indices = 0x%016" PRIxPTR
+ ", GLsizei drawcount = %d)",
+ mode, (uintptr_t)counts, type, (uintptr_t)indices, drawcount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(MultiDrawElementsANGLE, context, modePacked, counts, typePacked, indices,
+ drawcount);
+ if (context->skipValidation() ||
+ ValidateMultiDrawElementsANGLE(context, modePacked, counts, typePacked, indices,
+ drawcount))
+ {
+ context->multiDrawElements(modePacked, counts, typePacked, indices, drawcount);
+ }
+ }
+}
+
+void GL_APIENTRY MultiDrawElementsInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount)
+{
+ EVENT("(GLenum mode = 0x%X, const GLsizei *counts = 0x%016" PRIxPTR
+ ", GLenum type = 0x%X, const GLvoid *const*indices = 0x%016" PRIxPTR
+ ", const GLsizei*instanceCounts = 0x%016" PRIxPTR ", GLsizei drawcount = %d)",
+ mode, (uintptr_t)counts, type, (uintptr_t)indices, (uintptr_t)instanceCounts, drawcount);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ PrimitiveMode modePacked = FromGLenum<PrimitiveMode>(mode);
+ DrawElementsType typePacked = FromGLenum<DrawElementsType>(type);
+ ANGLE_CAPTURE(MultiDrawElementsInstancedANGLE, context, modePacked, counts, typePacked,
+ indices, instanceCounts, drawcount);
+ if (context->skipValidation() ||
+ ValidateMultiDrawElementsInstancedANGLE(context, modePacked, counts, typePacked,
+ indices, instanceCounts, drawcount))
+ {
+ context->multiDrawElementsInstanced(modePacked, counts, typePacked, indices,
+ instanceCounts, drawcount);
+ }
+ }
+}
+
+void GL_APIENTRY GetMultisamplefvANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLuint index,
+ GLfloat *val)
+{
+ EVENT("(GLenum pname = 0x%X, GLuint index = %u, GLfloat * val = 0x%016" PRIxPTR ")", pname,
+ index, (uintptr_t)val);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(GetMultisamplefvANGLE, context, pname, index, val);
+ if (context->skipValidation() || ValidateGetMultisamplefvANGLE(context, pname, index, val))
+ {
+ context->getMultisamplefv(pname, index, val);
+ }
+ }
+}
+
+void GL_APIENTRY SampleMaskiANGLEContextANGLE(GLeglContext ctx, GLuint maskNumber, GLbitfield mask)
+{
+ EVENT("(GLuint maskNumber = %u, GLbitfield mask = 0x%X)", maskNumber, mask);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ANGLE_CAPTURE(SampleMaskiANGLE, context, maskNumber, mask);
+ if (context->skipValidation() || ValidateSampleMaskiANGLE(context, maskNumber, mask))
+ {
+ context->sampleMaski(maskNumber, mask);
+ }
+ }
+}
+
+void GL_APIENTRY ProvokingVertexANGLEContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ EVENT("(GLenum mode = 0x%X)", mode);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ ProvokingVertexConvention modePacked = FromGLenum<ProvokingVertexConvention>(mode);
+ ANGLE_CAPTURE(ProvokingVertexANGLE, context, modePacked);
+ if (context->skipValidation() || ValidateProvokingVertexANGLE(context, modePacked))
+ {
+ context->provokingVertex(modePacked);
+ }
+ }
+}
+
+void GL_APIENTRY LoseContextCHROMIUMContextANGLE(GLeglContext ctx, GLenum current, GLenum other)
+{
+ EVENT("(GLenum current = 0x%X, GLenum other = 0x%X)", current, other);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ GraphicsResetStatus currentPacked = FromGLenum<GraphicsResetStatus>(current);
+ GraphicsResetStatus otherPacked = FromGLenum<GraphicsResetStatus>(other);
+ ANGLE_CAPTURE(LoseContextCHROMIUM, context, currentPacked, otherPacked);
+ if (context->skipValidation() ||
+ ValidateLoseContextCHROMIUM(context, currentPacked, otherPacked))
+ {
+ context->loseContext(currentPacked, otherPacked);
+ }
+ }
+}
+
+void GL_APIENTRY TexImage2DExternalANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type)
+{
+ EVENT(
+ "(GLenum target = 0x%X, GLint level = %d, GLint internalformat = %d, GLsizei width = %d, "
+ "GLsizei height = %d, GLint border = %d, GLenum format = 0x%X, GLenum type = 0x%X)",
+ target, level, internalformat, width, height, border, format, type);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureTarget targetPacked = FromGLenum<TextureTarget>(target);
+ ANGLE_CAPTURE(TexImage2DExternalANGLE, context, targetPacked, level, internalformat, width,
+ height, border, format, type);
+ if (context->skipValidation() ||
+ ValidateTexImage2DExternalANGLE(context, targetPacked, level, internalformat, width,
+ height, border, format, type))
+ {
+ context->texImage2DExternal(targetPacked, level, internalformat, width, height, border,
+ format, type);
+ }
+ }
+}
+
+void GL_APIENTRY InvalidateTextureANGLEContextANGLE(GLeglContext ctx, GLenum target)
+{
+ EVENT("(GLenum target = 0x%X)", target);
+
+ Context *context = static_cast<gl::Context *>(ctx);
+ if (context)
+ {
+ ASSERT(context == GetValidGlobalContext());
+ TextureType targetPacked = FromGLenum<TextureType>(target);
+ ANGLE_CAPTURE(InvalidateTextureANGLE, context, targetPacked);
+ if (context->skipValidation() || ValidateInvalidateTextureANGLE(context, targetPacked))
+ {
+ context->invalidateTexture(targetPacked);
+ }
+ }
+}
+} // namespace gl
diff --git a/gfx/angle/checkout/src/libGLESv2/entry_points_gles_ext_autogen.h b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_ext_autogen.h
new file mode 100644
index 0000000000..efc8ee3859
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/entry_points_gles_ext_autogen.h
@@ -0,0 +1,3874 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml and gl_angle_ext.xml.
+//
+// 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.
+//
+// entry_points_gles_ext_autogen.h:
+// Defines the GLES extension entry points.
+
+#ifndef LIBGLESV2_ENTRY_POINTS_GLES_EXT_AUTOGEN_H_
+#define LIBGLESV2_ENTRY_POINTS_GLES_EXT_AUTOGEN_H_
+
+#include <GLES/gl.h>
+#include <GLES/glext.h>
+#include <GLES2/gl2.h>
+#include <GLES2/gl2ext.h>
+#include <export.h>
+
+namespace gl
+{
+
+// GL_ANGLE_copy_texture_3d
+ANGLE_EXPORT void GL_APIENTRY CopyTexture3DANGLE(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha);
+ANGLE_EXPORT void GL_APIENTRY CopySubTexture3DANGLE(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLint z,
+ GLint width,
+ GLint height,
+ GLint depth,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha);
+
+// GL_ANGLE_framebuffer_blit
+ANGLE_EXPORT void GL_APIENTRY BlitFramebufferANGLE(GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter);
+
+// GL_ANGLE_framebuffer_multisample
+ANGLE_EXPORT void GL_APIENTRY RenderbufferStorageMultisampleANGLE(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+
+// GL_ANGLE_instanced_arrays
+ANGLE_EXPORT void GL_APIENTRY DrawArraysInstancedANGLE(GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei primcount);
+ANGLE_EXPORT void GL_APIENTRY DrawElementsInstancedANGLE(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribDivisorANGLE(GLuint index, GLuint divisor);
+
+// GL_ANGLE_multi_draw
+ANGLE_EXPORT void GL_APIENTRY MultiDrawArraysANGLE(GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ GLsizei drawcount);
+ANGLE_EXPORT void GL_APIENTRY MultiDrawArraysInstancedANGLE(GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount);
+ANGLE_EXPORT void GL_APIENTRY MultiDrawElementsANGLE(GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ GLsizei drawcount);
+ANGLE_EXPORT void GL_APIENTRY MultiDrawElementsInstancedANGLE(GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount);
+
+// GL_ANGLE_provoking_vertex
+ANGLE_EXPORT void GL_APIENTRY ProvokingVertexANGLE(GLenum mode);
+
+// GL_ANGLE_request_extension
+ANGLE_EXPORT void GL_APIENTRY RequestExtensionANGLE(const GLchar *name);
+
+// GL_ANGLE_robust_client_memory
+ANGLE_EXPORT void GL_APIENTRY GetBooleanvRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *params);
+ANGLE_EXPORT void GL_APIENTRY GetBufferParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetFloatvRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetFramebufferAttachmentParameterivRobustANGLE(GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetIntegervRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data);
+ANGLE_EXPORT void GL_APIENTRY GetProgramivRobustANGLE(GLuint program,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetRenderbufferParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetShaderivRobustANGLE(GLuint shader,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterfvRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetUniformfvRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetUniformivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribfvRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribivRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribPointervRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **pointer);
+ANGLE_EXPORT void GL_APIENTRY ReadPixelsRobustANGLE(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexParameterfvRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLsizei xoffset,
+ GLsizei yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data);
+ANGLE_EXPORT void GL_APIENTRY
+GetQueryivRobustANGLE(GLenum target, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectuivRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetBufferPointervRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params);
+ANGLE_EXPORT void GL_APIENTRY GetIntegeri_vRobustANGLE(GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data);
+ANGLE_EXPORT void GL_APIENTRY GetInternalformativRobustANGLE(GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIivRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIuivRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetUniformuivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetActiveUniformBlockivRobustANGLE(GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetInteger64vRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data);
+ANGLE_EXPORT void GL_APIENTRY GetInteger64i_vRobustANGLE(GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data);
+ANGLE_EXPORT void GL_APIENTRY GetBufferParameteri64vRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterivRobustANGLE(GLuint sampler,
+ GLuint pname,
+ GLsizei bufSize,
+ const GLint *param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterfvRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *param);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterfvRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetFramebufferParameterivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetProgramInterfaceivRobustANGLE(GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetBooleani_vRobustANGLE(GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *data);
+ANGLE_EXPORT void GL_APIENTRY GetMultisamplefvRobustANGLE(GLenum pname,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *val);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterivRobustANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterfvRobustANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetPointervRobustANGLERobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params);
+ANGLE_EXPORT void GL_APIENTRY ReadnPixelsRobustANGLE(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *data);
+ANGLE_EXPORT void GL_APIENTRY GetnUniformfvRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetnUniformivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetnUniformuivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterIivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterIuivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterIivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterIuivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterIivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterIuivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *param);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterIivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterIuivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectivRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjecti64vRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectui64vRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint64 *params);
+
+// GL_ANGLE_texture_external_update
+ANGLE_EXPORT void GL_APIENTRY TexImage2DExternalANGLE(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type);
+ANGLE_EXPORT void GL_APIENTRY InvalidateTextureANGLE(GLenum target);
+
+// GL_ANGLE_texture_multisample
+ANGLE_EXPORT void GL_APIENTRY TexStorage2DMultisampleANGLE(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterivANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterfvANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetMultisamplefvANGLE(GLenum pname, GLuint index, GLfloat *val);
+ANGLE_EXPORT void GL_APIENTRY SampleMaskiANGLE(GLuint maskNumber, GLbitfield mask);
+
+// GL_ANGLE_translated_shader_source
+ANGLE_EXPORT void GL_APIENTRY GetTranslatedShaderSourceANGLE(GLuint shader,
+ GLsizei bufsize,
+ GLsizei *length,
+ GLchar *source);
+
+// GL_CHROMIUM_bind_uniform_location
+ANGLE_EXPORT void GL_APIENTRY BindUniformLocationCHROMIUM(GLuint program,
+ GLint location,
+ const GLchar *name);
+
+// GL_CHROMIUM_copy_compressed_texture
+ANGLE_EXPORT void GL_APIENTRY CompressedCopyTextureCHROMIUM(GLuint sourceId, GLuint destId);
+
+// GL_CHROMIUM_copy_texture
+ANGLE_EXPORT void GL_APIENTRY CopyTextureCHROMIUM(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha);
+ANGLE_EXPORT void GL_APIENTRY CopySubTextureCHROMIUM(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLint width,
+ GLint height,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha);
+
+// GL_CHROMIUM_framebuffer_mixed_samples
+ANGLE_EXPORT void GL_APIENTRY CoverageModulationCHROMIUM(GLenum components);
+ANGLE_EXPORT void GL_APIENTRY MatrixLoadfCHROMIUM(GLenum matrixMode, const GLfloat *matrix);
+ANGLE_EXPORT void GL_APIENTRY MatrixLoadIdentityCHROMIUM(GLenum matrixMode);
+
+// GL_CHROMIUM_lose_context
+ANGLE_EXPORT void GL_APIENTRY LoseContextCHROMIUM(GLenum current, GLenum other);
+
+// GL_CHROMIUM_path_rendering
+ANGLE_EXPORT GLuint GL_APIENTRY GenPathsCHROMIUM(GLsizei range);
+ANGLE_EXPORT void GL_APIENTRY DeletePathsCHROMIUM(GLuint first, GLsizei range);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsPathCHROMIUM(GLuint path);
+ANGLE_EXPORT void GL_APIENTRY PathCommandsCHROMIUM(GLuint path,
+ GLsizei numCommands,
+ const GLubyte *commands,
+ GLsizei numCoords,
+ GLenum coordType,
+ const void *coords);
+ANGLE_EXPORT void GL_APIENTRY PathParameterfCHROMIUM(GLuint path, GLenum pname, GLfloat value);
+ANGLE_EXPORT void GL_APIENTRY PathParameteriCHROMIUM(GLuint path, GLenum pname, GLint value);
+ANGLE_EXPORT void GL_APIENTRY GetPathParameterfvCHROMIUM(GLuint path, GLenum pname, GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY GetPathParameterivCHROMIUM(GLuint path, GLenum pname, GLint *value);
+ANGLE_EXPORT void GL_APIENTRY PathStencilFuncCHROMIUM(GLenum func, GLint ref, GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilFillPathCHROMIUM(GLuint path, GLenum fillMode, GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilStrokePathCHROMIUM(GLuint path, GLint reference, GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY CoverFillPathCHROMIUM(GLuint path, GLenum coverMode);
+ANGLE_EXPORT void GL_APIENTRY CoverStrokePathCHROMIUM(GLuint path, GLenum coverMode);
+ANGLE_EXPORT void GL_APIENTRY StencilThenCoverFillPathCHROMIUM(GLuint path,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode);
+ANGLE_EXPORT void GL_APIENTRY StencilThenCoverStrokePathCHROMIUM(GLuint path,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode);
+ANGLE_EXPORT void GL_APIENTRY CoverFillPathInstancedCHROMIUM(GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY CoverStrokePathInstancedCHROMIUM(GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY StencilStrokePathInstancedCHROMIUM(GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY StencilFillPathInstancedCHROMIUM(GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY
+StencilThenCoverFillPathInstancedCHROMIUM(GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY
+StencilThenCoverStrokePathInstancedCHROMIUM(GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY BindFragmentInputLocationCHROMIUM(GLuint programs,
+ GLint location,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY ProgramPathFragmentInputGenCHROMIUM(GLuint program,
+ GLint location,
+ GLenum genMode,
+ GLint components,
+ const GLfloat *coeffs);
+
+// GL_EXT_blend_func_extended
+ANGLE_EXPORT void GL_APIENTRY BindFragDataLocationEXT(GLuint program,
+ GLuint color,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY BindFragDataLocationIndexedEXT(GLuint program,
+ GLuint colorNumber,
+ GLuint index,
+ const GLchar *name);
+ANGLE_EXPORT GLint GL_APIENTRY GetFragDataIndexEXT(GLuint program, const GLchar *name);
+ANGLE_EXPORT GLint GL_APIENTRY GetProgramResourceLocationIndexEXT(GLuint program,
+ GLenum programInterface,
+ const GLchar *name);
+
+// GL_EXT_debug_marker
+ANGLE_EXPORT void GL_APIENTRY InsertEventMarkerEXT(GLsizei length, const GLchar *marker);
+ANGLE_EXPORT void GL_APIENTRY PopGroupMarkerEXT();
+ANGLE_EXPORT void GL_APIENTRY PushGroupMarkerEXT(GLsizei length, const GLchar *marker);
+
+// GL_EXT_discard_framebuffer
+ANGLE_EXPORT void GL_APIENTRY DiscardFramebufferEXT(GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments);
+
+// GL_EXT_disjoint_timer_query
+ANGLE_EXPORT void GL_APIENTRY BeginQueryEXT(GLenum target, GLuint id);
+ANGLE_EXPORT void GL_APIENTRY DeleteQueriesEXT(GLsizei n, const GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY EndQueryEXT(GLenum target);
+ANGLE_EXPORT void GL_APIENTRY GenQueriesEXT(GLsizei n, GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjecti64vEXT(GLuint id, GLenum pname, GLint64 *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectivEXT(GLuint id, GLenum pname, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectui64vEXT(GLuint id, GLenum pname, GLuint64 *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectuivEXT(GLuint id, GLenum pname, GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryivEXT(GLenum target, GLenum pname, GLint *params);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsQueryEXT(GLuint id);
+ANGLE_EXPORT void GL_APIENTRY QueryCounterEXT(GLuint id, GLenum target);
+
+// GL_EXT_draw_buffers
+ANGLE_EXPORT void GL_APIENTRY DrawBuffersEXT(GLsizei n, const GLenum *bufs);
+
+// GL_EXT_geometry_shader
+ANGLE_EXPORT void GL_APIENTRY FramebufferTextureEXT(GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level);
+
+// GL_EXT_instanced_arrays
+ANGLE_EXPORT void GL_APIENTRY DrawArraysInstancedEXT(GLenum mode,
+ GLint start,
+ GLsizei count,
+ GLsizei primcount);
+ANGLE_EXPORT void GL_APIENTRY DrawElementsInstancedEXT(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribDivisorEXT(GLuint index, GLuint divisor);
+
+// GL_EXT_map_buffer_range
+ANGLE_EXPORT void GL_APIENTRY FlushMappedBufferRangeEXT(GLenum target,
+ GLintptr offset,
+ GLsizeiptr length);
+ANGLE_EXPORT void *GL_APIENTRY MapBufferRangeEXT(GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access);
+
+// GL_EXT_memory_object
+ANGLE_EXPORT void GL_APIENTRY BufferStorageMemEXT(GLenum target,
+ GLsizeiptr size,
+ GLuint memory,
+ GLuint64 offset);
+ANGLE_EXPORT void GL_APIENTRY CreateMemoryObjectsEXT(GLsizei n, GLuint *memoryObjects);
+ANGLE_EXPORT void GL_APIENTRY DeleteMemoryObjectsEXT(GLsizei n, const GLuint *memoryObjects);
+ANGLE_EXPORT void GL_APIENTRY GetMemoryObjectParameterivEXT(GLuint memoryObject,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetUnsignedBytevEXT(GLenum pname, GLubyte *data);
+ANGLE_EXPORT void GL_APIENTRY GetUnsignedBytei_vEXT(GLenum target, GLuint index, GLubyte *data);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsMemoryObjectEXT(GLuint memoryObject);
+ANGLE_EXPORT void GL_APIENTRY MemoryObjectParameterivEXT(GLuint memoryObject,
+ GLenum pname,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexStorageMem2DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLuint memory,
+ GLuint64 offset);
+ANGLE_EXPORT void GL_APIENTRY TexStorageMem2DMultisampleEXT(GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset);
+ANGLE_EXPORT void GL_APIENTRY TexStorageMem3DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLuint memory,
+ GLuint64 offset);
+ANGLE_EXPORT void GL_APIENTRY TexStorageMem3DMultisampleEXT(GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset);
+
+// GL_EXT_memory_object_fd
+ANGLE_EXPORT void GL_APIENTRY ImportMemoryFdEXT(GLuint memory,
+ GLuint64 size,
+ GLenum handleType,
+ GLint fd);
+
+// GL_EXT_occlusion_query_boolean
+
+// GL_EXT_robustness
+ANGLE_EXPORT GLenum GL_APIENTRY GetGraphicsResetStatusEXT();
+ANGLE_EXPORT void GL_APIENTRY GetnUniformfvEXT(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetnUniformivEXT(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY ReadnPixelsEXT(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ void *data);
+
+// GL_EXT_semaphore
+ANGLE_EXPORT void GL_APIENTRY DeleteSemaphoresEXT(GLsizei n, const GLuint *semaphores);
+ANGLE_EXPORT void GL_APIENTRY GenSemaphoresEXT(GLsizei n, GLuint *semaphores);
+ANGLE_EXPORT void GL_APIENTRY GetSemaphoreParameterui64vEXT(GLuint semaphore,
+ GLenum pname,
+ GLuint64 *params);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsSemaphoreEXT(GLuint semaphore);
+ANGLE_EXPORT void GL_APIENTRY SemaphoreParameterui64vEXT(GLuint semaphore,
+ GLenum pname,
+ const GLuint64 *params);
+ANGLE_EXPORT void GL_APIENTRY SignalSemaphoreEXT(GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *dstLayouts);
+ANGLE_EXPORT void GL_APIENTRY WaitSemaphoreEXT(GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *srcLayouts);
+
+// GL_EXT_semaphore_fd
+ANGLE_EXPORT void GL_APIENTRY ImportSemaphoreFdEXT(GLuint semaphore, GLenum handleType, GLint fd);
+
+// GL_EXT_texture_storage
+ANGLE_EXPORT void GL_APIENTRY TexStorage1DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width);
+ANGLE_EXPORT void GL_APIENTRY TexStorage2DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY TexStorage3DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth);
+
+// GL_KHR_debug
+ANGLE_EXPORT void GL_APIENTRY DebugMessageCallbackKHR(GLDEBUGPROCKHR callback,
+ const void *userParam);
+ANGLE_EXPORT void GL_APIENTRY DebugMessageControlKHR(GLenum source,
+ GLenum type,
+ GLenum severity,
+ GLsizei count,
+ const GLuint *ids,
+ GLboolean enabled);
+ANGLE_EXPORT void GL_APIENTRY DebugMessageInsertKHR(GLenum source,
+ GLenum type,
+ GLuint id,
+ GLenum severity,
+ GLsizei length,
+ const GLchar *buf);
+ANGLE_EXPORT GLuint GL_APIENTRY GetDebugMessageLogKHR(GLuint count,
+ GLsizei bufSize,
+ GLenum *sources,
+ GLenum *types,
+ GLuint *ids,
+ GLenum *severities,
+ GLsizei *lengths,
+ GLchar *messageLog);
+ANGLE_EXPORT void GL_APIENTRY
+GetObjectLabelKHR(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
+ANGLE_EXPORT void GL_APIENTRY GetObjectPtrLabelKHR(const void *ptr,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *label);
+ANGLE_EXPORT void GL_APIENTRY GetPointervKHR(GLenum pname, void **params);
+ANGLE_EXPORT void GL_APIENTRY ObjectLabelKHR(GLenum identifier,
+ GLuint name,
+ GLsizei length,
+ const GLchar *label);
+ANGLE_EXPORT void GL_APIENTRY ObjectPtrLabelKHR(const void *ptr,
+ GLsizei length,
+ const GLchar *label);
+ANGLE_EXPORT void GL_APIENTRY PopDebugGroupKHR();
+ANGLE_EXPORT void GL_APIENTRY PushDebugGroupKHR(GLenum source,
+ GLuint id,
+ GLsizei length,
+ const GLchar *message);
+
+// GL_KHR_parallel_shader_compile
+ANGLE_EXPORT void GL_APIENTRY MaxShaderCompilerThreadsKHR(GLuint count);
+
+// GL_NV_fence
+ANGLE_EXPORT void GL_APIENTRY DeleteFencesNV(GLsizei n, const GLuint *fences);
+ANGLE_EXPORT void GL_APIENTRY FinishFenceNV(GLuint fence);
+ANGLE_EXPORT void GL_APIENTRY GenFencesNV(GLsizei n, GLuint *fences);
+ANGLE_EXPORT void GL_APIENTRY GetFenceivNV(GLuint fence, GLenum pname, GLint *params);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsFenceNV(GLuint fence);
+ANGLE_EXPORT void GL_APIENTRY SetFenceNV(GLuint fence, GLenum condition);
+ANGLE_EXPORT GLboolean GL_APIENTRY TestFenceNV(GLuint fence);
+
+// GL_OES_EGL_image
+ANGLE_EXPORT void GL_APIENTRY EGLImageTargetRenderbufferStorageOES(GLenum target,
+ GLeglImageOES image);
+ANGLE_EXPORT void GL_APIENTRY EGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image);
+
+// GL_OES_draw_texture
+ANGLE_EXPORT void GL_APIENTRY
+DrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
+ANGLE_EXPORT void GL_APIENTRY DrawTexfvOES(const GLfloat *coords);
+ANGLE_EXPORT void GL_APIENTRY DrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height);
+ANGLE_EXPORT void GL_APIENTRY DrawTexivOES(const GLint *coords);
+ANGLE_EXPORT void GL_APIENTRY
+DrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
+ANGLE_EXPORT void GL_APIENTRY DrawTexsvOES(const GLshort *coords);
+ANGLE_EXPORT void GL_APIENTRY
+DrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
+ANGLE_EXPORT void GL_APIENTRY DrawTexxvOES(const GLfixed *coords);
+
+// GL_OES_framebuffer_object
+ANGLE_EXPORT void GL_APIENTRY BindFramebufferOES(GLenum target, GLuint framebuffer);
+ANGLE_EXPORT void GL_APIENTRY BindRenderbufferOES(GLenum target, GLuint renderbuffer);
+ANGLE_EXPORT GLenum GL_APIENTRY CheckFramebufferStatusOES(GLenum target);
+ANGLE_EXPORT void GL_APIENTRY DeleteFramebuffersOES(GLsizei n, const GLuint *framebuffers);
+ANGLE_EXPORT void GL_APIENTRY DeleteRenderbuffersOES(GLsizei n, const GLuint *renderbuffers);
+ANGLE_EXPORT void GL_APIENTRY FramebufferRenderbufferOES(GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer);
+ANGLE_EXPORT void GL_APIENTRY FramebufferTexture2DOES(GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level);
+ANGLE_EXPORT void GL_APIENTRY GenFramebuffersOES(GLsizei n, GLuint *framebuffers);
+ANGLE_EXPORT void GL_APIENTRY GenRenderbuffersOES(GLsizei n, GLuint *renderbuffers);
+ANGLE_EXPORT void GL_APIENTRY GenerateMipmapOES(GLenum target);
+ANGLE_EXPORT void GL_APIENTRY GetFramebufferAttachmentParameterivOES(GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetRenderbufferParameterivOES(GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsFramebufferOES(GLuint framebuffer);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsRenderbufferOES(GLuint renderbuffer);
+ANGLE_EXPORT void GL_APIENTRY RenderbufferStorageOES(GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+
+// GL_OES_get_program_binary
+ANGLE_EXPORT void GL_APIENTRY GetProgramBinaryOES(GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary);
+ANGLE_EXPORT void GL_APIENTRY ProgramBinaryOES(GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLint length);
+
+// GL_OES_mapbuffer
+ANGLE_EXPORT void GL_APIENTRY GetBufferPointervOES(GLenum target, GLenum pname, void **params);
+ANGLE_EXPORT void *GL_APIENTRY MapBufferOES(GLenum target, GLenum access);
+ANGLE_EXPORT GLboolean GL_APIENTRY UnmapBufferOES(GLenum target);
+
+// GL_OES_matrix_palette
+ANGLE_EXPORT void GL_APIENTRY CurrentPaletteMatrixOES(GLuint matrixpaletteindex);
+ANGLE_EXPORT void GL_APIENTRY LoadPaletteFromModelViewMatrixOES();
+ANGLE_EXPORT void GL_APIENTRY MatrixIndexPointerOES(GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY WeightPointerOES(GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+
+// GL_OES_point_size_array
+ANGLE_EXPORT void GL_APIENTRY PointSizePointerOES(GLenum type, GLsizei stride, const void *pointer);
+
+// GL_OES_query_matrix
+ANGLE_EXPORT GLbitfield GL_APIENTRY QueryMatrixxOES(GLfixed *mantissa, GLint *exponent);
+
+// GL_OES_texture_3D
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage3DOES(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage3DOES(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CopyTexSubImage3DOES(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY FramebufferTexture3DOES(GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level,
+ GLint zoffset);
+ANGLE_EXPORT void GL_APIENTRY TexImage3DOES(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage3DOES(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+
+// GL_OES_texture_border_clamp
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterIivOES(GLuint sampler,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterIuivOES(GLuint sampler,
+ GLenum pname,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterIivOES(GLenum target, GLenum pname, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterIuivOES(GLenum target, GLenum pname, GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterIivOES(GLuint sampler,
+ GLenum pname,
+ const GLint *param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterIuivOES(GLuint sampler,
+ GLenum pname,
+ const GLuint *param);
+ANGLE_EXPORT void GL_APIENTRY TexParameterIivOES(GLenum target, GLenum pname, const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterIuivOES(GLenum target,
+ GLenum pname,
+ const GLuint *params);
+
+// GL_OES_texture_cube_map
+ANGLE_EXPORT void GL_APIENTRY GetTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexGenivOES(GLenum coord, GLenum pname, GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY TexGenfOES(GLenum coord, GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY TexGenfvOES(GLenum coord, GLenum pname, const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY TexGeniOES(GLenum coord, GLenum pname, GLint param);
+ANGLE_EXPORT void GL_APIENTRY TexGenivOES(GLenum coord, GLenum pname, const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexGenxOES(GLenum coord, GLenum pname, GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY TexGenxvOES(GLenum coord, GLenum pname, const GLfixed *params);
+
+// GL_OES_texture_storage_multisample_2d_array
+ANGLE_EXPORT void GL_APIENTRY TexStorage3DMultisampleOES(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedsamplelocations);
+
+// GL_OES_vertex_array_object
+ANGLE_EXPORT void GL_APIENTRY BindVertexArrayOES(GLuint array);
+ANGLE_EXPORT void GL_APIENTRY DeleteVertexArraysOES(GLsizei n, const GLuint *arrays);
+ANGLE_EXPORT void GL_APIENTRY GenVertexArraysOES(GLsizei n, GLuint *arrays);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsVertexArrayOES(GLuint array);
+
+// GL_OVR_multiview
+ANGLE_EXPORT void GL_APIENTRY FramebufferTextureMultiviewOVR(GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint baseViewIndex,
+ GLsizei numViews);
+
+// GL_OVR_multiview2
+
+// EGL_ANGLE_explicit_context
+ANGLE_EXPORT void GL_APIENTRY ActiveShaderProgramContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLuint program);
+ANGLE_EXPORT void GL_APIENTRY ActiveTextureContextANGLE(GLeglContext ctx, GLenum texture);
+ANGLE_EXPORT void GL_APIENTRY AlphaFuncContextANGLE(GLeglContext ctx, GLenum func, GLfloat ref);
+ANGLE_EXPORT void GL_APIENTRY AlphaFuncxContextANGLE(GLeglContext ctx, GLenum func, GLfixed ref);
+ANGLE_EXPORT void GL_APIENTRY AttachShaderContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint shader);
+ANGLE_EXPORT void GL_APIENTRY BeginQueryContextANGLE(GLeglContext ctx, GLenum target, GLuint id);
+ANGLE_EXPORT void GL_APIENTRY BeginQueryEXTContextANGLE(GLeglContext ctx, GLenum target, GLuint id);
+ANGLE_EXPORT void GL_APIENTRY BeginTransformFeedbackContextANGLE(GLeglContext ctx,
+ GLenum primitiveMode);
+ANGLE_EXPORT void GL_APIENTRY BindAttribLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY BindBufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint buffer);
+ANGLE_EXPORT void GL_APIENTRY BindBufferBaseContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLuint buffer);
+ANGLE_EXPORT void GL_APIENTRY BindBufferRangeContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLuint buffer,
+ GLintptr offset,
+ GLsizeiptr size);
+ANGLE_EXPORT void GL_APIENTRY BindFragDataLocationEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint color,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY BindFragDataLocationIndexedEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint colorNumber,
+ GLuint index,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY BindFramebufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint framebuffer);
+ANGLE_EXPORT void GL_APIENTRY BindFramebufferOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint framebuffer);
+ANGLE_EXPORT void GL_APIENTRY BindImageTextureContextANGLE(GLeglContext ctx,
+ GLuint unit,
+ GLuint texture,
+ GLint level,
+ GLboolean layered,
+ GLint layer,
+ GLenum access,
+ GLenum format);
+ANGLE_EXPORT void GL_APIENTRY BindProgramPipelineContextANGLE(GLeglContext ctx, GLuint pipeline);
+ANGLE_EXPORT void GL_APIENTRY BindRenderbufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint renderbuffer);
+ANGLE_EXPORT void GL_APIENTRY BindRenderbufferOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint renderbuffer);
+ANGLE_EXPORT void GL_APIENTRY BindSamplerContextANGLE(GLeglContext ctx,
+ GLuint unit,
+ GLuint sampler);
+ANGLE_EXPORT void GL_APIENTRY BindTextureContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint texture);
+ANGLE_EXPORT void GL_APIENTRY BindTransformFeedbackContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint id);
+ANGLE_EXPORT void GL_APIENTRY BindVertexArrayContextANGLE(GLeglContext ctx, GLuint array);
+ANGLE_EXPORT void GL_APIENTRY BindVertexArrayOESContextANGLE(GLeglContext ctx, GLuint array);
+ANGLE_EXPORT void GL_APIENTRY BindVertexBufferContextANGLE(GLeglContext ctx,
+ GLuint bindingindex,
+ GLuint buffer,
+ GLintptr offset,
+ GLsizei stride);
+ANGLE_EXPORT void GL_APIENTRY
+BlendColorContextANGLE(GLeglContext ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ANGLE_EXPORT void GL_APIENTRY BlendEquationContextANGLE(GLeglContext ctx, GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY BlendEquationSeparateContextANGLE(GLeglContext ctx,
+ GLenum modeRGB,
+ GLenum modeAlpha);
+ANGLE_EXPORT void GL_APIENTRY BlendFuncContextANGLE(GLeglContext ctx,
+ GLenum sfactor,
+ GLenum dfactor);
+ANGLE_EXPORT void GL_APIENTRY BlendFuncSeparateContextANGLE(GLeglContext ctx,
+ GLenum sfactorRGB,
+ GLenum dfactorRGB,
+ GLenum sfactorAlpha,
+ GLenum dfactorAlpha);
+ANGLE_EXPORT void GL_APIENTRY BlitFramebufferContextANGLE(GLeglContext ctx,
+ GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter);
+ANGLE_EXPORT void GL_APIENTRY BlitFramebufferANGLEContextANGLE(GLeglContext ctx,
+ GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter);
+ANGLE_EXPORT void GL_APIENTRY BufferDataContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizeiptr size,
+ const void *data,
+ GLenum usage);
+ANGLE_EXPORT void GL_APIENTRY BufferStorageMemEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizeiptr size,
+ GLuint memory,
+ GLuint64 offset);
+ANGLE_EXPORT void GL_APIENTRY BufferSubDataContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr size,
+ const void *data);
+ANGLE_EXPORT GLenum GL_APIENTRY CheckFramebufferStatusContextANGLE(GLeglContext ctx, GLenum target);
+ANGLE_EXPORT GLenum GL_APIENTRY CheckFramebufferStatusOESContextANGLE(GLeglContext ctx,
+ GLenum target);
+ANGLE_EXPORT void GL_APIENTRY ClearContextANGLE(GLeglContext ctx, GLbitfield mask);
+ANGLE_EXPORT void GL_APIENTRY ClearBufferfiContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ GLfloat depth,
+ GLint stencil);
+ANGLE_EXPORT void GL_APIENTRY ClearBufferfvContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ClearBufferivContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY ClearBufferuivContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY
+ClearColorContextANGLE(GLeglContext ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ANGLE_EXPORT void GL_APIENTRY
+ClearColorxContextANGLE(GLeglContext ctx, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+ANGLE_EXPORT void GL_APIENTRY ClearDepthfContextANGLE(GLeglContext ctx, GLfloat d);
+ANGLE_EXPORT void GL_APIENTRY ClearDepthxContextANGLE(GLeglContext ctx, GLfixed depth);
+ANGLE_EXPORT void GL_APIENTRY ClearStencilContextANGLE(GLeglContext ctx, GLint s);
+ANGLE_EXPORT void GL_APIENTRY ClientActiveTextureContextANGLE(GLeglContext ctx, GLenum texture);
+ANGLE_EXPORT GLenum GL_APIENTRY ClientWaitSyncContextANGLE(GLeglContext ctx,
+ GLsync sync,
+ GLbitfield flags,
+ GLuint64 timeout);
+ANGLE_EXPORT void GL_APIENTRY ClipPlanefContextANGLE(GLeglContext ctx,
+ GLenum p,
+ const GLfloat *eqn);
+ANGLE_EXPORT void GL_APIENTRY ClipPlanexContextANGLE(GLeglContext ctx,
+ GLenum plane,
+ const GLfixed *equation);
+ANGLE_EXPORT void GL_APIENTRY
+Color4fContextANGLE(GLeglContext ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
+ANGLE_EXPORT void GL_APIENTRY
+Color4ubContextANGLE(GLeglContext ctx, GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
+ANGLE_EXPORT void GL_APIENTRY
+Color4xContextANGLE(GLeglContext ctx, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
+ANGLE_EXPORT void GL_APIENTRY ColorMaskContextANGLE(GLeglContext ctx,
+ GLboolean red,
+ GLboolean green,
+ GLboolean blue,
+ GLboolean alpha);
+ANGLE_EXPORT void GL_APIENTRY ColorPointerContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY CompileShaderContextANGLE(GLeglContext ctx, GLuint shader);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data);
+ANGLE_EXPORT void GL_APIENTRY CopyBufferSubDataContextANGLE(GLeglContext ctx,
+ GLenum readTarget,
+ GLenum writeTarget,
+ GLintptr readOffset,
+ GLintptr writeOffset,
+ GLsizeiptr size);
+ANGLE_EXPORT void GL_APIENTRY CopyTexImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLint border);
+ANGLE_EXPORT void GL_APIENTRY CopyTexSubImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY CopyTexSubImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY CopyTexSubImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY CreateMemoryObjectsEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *memoryObjects);
+ANGLE_EXPORT GLuint GL_APIENTRY CreateProgramContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT GLuint GL_APIENTRY CreateShaderContextANGLE(GLeglContext ctx, GLenum type);
+ANGLE_EXPORT GLuint GL_APIENTRY CreateShaderProgramvContextANGLE(GLeglContext ctx,
+ GLenum type,
+ GLsizei count,
+ const GLchar *const *strings);
+ANGLE_EXPORT void GL_APIENTRY CullFaceContextANGLE(GLeglContext ctx, GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY CurrentPaletteMatrixOESContextANGLE(GLeglContext ctx,
+ GLuint matrixpaletteindex);
+ANGLE_EXPORT void GL_APIENTRY DebugMessageCallbackKHRContextANGLE(GLeglContext ctx,
+ GLDEBUGPROCKHR callback,
+ const void *userParam);
+ANGLE_EXPORT void GL_APIENTRY DebugMessageControlKHRContextANGLE(GLeglContext ctx,
+ GLenum source,
+ GLenum type,
+ GLenum severity,
+ GLsizei count,
+ const GLuint *ids,
+ GLboolean enabled);
+ANGLE_EXPORT void GL_APIENTRY DebugMessageInsertKHRContextANGLE(GLeglContext ctx,
+ GLenum source,
+ GLenum type,
+ GLuint id,
+ GLenum severity,
+ GLsizei length,
+ const GLchar *buf);
+ANGLE_EXPORT void GL_APIENTRY DeleteBuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *buffers);
+ANGLE_EXPORT void GL_APIENTRY DeleteFencesNVContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *fences);
+ANGLE_EXPORT void GL_APIENTRY DeleteFramebuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *framebuffers);
+ANGLE_EXPORT void GL_APIENTRY DeleteFramebuffersOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *framebuffers);
+ANGLE_EXPORT void GL_APIENTRY DeleteMemoryObjectsEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *memoryObjects);
+ANGLE_EXPORT void GL_APIENTRY DeleteProgramContextANGLE(GLeglContext ctx, GLuint program);
+ANGLE_EXPORT void GL_APIENTRY DeleteProgramPipelinesContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *pipelines);
+ANGLE_EXPORT void GL_APIENTRY DeleteQueriesContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY DeleteQueriesEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY DeleteRenderbuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *renderbuffers);
+ANGLE_EXPORT void GL_APIENTRY DeleteRenderbuffersOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *renderbuffers);
+ANGLE_EXPORT void GL_APIENTRY DeleteSamplersContextANGLE(GLeglContext ctx,
+ GLsizei count,
+ const GLuint *samplers);
+ANGLE_EXPORT void GL_APIENTRY DeleteSemaphoresEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *semaphores);
+ANGLE_EXPORT void GL_APIENTRY DeleteShaderContextANGLE(GLeglContext ctx, GLuint shader);
+ANGLE_EXPORT void GL_APIENTRY DeleteSyncContextANGLE(GLeglContext ctx, GLsync sync);
+ANGLE_EXPORT void GL_APIENTRY DeleteTexturesContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *textures);
+ANGLE_EXPORT void GL_APIENTRY DeleteTransformFeedbacksContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY DeleteVertexArraysContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *arrays);
+ANGLE_EXPORT void GL_APIENTRY DeleteVertexArraysOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *arrays);
+ANGLE_EXPORT void GL_APIENTRY DepthFuncContextANGLE(GLeglContext ctx, GLenum func);
+ANGLE_EXPORT void GL_APIENTRY DepthMaskContextANGLE(GLeglContext ctx, GLboolean flag);
+ANGLE_EXPORT void GL_APIENTRY DepthRangefContextANGLE(GLeglContext ctx, GLfloat n, GLfloat f);
+ANGLE_EXPORT void GL_APIENTRY DepthRangexContextANGLE(GLeglContext ctx, GLfixed n, GLfixed f);
+ANGLE_EXPORT void GL_APIENTRY DetachShaderContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint shader);
+ANGLE_EXPORT void GL_APIENTRY DisableContextANGLE(GLeglContext ctx, GLenum cap);
+ANGLE_EXPORT void GL_APIENTRY DisableClientStateContextANGLE(GLeglContext ctx, GLenum array);
+ANGLE_EXPORT void GL_APIENTRY DisableVertexAttribArrayContextANGLE(GLeglContext ctx, GLuint index);
+ANGLE_EXPORT void GL_APIENTRY DiscardFramebufferEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments);
+ANGLE_EXPORT void GL_APIENTRY DispatchComputeContextANGLE(GLeglContext ctx,
+ GLuint num_groups_x,
+ GLuint num_groups_y,
+ GLuint num_groups_z);
+ANGLE_EXPORT void GL_APIENTRY DispatchComputeIndirectContextANGLE(GLeglContext ctx,
+ GLintptr indirect);
+ANGLE_EXPORT void GL_APIENTRY DrawArraysContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint first,
+ GLsizei count);
+ANGLE_EXPORT void GL_APIENTRY DrawArraysIndirectContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const void *indirect);
+ANGLE_EXPORT void GL_APIENTRY DrawArraysInstancedContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei instancecount);
+ANGLE_EXPORT void GL_APIENTRY DrawArraysInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei primcount);
+ANGLE_EXPORT void GL_APIENTRY DrawArraysInstancedEXTContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint start,
+ GLsizei count,
+ GLsizei primcount);
+ANGLE_EXPORT void GL_APIENTRY DrawBuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLenum *bufs);
+ANGLE_EXPORT void GL_APIENTRY DrawBuffersEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLenum *bufs);
+ANGLE_EXPORT void GL_APIENTRY DrawElementsContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices);
+ANGLE_EXPORT void GL_APIENTRY DrawElementsIndirectContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLenum type,
+ const void *indirect);
+ANGLE_EXPORT void GL_APIENTRY DrawElementsInstancedContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei instancecount);
+ANGLE_EXPORT void GL_APIENTRY DrawElementsInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount);
+ANGLE_EXPORT void GL_APIENTRY DrawElementsInstancedEXTContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount);
+ANGLE_EXPORT void GL_APIENTRY DrawRangeElementsContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLuint start,
+ GLuint end,
+ GLsizei count,
+ GLenum type,
+ const void *indices);
+ANGLE_EXPORT void GL_APIENTRY DrawTexfOESContextANGLE(GLeglContext ctx,
+ GLfloat x,
+ GLfloat y,
+ GLfloat z,
+ GLfloat width,
+ GLfloat height);
+ANGLE_EXPORT void GL_APIENTRY DrawTexfvOESContextANGLE(GLeglContext ctx, const GLfloat *coords);
+ANGLE_EXPORT void GL_APIENTRY
+DrawTexiOESContextANGLE(GLeglContext ctx, GLint x, GLint y, GLint z, GLint width, GLint height);
+ANGLE_EXPORT void GL_APIENTRY DrawTexivOESContextANGLE(GLeglContext ctx, const GLint *coords);
+ANGLE_EXPORT void GL_APIENTRY DrawTexsOESContextANGLE(GLeglContext ctx,
+ GLshort x,
+ GLshort y,
+ GLshort z,
+ GLshort width,
+ GLshort height);
+ANGLE_EXPORT void GL_APIENTRY DrawTexsvOESContextANGLE(GLeglContext ctx, const GLshort *coords);
+ANGLE_EXPORT void GL_APIENTRY DrawTexxOESContextANGLE(GLeglContext ctx,
+ GLfixed x,
+ GLfixed y,
+ GLfixed z,
+ GLfixed width,
+ GLfixed height);
+ANGLE_EXPORT void GL_APIENTRY DrawTexxvOESContextANGLE(GLeglContext ctx, const GLfixed *coords);
+ANGLE_EXPORT void GL_APIENTRY EGLImageTargetRenderbufferStorageOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLeglImageOES image);
+ANGLE_EXPORT void GL_APIENTRY EGLImageTargetTexture2DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLeglImageOES image);
+ANGLE_EXPORT void GL_APIENTRY EnableContextANGLE(GLeglContext ctx, GLenum cap);
+ANGLE_EXPORT void GL_APIENTRY EnableClientStateContextANGLE(GLeglContext ctx, GLenum array);
+ANGLE_EXPORT void GL_APIENTRY EnableVertexAttribArrayContextANGLE(GLeglContext ctx, GLuint index);
+ANGLE_EXPORT void GL_APIENTRY EndQueryContextANGLE(GLeglContext ctx, GLenum target);
+ANGLE_EXPORT void GL_APIENTRY EndQueryEXTContextANGLE(GLeglContext ctx, GLenum target);
+ANGLE_EXPORT void GL_APIENTRY EndTransformFeedbackContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT GLsync GL_APIENTRY FenceSyncContextANGLE(GLeglContext ctx,
+ GLenum condition,
+ GLbitfield flags);
+ANGLE_EXPORT void GL_APIENTRY FinishContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY FinishFenceNVContextANGLE(GLeglContext ctx, GLuint fence);
+ANGLE_EXPORT void GL_APIENTRY FlushContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY FlushMappedBufferRangeContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length);
+ANGLE_EXPORT void GL_APIENTRY FlushMappedBufferRangeEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length);
+ANGLE_EXPORT void GL_APIENTRY FogfContextANGLE(GLeglContext ctx, GLenum pname, GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY FogfvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY FogxContextANGLE(GLeglContext ctx, GLenum pname, GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY FogxvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ const GLfixed *param);
+ANGLE_EXPORT void GL_APIENTRY FramebufferParameteriContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint param);
+ANGLE_EXPORT void GL_APIENTRY FramebufferRenderbufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer);
+ANGLE_EXPORT void GL_APIENTRY FramebufferRenderbufferOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer);
+ANGLE_EXPORT void GL_APIENTRY FramebufferTexture2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level);
+ANGLE_EXPORT void GL_APIENTRY FramebufferTexture2DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level);
+ANGLE_EXPORT void GL_APIENTRY FramebufferTexture3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level,
+ GLint zoffset);
+ANGLE_EXPORT void GL_APIENTRY FramebufferTextureEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level);
+ANGLE_EXPORT void GL_APIENTRY FramebufferTextureLayerContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint layer);
+ANGLE_EXPORT void GL_APIENTRY FramebufferTextureMultiviewOVRContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint baseViewIndex,
+ GLsizei numViews);
+ANGLE_EXPORT void GL_APIENTRY FrontFaceContextANGLE(GLeglContext ctx, GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY FrustumfContextANGLE(GLeglContext ctx,
+ GLfloat l,
+ GLfloat r,
+ GLfloat b,
+ GLfloat t,
+ GLfloat n,
+ GLfloat f);
+ANGLE_EXPORT void GL_APIENTRY FrustumxContextANGLE(GLeglContext ctx,
+ GLfixed l,
+ GLfixed r,
+ GLfixed b,
+ GLfixed t,
+ GLfixed n,
+ GLfixed f);
+ANGLE_EXPORT void GL_APIENTRY GenBuffersContextANGLE(GLeglContext ctx, GLsizei n, GLuint *buffers);
+ANGLE_EXPORT void GL_APIENTRY GenFencesNVContextANGLE(GLeglContext ctx, GLsizei n, GLuint *fences);
+ANGLE_EXPORT void GL_APIENTRY GenFramebuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *framebuffers);
+ANGLE_EXPORT void GL_APIENTRY GenFramebuffersOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *framebuffers);
+ANGLE_EXPORT void GL_APIENTRY GenProgramPipelinesContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *pipelines);
+ANGLE_EXPORT void GL_APIENTRY GenQueriesContextANGLE(GLeglContext ctx, GLsizei n, GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY GenQueriesEXTContextANGLE(GLeglContext ctx, GLsizei n, GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY GenRenderbuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *renderbuffers);
+ANGLE_EXPORT void GL_APIENTRY GenRenderbuffersOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *renderbuffers);
+ANGLE_EXPORT void GL_APIENTRY GenSamplersContextANGLE(GLeglContext ctx,
+ GLsizei count,
+ GLuint *samplers);
+ANGLE_EXPORT void GL_APIENTRY GenSemaphoresEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *semaphores);
+ANGLE_EXPORT void GL_APIENTRY GenTexturesContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *textures);
+ANGLE_EXPORT void GL_APIENTRY GenTransformFeedbacksContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *ids);
+ANGLE_EXPORT void GL_APIENTRY GenVertexArraysContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *arrays);
+ANGLE_EXPORT void GL_APIENTRY GenVertexArraysOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *arrays);
+ANGLE_EXPORT void GL_APIENTRY GenerateMipmapContextANGLE(GLeglContext ctx, GLenum target);
+ANGLE_EXPORT void GL_APIENTRY GenerateMipmapOESContextANGLE(GLeglContext ctx, GLenum target);
+ANGLE_EXPORT void GL_APIENTRY GetActiveAttribContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetActiveUniformContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetActiveUniformBlockNameContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *uniformBlockName);
+ANGLE_EXPORT void GL_APIENTRY GetActiveUniformBlockivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetActiveUniformsivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei uniformCount,
+ const GLuint *uniformIndices,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetAttachedShadersContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei maxCount,
+ GLsizei *count,
+ GLuint *shaders);
+ANGLE_EXPORT GLint GL_APIENTRY GetAttribLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetBooleani_vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLboolean *data);
+ANGLE_EXPORT void GL_APIENTRY GetBooleanvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLboolean *data);
+ANGLE_EXPORT void GL_APIENTRY GetBufferParameteri64vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint64 *params);
+ANGLE_EXPORT void GL_APIENTRY GetBufferParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetBufferPointervContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ void **params);
+ANGLE_EXPORT void GL_APIENTRY GetBufferPointervOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ void **params);
+ANGLE_EXPORT void GL_APIENTRY GetClipPlanefContextANGLE(GLeglContext ctx,
+ GLenum plane,
+ GLfloat *equation);
+ANGLE_EXPORT void GL_APIENTRY GetClipPlanexContextANGLE(GLeglContext ctx,
+ GLenum plane,
+ GLfixed *equation);
+ANGLE_EXPORT GLuint GL_APIENTRY GetDebugMessageLogKHRContextANGLE(GLeglContext ctx,
+ GLuint count,
+ GLsizei bufSize,
+ GLenum *sources,
+ GLenum *types,
+ GLuint *ids,
+ GLenum *severities,
+ GLsizei *lengths,
+ GLchar *messageLog);
+ANGLE_EXPORT GLenum GL_APIENTRY GetErrorContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY GetFenceivNVContextANGLE(GLeglContext ctx,
+ GLuint fence,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetFixedvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetFloatvContextANGLE(GLeglContext ctx, GLenum pname, GLfloat *data);
+ANGLE_EXPORT GLint GL_APIENTRY GetFragDataIndexEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name);
+ANGLE_EXPORT GLint GL_APIENTRY GetFragDataLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetFramebufferAttachmentParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetFramebufferAttachmentParameterivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetFramebufferParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT GLenum GL_APIENTRY GetGraphicsResetStatusEXTContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY GetInteger64i_vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLint64 *data);
+ANGLE_EXPORT void GL_APIENTRY GetInteger64vContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLint64 *data);
+ANGLE_EXPORT void GL_APIENTRY GetIntegeri_vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLint *data);
+ANGLE_EXPORT void GL_APIENTRY GetIntegervContextANGLE(GLeglContext ctx, GLenum pname, GLint *data);
+ANGLE_EXPORT void GL_APIENTRY GetInternalformativContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetLightfvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetLightxvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetMaterialfvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetMaterialxvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetMemoryObjectParameterivEXTContextANGLE(GLeglContext ctx,
+ GLuint memoryObject,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetMultisamplefvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLuint index,
+ GLfloat *val);
+ANGLE_EXPORT void GL_APIENTRY GetObjectLabelKHRContextANGLE(GLeglContext ctx,
+ GLenum identifier,
+ GLuint name,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *label);
+ANGLE_EXPORT void GL_APIENTRY GetObjectPtrLabelKHRContextANGLE(GLeglContext ctx,
+ const void *ptr,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *label);
+ANGLE_EXPORT void GL_APIENTRY GetPointervContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ void **params);
+ANGLE_EXPORT void GL_APIENTRY GetPointervKHRContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ void **params);
+ANGLE_EXPORT void GL_APIENTRY GetProgramBinaryContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary);
+ANGLE_EXPORT void GL_APIENTRY GetProgramBinaryOESContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary);
+ANGLE_EXPORT void GL_APIENTRY GetProgramInfoLogContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog);
+ANGLE_EXPORT void GL_APIENTRY GetProgramInterfaceivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetProgramPipelineInfoLogContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog);
+ANGLE_EXPORT void GL_APIENTRY GetProgramPipelineivContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT GLuint GL_APIENTRY GetProgramResourceIndexContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ const GLchar *name);
+ANGLE_EXPORT GLint GL_APIENTRY GetProgramResourceLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ const GLchar *name);
+ANGLE_EXPORT GLint GL_APIENTRY
+GetProgramResourceLocationIndexEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetProgramResourceNameContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetProgramResourceivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei propCount,
+ const GLenum *props,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetProgramivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjecti64vEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLint64 *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectivEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectui64vEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLuint64 *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectuivContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectuivEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryivEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetRenderbufferParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetRenderbufferParameterivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterIivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterfvContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterivContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSemaphoreParameterui64vEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLenum pname,
+ GLuint64 *params);
+ANGLE_EXPORT void GL_APIENTRY GetShaderInfoLogContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog);
+ANGLE_EXPORT void GL_APIENTRY GetShaderPrecisionFormatContextANGLE(GLeglContext ctx,
+ GLenum shadertype,
+ GLenum precisiontype,
+ GLint *range,
+ GLint *precision);
+ANGLE_EXPORT void GL_APIENTRY GetShaderSourceContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *source);
+ANGLE_EXPORT void GL_APIENTRY GetShaderivContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT const GLubyte *GL_APIENTRY GetStringContextANGLE(GLeglContext ctx, GLenum name);
+ANGLE_EXPORT const GLubyte *GL_APIENTRY GetStringiContextANGLE(GLeglContext ctx,
+ GLenum name,
+ GLuint index);
+ANGLE_EXPORT void GL_APIENTRY GetSyncivContextANGLE(GLeglContext ctx,
+ GLsync sync,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *values);
+ANGLE_EXPORT void GL_APIENTRY GetTexEnvfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexEnvivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexEnvxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexGenfvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexGenivOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexGenxvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterIivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY GetTransformFeedbackVaryingContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *size,
+ GLenum *type,
+ GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetTranslatedShaderSourceANGLEContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei bufsize,
+ GLsizei *length,
+ GLchar *source);
+ANGLE_EXPORT GLuint GL_APIENTRY GetUniformBlockIndexContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *uniformBlockName);
+ANGLE_EXPORT void GL_APIENTRY GetUniformIndicesContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei uniformCount,
+ const GLchar *const *uniformNames,
+ GLuint *uniformIndices);
+ANGLE_EXPORT GLint GL_APIENTRY GetUniformLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetUniformfvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetUniformivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetUniformuivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetUnsignedBytevEXTContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLubyte *data);
+ANGLE_EXPORT void GL_APIENTRY GetUnsignedBytei_vEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLubyte *data);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIuivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribPointervContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ void **pointer);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribfvContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetnUniformfvEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetnUniformivEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY HintContextANGLE(GLeglContext ctx, GLenum target, GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY ImportMemoryFdEXTContextANGLE(GLeglContext ctx,
+ GLuint memory,
+ GLuint64 size,
+ GLenum handleType,
+ GLint fd);
+ANGLE_EXPORT void GL_APIENTRY ImportSemaphoreFdEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLenum handleType,
+ GLint fd);
+ANGLE_EXPORT void GL_APIENTRY InsertEventMarkerEXTContextANGLE(GLeglContext ctx,
+ GLsizei length,
+ const GLchar *marker);
+ANGLE_EXPORT void GL_APIENTRY InvalidateFramebufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments);
+ANGLE_EXPORT void GL_APIENTRY InvalidateSubFramebufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsBufferContextANGLE(GLeglContext ctx, GLuint buffer);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsEnabledContextANGLE(GLeglContext ctx, GLenum cap);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsFenceNVContextANGLE(GLeglContext ctx, GLuint fence);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsFramebufferContextANGLE(GLeglContext ctx, GLuint framebuffer);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsFramebufferOESContextANGLE(GLeglContext ctx,
+ GLuint framebuffer);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsMemoryObjectEXTContextANGLE(GLeglContext ctx,
+ GLuint memoryObject);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsProgramContextANGLE(GLeglContext ctx, GLuint program);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsProgramPipelineContextANGLE(GLeglContext ctx, GLuint pipeline);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsQueryContextANGLE(GLeglContext ctx, GLuint id);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsQueryEXTContextANGLE(GLeglContext ctx, GLuint id);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsRenderbufferContextANGLE(GLeglContext ctx,
+ GLuint renderbuffer);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsRenderbufferOESContextANGLE(GLeglContext ctx,
+ GLuint renderbuffer);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsSemaphoreEXTContextANGLE(GLeglContext ctx, GLuint semaphore);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsSamplerContextANGLE(GLeglContext ctx, GLuint sampler);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsShaderContextANGLE(GLeglContext ctx, GLuint shader);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsSyncContextANGLE(GLeglContext ctx, GLsync sync);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsTextureContextANGLE(GLeglContext ctx, GLuint texture);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsTransformFeedbackContextANGLE(GLeglContext ctx, GLuint id);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsVertexArrayContextANGLE(GLeglContext ctx, GLuint array);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsVertexArrayOESContextANGLE(GLeglContext ctx, GLuint array);
+ANGLE_EXPORT void GL_APIENTRY LightModelfContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY LightModelfvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY LightModelxContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY LightModelxvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ const GLfixed *param);
+ANGLE_EXPORT void GL_APIENTRY LightfContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY LightfvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY LightxContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY LightxvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ const GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY LineWidthContextANGLE(GLeglContext ctx, GLfloat width);
+ANGLE_EXPORT void GL_APIENTRY LineWidthxContextANGLE(GLeglContext ctx, GLfixed width);
+ANGLE_EXPORT void GL_APIENTRY LinkProgramContextANGLE(GLeglContext ctx, GLuint program);
+ANGLE_EXPORT void GL_APIENTRY LoadIdentityContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY LoadMatrixfContextANGLE(GLeglContext ctx, const GLfloat *m);
+ANGLE_EXPORT void GL_APIENTRY LoadMatrixxContextANGLE(GLeglContext ctx, const GLfixed *m);
+ANGLE_EXPORT void GL_APIENTRY LoadPaletteFromModelViewMatrixOESContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY LogicOpContextANGLE(GLeglContext ctx, GLenum opcode);
+ANGLE_EXPORT void *GL_APIENTRY MapBufferOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum access);
+ANGLE_EXPORT void *GL_APIENTRY MapBufferRangeContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access);
+ANGLE_EXPORT void *GL_APIENTRY MapBufferRangeEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access);
+ANGLE_EXPORT void GL_APIENTRY MaterialfContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY MaterialfvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY MaterialxContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY MaterialxvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ const GLfixed *param);
+ANGLE_EXPORT void GL_APIENTRY MatrixIndexPointerOESContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY MatrixModeContextANGLE(GLeglContext ctx, GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY MaxShaderCompilerThreadsKHRContextANGLE(GLeglContext ctx,
+ GLuint count);
+ANGLE_EXPORT void GL_APIENTRY MemoryBarrierContextANGLE(GLeglContext ctx, GLbitfield barriers);
+ANGLE_EXPORT void GL_APIENTRY MemoryBarrierByRegionContextANGLE(GLeglContext ctx,
+ GLbitfield barriers);
+ANGLE_EXPORT void GL_APIENTRY MemoryObjectParameterivEXTContextANGLE(GLeglContext ctx,
+ GLuint memoryObject,
+ GLenum pname,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY MultMatrixfContextANGLE(GLeglContext ctx, const GLfloat *m);
+ANGLE_EXPORT void GL_APIENTRY MultMatrixxContextANGLE(GLeglContext ctx, const GLfixed *m);
+ANGLE_EXPORT void GL_APIENTRY MultiTexCoord4fContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLfloat s,
+ GLfloat t,
+ GLfloat r,
+ GLfloat q);
+ANGLE_EXPORT void GL_APIENTRY MultiTexCoord4xContextANGLE(GLeglContext ctx,
+ GLenum texture,
+ GLfixed s,
+ GLfixed t,
+ GLfixed r,
+ GLfixed q);
+ANGLE_EXPORT void GL_APIENTRY Normal3fContextANGLE(GLeglContext ctx,
+ GLfloat nx,
+ GLfloat ny,
+ GLfloat nz);
+ANGLE_EXPORT void GL_APIENTRY Normal3xContextANGLE(GLeglContext ctx,
+ GLfixed nx,
+ GLfixed ny,
+ GLfixed nz);
+ANGLE_EXPORT void GL_APIENTRY NormalPointerContextANGLE(GLeglContext ctx,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY ObjectLabelKHRContextANGLE(GLeglContext ctx,
+ GLenum identifier,
+ GLuint name,
+ GLsizei length,
+ const GLchar *label);
+ANGLE_EXPORT void GL_APIENTRY ObjectPtrLabelKHRContextANGLE(GLeglContext ctx,
+ const void *ptr,
+ GLsizei length,
+ const GLchar *label);
+ANGLE_EXPORT void GL_APIENTRY OrthofContextANGLE(GLeglContext ctx,
+ GLfloat l,
+ GLfloat r,
+ GLfloat b,
+ GLfloat t,
+ GLfloat n,
+ GLfloat f);
+ANGLE_EXPORT void GL_APIENTRY OrthoxContextANGLE(GLeglContext ctx,
+ GLfixed l,
+ GLfixed r,
+ GLfixed b,
+ GLfixed t,
+ GLfixed n,
+ GLfixed f);
+ANGLE_EXPORT void GL_APIENTRY PauseTransformFeedbackContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY PixelStoreiContextANGLE(GLeglContext ctx, GLenum pname, GLint param);
+ANGLE_EXPORT void GL_APIENTRY PointParameterfContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY PointParameterfvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY PointParameterxContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY PointParameterxvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ const GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY PointSizeContextANGLE(GLeglContext ctx, GLfloat size);
+ANGLE_EXPORT void GL_APIENTRY PointSizePointerOESContextANGLE(GLeglContext ctx,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY PointSizexContextANGLE(GLeglContext ctx, GLfixed size);
+ANGLE_EXPORT void GL_APIENTRY PolygonOffsetContextANGLE(GLeglContext ctx,
+ GLfloat factor,
+ GLfloat units);
+ANGLE_EXPORT void GL_APIENTRY PolygonOffsetxContextANGLE(GLeglContext ctx,
+ GLfixed factor,
+ GLfixed units);
+ANGLE_EXPORT void GL_APIENTRY PopDebugGroupKHRContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY PopGroupMarkerEXTContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY PopMatrixContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY ProgramBinaryContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLsizei length);
+ANGLE_EXPORT void GL_APIENTRY ProgramBinaryOESContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLint length);
+ANGLE_EXPORT void GL_APIENTRY ProgramParameteriContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum pname,
+ GLint value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1iContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint v0);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform1uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY
+ProgramUniform2iContextANGLE(GLeglContext ctx, GLuint program, GLint location, GLint v0, GLint v1);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform2uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform3fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1,
+ GLfloat v2);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform3iContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint v0,
+ GLint v1,
+ GLint v2);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform3ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform3uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1,
+ GLuint v2);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform3uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform4fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1,
+ GLfloat v2,
+ GLfloat v3);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform4iContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint v0,
+ GLint v1,
+ GLint v2,
+ GLint v3);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform4ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform4uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1,
+ GLuint v2,
+ GLuint v3);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniform4uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix2x3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix2x4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix3x2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix3x4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix4x2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY ProgramUniformMatrix4x3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY PushDebugGroupKHRContextANGLE(GLeglContext ctx,
+ GLenum source,
+ GLuint id,
+ GLsizei length,
+ const GLchar *message);
+ANGLE_EXPORT void GL_APIENTRY PushGroupMarkerEXTContextANGLE(GLeglContext ctx,
+ GLsizei length,
+ const GLchar *marker);
+ANGLE_EXPORT void GL_APIENTRY PushMatrixContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY QueryCounterEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum target);
+ANGLE_EXPORT GLbitfield GL_APIENTRY QueryMatrixxOESContextANGLE(GLeglContext ctx,
+ GLfixed *mantissa,
+ GLint *exponent);
+ANGLE_EXPORT void GL_APIENTRY ReadBufferContextANGLE(GLeglContext ctx, GLenum src);
+ANGLE_EXPORT void GL_APIENTRY ReadPixelsContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ void *pixels);
+ANGLE_EXPORT void GL_APIENTRY ReadnPixelsEXTContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ void *data);
+ANGLE_EXPORT void GL_APIENTRY ReleaseShaderCompilerContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY RenderbufferStorageContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY RenderbufferStorageMultisampleContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY RenderbufferStorageMultisampleANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY RenderbufferStorageOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY ResumeTransformFeedbackContextANGLE(GLeglContext ctx);
+ANGLE_EXPORT void GL_APIENTRY
+RotatefContextANGLE(GLeglContext ctx, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
+ANGLE_EXPORT void GL_APIENTRY
+RotatexContextANGLE(GLeglContext ctx, GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
+ANGLE_EXPORT void GL_APIENTRY SampleCoverageContextANGLE(GLeglContext ctx,
+ GLfloat value,
+ GLboolean invert);
+ANGLE_EXPORT void GL_APIENTRY SampleCoveragexContextANGLE(GLeglContext ctx,
+ GLclampx value,
+ GLboolean invert);
+ANGLE_EXPORT void GL_APIENTRY SampleMaskiContextANGLE(GLeglContext ctx,
+ GLuint maskNumber,
+ GLbitfield mask);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterIivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLint *param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLuint *param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterfContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterfvContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLfloat *param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameteriContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLint param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterivContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLint *param);
+ANGLE_EXPORT void GL_APIENTRY ScalefContextANGLE(GLeglContext ctx, GLfloat x, GLfloat y, GLfloat z);
+ANGLE_EXPORT void GL_APIENTRY ScalexContextANGLE(GLeglContext ctx, GLfixed x, GLfixed y, GLfixed z);
+ANGLE_EXPORT void GL_APIENTRY
+ScissorContextANGLE(GLeglContext ctx, GLint x, GLint y, GLsizei width, GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY SemaphoreParameterui64vEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLenum pname,
+ const GLuint64 *params);
+ANGLE_EXPORT void GL_APIENTRY SetFenceNVContextANGLE(GLeglContext ctx,
+ GLuint fence,
+ GLenum condition);
+ANGLE_EXPORT void GL_APIENTRY ShadeModelContextANGLE(GLeglContext ctx, GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY ShaderBinaryContextANGLE(GLeglContext ctx,
+ GLsizei count,
+ const GLuint *shaders,
+ GLenum binaryformat,
+ const void *binary,
+ GLsizei length);
+ANGLE_EXPORT void GL_APIENTRY ShaderSourceContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei count,
+ const GLchar *const *string,
+ const GLint *length);
+ANGLE_EXPORT void GL_APIENTRY SignalSemaphoreEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *dstLayouts);
+ANGLE_EXPORT void GL_APIENTRY StencilFuncContextANGLE(GLeglContext ctx,
+ GLenum func,
+ GLint ref,
+ GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY
+StencilFuncSeparateContextANGLE(GLeglContext ctx, GLenum face, GLenum func, GLint ref, GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilMaskContextANGLE(GLeglContext ctx, GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilMaskSeparateContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilOpContextANGLE(GLeglContext ctx,
+ GLenum fail,
+ GLenum zfail,
+ GLenum zpass);
+ANGLE_EXPORT void GL_APIENTRY StencilOpSeparateContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum sfail,
+ GLenum dpfail,
+ GLenum dppass);
+ANGLE_EXPORT GLboolean GL_APIENTRY TestFenceNVContextANGLE(GLeglContext ctx, GLuint fence);
+ANGLE_EXPORT void GL_APIENTRY TexCoordPointerContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY TexEnvfContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY TexEnvfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY TexEnviContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint param);
+ANGLE_EXPORT void GL_APIENTRY TexEnvivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexEnvxContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY TexEnvxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY TexGenfOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY TexGenfvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY TexGeniOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLint param);
+ANGLE_EXPORT void GL_APIENTRY TexGenivOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexGenxOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY TexGenxvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ const GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY TexImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexParameterIivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterfContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat param);
+ANGLE_EXPORT void GL_APIENTRY TexParameterfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameteriContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint param);
+ANGLE_EXPORT void GL_APIENTRY TexParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterxContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed param);
+ANGLE_EXPORT void GL_APIENTRY TexParameterxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfixed *params);
+ANGLE_EXPORT void GL_APIENTRY TexStorage1DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width);
+ANGLE_EXPORT void GL_APIENTRY TexStorage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY TexStorage2DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY TexStorage2DMultisampleContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations);
+ANGLE_EXPORT void GL_APIENTRY TexStorage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth);
+ANGLE_EXPORT void GL_APIENTRY TexStorage3DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth);
+ANGLE_EXPORT void GL_APIENTRY
+TexStorage3DMultisampleOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedsamplelocations);
+ANGLE_EXPORT void GL_APIENTRY TexStorageMem2DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLuint memory,
+ GLuint64 offset);
+ANGLE_EXPORT void GL_APIENTRY
+TexStorageMem2DMultisampleEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset);
+ANGLE_EXPORT void GL_APIENTRY TexStorageMem3DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLuint memory,
+ GLuint64 offset);
+ANGLE_EXPORT void GL_APIENTRY
+TexStorageMem3DMultisampleEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TransformFeedbackVaryingsContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei count,
+ const GLchar *const *varyings,
+ GLenum bufferMode);
+ANGLE_EXPORT void GL_APIENTRY TranslatefContextANGLE(GLeglContext ctx,
+ GLfloat x,
+ GLfloat y,
+ GLfloat z);
+ANGLE_EXPORT void GL_APIENTRY TranslatexContextANGLE(GLeglContext ctx,
+ GLfixed x,
+ GLfixed y,
+ GLfixed z);
+ANGLE_EXPORT void GL_APIENTRY Uniform1fContextANGLE(GLeglContext ctx, GLint location, GLfloat v0);
+ANGLE_EXPORT void GL_APIENTRY Uniform1fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform1iContextANGLE(GLeglContext ctx, GLint location, GLint v0);
+ANGLE_EXPORT void GL_APIENTRY Uniform1ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform1uiContextANGLE(GLeglContext ctx, GLint location, GLuint v0);
+ANGLE_EXPORT void GL_APIENTRY Uniform1uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform2fContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1);
+ANGLE_EXPORT void GL_APIENTRY Uniform2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform2iContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLint v0,
+ GLint v1);
+ANGLE_EXPORT void GL_APIENTRY Uniform2ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform2uiContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLuint v0,
+ GLuint v1);
+ANGLE_EXPORT void GL_APIENTRY Uniform2uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY
+Uniform3fContextANGLE(GLeglContext ctx, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
+ANGLE_EXPORT void GL_APIENTRY Uniform3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY
+Uniform3iContextANGLE(GLeglContext ctx, GLint location, GLint v0, GLint v1, GLint v2);
+ANGLE_EXPORT void GL_APIENTRY Uniform3ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY
+Uniform3uiContextANGLE(GLeglContext ctx, GLint location, GLuint v0, GLuint v1, GLuint v2);
+ANGLE_EXPORT void GL_APIENTRY Uniform3uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform4fContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1,
+ GLfloat v2,
+ GLfloat v3);
+ANGLE_EXPORT void GL_APIENTRY Uniform4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY
+Uniform4iContextANGLE(GLeglContext ctx, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
+ANGLE_EXPORT void GL_APIENTRY Uniform4ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value);
+ANGLE_EXPORT void GL_APIENTRY Uniform4uiContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLuint v0,
+ GLuint v1,
+ GLuint v2,
+ GLuint v3);
+ANGLE_EXPORT void GL_APIENTRY Uniform4uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value);
+ANGLE_EXPORT void GL_APIENTRY UniformBlockBindingContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLuint uniformBlockBinding);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix2x3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix2x4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix3x2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix3x4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix4x2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY UniformMatrix4x3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value);
+ANGLE_EXPORT GLboolean GL_APIENTRY UnmapBufferContextANGLE(GLeglContext ctx, GLenum target);
+ANGLE_EXPORT GLboolean GL_APIENTRY UnmapBufferOESContextANGLE(GLeglContext ctx, GLenum target);
+ANGLE_EXPORT void GL_APIENTRY UseProgramContextANGLE(GLeglContext ctx, GLuint program);
+ANGLE_EXPORT void GL_APIENTRY UseProgramStagesContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLbitfield stages,
+ GLuint program);
+ANGLE_EXPORT void GL_APIENTRY ValidateProgramContextANGLE(GLeglContext ctx, GLuint program);
+ANGLE_EXPORT void GL_APIENTRY ValidateProgramPipelineContextANGLE(GLeglContext ctx,
+ GLuint pipeline);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib1fContextANGLE(GLeglContext ctx, GLuint index, GLfloat x);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib1fvContextANGLE(GLeglContext ctx,
+ GLuint index,
+ const GLfloat *v);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib2fContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLfloat x,
+ GLfloat y);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib2fvContextANGLE(GLeglContext ctx,
+ GLuint index,
+ const GLfloat *v);
+ANGLE_EXPORT void GL_APIENTRY
+VertexAttrib3fContextANGLE(GLeglContext ctx, GLuint index, GLfloat x, GLfloat y, GLfloat z);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib3fvContextANGLE(GLeglContext ctx,
+ GLuint index,
+ const GLfloat *v);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib4fContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLfloat x,
+ GLfloat y,
+ GLfloat z,
+ GLfloat w);
+ANGLE_EXPORT void GL_APIENTRY VertexAttrib4fvContextANGLE(GLeglContext ctx,
+ GLuint index,
+ const GLfloat *v);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribBindingContextANGLE(GLeglContext ctx,
+ GLuint attribindex,
+ GLuint bindingindex);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribDivisorContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLuint divisor);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribDivisorANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLuint divisor);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribDivisorEXTContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLuint divisor);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribFormatContextANGLE(GLeglContext ctx,
+ GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLuint relativeoffset);
+ANGLE_EXPORT void GL_APIENTRY
+VertexAttribI4iContextANGLE(GLeglContext ctx, GLuint index, GLint x, GLint y, GLint z, GLint w);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribI4ivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ const GLint *v);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribI4uiContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLuint x,
+ GLuint y,
+ GLuint z,
+ GLuint w);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribI4uivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ const GLuint *v);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribIFormatContextANGLE(GLeglContext ctx,
+ GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLuint relativeoffset);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribIPointerContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY VertexAttribPointerContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY VertexBindingDivisorContextANGLE(GLeglContext ctx,
+ GLuint bindingindex,
+ GLuint divisor);
+ANGLE_EXPORT void GL_APIENTRY VertexPointerContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY
+ViewportContextANGLE(GLeglContext ctx, GLint x, GLint y, GLsizei width, GLsizei height);
+ANGLE_EXPORT void GL_APIENTRY WaitSemaphoreEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *srcLayouts);
+ANGLE_EXPORT void GL_APIENTRY WaitSyncContextANGLE(GLeglContext ctx,
+ GLsync sync,
+ GLbitfield flags,
+ GLuint64 timeout);
+ANGLE_EXPORT void GL_APIENTRY WeightPointerOESContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer);
+ANGLE_EXPORT void GL_APIENTRY BindUniformLocationCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY CoverageModulationCHROMIUMContextANGLE(GLeglContext ctx,
+ GLenum components);
+ANGLE_EXPORT void GL_APIENTRY MatrixLoadfCHROMIUMContextANGLE(GLeglContext ctx,
+ GLenum matrixMode,
+ const GLfloat *matrix);
+ANGLE_EXPORT void GL_APIENTRY MatrixLoadIdentityCHROMIUMContextANGLE(GLeglContext ctx,
+ GLenum matrixMode);
+ANGLE_EXPORT GLuint GL_APIENTRY GenPathsCHROMIUMContextANGLE(GLeglContext ctx, GLsizei range);
+ANGLE_EXPORT void GL_APIENTRY DeletePathsCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint first,
+ GLsizei range);
+ANGLE_EXPORT GLboolean GL_APIENTRY IsPathCHROMIUMContextANGLE(GLeglContext ctx, GLuint path);
+ANGLE_EXPORT void GL_APIENTRY PathCommandsCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLsizei numCommands,
+ const GLubyte *commands,
+ GLsizei numCoords,
+ GLenum coordType,
+ const void *coords);
+ANGLE_EXPORT void GL_APIENTRY PathParameterfCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLfloat value);
+ANGLE_EXPORT void GL_APIENTRY PathParameteriCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLint value);
+ANGLE_EXPORT void GL_APIENTRY GetPathParameterfvCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLfloat *value);
+ANGLE_EXPORT void GL_APIENTRY GetPathParameterivCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLint *value);
+ANGLE_EXPORT void GL_APIENTRY PathStencilFuncCHROMIUMContextANGLE(GLeglContext ctx,
+ GLenum func,
+ GLint ref,
+ GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilFillPathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum fillMode,
+ GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY StencilStrokePathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLint reference,
+ GLuint mask);
+ANGLE_EXPORT void GL_APIENTRY CoverFillPathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum coverMode);
+ANGLE_EXPORT void GL_APIENTRY CoverStrokePathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum coverMode);
+ANGLE_EXPORT void GL_APIENTRY StencilThenCoverFillPathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode);
+ANGLE_EXPORT void GL_APIENTRY StencilThenCoverStrokePathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode);
+ANGLE_EXPORT void GL_APIENTRY
+CoverFillPathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY
+CoverStrokePathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY
+StencilStrokePathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY
+StencilFillPathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY
+StencilThenCoverFillPathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY
+StencilThenCoverStrokePathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues);
+ANGLE_EXPORT void GL_APIENTRY BindFragmentInputLocationCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint programs,
+ GLint location,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY
+ProgramPathFragmentInputGenCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLenum genMode,
+ GLint components,
+ const GLfloat *coeffs);
+ANGLE_EXPORT void GL_APIENTRY CopyTextureCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha);
+ANGLE_EXPORT void GL_APIENTRY CopySubTextureCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLint width,
+ GLint height,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha);
+ANGLE_EXPORT void GL_APIENTRY CompressedCopyTextureCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLuint destId);
+ANGLE_EXPORT void GL_APIENTRY RequestExtensionANGLEContextANGLE(GLeglContext ctx,
+ const GLchar *name);
+ANGLE_EXPORT void GL_APIENTRY GetBooleanvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *params);
+ANGLE_EXPORT void GL_APIENTRY GetBufferParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetFloatvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY
+GetFramebufferAttachmentParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetIntegervRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data);
+ANGLE_EXPORT void GL_APIENTRY GetProgramivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetRenderbufferParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetShaderivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetUniformfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetUniformivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribPointervRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **pointer);
+ANGLE_EXPORT void GL_APIENTRY ReadPixelsRobustANGLEContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY TexSubImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLsizei xoffset,
+ GLsizei yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data);
+ANGLE_EXPORT void GL_APIENTRY CompressedTexSubImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data);
+ANGLE_EXPORT void GL_APIENTRY GetQueryivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetBufferPointervRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params);
+ANGLE_EXPORT void GL_APIENTRY GetIntegeri_vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data);
+ANGLE_EXPORT void GL_APIENTRY GetInternalformativRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetVertexAttribIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetUniformuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY
+GetActiveUniformBlockivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetInteger64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data);
+ANGLE_EXPORT void GL_APIENTRY GetInteger64i_vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data);
+ANGLE_EXPORT void GL_APIENTRY GetBufferParameteri64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLuint pname,
+ GLsizei bufSize,
+ const GLint *param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *param);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetFramebufferParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetProgramInterfaceivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetBooleani_vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *data);
+ANGLE_EXPORT void GL_APIENTRY GetMultisamplefvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *val);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetPointervRobustANGLERobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params);
+ANGLE_EXPORT void GL_APIENTRY ReadnPixelsRobustANGLEContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *data);
+ANGLE_EXPORT void GL_APIENTRY GetnUniformfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY GetnUniformivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetnUniformuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params);
+ANGLE_EXPORT void GL_APIENTRY TexParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *param);
+ANGLE_EXPORT void GL_APIENTRY SamplerParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *param);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetSamplerParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjecti64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params);
+ANGLE_EXPORT void GL_APIENTRY GetQueryObjectui64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint64 *params);
+ANGLE_EXPORT void GL_APIENTRY CopyTexture3DANGLEContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha);
+ANGLE_EXPORT void GL_APIENTRY CopySubTexture3DANGLEContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLint z,
+ GLint width,
+ GLint height,
+ GLint depth,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha);
+ANGLE_EXPORT void GL_APIENTRY
+TexStorage2DMultisampleANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterivANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params);
+ANGLE_EXPORT void GL_APIENTRY GetTexLevelParameterfvANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params);
+ANGLE_EXPORT void GL_APIENTRY MultiDrawArraysANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ GLsizei drawcount);
+ANGLE_EXPORT void GL_APIENTRY
+MultiDrawArraysInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount);
+ANGLE_EXPORT void GL_APIENTRY MultiDrawElementsANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ GLsizei drawcount);
+ANGLE_EXPORT void GL_APIENTRY
+MultiDrawElementsInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount);
+ANGLE_EXPORT void GL_APIENTRY GetMultisamplefvANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLuint index,
+ GLfloat *val);
+ANGLE_EXPORT void GL_APIENTRY SampleMaskiANGLEContextANGLE(GLeglContext ctx,
+ GLuint maskNumber,
+ GLbitfield mask);
+ANGLE_EXPORT void GL_APIENTRY ProvokingVertexANGLEContextANGLE(GLeglContext ctx, GLenum mode);
+ANGLE_EXPORT void GL_APIENTRY LoseContextCHROMIUMContextANGLE(GLeglContext ctx,
+ GLenum current,
+ GLenum other);
+ANGLE_EXPORT void GL_APIENTRY TexImage2DExternalANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type);
+ANGLE_EXPORT void GL_APIENTRY InvalidateTextureANGLEContextANGLE(GLeglContext ctx, GLenum target);
+} // namespace gl
+
+#endif // LIBGLESV2_ENTRY_POINTS_GLES_EXT_AUTOGEN_H_
diff --git a/gfx/angle/checkout/src/libGLESv2/global_state.cpp b/gfx/angle/checkout/src/libGLESv2/global_state.cpp
new file mode 100644
index 0000000000..f9830a0f80
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/global_state.cpp
@@ -0,0 +1,225 @@
+//
+// Copyright(c) 2014 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.
+//
+
+// global_state.cpp : Implements functions for querying the thread-local GL and EGL state.
+
+#include "libGLESv2/global_state.h"
+
+#include "common/debug.h"
+#include "common/platform.h"
+#include "common/tls.h"
+
+namespace gl
+{
+// In single-threaded cases we can avoid a TLS lookup for the current Context.
+//
+// Let a global single-threaded context have 3 states: unset, set, and multi-threaded.
+// Initially it is unset. Then, on MakeCurrent:
+//
+// * if the ST context is unset -> set the global context.
+// * if the ST context is set and matches the TLS -> set the global context.
+// * if the ST context is set and does not match TLS -> set multi-threaded mode.
+// * if in multi-threaded mode, unset and subsequently ignore the global context.
+//
+// Implementation-wise we can use a pointer and a boolean to represent the three modes.
+Context *gSingleThreadedContext = nullptr;
+bool gIsMultiThreadedContext = false;
+} // namespace gl
+
+namespace egl
+{
+namespace
+{
+static TLSIndex threadTLS = TLS_INVALID_INDEX;
+Debug *g_Debug = nullptr;
+std::atomic<std::mutex *> g_Mutex;
+
+Thread *AllocateCurrentThread()
+{
+ ASSERT(threadTLS != TLS_INVALID_INDEX);
+ if (threadTLS == TLS_INVALID_INDEX)
+ {
+ return nullptr;
+ }
+
+ Thread *thread = new Thread();
+ if (!SetTLSValue(threadTLS, thread))
+ {
+ ERR() << "Could not set thread local storage.";
+ return nullptr;
+ }
+
+ return thread;
+}
+
+void AllocateDebug()
+{
+ // All EGL calls use a global lock, this is thread safe
+ if (g_Debug == nullptr)
+ {
+ g_Debug = new Debug();
+ }
+}
+
+void AllocateMutex()
+{
+ if (g_Mutex == nullptr)
+ {
+ std::unique_ptr<std::mutex> newMutex(new std::mutex());
+ std::mutex *expected = nullptr;
+ if (g_Mutex.compare_exchange_strong(expected, newMutex.get()))
+ {
+ newMutex.release();
+ }
+ }
+}
+
+} // anonymous namespace
+
+std::mutex &GetGlobalMutex()
+{
+ AllocateMutex();
+ return *g_Mutex;
+}
+
+Thread *GetCurrentThread()
+{
+ // Create a TLS index if one has not been created for this DLL
+ if (threadTLS == TLS_INVALID_INDEX)
+ {
+ threadTLS = CreateTLSIndex();
+ }
+
+ Thread *current = static_cast<Thread *>(GetTLSValue(threadTLS));
+
+ // ANGLE issue 488: when the dll is loaded after thread initialization,
+ // thread local storage (current) might not exist yet.
+ return (current ? current : AllocateCurrentThread());
+}
+
+Debug *GetDebug()
+{
+ AllocateDebug();
+ return g_Debug;
+}
+
+void SetContextCurrent(Thread *thread, gl::Context *context)
+{
+ // See above comment on gGlobalContext.
+ // If the context is in multi-threaded mode, ignore the global context.
+ if (!gl::gIsMultiThreadedContext)
+ {
+ // If the global context is unset or matches the current TLS, set the global context.
+ if (gl::gSingleThreadedContext == nullptr ||
+ gl::gSingleThreadedContext == thread->getContext())
+ {
+ gl::gSingleThreadedContext = context;
+ }
+ else
+ {
+ // If the global context is set and does not match TLS, set multi-threaded mode.
+ gl::gSingleThreadedContext = nullptr;
+ gl::gIsMultiThreadedContext = true;
+ }
+ }
+ thread->setCurrent(context);
+}
+} // namespace egl
+
+#ifdef ANGLE_PLATFORM_WINDOWS
+namespace egl
+{
+
+namespace
+{
+
+bool DeallocateCurrentThread()
+{
+ Thread *thread = static_cast<Thread *>(GetTLSValue(threadTLS));
+ SafeDelete(thread);
+ return SetTLSValue(threadTLS, nullptr);
+}
+
+void DeallocateDebug()
+{
+ SafeDelete(g_Debug);
+}
+
+void DeallocateMutex()
+{
+ std::mutex *mutex = g_Mutex.exchange(nullptr);
+ {
+ // Wait for the mutex to become released by other threads before deleting.
+ std::lock_guard<std::mutex> lock(*mutex);
+ }
+ SafeDelete(mutex);
+}
+
+bool InitializeProcess()
+{
+ ASSERT(g_Debug == nullptr);
+ AllocateDebug();
+
+ AllocateMutex();
+
+ threadTLS = CreateTLSIndex();
+ if (threadTLS == TLS_INVALID_INDEX)
+ {
+ return false;
+ }
+
+ return AllocateCurrentThread() != nullptr;
+}
+
+bool TerminateProcess()
+{
+ DeallocateDebug();
+
+ DeallocateMutex();
+
+ if (!DeallocateCurrentThread())
+ {
+ return false;
+ }
+
+ if (threadTLS != TLS_INVALID_INDEX)
+ {
+ TLSIndex tlsCopy = threadTLS;
+ threadTLS = TLS_INVALID_INDEX;
+
+ if (!DestroyTLSIndex(tlsCopy))
+ {
+ return false;
+ }
+ }
+
+ return true;
+}
+
+} // anonymous namespace
+
+} // namespace egl
+
+extern "C" BOOL WINAPI DllMain(HINSTANCE, DWORD reason, LPVOID)
+{
+ switch (reason)
+ {
+ case DLL_PROCESS_ATTACH:
+ return static_cast<BOOL>(egl::InitializeProcess());
+
+ case DLL_THREAD_ATTACH:
+ return static_cast<BOOL>(egl::AllocateCurrentThread() != nullptr);
+
+ case DLL_THREAD_DETACH:
+ return static_cast<BOOL>(egl::DeallocateCurrentThread());
+
+ case DLL_PROCESS_DETACH:
+ return static_cast<BOOL>(egl::TerminateProcess());
+ }
+
+ return TRUE;
+}
+#endif // ANGLE_PLATFORM_WINDOWS
diff --git a/gfx/angle/checkout/src/libGLESv2/global_state.h b/gfx/angle/checkout/src/libGLESv2/global_state.h
new file mode 100644
index 0000000000..8d55b91905
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/global_state.h
@@ -0,0 +1,61 @@
+//
+// Copyright(c) 2014 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.
+//
+
+// global_state.h : Defines functions for querying the thread-local GL and EGL state.
+
+#ifndef LIBGLESV2_GLOBALSTATE_H_
+#define LIBGLESV2_GLOBALSTATE_H_
+
+#include "libANGLE/Context.h"
+#include "libANGLE/Debug.h"
+#include "libANGLE/Thread.h"
+#include "libANGLE/features.h"
+
+#include <mutex>
+
+namespace egl
+{
+class Debug;
+class Thread;
+
+std::mutex &GetGlobalMutex();
+Thread *GetCurrentThread();
+Debug *GetDebug();
+void SetContextCurrent(Thread *thread, gl::Context *context);
+} // namespace egl
+
+#define ANGLE_SCOPED_GLOBAL_LOCK() \
+ std::lock_guard<std::mutex> globalMutexLock(egl::GetGlobalMutex())
+
+namespace gl
+{
+extern Context *gSingleThreadedContext;
+
+ANGLE_INLINE Context *GetGlobalContext()
+{
+ if (gSingleThreadedContext)
+ {
+ return gSingleThreadedContext;
+ }
+
+ egl::Thread *thread = egl::GetCurrentThread();
+ return thread->getContext();
+}
+
+ANGLE_INLINE Context *GetValidGlobalContext()
+{
+ if (gSingleThreadedContext && !gSingleThreadedContext->isContextLost())
+ {
+ return gSingleThreadedContext;
+ }
+
+ egl::Thread *thread = egl::GetCurrentThread();
+ return thread->getValidContext();
+}
+
+} // namespace gl
+
+#endif // LIBGLESV2_GLOBALSTATE_H_
diff --git a/gfx/angle/checkout/src/libGLESv2/libGLESv2.rc b/gfx/angle/checkout/src/libGLESv2/libGLESv2.rc
new file mode 100644
index 0000000000..4c3d137304
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/libGLESv2.rc
@@ -0,0 +1,103 @@
+// Microsoft Visual C++ generated resource script.
+//
+#include "resource.h"
+
+#define APSTUDIO_READONLY_SYMBOLS
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 2 resource.
+//
+#include <windows.h>
+#include "../common/version.h"
+
+/////////////////////////////////////////////////////////////////////////////
+#undef APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+// English (U.S.) resources
+
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
+#ifdef _WIN32
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
+#pragma code_page(1252)
+#endif //_WIN32
+
+#ifdef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// TEXTINCLUDE
+//
+
+1 TEXTINCLUDE
+BEGIN
+ "resource.h\0"
+END
+
+2 TEXTINCLUDE
+BEGIN
+ "#include ""afxres.h""\r\n"
+ "#include ""../common/version.h""\0"
+END
+
+3 TEXTINCLUDE
+BEGIN
+ "\r\n"
+ "\0"
+END
+
+#endif // APSTUDIO_INVOKED
+
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Version
+//
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION ANGLE_MAJOR_VERSION,ANGLE_MINOR_VERSION,ANGLE_REVISION,0
+ PRODUCTVERSION ANGLE_MAJOR_VERSION,ANGLE_MINOR_VERSION,ANGLE_REVISION,0
+ FILEFLAGSMASK 0x17L
+#ifdef _DEBUG
+ FILEFLAGS 0x1L
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS 0x4L
+ FILETYPE 0x2L
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904b0"
+ BEGIN
+ VALUE "FileDescription", "ANGLE libGLESv2 Dynamic Link Library"
+ VALUE "FileVersion", ANGLE_VERSION_STRING
+ VALUE "InternalName", "libGLESv2"
+ VALUE "LegalCopyright", "Copyright (C) 2015 Google Inc."
+ VALUE "OriginalFilename", "libGLESv2.dll"
+ VALUE "PrivateBuild", ANGLE_VERSION_STRING
+ VALUE "ProductName", "ANGLE libGLESv2 Dynamic Link Library"
+ VALUE "ProductVersion", ANGLE_VERSION_STRING
+ VALUE "Comments", "Build Date: " ANGLE_COMMIT_DATE
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+END
+
+#endif // English (U.S.) resources
+/////////////////////////////////////////////////////////////////////////////
+
+
+
+#ifndef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 3 resource.
+//
+
+
+/////////////////////////////////////////////////////////////////////////////
+#endif // not APSTUDIO_INVOKED
diff --git a/gfx/angle/checkout/src/libGLESv2/libGLESv2_autogen.cpp b/gfx/angle/checkout/src/libGLESv2/libGLESv2_autogen.cpp
new file mode 100644
index 0000000000..d5a4ae3628
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/libGLESv2_autogen.cpp
@@ -0,0 +1,9775 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by generate_entry_points.py using data from gl.xml and gl_angle_ext.xml.
+//
+// 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.
+//
+// libGLESv2.cpp: Implements the exported OpenGL ES functions.
+
+#include "angle_gl.h"
+
+#include "libGLESv2/entry_points_gles_1_0_autogen.h"
+#include "libGLESv2/entry_points_gles_2_0_autogen.h"
+#include "libGLESv2/entry_points_gles_3_0_autogen.h"
+#include "libGLESv2/entry_points_gles_3_1_autogen.h"
+#include "libGLESv2/entry_points_gles_ext_autogen.h"
+
+#include "common/event_tracer.h"
+
+extern "C" {
+
+// OpenGL ES 2.0
+void GL_APIENTRY glActiveTexture(GLenum texture)
+{
+ return gl::ActiveTexture(texture);
+}
+
+void GL_APIENTRY glAttachShader(GLuint program, GLuint shader)
+{
+ return gl::AttachShader(program, shader);
+}
+
+void GL_APIENTRY glBindAttribLocation(GLuint program, GLuint index, const GLchar *name)
+{
+ return gl::BindAttribLocation(program, index, name);
+}
+
+void GL_APIENTRY glBindBuffer(GLenum target, GLuint buffer)
+{
+ return gl::BindBuffer(target, buffer);
+}
+
+void GL_APIENTRY glBindFramebuffer(GLenum target, GLuint framebuffer)
+{
+ return gl::BindFramebuffer(target, framebuffer);
+}
+
+void GL_APIENTRY glBindRenderbuffer(GLenum target, GLuint renderbuffer)
+{
+ return gl::BindRenderbuffer(target, renderbuffer);
+}
+
+void GL_APIENTRY glBindTexture(GLenum target, GLuint texture)
+{
+ return gl::BindTexture(target, texture);
+}
+
+void GL_APIENTRY glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ return gl::BlendColor(red, green, blue, alpha);
+}
+
+void GL_APIENTRY glBlendEquation(GLenum mode)
+{
+ return gl::BlendEquation(mode);
+}
+
+void GL_APIENTRY glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha)
+{
+ return gl::BlendEquationSeparate(modeRGB, modeAlpha);
+}
+
+void GL_APIENTRY glBlendFunc(GLenum sfactor, GLenum dfactor)
+{
+ return gl::BlendFunc(sfactor, dfactor);
+}
+
+void GL_APIENTRY glBlendFuncSeparate(GLenum sfactorRGB,
+ GLenum dfactorRGB,
+ GLenum sfactorAlpha,
+ GLenum dfactorAlpha)
+{
+ return gl::BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
+}
+
+void GL_APIENTRY glBufferData(GLenum target, GLsizeiptr size, const void *data, GLenum usage)
+{
+ return gl::BufferData(target, size, data, usage);
+}
+
+void GL_APIENTRY glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, const void *data)
+{
+ return gl::BufferSubData(target, offset, size, data);
+}
+
+GLenum GL_APIENTRY glCheckFramebufferStatus(GLenum target)
+{
+ return gl::CheckFramebufferStatus(target);
+}
+
+void GL_APIENTRY glClear(GLbitfield mask)
+{
+ return gl::Clear(mask);
+}
+
+void GL_APIENTRY glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ return gl::ClearColor(red, green, blue, alpha);
+}
+
+void GL_APIENTRY glClearDepthf(GLfloat d)
+{
+ return gl::ClearDepthf(d);
+}
+
+void GL_APIENTRY glClearStencil(GLint s)
+{
+ return gl::ClearStencil(s);
+}
+
+void GL_APIENTRY glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+ return gl::ColorMask(red, green, blue, alpha);
+}
+
+void GL_APIENTRY glCompileShader(GLuint shader)
+{
+ return gl::CompileShader(shader);
+}
+
+void GL_APIENTRY glCompressedTexImage2D(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize,
+ data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage2D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format,
+ imageSize, data);
+}
+
+void GL_APIENTRY glCopyTexImage2D(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLint border)
+{
+ return gl::CopyTexImage2D(target, level, internalformat, x, y, width, height, border);
+}
+
+void GL_APIENTRY glCopyTexSubImage2D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
+}
+
+GLuint GL_APIENTRY glCreateProgram()
+{
+ return gl::CreateProgram();
+}
+
+GLuint GL_APIENTRY glCreateShader(GLenum type)
+{
+ return gl::CreateShader(type);
+}
+
+void GL_APIENTRY glCullFace(GLenum mode)
+{
+ return gl::CullFace(mode);
+}
+
+void GL_APIENTRY glDeleteBuffers(GLsizei n, const GLuint *buffers)
+{
+ return gl::DeleteBuffers(n, buffers);
+}
+
+void GL_APIENTRY glDeleteFramebuffers(GLsizei n, const GLuint *framebuffers)
+{
+ return gl::DeleteFramebuffers(n, framebuffers);
+}
+
+void GL_APIENTRY glDeleteProgram(GLuint program)
+{
+ return gl::DeleteProgram(program);
+}
+
+void GL_APIENTRY glDeleteRenderbuffers(GLsizei n, const GLuint *renderbuffers)
+{
+ return gl::DeleteRenderbuffers(n, renderbuffers);
+}
+
+void GL_APIENTRY glDeleteShader(GLuint shader)
+{
+ return gl::DeleteShader(shader);
+}
+
+void GL_APIENTRY glDeleteTextures(GLsizei n, const GLuint *textures)
+{
+ return gl::DeleteTextures(n, textures);
+}
+
+void GL_APIENTRY glDepthFunc(GLenum func)
+{
+ return gl::DepthFunc(func);
+}
+
+void GL_APIENTRY glDepthMask(GLboolean flag)
+{
+ return gl::DepthMask(flag);
+}
+
+void GL_APIENTRY glDepthRangef(GLfloat n, GLfloat f)
+{
+ return gl::DepthRangef(n, f);
+}
+
+void GL_APIENTRY glDetachShader(GLuint program, GLuint shader)
+{
+ return gl::DetachShader(program, shader);
+}
+
+void GL_APIENTRY glDisable(GLenum cap)
+{
+ return gl::Disable(cap);
+}
+
+void GL_APIENTRY glDisableVertexAttribArray(GLuint index)
+{
+ return gl::DisableVertexAttribArray(index);
+}
+
+void GL_APIENTRY glDrawArrays(GLenum mode, GLint first, GLsizei count)
+{
+ return gl::DrawArrays(mode, first, count);
+}
+
+void GL_APIENTRY glDrawElements(GLenum mode, GLsizei count, GLenum type, const void *indices)
+{
+ return gl::DrawElements(mode, count, type, indices);
+}
+
+void GL_APIENTRY glEnable(GLenum cap)
+{
+ return gl::Enable(cap);
+}
+
+void GL_APIENTRY glEnableVertexAttribArray(GLuint index)
+{
+ return gl::EnableVertexAttribArray(index);
+}
+
+void GL_APIENTRY glFinish()
+{
+ return gl::Finish();
+}
+
+void GL_APIENTRY glFlush()
+{
+ return gl::Flush();
+}
+
+void GL_APIENTRY glFramebufferRenderbuffer(GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer)
+{
+ return gl::FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+void GL_APIENTRY glFramebufferTexture2D(GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level)
+{
+ return gl::FramebufferTexture2D(target, attachment, textarget, texture, level);
+}
+
+void GL_APIENTRY glFrontFace(GLenum mode)
+{
+ return gl::FrontFace(mode);
+}
+
+void GL_APIENTRY glGenBuffers(GLsizei n, GLuint *buffers)
+{
+ return gl::GenBuffers(n, buffers);
+}
+
+void GL_APIENTRY glGenFramebuffers(GLsizei n, GLuint *framebuffers)
+{
+ return gl::GenFramebuffers(n, framebuffers);
+}
+
+void GL_APIENTRY glGenRenderbuffers(GLsizei n, GLuint *renderbuffers)
+{
+ return gl::GenRenderbuffers(n, renderbuffers);
+}
+
+void GL_APIENTRY glGenTextures(GLsizei n, GLuint *textures)
+{
+ return gl::GenTextures(n, textures);
+}
+
+void GL_APIENTRY glGenerateMipmap(GLenum target)
+{
+ return gl::GenerateMipmap(target);
+}
+
+void GL_APIENTRY glGetActiveAttrib(GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name)
+{
+ return gl::GetActiveAttrib(program, index, bufSize, length, size, type, name);
+}
+
+void GL_APIENTRY glGetActiveUniform(GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name)
+{
+ return gl::GetActiveUniform(program, index, bufSize, length, size, type, name);
+}
+
+void GL_APIENTRY glGetAttachedShaders(GLuint program,
+ GLsizei maxCount,
+ GLsizei *count,
+ GLuint *shaders)
+{
+ return gl::GetAttachedShaders(program, maxCount, count, shaders);
+}
+
+GLint GL_APIENTRY glGetAttribLocation(GLuint program, const GLchar *name)
+{
+ return gl::GetAttribLocation(program, name);
+}
+
+void GL_APIENTRY glGetBooleanv(GLenum pname, GLboolean *data)
+{
+ return gl::GetBooleanv(pname, data);
+}
+
+void GL_APIENTRY glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ return gl::GetBufferParameteriv(target, pname, params);
+}
+
+GLenum GL_APIENTRY glGetError()
+{
+ return gl::GetError();
+}
+
+void GL_APIENTRY glGetFloatv(GLenum pname, GLfloat *data)
+{
+ return gl::GetFloatv(pname, data);
+}
+
+void GL_APIENTRY glGetFramebufferAttachmentParameteriv(GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetFramebufferAttachmentParameteriv(target, attachment, pname, params);
+}
+
+void GL_APIENTRY glGetIntegerv(GLenum pname, GLint *data)
+{
+ return gl::GetIntegerv(pname, data);
+}
+
+void GL_APIENTRY glGetProgramInfoLog(GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ return gl::GetProgramInfoLog(program, bufSize, length, infoLog);
+}
+
+void GL_APIENTRY glGetProgramiv(GLuint program, GLenum pname, GLint *params)
+{
+ return gl::GetProgramiv(program, pname, params);
+}
+
+void GL_APIENTRY glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ return gl::GetRenderbufferParameteriv(target, pname, params);
+}
+
+void GL_APIENTRY glGetShaderInfoLog(GLuint shader,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ return gl::GetShaderInfoLog(shader, bufSize, length, infoLog);
+}
+
+void GL_APIENTRY glGetShaderPrecisionFormat(GLenum shadertype,
+ GLenum precisiontype,
+ GLint *range,
+ GLint *precision)
+{
+ return gl::GetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
+}
+
+void GL_APIENTRY glGetShaderSource(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source)
+{
+ return gl::GetShaderSource(shader, bufSize, length, source);
+}
+
+void GL_APIENTRY glGetShaderiv(GLuint shader, GLenum pname, GLint *params)
+{
+ return gl::GetShaderiv(shader, pname, params);
+}
+
+const GLubyte *GL_APIENTRY glGetString(GLenum name)
+{
+ return gl::GetString(name);
+}
+
+void GL_APIENTRY glGetTexParameterfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ return gl::GetTexParameterfv(target, pname, params);
+}
+
+void GL_APIENTRY glGetTexParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ return gl::GetTexParameteriv(target, pname, params);
+}
+
+GLint GL_APIENTRY glGetUniformLocation(GLuint program, const GLchar *name)
+{
+ return gl::GetUniformLocation(program, name);
+}
+
+void GL_APIENTRY glGetUniformfv(GLuint program, GLint location, GLfloat *params)
+{
+ return gl::GetUniformfv(program, location, params);
+}
+
+void GL_APIENTRY glGetUniformiv(GLuint program, GLint location, GLint *params)
+{
+ return gl::GetUniformiv(program, location, params);
+}
+
+void GL_APIENTRY glGetVertexAttribPointerv(GLuint index, GLenum pname, void **pointer)
+{
+ return gl::GetVertexAttribPointerv(index, pname, pointer);
+}
+
+void GL_APIENTRY glGetVertexAttribfv(GLuint index, GLenum pname, GLfloat *params)
+{
+ return gl::GetVertexAttribfv(index, pname, params);
+}
+
+void GL_APIENTRY glGetVertexAttribiv(GLuint index, GLenum pname, GLint *params)
+{
+ return gl::GetVertexAttribiv(index, pname, params);
+}
+
+void GL_APIENTRY glHint(GLenum target, GLenum mode)
+{
+ return gl::Hint(target, mode);
+}
+
+GLboolean GL_APIENTRY glIsBuffer(GLuint buffer)
+{
+ return gl::IsBuffer(buffer);
+}
+
+GLboolean GL_APIENTRY glIsEnabled(GLenum cap)
+{
+ return gl::IsEnabled(cap);
+}
+
+GLboolean GL_APIENTRY glIsFramebuffer(GLuint framebuffer)
+{
+ return gl::IsFramebuffer(framebuffer);
+}
+
+GLboolean GL_APIENTRY glIsProgram(GLuint program)
+{
+ return gl::IsProgram(program);
+}
+
+GLboolean GL_APIENTRY glIsRenderbuffer(GLuint renderbuffer)
+{
+ return gl::IsRenderbuffer(renderbuffer);
+}
+
+GLboolean GL_APIENTRY glIsShader(GLuint shader)
+{
+ return gl::IsShader(shader);
+}
+
+GLboolean GL_APIENTRY glIsTexture(GLuint texture)
+{
+ return gl::IsTexture(texture);
+}
+
+void GL_APIENTRY glLineWidth(GLfloat width)
+{
+ return gl::LineWidth(width);
+}
+
+void GL_APIENTRY glLinkProgram(GLuint program)
+{
+ return gl::LinkProgram(program);
+}
+
+void GL_APIENTRY glPixelStorei(GLenum pname, GLint param)
+{
+ return gl::PixelStorei(pname, param);
+}
+
+void GL_APIENTRY glPolygonOffset(GLfloat factor, GLfloat units)
+{
+ return gl::PolygonOffset(factor, units);
+}
+
+void GL_APIENTRY glReadPixels(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ void *pixels)
+{
+ return gl::ReadPixels(x, y, width, height, format, type, pixels);
+}
+
+void GL_APIENTRY glReleaseShaderCompiler()
+{
+ return gl::ReleaseShaderCompiler();
+}
+
+void GL_APIENTRY glRenderbufferStorage(GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::RenderbufferStorage(target, internalformat, width, height);
+}
+
+void GL_APIENTRY glSampleCoverage(GLfloat value, GLboolean invert)
+{
+ return gl::SampleCoverage(value, invert);
+}
+
+void GL_APIENTRY glScissor(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ return gl::Scissor(x, y, width, height);
+}
+
+void GL_APIENTRY glShaderBinary(GLsizei count,
+ const GLuint *shaders,
+ GLenum binaryformat,
+ const void *binary,
+ GLsizei length)
+{
+ return gl::ShaderBinary(count, shaders, binaryformat, binary, length);
+}
+
+void GL_APIENTRY glShaderSource(GLuint shader,
+ GLsizei count,
+ const GLchar *const *string,
+ const GLint *length)
+{
+ return gl::ShaderSource(shader, count, string, length);
+}
+
+void GL_APIENTRY glStencilFunc(GLenum func, GLint ref, GLuint mask)
+{
+ return gl::StencilFunc(func, ref, mask);
+}
+
+void GL_APIENTRY glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+ return gl::StencilFuncSeparate(face, func, ref, mask);
+}
+
+void GL_APIENTRY glStencilMask(GLuint mask)
+{
+ return gl::StencilMask(mask);
+}
+
+void GL_APIENTRY glStencilMaskSeparate(GLenum face, GLuint mask)
+{
+ return gl::StencilMaskSeparate(face, mask);
+}
+
+void GL_APIENTRY glStencilOp(GLenum fail, GLenum zfail, GLenum zpass)
+{
+ return gl::StencilOp(fail, zfail, zpass);
+}
+
+void GL_APIENTRY glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass)
+{
+ return gl::StencilOpSeparate(face, sfail, dpfail, dppass);
+}
+
+void GL_APIENTRY glTexImage2D(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexImage2D(target, level, internalformat, width, height, border, format, type,
+ pixels);
+}
+
+void GL_APIENTRY glTexParameterf(GLenum target, GLenum pname, GLfloat param)
+{
+ return gl::TexParameterf(target, pname, param);
+}
+
+void GL_APIENTRY glTexParameterfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ return gl::TexParameterfv(target, pname, params);
+}
+
+void GL_APIENTRY glTexParameteri(GLenum target, GLenum pname, GLint param)
+{
+ return gl::TexParameteri(target, pname, param);
+}
+
+void GL_APIENTRY glTexParameteriv(GLenum target, GLenum pname, const GLint *params)
+{
+ return gl::TexParameteriv(target, pname, params);
+}
+
+void GL_APIENTRY glTexSubImage2D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
+}
+
+void GL_APIENTRY glUniform1f(GLint location, GLfloat v0)
+{
+ return gl::Uniform1f(location, v0);
+}
+
+void GL_APIENTRY glUniform1fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ return gl::Uniform1fv(location, count, value);
+}
+
+void GL_APIENTRY glUniform1i(GLint location, GLint v0)
+{
+ return gl::Uniform1i(location, v0);
+}
+
+void GL_APIENTRY glUniform1iv(GLint location, GLsizei count, const GLint *value)
+{
+ return gl::Uniform1iv(location, count, value);
+}
+
+void GL_APIENTRY glUniform2f(GLint location, GLfloat v0, GLfloat v1)
+{
+ return gl::Uniform2f(location, v0, v1);
+}
+
+void GL_APIENTRY glUniform2fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ return gl::Uniform2fv(location, count, value);
+}
+
+void GL_APIENTRY glUniform2i(GLint location, GLint v0, GLint v1)
+{
+ return gl::Uniform2i(location, v0, v1);
+}
+
+void GL_APIENTRY glUniform2iv(GLint location, GLsizei count, const GLint *value)
+{
+ return gl::Uniform2iv(location, count, value);
+}
+
+void GL_APIENTRY glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ return gl::Uniform3f(location, v0, v1, v2);
+}
+
+void GL_APIENTRY glUniform3fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ return gl::Uniform3fv(location, count, value);
+}
+
+void GL_APIENTRY glUniform3i(GLint location, GLint v0, GLint v1, GLint v2)
+{
+ return gl::Uniform3i(location, v0, v1, v2);
+}
+
+void GL_APIENTRY glUniform3iv(GLint location, GLsizei count, const GLint *value)
+{
+ return gl::Uniform3iv(location, count, value);
+}
+
+void GL_APIENTRY glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ return gl::Uniform4f(location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glUniform4fv(GLint location, GLsizei count, const GLfloat *value)
+{
+ return gl::Uniform4fv(location, count, value);
+}
+
+void GL_APIENTRY glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ return gl::Uniform4i(location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glUniform4iv(GLint location, GLsizei count, const GLint *value)
+{
+ return gl::Uniform4iv(location, count, value);
+}
+
+void GL_APIENTRY glUniformMatrix2fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix2fv(location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix3fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix3fv(location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix4fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix4fv(location, count, transpose, value);
+}
+
+void GL_APIENTRY glUseProgram(GLuint program)
+{
+ return gl::UseProgram(program);
+}
+
+void GL_APIENTRY glValidateProgram(GLuint program)
+{
+ return gl::ValidateProgram(program);
+}
+
+void GL_APIENTRY glVertexAttrib1f(GLuint index, GLfloat x)
+{
+ return gl::VertexAttrib1f(index, x);
+}
+
+void GL_APIENTRY glVertexAttrib1fv(GLuint index, const GLfloat *v)
+{
+ return gl::VertexAttrib1fv(index, v);
+}
+
+void GL_APIENTRY glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y)
+{
+ return gl::VertexAttrib2f(index, x, y);
+}
+
+void GL_APIENTRY glVertexAttrib2fv(GLuint index, const GLfloat *v)
+{
+ return gl::VertexAttrib2fv(index, v);
+}
+
+void GL_APIENTRY glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ return gl::VertexAttrib3f(index, x, y, z);
+}
+
+void GL_APIENTRY glVertexAttrib3fv(GLuint index, const GLfloat *v)
+{
+ return gl::VertexAttrib3fv(index, v);
+}
+
+void GL_APIENTRY glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+ return gl::VertexAttrib4f(index, x, y, z, w);
+}
+
+void GL_APIENTRY glVertexAttrib4fv(GLuint index, const GLfloat *v)
+{
+ return gl::VertexAttrib4fv(index, v);
+}
+
+void GL_APIENTRY glVertexAttribPointer(GLuint index,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::VertexAttribPointer(index, size, type, normalized, stride, pointer);
+}
+
+void GL_APIENTRY glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ return gl::Viewport(x, y, width, height);
+}
+
+// OpenGL ES 3.0
+void GL_APIENTRY glBeginQuery(GLenum target, GLuint id)
+{
+ return gl::BeginQuery(target, id);
+}
+
+void GL_APIENTRY glBeginTransformFeedback(GLenum primitiveMode)
+{
+ return gl::BeginTransformFeedback(primitiveMode);
+}
+
+void GL_APIENTRY glBindBufferBase(GLenum target, GLuint index, GLuint buffer)
+{
+ return gl::BindBufferBase(target, index, buffer);
+}
+
+void GL_APIENTRY
+glBindBufferRange(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+ return gl::BindBufferRange(target, index, buffer, offset, size);
+}
+
+void GL_APIENTRY glBindSampler(GLuint unit, GLuint sampler)
+{
+ return gl::BindSampler(unit, sampler);
+}
+
+void GL_APIENTRY glBindTransformFeedback(GLenum target, GLuint id)
+{
+ return gl::BindTransformFeedback(target, id);
+}
+
+void GL_APIENTRY glBindVertexArray(GLuint array)
+{
+ return gl::BindVertexArray(array);
+}
+
+void GL_APIENTRY glBlitFramebuffer(GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter)
+{
+ return gl::BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask,
+ filter);
+}
+
+void GL_APIENTRY glClearBufferfi(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil)
+{
+ return gl::ClearBufferfi(buffer, drawbuffer, depth, stencil);
+}
+
+void GL_APIENTRY glClearBufferfv(GLenum buffer, GLint drawbuffer, const GLfloat *value)
+{
+ return gl::ClearBufferfv(buffer, drawbuffer, value);
+}
+
+void GL_APIENTRY glClearBufferiv(GLenum buffer, GLint drawbuffer, const GLint *value)
+{
+ return gl::ClearBufferiv(buffer, drawbuffer, value);
+}
+
+void GL_APIENTRY glClearBufferuiv(GLenum buffer, GLint drawbuffer, const GLuint *value)
+{
+ return gl::ClearBufferuiv(buffer, drawbuffer, value);
+}
+
+GLenum GL_APIENTRY glClientWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return gl::ClientWaitSync(sync, flags, timeout);
+}
+
+void GL_APIENTRY glCompressedTexImage3D(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexImage3D(target, level, internalformat, width, height, depth, border,
+ imageSize, data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage3D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height,
+ depth, format, imageSize, data);
+}
+
+void GL_APIENTRY glCopyBufferSubData(GLenum readTarget,
+ GLenum writeTarget,
+ GLintptr readOffset,
+ GLintptr writeOffset,
+ GLsizeiptr size)
+{
+ return gl::CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
+}
+
+void GL_APIENTRY glCopyTexSubImage3D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+void GL_APIENTRY glDeleteQueries(GLsizei n, const GLuint *ids)
+{
+ return gl::DeleteQueries(n, ids);
+}
+
+void GL_APIENTRY glDeleteSamplers(GLsizei count, const GLuint *samplers)
+{
+ return gl::DeleteSamplers(count, samplers);
+}
+
+void GL_APIENTRY glDeleteSync(GLsync sync)
+{
+ return gl::DeleteSync(sync);
+}
+
+void GL_APIENTRY glDeleteTransformFeedbacks(GLsizei n, const GLuint *ids)
+{
+ return gl::DeleteTransformFeedbacks(n, ids);
+}
+
+void GL_APIENTRY glDeleteVertexArrays(GLsizei n, const GLuint *arrays)
+{
+ return gl::DeleteVertexArrays(n, arrays);
+}
+
+void GL_APIENTRY glDrawArraysInstanced(GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei instancecount)
+{
+ return gl::DrawArraysInstanced(mode, first, count, instancecount);
+}
+
+void GL_APIENTRY glDrawBuffers(GLsizei n, const GLenum *bufs)
+{
+ return gl::DrawBuffers(n, bufs);
+}
+
+void GL_APIENTRY glDrawElementsInstanced(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei instancecount)
+{
+ return gl::DrawElementsInstanced(mode, count, type, indices, instancecount);
+}
+
+void GL_APIENTRY glDrawRangeElements(GLenum mode,
+ GLuint start,
+ GLuint end,
+ GLsizei count,
+ GLenum type,
+ const void *indices)
+{
+ return gl::DrawRangeElements(mode, start, end, count, type, indices);
+}
+
+void GL_APIENTRY glEndQuery(GLenum target)
+{
+ return gl::EndQuery(target);
+}
+
+void GL_APIENTRY glEndTransformFeedback()
+{
+ return gl::EndTransformFeedback();
+}
+
+GLsync GL_APIENTRY glFenceSync(GLenum condition, GLbitfield flags)
+{
+ return gl::FenceSync(condition, flags);
+}
+
+void GL_APIENTRY glFlushMappedBufferRange(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ return gl::FlushMappedBufferRange(target, offset, length);
+}
+
+void GL_APIENTRY glFramebufferTextureLayer(GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint layer)
+{
+ return gl::FramebufferTextureLayer(target, attachment, texture, level, layer);
+}
+
+void GL_APIENTRY glGenQueries(GLsizei n, GLuint *ids)
+{
+ return gl::GenQueries(n, ids);
+}
+
+void GL_APIENTRY glGenSamplers(GLsizei count, GLuint *samplers)
+{
+ return gl::GenSamplers(count, samplers);
+}
+
+void GL_APIENTRY glGenTransformFeedbacks(GLsizei n, GLuint *ids)
+{
+ return gl::GenTransformFeedbacks(n, ids);
+}
+
+void GL_APIENTRY glGenVertexArrays(GLsizei n, GLuint *arrays)
+{
+ return gl::GenVertexArrays(n, arrays);
+}
+
+void GL_APIENTRY glGetActiveUniformBlockName(GLuint program,
+ GLuint uniformBlockIndex,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *uniformBlockName)
+{
+ return gl::GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length,
+ uniformBlockName);
+}
+
+void GL_APIENTRY glGetActiveUniformBlockiv(GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
+}
+
+void GL_APIENTRY glGetActiveUniformsiv(GLuint program,
+ GLsizei uniformCount,
+ const GLuint *uniformIndices,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
+}
+
+void GL_APIENTRY glGetBufferParameteri64v(GLenum target, GLenum pname, GLint64 *params)
+{
+ return gl::GetBufferParameteri64v(target, pname, params);
+}
+
+void GL_APIENTRY glGetBufferPointerv(GLenum target, GLenum pname, void **params)
+{
+ return gl::GetBufferPointerv(target, pname, params);
+}
+
+GLint GL_APIENTRY glGetFragDataLocation(GLuint program, const GLchar *name)
+{
+ return gl::GetFragDataLocation(program, name);
+}
+
+void GL_APIENTRY glGetInteger64i_v(GLenum target, GLuint index, GLint64 *data)
+{
+ return gl::GetInteger64i_v(target, index, data);
+}
+
+void GL_APIENTRY glGetInteger64v(GLenum pname, GLint64 *data)
+{
+ return gl::GetInteger64v(pname, data);
+}
+
+void GL_APIENTRY glGetIntegeri_v(GLenum target, GLuint index, GLint *data)
+{
+ return gl::GetIntegeri_v(target, index, data);
+}
+
+void GL_APIENTRY glGetInternalformativ(GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLint *params)
+{
+ return gl::GetInternalformativ(target, internalformat, pname, bufSize, params);
+}
+
+void GL_APIENTRY glGetProgramBinary(GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary)
+{
+ return gl::GetProgramBinary(program, bufSize, length, binaryFormat, binary);
+}
+
+void GL_APIENTRY glGetQueryObjectuiv(GLuint id, GLenum pname, GLuint *params)
+{
+ return gl::GetQueryObjectuiv(id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryiv(GLenum target, GLenum pname, GLint *params)
+{
+ return gl::GetQueryiv(target, pname, params);
+}
+
+void GL_APIENTRY glGetSamplerParameterfv(GLuint sampler, GLenum pname, GLfloat *params)
+{
+ return gl::GetSamplerParameterfv(sampler, pname, params);
+}
+
+void GL_APIENTRY glGetSamplerParameteriv(GLuint sampler, GLenum pname, GLint *params)
+{
+ return gl::GetSamplerParameteriv(sampler, pname, params);
+}
+
+const GLubyte *GL_APIENTRY glGetStringi(GLenum name, GLuint index)
+{
+ return gl::GetStringi(name, index);
+}
+
+void GL_APIENTRY
+glGetSynciv(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values)
+{
+ return gl::GetSynciv(sync, pname, bufSize, length, values);
+}
+
+void GL_APIENTRY glGetTransformFeedbackVarying(GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *size,
+ GLenum *type,
+ GLchar *name)
+{
+ return gl::GetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
+}
+
+GLuint GL_APIENTRY glGetUniformBlockIndex(GLuint program, const GLchar *uniformBlockName)
+{
+ return gl::GetUniformBlockIndex(program, uniformBlockName);
+}
+
+void GL_APIENTRY glGetUniformIndices(GLuint program,
+ GLsizei uniformCount,
+ const GLchar *const *uniformNames,
+ GLuint *uniformIndices)
+{
+ return gl::GetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
+}
+
+void GL_APIENTRY glGetUniformuiv(GLuint program, GLint location, GLuint *params)
+{
+ return gl::GetUniformuiv(program, location, params);
+}
+
+void GL_APIENTRY glGetVertexAttribIiv(GLuint index, GLenum pname, GLint *params)
+{
+ return gl::GetVertexAttribIiv(index, pname, params);
+}
+
+void GL_APIENTRY glGetVertexAttribIuiv(GLuint index, GLenum pname, GLuint *params)
+{
+ return gl::GetVertexAttribIuiv(index, pname, params);
+}
+
+void GL_APIENTRY glInvalidateFramebuffer(GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments)
+{
+ return gl::InvalidateFramebuffer(target, numAttachments, attachments);
+}
+
+void GL_APIENTRY glInvalidateSubFramebuffer(GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::InvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
+}
+
+GLboolean GL_APIENTRY glIsQuery(GLuint id)
+{
+ return gl::IsQuery(id);
+}
+
+GLboolean GL_APIENTRY glIsSampler(GLuint sampler)
+{
+ return gl::IsSampler(sampler);
+}
+
+GLboolean GL_APIENTRY glIsSync(GLsync sync)
+{
+ return gl::IsSync(sync);
+}
+
+GLboolean GL_APIENTRY glIsTransformFeedback(GLuint id)
+{
+ return gl::IsTransformFeedback(id);
+}
+
+GLboolean GL_APIENTRY glIsVertexArray(GLuint array)
+{
+ return gl::IsVertexArray(array);
+}
+
+void *GL_APIENTRY glMapBufferRange(GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access)
+{
+ return gl::MapBufferRange(target, offset, length, access);
+}
+
+void GL_APIENTRY glPauseTransformFeedback()
+{
+ return gl::PauseTransformFeedback();
+}
+
+void GL_APIENTRY glProgramBinary(GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLsizei length)
+{
+ return gl::ProgramBinary(program, binaryFormat, binary, length);
+}
+
+void GL_APIENTRY glProgramParameteri(GLuint program, GLenum pname, GLint value)
+{
+ return gl::ProgramParameteri(program, pname, value);
+}
+
+void GL_APIENTRY glReadBuffer(GLenum src)
+{
+ return gl::ReadBuffer(src);
+}
+
+void GL_APIENTRY glRenderbufferStorageMultisample(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::RenderbufferStorageMultisample(target, samples, internalformat, width, height);
+}
+
+void GL_APIENTRY glResumeTransformFeedback()
+{
+ return gl::ResumeTransformFeedback();
+}
+
+void GL_APIENTRY glSamplerParameterf(GLuint sampler, GLenum pname, GLfloat param)
+{
+ return gl::SamplerParameterf(sampler, pname, param);
+}
+
+void GL_APIENTRY glSamplerParameterfv(GLuint sampler, GLenum pname, const GLfloat *param)
+{
+ return gl::SamplerParameterfv(sampler, pname, param);
+}
+
+void GL_APIENTRY glSamplerParameteri(GLuint sampler, GLenum pname, GLint param)
+{
+ return gl::SamplerParameteri(sampler, pname, param);
+}
+
+void GL_APIENTRY glSamplerParameteriv(GLuint sampler, GLenum pname, const GLint *param)
+{
+ return gl::SamplerParameteriv(sampler, pname, param);
+}
+
+void GL_APIENTRY glTexImage3D(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexImage3D(target, level, internalformat, width, height, depth, border, format, type,
+ pixels);
+}
+
+void GL_APIENTRY
+glTexStorage2D(GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height)
+{
+ return gl::TexStorage2D(target, levels, internalformat, width, height);
+}
+
+void GL_APIENTRY glTexStorage3D(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth)
+{
+ return gl::TexStorage3D(target, levels, internalformat, width, height, depth);
+}
+
+void GL_APIENTRY glTexSubImage3D(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format,
+ type, pixels);
+}
+
+void GL_APIENTRY glTransformFeedbackVaryings(GLuint program,
+ GLsizei count,
+ const GLchar *const *varyings,
+ GLenum bufferMode)
+{
+ return gl::TransformFeedbackVaryings(program, count, varyings, bufferMode);
+}
+
+void GL_APIENTRY glUniform1ui(GLint location, GLuint v0)
+{
+ return gl::Uniform1ui(location, v0);
+}
+
+void GL_APIENTRY glUniform1uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ return gl::Uniform1uiv(location, count, value);
+}
+
+void GL_APIENTRY glUniform2ui(GLint location, GLuint v0, GLuint v1)
+{
+ return gl::Uniform2ui(location, v0, v1);
+}
+
+void GL_APIENTRY glUniform2uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ return gl::Uniform2uiv(location, count, value);
+}
+
+void GL_APIENTRY glUniform3ui(GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ return gl::Uniform3ui(location, v0, v1, v2);
+}
+
+void GL_APIENTRY glUniform3uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ return gl::Uniform3uiv(location, count, value);
+}
+
+void GL_APIENTRY glUniform4ui(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ return gl::Uniform4ui(location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glUniform4uiv(GLint location, GLsizei count, const GLuint *value)
+{
+ return gl::Uniform4uiv(location, count, value);
+}
+
+void GL_APIENTRY glUniformBlockBinding(GLuint program,
+ GLuint uniformBlockIndex,
+ GLuint uniformBlockBinding)
+{
+ return gl::UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
+}
+
+void GL_APIENTRY glUniformMatrix2x3fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix2x3fv(location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix2x4fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix2x4fv(location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix3x2fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix3x2fv(location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix3x4fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix3x4fv(location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix4x2fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix4x2fv(location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix4x3fv(GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix4x3fv(location, count, transpose, value);
+}
+
+GLboolean GL_APIENTRY glUnmapBuffer(GLenum target)
+{
+ return gl::UnmapBuffer(target);
+}
+
+void GL_APIENTRY glVertexAttribDivisor(GLuint index, GLuint divisor)
+{
+ return gl::VertexAttribDivisor(index, divisor);
+}
+
+void GL_APIENTRY glVertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ return gl::VertexAttribI4i(index, x, y, z, w);
+}
+
+void GL_APIENTRY glVertexAttribI4iv(GLuint index, const GLint *v)
+{
+ return gl::VertexAttribI4iv(index, v);
+}
+
+void GL_APIENTRY glVertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w)
+{
+ return gl::VertexAttribI4ui(index, x, y, z, w);
+}
+
+void GL_APIENTRY glVertexAttribI4uiv(GLuint index, const GLuint *v)
+{
+ return gl::VertexAttribI4uiv(index, v);
+}
+
+void GL_APIENTRY
+glVertexAttribIPointer(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ return gl::VertexAttribIPointer(index, size, type, stride, pointer);
+}
+
+void GL_APIENTRY glWaitSync(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+ return gl::WaitSync(sync, flags, timeout);
+}
+
+// OpenGL ES 3.1
+void GL_APIENTRY glActiveShaderProgram(GLuint pipeline, GLuint program)
+{
+ return gl::ActiveShaderProgram(pipeline, program);
+}
+
+void GL_APIENTRY glBindImageTexture(GLuint unit,
+ GLuint texture,
+ GLint level,
+ GLboolean layered,
+ GLint layer,
+ GLenum access,
+ GLenum format)
+{
+ return gl::BindImageTexture(unit, texture, level, layered, layer, access, format);
+}
+
+void GL_APIENTRY glBindProgramPipeline(GLuint pipeline)
+{
+ return gl::BindProgramPipeline(pipeline);
+}
+
+void GL_APIENTRY glBindVertexBuffer(GLuint bindingindex,
+ GLuint buffer,
+ GLintptr offset,
+ GLsizei stride)
+{
+ return gl::BindVertexBuffer(bindingindex, buffer, offset, stride);
+}
+
+GLuint GL_APIENTRY glCreateShaderProgramv(GLenum type, GLsizei count, const GLchar *const *strings)
+{
+ return gl::CreateShaderProgramv(type, count, strings);
+}
+
+void GL_APIENTRY glDeleteProgramPipelines(GLsizei n, const GLuint *pipelines)
+{
+ return gl::DeleteProgramPipelines(n, pipelines);
+}
+
+void GL_APIENTRY glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z)
+{
+ return gl::DispatchCompute(num_groups_x, num_groups_y, num_groups_z);
+}
+
+void GL_APIENTRY glDispatchComputeIndirect(GLintptr indirect)
+{
+ return gl::DispatchComputeIndirect(indirect);
+}
+
+void GL_APIENTRY glDrawArraysIndirect(GLenum mode, const void *indirect)
+{
+ return gl::DrawArraysIndirect(mode, indirect);
+}
+
+void GL_APIENTRY glDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect)
+{
+ return gl::DrawElementsIndirect(mode, type, indirect);
+}
+
+void GL_APIENTRY glFramebufferParameteri(GLenum target, GLenum pname, GLint param)
+{
+ return gl::FramebufferParameteri(target, pname, param);
+}
+
+void GL_APIENTRY glGenProgramPipelines(GLsizei n, GLuint *pipelines)
+{
+ return gl::GenProgramPipelines(n, pipelines);
+}
+
+void GL_APIENTRY glGetBooleani_v(GLenum target, GLuint index, GLboolean *data)
+{
+ return gl::GetBooleani_v(target, index, data);
+}
+
+void GL_APIENTRY glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+ return gl::GetFramebufferParameteriv(target, pname, params);
+}
+
+void GL_APIENTRY glGetMultisamplefv(GLenum pname, GLuint index, GLfloat *val)
+{
+ return gl::GetMultisamplefv(pname, index, val);
+}
+
+void GL_APIENTRY glGetProgramInterfaceiv(GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetProgramInterfaceiv(program, programInterface, pname, params);
+}
+
+void GL_APIENTRY glGetProgramPipelineInfoLog(GLuint pipeline,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ return gl::GetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
+}
+
+void GL_APIENTRY glGetProgramPipelineiv(GLuint pipeline, GLenum pname, GLint *params)
+{
+ return gl::GetProgramPipelineiv(pipeline, pname, params);
+}
+
+GLuint GL_APIENTRY glGetProgramResourceIndex(GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ return gl::GetProgramResourceIndex(program, programInterface, name);
+}
+
+GLint GL_APIENTRY glGetProgramResourceLocation(GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ return gl::GetProgramResourceLocation(program, programInterface, name);
+}
+
+void GL_APIENTRY glGetProgramResourceName(GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *name)
+{
+ return gl::GetProgramResourceName(program, programInterface, index, bufSize, length, name);
+}
+
+void GL_APIENTRY glGetProgramResourceiv(GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei propCount,
+ const GLenum *props,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetProgramResourceiv(program, programInterface, index, propCount, props, bufSize,
+ length, params);
+}
+
+void GL_APIENTRY glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, GLfloat *params)
+{
+ return gl::GetTexLevelParameterfv(target, level, pname, params);
+}
+
+void GL_APIENTRY glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, GLint *params)
+{
+ return gl::GetTexLevelParameteriv(target, level, pname, params);
+}
+
+GLboolean GL_APIENTRY glIsProgramPipeline(GLuint pipeline)
+{
+ return gl::IsProgramPipeline(pipeline);
+}
+
+void GL_APIENTRY glMemoryBarrier(GLbitfield barriers)
+{
+ return gl::MemoryBarrier(barriers);
+}
+
+void GL_APIENTRY glMemoryBarrierByRegion(GLbitfield barriers)
+{
+ return gl::MemoryBarrierByRegion(barriers);
+}
+
+void GL_APIENTRY glProgramUniform1f(GLuint program, GLint location, GLfloat v0)
+{
+ return gl::ProgramUniform1f(program, location, v0);
+}
+
+void GL_APIENTRY glProgramUniform1fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::ProgramUniform1fv(program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform1i(GLuint program, GLint location, GLint v0)
+{
+ return gl::ProgramUniform1i(program, location, v0);
+}
+
+void GL_APIENTRY glProgramUniform1iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::ProgramUniform1iv(program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform1ui(GLuint program, GLint location, GLuint v0)
+{
+ return gl::ProgramUniform1ui(program, location, v0);
+}
+
+void GL_APIENTRY glProgramUniform1uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::ProgramUniform1uiv(program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform2f(GLuint program, GLint location, GLfloat v0, GLfloat v1)
+{
+ return gl::ProgramUniform2f(program, location, v0, v1);
+}
+
+void GL_APIENTRY glProgramUniform2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::ProgramUniform2fv(program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform2i(GLuint program, GLint location, GLint v0, GLint v1)
+{
+ return gl::ProgramUniform2i(program, location, v0, v1);
+}
+
+void GL_APIENTRY glProgramUniform2iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::ProgramUniform2iv(program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform2ui(GLuint program, GLint location, GLuint v0, GLuint v1)
+{
+ return gl::ProgramUniform2ui(program, location, v0, v1);
+}
+
+void GL_APIENTRY glProgramUniform2uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::ProgramUniform2uiv(program, location, count, value);
+}
+
+void GL_APIENTRY
+glProgramUniform3f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ return gl::ProgramUniform3f(program, location, v0, v1, v2);
+}
+
+void GL_APIENTRY glProgramUniform3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::ProgramUniform3fv(program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform3i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ return gl::ProgramUniform3i(program, location, v0, v1, v2);
+}
+
+void GL_APIENTRY glProgramUniform3iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::ProgramUniform3iv(program, location, count, value);
+}
+
+void GL_APIENTRY
+glProgramUniform3ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ return gl::ProgramUniform3ui(program, location, v0, v1, v2);
+}
+
+void GL_APIENTRY glProgramUniform3uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::ProgramUniform3uiv(program, location, count, value);
+}
+
+void GL_APIENTRY
+glProgramUniform4f(GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+ return gl::ProgramUniform4f(program, location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glProgramUniform4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::ProgramUniform4fv(program, location, count, value);
+}
+
+void GL_APIENTRY
+glProgramUniform4i(GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ return gl::ProgramUniform4i(program, location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glProgramUniform4iv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::ProgramUniform4iv(program, location, count, value);
+}
+
+void GL_APIENTRY
+glProgramUniform4ui(GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3)
+{
+ return gl::ProgramUniform4ui(program, location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glProgramUniform4uiv(GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::ProgramUniform4uiv(program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix2fv(program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix2x3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix2x3fv(program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix2x4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix2x4fv(program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix3fv(program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix3x2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix3x2fv(program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix3x4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix3x4fv(program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix4fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix4fv(program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix4x2fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix4x2fv(program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix4x3fv(GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix4x3fv(program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glSampleMaski(GLuint maskNumber, GLbitfield mask)
+{
+ return gl::SampleMaski(maskNumber, mask);
+}
+
+void GL_APIENTRY glTexStorage2DMultisample(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations)
+{
+ return gl::TexStorage2DMultisample(target, samples, internalformat, width, height,
+ fixedsamplelocations);
+}
+
+void GL_APIENTRY glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program)
+{
+ return gl::UseProgramStages(pipeline, stages, program);
+}
+
+void GL_APIENTRY glValidateProgramPipeline(GLuint pipeline)
+{
+ return gl::ValidateProgramPipeline(pipeline);
+}
+
+void GL_APIENTRY glVertexAttribBinding(GLuint attribindex, GLuint bindingindex)
+{
+ return gl::VertexAttribBinding(attribindex, bindingindex);
+}
+
+void GL_APIENTRY glVertexAttribFormat(GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLuint relativeoffset)
+{
+ return gl::VertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
+}
+
+void GL_APIENTRY glVertexAttribIFormat(GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLuint relativeoffset)
+{
+ return gl::VertexAttribIFormat(attribindex, size, type, relativeoffset);
+}
+
+void GL_APIENTRY glVertexBindingDivisor(GLuint bindingindex, GLuint divisor)
+{
+ return gl::VertexBindingDivisor(bindingindex, divisor);
+}
+
+// OpenGL ES 1.0
+void GL_APIENTRY glAlphaFunc(GLenum func, GLfloat ref)
+{
+ return gl::AlphaFunc(func, ref);
+}
+
+void GL_APIENTRY glAlphaFuncx(GLenum func, GLfixed ref)
+{
+ return gl::AlphaFuncx(func, ref);
+}
+
+void GL_APIENTRY glClearColorx(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ return gl::ClearColorx(red, green, blue, alpha);
+}
+
+void GL_APIENTRY glClearDepthx(GLfixed depth)
+{
+ return gl::ClearDepthx(depth);
+}
+
+void GL_APIENTRY glClientActiveTexture(GLenum texture)
+{
+ return gl::ClientActiveTexture(texture);
+}
+
+void GL_APIENTRY glClipPlanef(GLenum p, const GLfloat *eqn)
+{
+ return gl::ClipPlanef(p, eqn);
+}
+
+void GL_APIENTRY glClipPlanex(GLenum plane, const GLfixed *equation)
+{
+ return gl::ClipPlanex(plane, equation);
+}
+
+void GL_APIENTRY glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ return gl::Color4f(red, green, blue, alpha);
+}
+
+void GL_APIENTRY glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ return gl::Color4ub(red, green, blue, alpha);
+}
+
+void GL_APIENTRY glColor4x(GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ return gl::Color4x(red, green, blue, alpha);
+}
+
+void GL_APIENTRY glColorPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ return gl::ColorPointer(size, type, stride, pointer);
+}
+
+void GL_APIENTRY glDepthRangex(GLfixed n, GLfixed f)
+{
+ return gl::DepthRangex(n, f);
+}
+
+void GL_APIENTRY glDisableClientState(GLenum array)
+{
+ return gl::DisableClientState(array);
+}
+
+void GL_APIENTRY glEnableClientState(GLenum array)
+{
+ return gl::EnableClientState(array);
+}
+
+void GL_APIENTRY glFogf(GLenum pname, GLfloat param)
+{
+ return gl::Fogf(pname, param);
+}
+
+void GL_APIENTRY glFogfv(GLenum pname, const GLfloat *params)
+{
+ return gl::Fogfv(pname, params);
+}
+
+void GL_APIENTRY glFogx(GLenum pname, GLfixed param)
+{
+ return gl::Fogx(pname, param);
+}
+
+void GL_APIENTRY glFogxv(GLenum pname, const GLfixed *param)
+{
+ return gl::Fogxv(pname, param);
+}
+
+void GL_APIENTRY glFrustumf(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f)
+{
+ return gl::Frustumf(l, r, b, t, n, f);
+}
+
+void GL_APIENTRY glFrustumx(GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f)
+{
+ return gl::Frustumx(l, r, b, t, n, f);
+}
+
+void GL_APIENTRY glGetClipPlanef(GLenum plane, GLfloat *equation)
+{
+ return gl::GetClipPlanef(plane, equation);
+}
+
+void GL_APIENTRY glGetClipPlanex(GLenum plane, GLfixed *equation)
+{
+ return gl::GetClipPlanex(plane, equation);
+}
+
+void GL_APIENTRY glGetFixedv(GLenum pname, GLfixed *params)
+{
+ return gl::GetFixedv(pname, params);
+}
+
+void GL_APIENTRY glGetLightfv(GLenum light, GLenum pname, GLfloat *params)
+{
+ return gl::GetLightfv(light, pname, params);
+}
+
+void GL_APIENTRY glGetLightxv(GLenum light, GLenum pname, GLfixed *params)
+{
+ return gl::GetLightxv(light, pname, params);
+}
+
+void GL_APIENTRY glGetMaterialfv(GLenum face, GLenum pname, GLfloat *params)
+{
+ return gl::GetMaterialfv(face, pname, params);
+}
+
+void GL_APIENTRY glGetMaterialxv(GLenum face, GLenum pname, GLfixed *params)
+{
+ return gl::GetMaterialxv(face, pname, params);
+}
+
+void GL_APIENTRY glGetPointerv(GLenum pname, void **params)
+{
+ return gl::GetPointerv(pname, params);
+}
+
+void GL_APIENTRY glGetTexEnvfv(GLenum target, GLenum pname, GLfloat *params)
+{
+ return gl::GetTexEnvfv(target, pname, params);
+}
+
+void GL_APIENTRY glGetTexEnviv(GLenum target, GLenum pname, GLint *params)
+{
+ return gl::GetTexEnviv(target, pname, params);
+}
+
+void GL_APIENTRY glGetTexEnvxv(GLenum target, GLenum pname, GLfixed *params)
+{
+ return gl::GetTexEnvxv(target, pname, params);
+}
+
+void GL_APIENTRY glGetTexParameterxv(GLenum target, GLenum pname, GLfixed *params)
+{
+ return gl::GetTexParameterxv(target, pname, params);
+}
+
+void GL_APIENTRY glLightModelf(GLenum pname, GLfloat param)
+{
+ return gl::LightModelf(pname, param);
+}
+
+void GL_APIENTRY glLightModelfv(GLenum pname, const GLfloat *params)
+{
+ return gl::LightModelfv(pname, params);
+}
+
+void GL_APIENTRY glLightModelx(GLenum pname, GLfixed param)
+{
+ return gl::LightModelx(pname, param);
+}
+
+void GL_APIENTRY glLightModelxv(GLenum pname, const GLfixed *param)
+{
+ return gl::LightModelxv(pname, param);
+}
+
+void GL_APIENTRY glLightf(GLenum light, GLenum pname, GLfloat param)
+{
+ return gl::Lightf(light, pname, param);
+}
+
+void GL_APIENTRY glLightfv(GLenum light, GLenum pname, const GLfloat *params)
+{
+ return gl::Lightfv(light, pname, params);
+}
+
+void GL_APIENTRY glLightx(GLenum light, GLenum pname, GLfixed param)
+{
+ return gl::Lightx(light, pname, param);
+}
+
+void GL_APIENTRY glLightxv(GLenum light, GLenum pname, const GLfixed *params)
+{
+ return gl::Lightxv(light, pname, params);
+}
+
+void GL_APIENTRY glLineWidthx(GLfixed width)
+{
+ return gl::LineWidthx(width);
+}
+
+void GL_APIENTRY glLoadIdentity()
+{
+ return gl::LoadIdentity();
+}
+
+void GL_APIENTRY glLoadMatrixf(const GLfloat *m)
+{
+ return gl::LoadMatrixf(m);
+}
+
+void GL_APIENTRY glLoadMatrixx(const GLfixed *m)
+{
+ return gl::LoadMatrixx(m);
+}
+
+void GL_APIENTRY glLogicOp(GLenum opcode)
+{
+ return gl::LogicOp(opcode);
+}
+
+void GL_APIENTRY glMaterialf(GLenum face, GLenum pname, GLfloat param)
+{
+ return gl::Materialf(face, pname, param);
+}
+
+void GL_APIENTRY glMaterialfv(GLenum face, GLenum pname, const GLfloat *params)
+{
+ return gl::Materialfv(face, pname, params);
+}
+
+void GL_APIENTRY glMaterialx(GLenum face, GLenum pname, GLfixed param)
+{
+ return gl::Materialx(face, pname, param);
+}
+
+void GL_APIENTRY glMaterialxv(GLenum face, GLenum pname, const GLfixed *param)
+{
+ return gl::Materialxv(face, pname, param);
+}
+
+void GL_APIENTRY glMatrixMode(GLenum mode)
+{
+ return gl::MatrixMode(mode);
+}
+
+void GL_APIENTRY glMultMatrixf(const GLfloat *m)
+{
+ return gl::MultMatrixf(m);
+}
+
+void GL_APIENTRY glMultMatrixx(const GLfixed *m)
+{
+ return gl::MultMatrixx(m);
+}
+
+void GL_APIENTRY glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+ return gl::MultiTexCoord4f(target, s, t, r, q);
+}
+
+void GL_APIENTRY glMultiTexCoord4x(GLenum texture, GLfixed s, GLfixed t, GLfixed r, GLfixed q)
+{
+ return gl::MultiTexCoord4x(texture, s, t, r, q);
+}
+
+void GL_APIENTRY glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ return gl::Normal3f(nx, ny, nz);
+}
+
+void GL_APIENTRY glNormal3x(GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ return gl::Normal3x(nx, ny, nz);
+}
+
+void GL_APIENTRY glNormalPointer(GLenum type, GLsizei stride, const void *pointer)
+{
+ return gl::NormalPointer(type, stride, pointer);
+}
+
+void GL_APIENTRY glOrthof(GLfloat l, GLfloat r, GLfloat b, GLfloat t, GLfloat n, GLfloat f)
+{
+ return gl::Orthof(l, r, b, t, n, f);
+}
+
+void GL_APIENTRY glOrthox(GLfixed l, GLfixed r, GLfixed b, GLfixed t, GLfixed n, GLfixed f)
+{
+ return gl::Orthox(l, r, b, t, n, f);
+}
+
+void GL_APIENTRY glPointParameterf(GLenum pname, GLfloat param)
+{
+ return gl::PointParameterf(pname, param);
+}
+
+void GL_APIENTRY glPointParameterfv(GLenum pname, const GLfloat *params)
+{
+ return gl::PointParameterfv(pname, params);
+}
+
+void GL_APIENTRY glPointParameterx(GLenum pname, GLfixed param)
+{
+ return gl::PointParameterx(pname, param);
+}
+
+void GL_APIENTRY glPointParameterxv(GLenum pname, const GLfixed *params)
+{
+ return gl::PointParameterxv(pname, params);
+}
+
+void GL_APIENTRY glPointSize(GLfloat size)
+{
+ return gl::PointSize(size);
+}
+
+void GL_APIENTRY glPointSizex(GLfixed size)
+{
+ return gl::PointSizex(size);
+}
+
+void GL_APIENTRY glPolygonOffsetx(GLfixed factor, GLfixed units)
+{
+ return gl::PolygonOffsetx(factor, units);
+}
+
+void GL_APIENTRY glPopMatrix()
+{
+ return gl::PopMatrix();
+}
+
+void GL_APIENTRY glPushMatrix()
+{
+ return gl::PushMatrix();
+}
+
+void GL_APIENTRY glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ return gl::Rotatef(angle, x, y, z);
+}
+
+void GL_APIENTRY glRotatex(GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ return gl::Rotatex(angle, x, y, z);
+}
+
+void GL_APIENTRY glSampleCoveragex(GLclampx value, GLboolean invert)
+{
+ return gl::SampleCoveragex(value, invert);
+}
+
+void GL_APIENTRY glScalef(GLfloat x, GLfloat y, GLfloat z)
+{
+ return gl::Scalef(x, y, z);
+}
+
+void GL_APIENTRY glScalex(GLfixed x, GLfixed y, GLfixed z)
+{
+ return gl::Scalex(x, y, z);
+}
+
+void GL_APIENTRY glShadeModel(GLenum mode)
+{
+ return gl::ShadeModel(mode);
+}
+
+void GL_APIENTRY glTexCoordPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ return gl::TexCoordPointer(size, type, stride, pointer);
+}
+
+void GL_APIENTRY glTexEnvf(GLenum target, GLenum pname, GLfloat param)
+{
+ return gl::TexEnvf(target, pname, param);
+}
+
+void GL_APIENTRY glTexEnvfv(GLenum target, GLenum pname, const GLfloat *params)
+{
+ return gl::TexEnvfv(target, pname, params);
+}
+
+void GL_APIENTRY glTexEnvi(GLenum target, GLenum pname, GLint param)
+{
+ return gl::TexEnvi(target, pname, param);
+}
+
+void GL_APIENTRY glTexEnviv(GLenum target, GLenum pname, const GLint *params)
+{
+ return gl::TexEnviv(target, pname, params);
+}
+
+void GL_APIENTRY glTexEnvx(GLenum target, GLenum pname, GLfixed param)
+{
+ return gl::TexEnvx(target, pname, param);
+}
+
+void GL_APIENTRY glTexEnvxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ return gl::TexEnvxv(target, pname, params);
+}
+
+void GL_APIENTRY glTexParameterx(GLenum target, GLenum pname, GLfixed param)
+{
+ return gl::TexParameterx(target, pname, param);
+}
+
+void GL_APIENTRY glTexParameterxv(GLenum target, GLenum pname, const GLfixed *params)
+{
+ return gl::TexParameterxv(target, pname, params);
+}
+
+void GL_APIENTRY glTranslatef(GLfloat x, GLfloat y, GLfloat z)
+{
+ return gl::Translatef(x, y, z);
+}
+
+void GL_APIENTRY glTranslatex(GLfixed x, GLfixed y, GLfixed z)
+{
+ return gl::Translatex(x, y, z);
+}
+
+void GL_APIENTRY glVertexPointer(GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ return gl::VertexPointer(size, type, stride, pointer);
+}
+
+// GL_ANGLE_copy_texture_3d
+void GL_APIENTRY glCopyTexture3DANGLE(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ return gl::CopyTexture3DANGLE(sourceId, sourceLevel, destTarget, destId, destLevel,
+ internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+}
+
+void GL_APIENTRY glCopySubTexture3DANGLE(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLint z,
+ GLint width,
+ GLint height,
+ GLint depth,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ return gl::CopySubTexture3DANGLE(sourceId, sourceLevel, destTarget, destId, destLevel, xoffset,
+ yoffset, zoffset, x, y, z, width, height, depth, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+}
+
+// GL_ANGLE_framebuffer_blit
+void GL_APIENTRY glBlitFramebufferANGLE(GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter)
+{
+ return gl::BlitFramebufferANGLE(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask,
+ filter);
+}
+
+// GL_ANGLE_framebuffer_multisample
+void GL_APIENTRY glRenderbufferStorageMultisampleANGLE(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::RenderbufferStorageMultisampleANGLE(target, samples, internalformat, width, height);
+}
+
+// GL_ANGLE_instanced_arrays
+void GL_APIENTRY glDrawArraysInstancedANGLE(GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei primcount)
+{
+ return gl::DrawArraysInstancedANGLE(mode, first, count, primcount);
+}
+
+void GL_APIENTRY glDrawElementsInstancedANGLE(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount)
+{
+ return gl::DrawElementsInstancedANGLE(mode, count, type, indices, primcount);
+}
+
+void GL_APIENTRY glVertexAttribDivisorANGLE(GLuint index, GLuint divisor)
+{
+ return gl::VertexAttribDivisorANGLE(index, divisor);
+}
+
+// GL_ANGLE_multi_draw
+void GL_APIENTRY glMultiDrawArraysANGLE(GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ GLsizei drawcount)
+{
+ return gl::MultiDrawArraysANGLE(mode, firsts, counts, drawcount);
+}
+
+void GL_APIENTRY glMultiDrawArraysInstancedANGLE(GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount)
+{
+ return gl::MultiDrawArraysInstancedANGLE(mode, firsts, counts, instanceCounts, drawcount);
+}
+
+void GL_APIENTRY glMultiDrawElementsANGLE(GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ GLsizei drawcount)
+{
+ return gl::MultiDrawElementsANGLE(mode, counts, type, indices, drawcount);
+}
+
+void GL_APIENTRY glMultiDrawElementsInstancedANGLE(GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount)
+{
+ return gl::MultiDrawElementsInstancedANGLE(mode, counts, type, indices, instanceCounts,
+ drawcount);
+}
+
+// GL_ANGLE_provoking_vertex
+void GL_APIENTRY glProvokingVertexANGLE(GLenum mode)
+{
+ return gl::ProvokingVertexANGLE(mode);
+}
+
+// GL_ANGLE_request_extension
+void GL_APIENTRY glRequestExtensionANGLE(const GLchar *name)
+{
+ return gl::RequestExtensionANGLE(name);
+}
+
+// GL_ANGLE_robust_client_memory
+void GL_APIENTRY glGetBooleanvRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *params)
+{
+ return gl::GetBooleanvRobustANGLE(pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetBufferParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetBufferParameterivRobustANGLE(target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetFloatvRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetFloatvRobustANGLE(pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetFramebufferAttachmentParameterivRobustANGLE(GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetFramebufferAttachmentParameterivRobustANGLE(target, attachment, pname, bufSize,
+ length, params);
+}
+
+void GL_APIENTRY glGetIntegervRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data)
+{
+ return gl::GetIntegervRobustANGLE(pname, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetProgramivRobustANGLE(GLuint program,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetProgramivRobustANGLE(program, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetRenderbufferParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetRenderbufferParameterivRobustANGLE(target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetShaderivRobustANGLE(GLuint shader,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetShaderivRobustANGLE(shader, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetTexParameterfvRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetTexParameterfvRobustANGLE(target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetTexParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetTexParameterivRobustANGLE(target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetUniformfvRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetUniformfvRobustANGLE(program, location, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetUniformivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetUniformivRobustANGLE(program, location, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetVertexAttribfvRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetVertexAttribfvRobustANGLE(index, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetVertexAttribivRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetVertexAttribivRobustANGLE(index, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetVertexAttribPointervRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **pointer)
+{
+ return gl::GetVertexAttribPointervRobustANGLE(index, pname, bufSize, length, pointer);
+}
+
+void GL_APIENTRY glReadPixelsRobustANGLE(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *pixels)
+{
+ return gl::ReadPixelsRobustANGLE(x, y, width, height, format, type, bufSize, length, columns,
+ rows, pixels);
+}
+
+void GL_APIENTRY glTexImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ return gl::TexImage2DRobustANGLE(target, level, internalformat, width, height, border, format,
+ type, bufSize, pixels);
+}
+
+void GL_APIENTRY glTexParameterfvRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *params)
+{
+ return gl::TexParameterfvRobustANGLE(target, pname, bufSize, params);
+}
+
+void GL_APIENTRY glTexParameterivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params)
+{
+ return gl::TexParameterivRobustANGLE(target, pname, bufSize, params);
+}
+
+void GL_APIENTRY glTexSubImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ return gl::TexSubImage2DRobustANGLE(target, level, xoffset, yoffset, width, height, format,
+ type, bufSize, pixels);
+}
+
+void GL_APIENTRY glTexImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ return gl::TexImage3DRobustANGLE(target, level, internalformat, width, height, depth, border,
+ format, type, bufSize, pixels);
+}
+
+void GL_APIENTRY glTexSubImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ return gl::TexSubImage3DRobustANGLE(target, level, xoffset, yoffset, zoffset, width, height,
+ depth, format, type, bufSize, pixels);
+}
+
+void GL_APIENTRY glCompressedTexImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ return gl::CompressedTexImage2DRobustANGLE(target, level, internalformat, width, height, border,
+ imageSize, dataSize, data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage2DRobustANGLE(GLenum target,
+ GLint level,
+ GLsizei xoffset,
+ GLsizei yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ return gl::CompressedTexSubImage2DRobustANGLE(target, level, xoffset, yoffset, width, height,
+ format, imageSize, dataSize, data);
+}
+
+void GL_APIENTRY glCompressedTexImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ return gl::CompressedTexImage3DRobustANGLE(target, level, internalformat, width, height, depth,
+ border, imageSize, dataSize, data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage3DRobustANGLE(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ return gl::CompressedTexSubImage3DRobustANGLE(target, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, imageSize, dataSize, data);
+}
+
+void GL_APIENTRY glGetQueryivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetQueryivRobustANGLE(target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetQueryObjectuivRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetQueryObjectuivRobustANGLE(id, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetBufferPointervRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params)
+{
+ return gl::GetBufferPointervRobustANGLE(target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetIntegeri_vRobustANGLE(GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data)
+{
+ return gl::GetIntegeri_vRobustANGLE(target, index, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetInternalformativRobustANGLE(GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetInternalformativRobustANGLE(target, internalformat, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetVertexAttribIivRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetVertexAttribIivRobustANGLE(index, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetVertexAttribIuivRobustANGLE(GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetVertexAttribIuivRobustANGLE(index, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetUniformuivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetUniformuivRobustANGLE(program, location, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetActiveUniformBlockivRobustANGLE(GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetActiveUniformBlockivRobustANGLE(program, uniformBlockIndex, pname, bufSize,
+ length, params);
+}
+
+void GL_APIENTRY glGetInteger64vRobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data)
+{
+ return gl::GetInteger64vRobustANGLE(pname, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetInteger64i_vRobustANGLE(GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data)
+{
+ return gl::GetInteger64i_vRobustANGLE(target, index, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetBufferParameteri64vRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params)
+{
+ return gl::GetBufferParameteri64vRobustANGLE(target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glSamplerParameterivRobustANGLE(GLuint sampler,
+ GLuint pname,
+ GLsizei bufSize,
+ const GLint *param)
+{
+ return gl::SamplerParameterivRobustANGLE(sampler, pname, bufSize, param);
+}
+
+void GL_APIENTRY glSamplerParameterfvRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *param)
+{
+ return gl::SamplerParameterfvRobustANGLE(sampler, pname, bufSize, param);
+}
+
+void GL_APIENTRY glGetSamplerParameterivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetSamplerParameterivRobustANGLE(sampler, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetSamplerParameterfvRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetSamplerParameterfvRobustANGLE(sampler, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetFramebufferParameterivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetFramebufferParameterivRobustANGLE(sampler, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetProgramInterfaceivRobustANGLE(GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetProgramInterfaceivRobustANGLE(program, programInterface, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetBooleani_vRobustANGLE(GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *data)
+{
+ return gl::GetBooleani_vRobustANGLE(target, index, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetMultisamplefvRobustANGLE(GLenum pname,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *val)
+{
+ return gl::GetMultisamplefvRobustANGLE(pname, index, bufSize, length, val);
+}
+
+void GL_APIENTRY glGetTexLevelParameterivRobustANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetTexLevelParameterivRobustANGLE(target, level, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetTexLevelParameterfvRobustANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetTexLevelParameterfvRobustANGLE(target, level, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetPointervRobustANGLERobustANGLE(GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params)
+{
+ return gl::GetPointervRobustANGLERobustANGLE(pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glReadnPixelsRobustANGLE(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *data)
+{
+ return gl::ReadnPixelsRobustANGLE(x, y, width, height, format, type, bufSize, length, columns,
+ rows, data);
+}
+
+void GL_APIENTRY glGetnUniformfvRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetnUniformfvRobustANGLE(program, location, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetnUniformivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetnUniformivRobustANGLE(program, location, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetnUniformuivRobustANGLE(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetnUniformuivRobustANGLE(program, location, bufSize, length, params);
+}
+
+void GL_APIENTRY glTexParameterIivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params)
+{
+ return gl::TexParameterIivRobustANGLE(target, pname, bufSize, params);
+}
+
+void GL_APIENTRY glTexParameterIuivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *params)
+{
+ return gl::TexParameterIuivRobustANGLE(target, pname, bufSize, params);
+}
+
+void GL_APIENTRY glGetTexParameterIivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetTexParameterIivRobustANGLE(target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetTexParameterIuivRobustANGLE(GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetTexParameterIuivRobustANGLE(target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glSamplerParameterIivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *param)
+{
+ return gl::SamplerParameterIivRobustANGLE(sampler, pname, bufSize, param);
+}
+
+void GL_APIENTRY glSamplerParameterIuivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *param)
+{
+ return gl::SamplerParameterIuivRobustANGLE(sampler, pname, bufSize, param);
+}
+
+void GL_APIENTRY glGetSamplerParameterIivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetSamplerParameterIivRobustANGLE(sampler, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetSamplerParameterIuivRobustANGLE(GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetSamplerParameterIuivRobustANGLE(sampler, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetQueryObjectivRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetQueryObjectivRobustANGLE(id, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetQueryObjecti64vRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params)
+{
+ return gl::GetQueryObjecti64vRobustANGLE(id, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetQueryObjectui64vRobustANGLE(GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint64 *params)
+{
+ return gl::GetQueryObjectui64vRobustANGLE(id, pname, bufSize, length, params);
+}
+
+// GL_ANGLE_texture_external_update
+void GL_APIENTRY glTexImage2DExternalANGLE(GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type)
+{
+ return gl::TexImage2DExternalANGLE(target, level, internalformat, width, height, border, format,
+ type);
+}
+
+void GL_APIENTRY glInvalidateTextureANGLE(GLenum target)
+{
+ return gl::InvalidateTextureANGLE(target);
+}
+
+// GL_ANGLE_texture_multisample
+void GL_APIENTRY glTexStorage2DMultisampleANGLE(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations)
+{
+ return gl::TexStorage2DMultisampleANGLE(target, samples, internalformat, width, height,
+ fixedsamplelocations);
+}
+
+void GL_APIENTRY glGetTexLevelParameterivANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetTexLevelParameterivANGLE(target, level, pname, params);
+}
+
+void GL_APIENTRY glGetTexLevelParameterfvANGLE(GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetTexLevelParameterfvANGLE(target, level, pname, params);
+}
+
+void GL_APIENTRY glGetMultisamplefvANGLE(GLenum pname, GLuint index, GLfloat *val)
+{
+ return gl::GetMultisamplefvANGLE(pname, index, val);
+}
+
+void GL_APIENTRY glSampleMaskiANGLE(GLuint maskNumber, GLbitfield mask)
+{
+ return gl::SampleMaskiANGLE(maskNumber, mask);
+}
+
+// GL_ANGLE_translated_shader_source
+void GL_APIENTRY glGetTranslatedShaderSourceANGLE(GLuint shader,
+ GLsizei bufsize,
+ GLsizei *length,
+ GLchar *source)
+{
+ return gl::GetTranslatedShaderSourceANGLE(shader, bufsize, length, source);
+}
+
+// GL_CHROMIUM_bind_uniform_location
+void GL_APIENTRY glBindUniformLocationCHROMIUM(GLuint program, GLint location, const GLchar *name)
+{
+ return gl::BindUniformLocationCHROMIUM(program, location, name);
+}
+
+// GL_CHROMIUM_copy_compressed_texture
+void GL_APIENTRY glCompressedCopyTextureCHROMIUM(GLuint sourceId, GLuint destId)
+{
+ return gl::CompressedCopyTextureCHROMIUM(sourceId, destId);
+}
+
+// GL_CHROMIUM_copy_texture
+void GL_APIENTRY glCopyTextureCHROMIUM(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ return gl::CopyTextureCHROMIUM(sourceId, sourceLevel, destTarget, destId, destLevel,
+ internalFormat, destType, unpackFlipY, unpackPremultiplyAlpha,
+ unpackUnmultiplyAlpha);
+}
+
+void GL_APIENTRY glCopySubTextureCHROMIUM(GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLint width,
+ GLint height,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ return gl::CopySubTextureCHROMIUM(sourceId, sourceLevel, destTarget, destId, destLevel, xoffset,
+ yoffset, x, y, width, height, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+}
+
+// GL_CHROMIUM_framebuffer_mixed_samples
+void GL_APIENTRY glCoverageModulationCHROMIUM(GLenum components)
+{
+ return gl::CoverageModulationCHROMIUM(components);
+}
+
+void GL_APIENTRY glMatrixLoadfCHROMIUM(GLenum matrixMode, const GLfloat *matrix)
+{
+ return gl::MatrixLoadfCHROMIUM(matrixMode, matrix);
+}
+
+void GL_APIENTRY glMatrixLoadIdentityCHROMIUM(GLenum matrixMode)
+{
+ return gl::MatrixLoadIdentityCHROMIUM(matrixMode);
+}
+
+// GL_CHROMIUM_lose_context
+void GL_APIENTRY glLoseContextCHROMIUM(GLenum current, GLenum other)
+{
+ return gl::LoseContextCHROMIUM(current, other);
+}
+
+// GL_CHROMIUM_path_rendering
+GLuint GL_APIENTRY glGenPathsCHROMIUM(GLsizei range)
+{
+ return gl::GenPathsCHROMIUM(range);
+}
+
+void GL_APIENTRY glDeletePathsCHROMIUM(GLuint first, GLsizei range)
+{
+ return gl::DeletePathsCHROMIUM(first, range);
+}
+
+GLboolean GL_APIENTRY glIsPathCHROMIUM(GLuint path)
+{
+ return gl::IsPathCHROMIUM(path);
+}
+
+void GL_APIENTRY glPathCommandsCHROMIUM(GLuint path,
+ GLsizei numCommands,
+ const GLubyte *commands,
+ GLsizei numCoords,
+ GLenum coordType,
+ const void *coords)
+{
+ return gl::PathCommandsCHROMIUM(path, numCommands, commands, numCoords, coordType, coords);
+}
+
+void GL_APIENTRY glPathParameterfCHROMIUM(GLuint path, GLenum pname, GLfloat value)
+{
+ return gl::PathParameterfCHROMIUM(path, pname, value);
+}
+
+void GL_APIENTRY glPathParameteriCHROMIUM(GLuint path, GLenum pname, GLint value)
+{
+ return gl::PathParameteriCHROMIUM(path, pname, value);
+}
+
+void GL_APIENTRY glGetPathParameterfvCHROMIUM(GLuint path, GLenum pname, GLfloat *value)
+{
+ return gl::GetPathParameterfvCHROMIUM(path, pname, value);
+}
+
+void GL_APIENTRY glGetPathParameterivCHROMIUM(GLuint path, GLenum pname, GLint *value)
+{
+ return gl::GetPathParameterivCHROMIUM(path, pname, value);
+}
+
+void GL_APIENTRY glPathStencilFuncCHROMIUM(GLenum func, GLint ref, GLuint mask)
+{
+ return gl::PathStencilFuncCHROMIUM(func, ref, mask);
+}
+
+void GL_APIENTRY glStencilFillPathCHROMIUM(GLuint path, GLenum fillMode, GLuint mask)
+{
+ return gl::StencilFillPathCHROMIUM(path, fillMode, mask);
+}
+
+void GL_APIENTRY glStencilStrokePathCHROMIUM(GLuint path, GLint reference, GLuint mask)
+{
+ return gl::StencilStrokePathCHROMIUM(path, reference, mask);
+}
+
+void GL_APIENTRY glCoverFillPathCHROMIUM(GLuint path, GLenum coverMode)
+{
+ return gl::CoverFillPathCHROMIUM(path, coverMode);
+}
+
+void GL_APIENTRY glCoverStrokePathCHROMIUM(GLuint path, GLenum coverMode)
+{
+ return gl::CoverStrokePathCHROMIUM(path, coverMode);
+}
+
+void GL_APIENTRY glStencilThenCoverFillPathCHROMIUM(GLuint path,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode)
+{
+ return gl::StencilThenCoverFillPathCHROMIUM(path, fillMode, mask, coverMode);
+}
+
+void GL_APIENTRY glStencilThenCoverStrokePathCHROMIUM(GLuint path,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode)
+{
+ return gl::StencilThenCoverStrokePathCHROMIUM(path, reference, mask, coverMode);
+}
+
+void GL_APIENTRY glCoverFillPathInstancedCHROMIUM(GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::CoverFillPathInstancedCHROMIUM(numPath, pathNameType, paths, pathBase, coverMode,
+ transformType, transformValues);
+}
+
+void GL_APIENTRY glCoverStrokePathInstancedCHROMIUM(GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::CoverStrokePathInstancedCHROMIUM(numPath, pathNameType, paths, pathBase, coverMode,
+ transformType, transformValues);
+}
+
+void GL_APIENTRY glStencilStrokePathInstancedCHROMIUM(GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::StencilStrokePathInstancedCHROMIUM(numPath, pathNameType, paths, pathBase, reference,
+ mask, transformType, transformValues);
+}
+
+void GL_APIENTRY glStencilFillPathInstancedCHROMIUM(GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::StencilFillPathInstancedCHROMIUM(numPaths, pathNameType, paths, pathBase, fillMode,
+ mask, transformType, transformValues);
+}
+
+void GL_APIENTRY glStencilThenCoverFillPathInstancedCHROMIUM(GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::StencilThenCoverFillPathInstancedCHROMIUM(numPaths, pathNameType, paths, pathBase,
+ fillMode, mask, coverMode, transformType,
+ transformValues);
+}
+
+void GL_APIENTRY glStencilThenCoverStrokePathInstancedCHROMIUM(GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::StencilThenCoverStrokePathInstancedCHROMIUM(numPaths, pathNameType, paths, pathBase,
+ reference, mask, coverMode,
+ transformType, transformValues);
+}
+
+void GL_APIENTRY glBindFragmentInputLocationCHROMIUM(GLuint programs,
+ GLint location,
+ const GLchar *name)
+{
+ return gl::BindFragmentInputLocationCHROMIUM(programs, location, name);
+}
+
+void GL_APIENTRY glProgramPathFragmentInputGenCHROMIUM(GLuint program,
+ GLint location,
+ GLenum genMode,
+ GLint components,
+ const GLfloat *coeffs)
+{
+ return gl::ProgramPathFragmentInputGenCHROMIUM(program, location, genMode, components, coeffs);
+}
+
+// GL_EXT_blend_func_extended
+void GL_APIENTRY glBindFragDataLocationEXT(GLuint program, GLuint color, const GLchar *name)
+{
+ return gl::BindFragDataLocationEXT(program, color, name);
+}
+
+void GL_APIENTRY glBindFragDataLocationIndexedEXT(GLuint program,
+ GLuint colorNumber,
+ GLuint index,
+ const GLchar *name)
+{
+ return gl::BindFragDataLocationIndexedEXT(program, colorNumber, index, name);
+}
+
+GLint GL_APIENTRY glGetFragDataIndexEXT(GLuint program, const GLchar *name)
+{
+ return gl::GetFragDataIndexEXT(program, name);
+}
+
+GLint GL_APIENTRY glGetProgramResourceLocationIndexEXT(GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ return gl::GetProgramResourceLocationIndexEXT(program, programInterface, name);
+}
+
+// GL_EXT_debug_marker
+void GL_APIENTRY glInsertEventMarkerEXT(GLsizei length, const GLchar *marker)
+{
+ return gl::InsertEventMarkerEXT(length, marker);
+}
+
+void GL_APIENTRY glPopGroupMarkerEXT()
+{
+ return gl::PopGroupMarkerEXT();
+}
+
+void GL_APIENTRY glPushGroupMarkerEXT(GLsizei length, const GLchar *marker)
+{
+ return gl::PushGroupMarkerEXT(length, marker);
+}
+
+// GL_EXT_discard_framebuffer
+void GL_APIENTRY glDiscardFramebufferEXT(GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments)
+{
+ return gl::DiscardFramebufferEXT(target, numAttachments, attachments);
+}
+
+// GL_EXT_disjoint_timer_query
+void GL_APIENTRY glBeginQueryEXT(GLenum target, GLuint id)
+{
+ return gl::BeginQueryEXT(target, id);
+}
+
+void GL_APIENTRY glDeleteQueriesEXT(GLsizei n, const GLuint *ids)
+{
+ return gl::DeleteQueriesEXT(n, ids);
+}
+
+void GL_APIENTRY glEndQueryEXT(GLenum target)
+{
+ return gl::EndQueryEXT(target);
+}
+
+void GL_APIENTRY glGenQueriesEXT(GLsizei n, GLuint *ids)
+{
+ return gl::GenQueriesEXT(n, ids);
+}
+
+void GL_APIENTRY glGetQueryObjecti64vEXT(GLuint id, GLenum pname, GLint64 *params)
+{
+ return gl::GetQueryObjecti64vEXT(id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryObjectivEXT(GLuint id, GLenum pname, GLint *params)
+{
+ return gl::GetQueryObjectivEXT(id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryObjectui64vEXT(GLuint id, GLenum pname, GLuint64 *params)
+{
+ return gl::GetQueryObjectui64vEXT(id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryObjectuivEXT(GLuint id, GLenum pname, GLuint *params)
+{
+ return gl::GetQueryObjectuivEXT(id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryivEXT(GLenum target, GLenum pname, GLint *params)
+{
+ return gl::GetQueryivEXT(target, pname, params);
+}
+
+GLboolean GL_APIENTRY glIsQueryEXT(GLuint id)
+{
+ return gl::IsQueryEXT(id);
+}
+
+void GL_APIENTRY glQueryCounterEXT(GLuint id, GLenum target)
+{
+ return gl::QueryCounterEXT(id, target);
+}
+
+// GL_EXT_draw_buffers
+void GL_APIENTRY glDrawBuffersEXT(GLsizei n, const GLenum *bufs)
+{
+ return gl::DrawBuffersEXT(n, bufs);
+}
+
+// GL_EXT_geometry_shader
+void GL_APIENTRY glFramebufferTextureEXT(GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level)
+{
+ return gl::FramebufferTextureEXT(target, attachment, texture, level);
+}
+
+// GL_EXT_instanced_arrays
+void GL_APIENTRY glDrawArraysInstancedEXT(GLenum mode,
+ GLint start,
+ GLsizei count,
+ GLsizei primcount)
+{
+ return gl::DrawArraysInstancedEXT(mode, start, count, primcount);
+}
+
+void GL_APIENTRY glDrawElementsInstancedEXT(GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount)
+{
+ return gl::DrawElementsInstancedEXT(mode, count, type, indices, primcount);
+}
+
+void GL_APIENTRY glVertexAttribDivisorEXT(GLuint index, GLuint divisor)
+{
+ return gl::VertexAttribDivisorEXT(index, divisor);
+}
+
+// GL_EXT_map_buffer_range
+void GL_APIENTRY glFlushMappedBufferRangeEXT(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+ return gl::FlushMappedBufferRangeEXT(target, offset, length);
+}
+
+void *GL_APIENTRY glMapBufferRangeEXT(GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access)
+{
+ return gl::MapBufferRangeEXT(target, offset, length, access);
+}
+
+// GL_EXT_memory_object
+void GL_APIENTRY glBufferStorageMemEXT(GLenum target,
+ GLsizeiptr size,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::BufferStorageMemEXT(target, size, memory, offset);
+}
+
+void GL_APIENTRY glCreateMemoryObjectsEXT(GLsizei n, GLuint *memoryObjects)
+{
+ return gl::CreateMemoryObjectsEXT(n, memoryObjects);
+}
+
+void GL_APIENTRY glDeleteMemoryObjectsEXT(GLsizei n, const GLuint *memoryObjects)
+{
+ return gl::DeleteMemoryObjectsEXT(n, memoryObjects);
+}
+
+void GL_APIENTRY glGetMemoryObjectParameterivEXT(GLuint memoryObject, GLenum pname, GLint *params)
+{
+ return gl::GetMemoryObjectParameterivEXT(memoryObject, pname, params);
+}
+
+void GL_APIENTRY glGetUnsignedBytevEXT(GLenum pname, GLubyte *data)
+{
+ return gl::GetUnsignedBytevEXT(pname, data);
+}
+
+void GL_APIENTRY glGetUnsignedBytei_vEXT(GLenum target, GLuint index, GLubyte *data)
+{
+ return gl::GetUnsignedBytei_vEXT(target, index, data);
+}
+
+GLboolean GL_APIENTRY glIsMemoryObjectEXT(GLuint memoryObject)
+{
+ return gl::IsMemoryObjectEXT(memoryObject);
+}
+
+void GL_APIENTRY glMemoryObjectParameterivEXT(GLuint memoryObject,
+ GLenum pname,
+ const GLint *params)
+{
+ return gl::MemoryObjectParameterivEXT(memoryObject, pname, params);
+}
+
+void GL_APIENTRY glTexStorageMem2DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::TexStorageMem2DEXT(target, levels, internalFormat, width, height, memory, offset);
+}
+
+void GL_APIENTRY glTexStorageMem2DMultisampleEXT(GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::TexStorageMem2DMultisampleEXT(target, samples, internalFormat, width, height,
+ fixedSampleLocations, memory, offset);
+}
+
+void GL_APIENTRY glTexStorageMem3DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::TexStorageMem3DEXT(target, levels, internalFormat, width, height, depth, memory,
+ offset);
+}
+
+void GL_APIENTRY glTexStorageMem3DMultisampleEXT(GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::TexStorageMem3DMultisampleEXT(target, samples, internalFormat, width, height, depth,
+ fixedSampleLocations, memory, offset);
+}
+
+// GL_EXT_memory_object_fd
+void GL_APIENTRY glImportMemoryFdEXT(GLuint memory, GLuint64 size, GLenum handleType, GLint fd)
+{
+ return gl::ImportMemoryFdEXT(memory, size, handleType, fd);
+}
+
+// GL_EXT_occlusion_query_boolean
+
+// GL_EXT_robustness
+GLenum GL_APIENTRY glGetGraphicsResetStatusEXT()
+{
+ return gl::GetGraphicsResetStatusEXT();
+}
+
+void GL_APIENTRY glGetnUniformfvEXT(GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLfloat *params)
+{
+ return gl::GetnUniformfvEXT(program, location, bufSize, params);
+}
+
+void GL_APIENTRY glGetnUniformivEXT(GLuint program, GLint location, GLsizei bufSize, GLint *params)
+{
+ return gl::GetnUniformivEXT(program, location, bufSize, params);
+}
+
+void GL_APIENTRY glReadnPixelsEXT(GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ void *data)
+{
+ return gl::ReadnPixelsEXT(x, y, width, height, format, type, bufSize, data);
+}
+
+// GL_EXT_semaphore
+void GL_APIENTRY glDeleteSemaphoresEXT(GLsizei n, const GLuint *semaphores)
+{
+ return gl::DeleteSemaphoresEXT(n, semaphores);
+}
+
+void GL_APIENTRY glGenSemaphoresEXT(GLsizei n, GLuint *semaphores)
+{
+ return gl::GenSemaphoresEXT(n, semaphores);
+}
+
+void GL_APIENTRY glGetSemaphoreParameterui64vEXT(GLuint semaphore, GLenum pname, GLuint64 *params)
+{
+ return gl::GetSemaphoreParameterui64vEXT(semaphore, pname, params);
+}
+
+GLboolean GL_APIENTRY glIsSemaphoreEXT(GLuint semaphore)
+{
+ return gl::IsSemaphoreEXT(semaphore);
+}
+
+void GL_APIENTRY glSemaphoreParameterui64vEXT(GLuint semaphore,
+ GLenum pname,
+ const GLuint64 *params)
+{
+ return gl::SemaphoreParameterui64vEXT(semaphore, pname, params);
+}
+
+void GL_APIENTRY glSignalSemaphoreEXT(GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *dstLayouts)
+{
+ return gl::SignalSemaphoreEXT(semaphore, numBufferBarriers, buffers, numTextureBarriers,
+ textures, dstLayouts);
+}
+
+void GL_APIENTRY glWaitSemaphoreEXT(GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *srcLayouts)
+{
+ return gl::WaitSemaphoreEXT(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures,
+ srcLayouts);
+}
+
+// GL_EXT_semaphore_fd
+void GL_APIENTRY glImportSemaphoreFdEXT(GLuint semaphore, GLenum handleType, GLint fd)
+{
+ return gl::ImportSemaphoreFdEXT(semaphore, handleType, fd);
+}
+
+// GL_EXT_texture_storage
+void GL_APIENTRY glTexStorage1DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width)
+{
+ return gl::TexStorage1DEXT(target, levels, internalformat, width);
+}
+
+void GL_APIENTRY glTexStorage2DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::TexStorage2DEXT(target, levels, internalformat, width, height);
+}
+
+void GL_APIENTRY glTexStorage3DEXT(GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth)
+{
+ return gl::TexStorage3DEXT(target, levels, internalformat, width, height, depth);
+}
+
+// GL_KHR_debug
+void GL_APIENTRY glDebugMessageCallbackKHR(GLDEBUGPROCKHR callback, const void *userParam)
+{
+ return gl::DebugMessageCallbackKHR(callback, userParam);
+}
+
+void GL_APIENTRY glDebugMessageControlKHR(GLenum source,
+ GLenum type,
+ GLenum severity,
+ GLsizei count,
+ const GLuint *ids,
+ GLboolean enabled)
+{
+ return gl::DebugMessageControlKHR(source, type, severity, count, ids, enabled);
+}
+
+void GL_APIENTRY glDebugMessageInsertKHR(GLenum source,
+ GLenum type,
+ GLuint id,
+ GLenum severity,
+ GLsizei length,
+ const GLchar *buf)
+{
+ return gl::DebugMessageInsertKHR(source, type, id, severity, length, buf);
+}
+
+GLuint GL_APIENTRY glGetDebugMessageLogKHR(GLuint count,
+ GLsizei bufSize,
+ GLenum *sources,
+ GLenum *types,
+ GLuint *ids,
+ GLenum *severities,
+ GLsizei *lengths,
+ GLchar *messageLog)
+{
+ return gl::GetDebugMessageLogKHR(count, bufSize, sources, types, ids, severities, lengths,
+ messageLog);
+}
+
+void GL_APIENTRY
+glGetObjectLabelKHR(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label)
+{
+ return gl::GetObjectLabelKHR(identifier, name, bufSize, length, label);
+}
+
+void GL_APIENTRY glGetObjectPtrLabelKHR(const void *ptr,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *label)
+{
+ return gl::GetObjectPtrLabelKHR(ptr, bufSize, length, label);
+}
+
+void GL_APIENTRY glGetPointervKHR(GLenum pname, void **params)
+{
+ return gl::GetPointervKHR(pname, params);
+}
+
+void GL_APIENTRY glObjectLabelKHR(GLenum identifier,
+ GLuint name,
+ GLsizei length,
+ const GLchar *label)
+{
+ return gl::ObjectLabelKHR(identifier, name, length, label);
+}
+
+void GL_APIENTRY glObjectPtrLabelKHR(const void *ptr, GLsizei length, const GLchar *label)
+{
+ return gl::ObjectPtrLabelKHR(ptr, length, label);
+}
+
+void GL_APIENTRY glPopDebugGroupKHR()
+{
+ return gl::PopDebugGroupKHR();
+}
+
+void GL_APIENTRY glPushDebugGroupKHR(GLenum source,
+ GLuint id,
+ GLsizei length,
+ const GLchar *message)
+{
+ return gl::PushDebugGroupKHR(source, id, length, message);
+}
+
+// GL_KHR_parallel_shader_compile
+void GL_APIENTRY glMaxShaderCompilerThreadsKHR(GLuint count)
+{
+ return gl::MaxShaderCompilerThreadsKHR(count);
+}
+
+// GL_NV_fence
+void GL_APIENTRY glDeleteFencesNV(GLsizei n, const GLuint *fences)
+{
+ return gl::DeleteFencesNV(n, fences);
+}
+
+void GL_APIENTRY glFinishFenceNV(GLuint fence)
+{
+ return gl::FinishFenceNV(fence);
+}
+
+void GL_APIENTRY glGenFencesNV(GLsizei n, GLuint *fences)
+{
+ return gl::GenFencesNV(n, fences);
+}
+
+void GL_APIENTRY glGetFenceivNV(GLuint fence, GLenum pname, GLint *params)
+{
+ return gl::GetFenceivNV(fence, pname, params);
+}
+
+GLboolean GL_APIENTRY glIsFenceNV(GLuint fence)
+{
+ return gl::IsFenceNV(fence);
+}
+
+void GL_APIENTRY glSetFenceNV(GLuint fence, GLenum condition)
+{
+ return gl::SetFenceNV(fence, condition);
+}
+
+GLboolean GL_APIENTRY glTestFenceNV(GLuint fence)
+{
+ return gl::TestFenceNV(fence);
+}
+
+// GL_OES_EGL_image
+void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image)
+{
+ return gl::EGLImageTargetRenderbufferStorageOES(target, image);
+}
+
+void GL_APIENTRY glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image)
+{
+ return gl::EGLImageTargetTexture2DOES(target, image);
+}
+
+// GL_OES_draw_texture
+void GL_APIENTRY glDrawTexfOES(GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height)
+{
+ return gl::DrawTexfOES(x, y, z, width, height);
+}
+
+void GL_APIENTRY glDrawTexfvOES(const GLfloat *coords)
+{
+ return gl::DrawTexfvOES(coords);
+}
+
+void GL_APIENTRY glDrawTexiOES(GLint x, GLint y, GLint z, GLint width, GLint height)
+{
+ return gl::DrawTexiOES(x, y, z, width, height);
+}
+
+void GL_APIENTRY glDrawTexivOES(const GLint *coords)
+{
+ return gl::DrawTexivOES(coords);
+}
+
+void GL_APIENTRY glDrawTexsOES(GLshort x, GLshort y, GLshort z, GLshort width, GLshort height)
+{
+ return gl::DrawTexsOES(x, y, z, width, height);
+}
+
+void GL_APIENTRY glDrawTexsvOES(const GLshort *coords)
+{
+ return gl::DrawTexsvOES(coords);
+}
+
+void GL_APIENTRY glDrawTexxOES(GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height)
+{
+ return gl::DrawTexxOES(x, y, z, width, height);
+}
+
+void GL_APIENTRY glDrawTexxvOES(const GLfixed *coords)
+{
+ return gl::DrawTexxvOES(coords);
+}
+
+// GL_OES_framebuffer_object
+void GL_APIENTRY glBindFramebufferOES(GLenum target, GLuint framebuffer)
+{
+ return gl::BindFramebufferOES(target, framebuffer);
+}
+
+void GL_APIENTRY glBindRenderbufferOES(GLenum target, GLuint renderbuffer)
+{
+ return gl::BindRenderbufferOES(target, renderbuffer);
+}
+
+GLenum GL_APIENTRY glCheckFramebufferStatusOES(GLenum target)
+{
+ return gl::CheckFramebufferStatusOES(target);
+}
+
+void GL_APIENTRY glDeleteFramebuffersOES(GLsizei n, const GLuint *framebuffers)
+{
+ return gl::DeleteFramebuffersOES(n, framebuffers);
+}
+
+void GL_APIENTRY glDeleteRenderbuffersOES(GLsizei n, const GLuint *renderbuffers)
+{
+ return gl::DeleteRenderbuffersOES(n, renderbuffers);
+}
+
+void GL_APIENTRY glFramebufferRenderbufferOES(GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer)
+{
+ return gl::FramebufferRenderbufferOES(target, attachment, renderbuffertarget, renderbuffer);
+}
+
+void GL_APIENTRY glFramebufferTexture2DOES(GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level)
+{
+ return gl::FramebufferTexture2DOES(target, attachment, textarget, texture, level);
+}
+
+void GL_APIENTRY glGenFramebuffersOES(GLsizei n, GLuint *framebuffers)
+{
+ return gl::GenFramebuffersOES(n, framebuffers);
+}
+
+void GL_APIENTRY glGenRenderbuffersOES(GLsizei n, GLuint *renderbuffers)
+{
+ return gl::GenRenderbuffersOES(n, renderbuffers);
+}
+
+void GL_APIENTRY glGenerateMipmapOES(GLenum target)
+{
+ return gl::GenerateMipmapOES(target);
+}
+
+void GL_APIENTRY glGetFramebufferAttachmentParameterivOES(GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetFramebufferAttachmentParameterivOES(target, attachment, pname, params);
+}
+
+void GL_APIENTRY glGetRenderbufferParameterivOES(GLenum target, GLenum pname, GLint *params)
+{
+ return gl::GetRenderbufferParameterivOES(target, pname, params);
+}
+
+GLboolean GL_APIENTRY glIsFramebufferOES(GLuint framebuffer)
+{
+ return gl::IsFramebufferOES(framebuffer);
+}
+
+GLboolean GL_APIENTRY glIsRenderbufferOES(GLuint renderbuffer)
+{
+ return gl::IsRenderbufferOES(renderbuffer);
+}
+
+void GL_APIENTRY glRenderbufferStorageOES(GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::RenderbufferStorageOES(target, internalformat, width, height);
+}
+
+// GL_OES_get_program_binary
+void GL_APIENTRY glGetProgramBinaryOES(GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary)
+{
+ return gl::GetProgramBinaryOES(program, bufSize, length, binaryFormat, binary);
+}
+
+void GL_APIENTRY glProgramBinaryOES(GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLint length)
+{
+ return gl::ProgramBinaryOES(program, binaryFormat, binary, length);
+}
+
+// GL_OES_mapbuffer
+void GL_APIENTRY glGetBufferPointervOES(GLenum target, GLenum pname, void **params)
+{
+ return gl::GetBufferPointervOES(target, pname, params);
+}
+
+void *GL_APIENTRY glMapBufferOES(GLenum target, GLenum access)
+{
+ return gl::MapBufferOES(target, access);
+}
+
+GLboolean GL_APIENTRY glUnmapBufferOES(GLenum target)
+{
+ return gl::UnmapBufferOES(target);
+}
+
+// GL_OES_matrix_palette
+void GL_APIENTRY glCurrentPaletteMatrixOES(GLuint matrixpaletteindex)
+{
+ return gl::CurrentPaletteMatrixOES(matrixpaletteindex);
+}
+
+void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES()
+{
+ return gl::LoadPaletteFromModelViewMatrixOES();
+}
+
+void GL_APIENTRY glMatrixIndexPointerOES(GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::MatrixIndexPointerOES(size, type, stride, pointer);
+}
+
+void GL_APIENTRY glWeightPointerOES(GLint size, GLenum type, GLsizei stride, const void *pointer)
+{
+ return gl::WeightPointerOES(size, type, stride, pointer);
+}
+
+// GL_OES_point_size_array
+void GL_APIENTRY glPointSizePointerOES(GLenum type, GLsizei stride, const void *pointer)
+{
+ return gl::PointSizePointerOES(type, stride, pointer);
+}
+
+// GL_OES_query_matrix
+GLbitfield GL_APIENTRY glQueryMatrixxOES(GLfixed *mantissa, GLint *exponent)
+{
+ return gl::QueryMatrixxOES(mantissa, exponent);
+}
+
+// GL_OES_texture_3D
+void GL_APIENTRY glCompressedTexImage3DOES(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexImage3DOES(target, level, internalformat, width, height, depth, border,
+ imageSize, data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage3DOES(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height,
+ depth, format, imageSize, data);
+}
+
+void GL_APIENTRY glCopyTexSubImage3DOES(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::CopyTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
+void GL_APIENTRY glFramebufferTexture3DOES(GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level,
+ GLint zoffset)
+{
+ return gl::FramebufferTexture3DOES(target, attachment, textarget, texture, level, zoffset);
+}
+
+void GL_APIENTRY glTexImage3DOES(GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexImage3DOES(target, level, internalformat, width, height, depth, border, format,
+ type, pixels);
+}
+
+void GL_APIENTRY glTexSubImage3DOES(GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth,
+ format, type, pixels);
+}
+
+// GL_OES_texture_border_clamp
+void GL_APIENTRY glGetSamplerParameterIivOES(GLuint sampler, GLenum pname, GLint *params)
+{
+ return gl::GetSamplerParameterIivOES(sampler, pname, params);
+}
+
+void GL_APIENTRY glGetSamplerParameterIuivOES(GLuint sampler, GLenum pname, GLuint *params)
+{
+ return gl::GetSamplerParameterIuivOES(sampler, pname, params);
+}
+
+void GL_APIENTRY glGetTexParameterIivOES(GLenum target, GLenum pname, GLint *params)
+{
+ return gl::GetTexParameterIivOES(target, pname, params);
+}
+
+void GL_APIENTRY glGetTexParameterIuivOES(GLenum target, GLenum pname, GLuint *params)
+{
+ return gl::GetTexParameterIuivOES(target, pname, params);
+}
+
+void GL_APIENTRY glSamplerParameterIivOES(GLuint sampler, GLenum pname, const GLint *param)
+{
+ return gl::SamplerParameterIivOES(sampler, pname, param);
+}
+
+void GL_APIENTRY glSamplerParameterIuivOES(GLuint sampler, GLenum pname, const GLuint *param)
+{
+ return gl::SamplerParameterIuivOES(sampler, pname, param);
+}
+
+void GL_APIENTRY glTexParameterIivOES(GLenum target, GLenum pname, const GLint *params)
+{
+ return gl::TexParameterIivOES(target, pname, params);
+}
+
+void GL_APIENTRY glTexParameterIuivOES(GLenum target, GLenum pname, const GLuint *params)
+{
+ return gl::TexParameterIuivOES(target, pname, params);
+}
+
+// GL_OES_texture_cube_map
+void GL_APIENTRY glGetTexGenfvOES(GLenum coord, GLenum pname, GLfloat *params)
+{
+ return gl::GetTexGenfvOES(coord, pname, params);
+}
+
+void GL_APIENTRY glGetTexGenivOES(GLenum coord, GLenum pname, GLint *params)
+{
+ return gl::GetTexGenivOES(coord, pname, params);
+}
+
+void GL_APIENTRY glGetTexGenxvOES(GLenum coord, GLenum pname, GLfixed *params)
+{
+ return gl::GetTexGenxvOES(coord, pname, params);
+}
+
+void GL_APIENTRY glTexGenfOES(GLenum coord, GLenum pname, GLfloat param)
+{
+ return gl::TexGenfOES(coord, pname, param);
+}
+
+void GL_APIENTRY glTexGenfvOES(GLenum coord, GLenum pname, const GLfloat *params)
+{
+ return gl::TexGenfvOES(coord, pname, params);
+}
+
+void GL_APIENTRY glTexGeniOES(GLenum coord, GLenum pname, GLint param)
+{
+ return gl::TexGeniOES(coord, pname, param);
+}
+
+void GL_APIENTRY glTexGenivOES(GLenum coord, GLenum pname, const GLint *params)
+{
+ return gl::TexGenivOES(coord, pname, params);
+}
+
+void GL_APIENTRY glTexGenxOES(GLenum coord, GLenum pname, GLfixed param)
+{
+ return gl::TexGenxOES(coord, pname, param);
+}
+
+void GL_APIENTRY glTexGenxvOES(GLenum coord, GLenum pname, const GLfixed *params)
+{
+ return gl::TexGenxvOES(coord, pname, params);
+}
+
+// GL_OES_texture_storage_multisample_2d_array
+void GL_APIENTRY glTexStorage3DMultisampleOES(GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedsamplelocations)
+{
+ return gl::TexStorage3DMultisampleOES(target, samples, internalformat, width, height, depth,
+ fixedsamplelocations);
+}
+
+// GL_OES_vertex_array_object
+void GL_APIENTRY glBindVertexArrayOES(GLuint array)
+{
+ return gl::BindVertexArrayOES(array);
+}
+
+void GL_APIENTRY glDeleteVertexArraysOES(GLsizei n, const GLuint *arrays)
+{
+ return gl::DeleteVertexArraysOES(n, arrays);
+}
+
+void GL_APIENTRY glGenVertexArraysOES(GLsizei n, GLuint *arrays)
+{
+ return gl::GenVertexArraysOES(n, arrays);
+}
+
+GLboolean GL_APIENTRY glIsVertexArrayOES(GLuint array)
+{
+ return gl::IsVertexArrayOES(array);
+}
+
+// GL_OVR_multiview
+void GL_APIENTRY glFramebufferTextureMultiviewOVR(GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint baseViewIndex,
+ GLsizei numViews)
+{
+ return gl::FramebufferTextureMultiviewOVR(target, attachment, texture, level, baseViewIndex,
+ numViews);
+}
+
+// GL_OVR_multiview2
+
+// EGL_ANGLE_explicit_context
+void GL_APIENTRY glActiveShaderProgramContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLuint program)
+{
+ return gl::ActiveShaderProgramContextANGLE(ctx, pipeline, program);
+}
+
+void GL_APIENTRY glActiveTextureContextANGLE(GLeglContext ctx, GLenum texture)
+{
+ return gl::ActiveTextureContextANGLE(ctx, texture);
+}
+
+void GL_APIENTRY glAlphaFuncContextANGLE(GLeglContext ctx, GLenum func, GLfloat ref)
+{
+ return gl::AlphaFuncContextANGLE(ctx, func, ref);
+}
+
+void GL_APIENTRY glAlphaFuncxContextANGLE(GLeglContext ctx, GLenum func, GLfixed ref)
+{
+ return gl::AlphaFuncxContextANGLE(ctx, func, ref);
+}
+
+void GL_APIENTRY glAttachShaderContextANGLE(GLeglContext ctx, GLuint program, GLuint shader)
+{
+ return gl::AttachShaderContextANGLE(ctx, program, shader);
+}
+
+void GL_APIENTRY glBeginQueryContextANGLE(GLeglContext ctx, GLenum target, GLuint id)
+{
+ return gl::BeginQueryContextANGLE(ctx, target, id);
+}
+
+void GL_APIENTRY glBeginQueryEXTContextANGLE(GLeglContext ctx, GLenum target, GLuint id)
+{
+ return gl::BeginQueryEXTContextANGLE(ctx, target, id);
+}
+
+void GL_APIENTRY glBeginTransformFeedbackContextANGLE(GLeglContext ctx, GLenum primitiveMode)
+{
+ return gl::BeginTransformFeedbackContextANGLE(ctx, primitiveMode);
+}
+
+void GL_APIENTRY glBindAttribLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ const GLchar *name)
+{
+ return gl::BindAttribLocationContextANGLE(ctx, program, index, name);
+}
+
+void GL_APIENTRY glBindBufferContextANGLE(GLeglContext ctx, GLenum target, GLuint buffer)
+{
+ return gl::BindBufferContextANGLE(ctx, target, buffer);
+}
+
+void GL_APIENTRY glBindBufferBaseContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLuint buffer)
+{
+ return gl::BindBufferBaseContextANGLE(ctx, target, index, buffer);
+}
+
+void GL_APIENTRY glBindBufferRangeContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLuint buffer,
+ GLintptr offset,
+ GLsizeiptr size)
+{
+ return gl::BindBufferRangeContextANGLE(ctx, target, index, buffer, offset, size);
+}
+
+void GL_APIENTRY glBindFragDataLocationEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint color,
+ const GLchar *name)
+{
+ return gl::BindFragDataLocationEXTContextANGLE(ctx, program, color, name);
+}
+
+void GL_APIENTRY glBindFragDataLocationIndexedEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint colorNumber,
+ GLuint index,
+ const GLchar *name)
+{
+ return gl::BindFragDataLocationIndexedEXTContextANGLE(ctx, program, colorNumber, index, name);
+}
+
+void GL_APIENTRY glBindFramebufferContextANGLE(GLeglContext ctx, GLenum target, GLuint framebuffer)
+{
+ return gl::BindFramebufferContextANGLE(ctx, target, framebuffer);
+}
+
+void GL_APIENTRY glBindFramebufferOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint framebuffer)
+{
+ return gl::BindFramebufferOESContextANGLE(ctx, target, framebuffer);
+}
+
+void GL_APIENTRY glBindImageTextureContextANGLE(GLeglContext ctx,
+ GLuint unit,
+ GLuint texture,
+ GLint level,
+ GLboolean layered,
+ GLint layer,
+ GLenum access,
+ GLenum format)
+{
+ return gl::BindImageTextureContextANGLE(ctx, unit, texture, level, layered, layer, access,
+ format);
+}
+
+void GL_APIENTRY glBindProgramPipelineContextANGLE(GLeglContext ctx, GLuint pipeline)
+{
+ return gl::BindProgramPipelineContextANGLE(ctx, pipeline);
+}
+
+void GL_APIENTRY glBindRenderbufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint renderbuffer)
+{
+ return gl::BindRenderbufferContextANGLE(ctx, target, renderbuffer);
+}
+
+void GL_APIENTRY glBindRenderbufferOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint renderbuffer)
+{
+ return gl::BindRenderbufferOESContextANGLE(ctx, target, renderbuffer);
+}
+
+void GL_APIENTRY glBindSamplerContextANGLE(GLeglContext ctx, GLuint unit, GLuint sampler)
+{
+ return gl::BindSamplerContextANGLE(ctx, unit, sampler);
+}
+
+void GL_APIENTRY glBindTextureContextANGLE(GLeglContext ctx, GLenum target, GLuint texture)
+{
+ return gl::BindTextureContextANGLE(ctx, target, texture);
+}
+
+void GL_APIENTRY glBindTransformFeedbackContextANGLE(GLeglContext ctx, GLenum target, GLuint id)
+{
+ return gl::BindTransformFeedbackContextANGLE(ctx, target, id);
+}
+
+void GL_APIENTRY glBindVertexArrayContextANGLE(GLeglContext ctx, GLuint array)
+{
+ return gl::BindVertexArrayContextANGLE(ctx, array);
+}
+
+void GL_APIENTRY glBindVertexArrayOESContextANGLE(GLeglContext ctx, GLuint array)
+{
+ return gl::BindVertexArrayOESContextANGLE(ctx, array);
+}
+
+void GL_APIENTRY glBindVertexBufferContextANGLE(GLeglContext ctx,
+ GLuint bindingindex,
+ GLuint buffer,
+ GLintptr offset,
+ GLsizei stride)
+{
+ return gl::BindVertexBufferContextANGLE(ctx, bindingindex, buffer, offset, stride);
+}
+
+void GL_APIENTRY
+glBlendColorContextANGLE(GLeglContext ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ return gl::BlendColorContextANGLE(ctx, red, green, blue, alpha);
+}
+
+void GL_APIENTRY glBlendEquationContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ return gl::BlendEquationContextANGLE(ctx, mode);
+}
+
+void GL_APIENTRY glBlendEquationSeparateContextANGLE(GLeglContext ctx,
+ GLenum modeRGB,
+ GLenum modeAlpha)
+{
+ return gl::BlendEquationSeparateContextANGLE(ctx, modeRGB, modeAlpha);
+}
+
+void GL_APIENTRY glBlendFuncContextANGLE(GLeglContext ctx, GLenum sfactor, GLenum dfactor)
+{
+ return gl::BlendFuncContextANGLE(ctx, sfactor, dfactor);
+}
+
+void GL_APIENTRY glBlendFuncSeparateContextANGLE(GLeglContext ctx,
+ GLenum sfactorRGB,
+ GLenum dfactorRGB,
+ GLenum sfactorAlpha,
+ GLenum dfactorAlpha)
+{
+ return gl::BlendFuncSeparateContextANGLE(ctx, sfactorRGB, dfactorRGB, sfactorAlpha,
+ dfactorAlpha);
+}
+
+void GL_APIENTRY glBlitFramebufferContextANGLE(GLeglContext ctx,
+ GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter)
+{
+ return gl::BlitFramebufferContextANGLE(ctx, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1,
+ dstY1, mask, filter);
+}
+
+void GL_APIENTRY glBlitFramebufferANGLEContextANGLE(GLeglContext ctx,
+ GLint srcX0,
+ GLint srcY0,
+ GLint srcX1,
+ GLint srcY1,
+ GLint dstX0,
+ GLint dstY0,
+ GLint dstX1,
+ GLint dstY1,
+ GLbitfield mask,
+ GLenum filter)
+{
+ return gl::BlitFramebufferANGLEContextANGLE(ctx, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0,
+ dstX1, dstY1, mask, filter);
+}
+
+void GL_APIENTRY glBufferDataContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizeiptr size,
+ const void *data,
+ GLenum usage)
+{
+ return gl::BufferDataContextANGLE(ctx, target, size, data, usage);
+}
+
+void GL_APIENTRY glBufferStorageMemEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizeiptr size,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::BufferStorageMemEXTContextANGLE(ctx, target, size, memory, offset);
+}
+
+void GL_APIENTRY glBufferSubDataContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr size,
+ const void *data)
+{
+ return gl::BufferSubDataContextANGLE(ctx, target, offset, size, data);
+}
+
+GLenum GL_APIENTRY glCheckFramebufferStatusContextANGLE(GLeglContext ctx, GLenum target)
+{
+ return gl::CheckFramebufferStatusContextANGLE(ctx, target);
+}
+
+GLenum GL_APIENTRY glCheckFramebufferStatusOESContextANGLE(GLeglContext ctx, GLenum target)
+{
+ return gl::CheckFramebufferStatusOESContextANGLE(ctx, target);
+}
+
+void GL_APIENTRY glClearContextANGLE(GLeglContext ctx, GLbitfield mask)
+{
+ return gl::ClearContextANGLE(ctx, mask);
+}
+
+void GL_APIENTRY glClearBufferfiContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ GLfloat depth,
+ GLint stencil)
+{
+ return gl::ClearBufferfiContextANGLE(ctx, buffer, drawbuffer, depth, stencil);
+}
+
+void GL_APIENTRY glClearBufferfvContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ const GLfloat *value)
+{
+ return gl::ClearBufferfvContextANGLE(ctx, buffer, drawbuffer, value);
+}
+
+void GL_APIENTRY glClearBufferivContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ const GLint *value)
+{
+ return gl::ClearBufferivContextANGLE(ctx, buffer, drawbuffer, value);
+}
+
+void GL_APIENTRY glClearBufferuivContextANGLE(GLeglContext ctx,
+ GLenum buffer,
+ GLint drawbuffer,
+ const GLuint *value)
+{
+ return gl::ClearBufferuivContextANGLE(ctx, buffer, drawbuffer, value);
+}
+
+void GL_APIENTRY
+glClearColorContextANGLE(GLeglContext ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ return gl::ClearColorContextANGLE(ctx, red, green, blue, alpha);
+}
+
+void GL_APIENTRY
+glClearColorxContextANGLE(GLeglContext ctx, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ return gl::ClearColorxContextANGLE(ctx, red, green, blue, alpha);
+}
+
+void GL_APIENTRY glClearDepthfContextANGLE(GLeglContext ctx, GLfloat d)
+{
+ return gl::ClearDepthfContextANGLE(ctx, d);
+}
+
+void GL_APIENTRY glClearDepthxContextANGLE(GLeglContext ctx, GLfixed depth)
+{
+ return gl::ClearDepthxContextANGLE(ctx, depth);
+}
+
+void GL_APIENTRY glClearStencilContextANGLE(GLeglContext ctx, GLint s)
+{
+ return gl::ClearStencilContextANGLE(ctx, s);
+}
+
+void GL_APIENTRY glClientActiveTextureContextANGLE(GLeglContext ctx, GLenum texture)
+{
+ return gl::ClientActiveTextureContextANGLE(ctx, texture);
+}
+
+GLenum GL_APIENTRY glClientWaitSyncContextANGLE(GLeglContext ctx,
+ GLsync sync,
+ GLbitfield flags,
+ GLuint64 timeout)
+{
+ return gl::ClientWaitSyncContextANGLE(ctx, sync, flags, timeout);
+}
+
+void GL_APIENTRY glClipPlanefContextANGLE(GLeglContext ctx, GLenum p, const GLfloat *eqn)
+{
+ return gl::ClipPlanefContextANGLE(ctx, p, eqn);
+}
+
+void GL_APIENTRY glClipPlanexContextANGLE(GLeglContext ctx, GLenum plane, const GLfixed *equation)
+{
+ return gl::ClipPlanexContextANGLE(ctx, plane, equation);
+}
+
+void GL_APIENTRY
+glColor4fContextANGLE(GLeglContext ctx, GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+ return gl::Color4fContextANGLE(ctx, red, green, blue, alpha);
+}
+
+void GL_APIENTRY
+glColor4ubContextANGLE(GLeglContext ctx, GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+ return gl::Color4ubContextANGLE(ctx, red, green, blue, alpha);
+}
+
+void GL_APIENTRY
+glColor4xContextANGLE(GLeglContext ctx, GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha)
+{
+ return gl::Color4xContextANGLE(ctx, red, green, blue, alpha);
+}
+
+void GL_APIENTRY glColorMaskContextANGLE(GLeglContext ctx,
+ GLboolean red,
+ GLboolean green,
+ GLboolean blue,
+ GLboolean alpha)
+{
+ return gl::ColorMaskContextANGLE(ctx, red, green, blue, alpha);
+}
+
+void GL_APIENTRY glColorPointerContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::ColorPointerContextANGLE(ctx, size, type, stride, pointer);
+}
+
+void GL_APIENTRY glCompileShaderContextANGLE(GLeglContext ctx, GLuint shader)
+{
+ return gl::CompileShaderContextANGLE(ctx, shader);
+}
+
+void GL_APIENTRY glCompressedTexImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexImage2DContextANGLE(ctx, target, level, internalformat, width, height,
+ border, imageSize, data);
+}
+
+void GL_APIENTRY glCompressedTexImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexImage3DContextANGLE(ctx, target, level, internalformat, width, height,
+ depth, border, imageSize, data);
+}
+
+void GL_APIENTRY glCompressedTexImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexImage3DOESContextANGLE(ctx, target, level, internalformat, width,
+ height, depth, border, imageSize, data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexSubImage2DContextANGLE(ctx, target, level, xoffset, yoffset, width,
+ height, format, imageSize, data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexSubImage3DContextANGLE(ctx, target, level, xoffset, yoffset, zoffset,
+ width, height, depth, format, imageSize, data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ const void *data)
+{
+ return gl::CompressedTexSubImage3DOESContextANGLE(ctx, target, level, xoffset, yoffset, zoffset,
+ width, height, depth, format, imageSize,
+ data);
+}
+
+void GL_APIENTRY glCopyBufferSubDataContextANGLE(GLeglContext ctx,
+ GLenum readTarget,
+ GLenum writeTarget,
+ GLintptr readOffset,
+ GLintptr writeOffset,
+ GLsizeiptr size)
+{
+ return gl::CopyBufferSubDataContextANGLE(ctx, readTarget, writeTarget, readOffset, writeOffset,
+ size);
+}
+
+void GL_APIENTRY glCopyTexImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLint border)
+{
+ return gl::CopyTexImage2DContextANGLE(ctx, target, level, internalformat, x, y, width, height,
+ border);
+}
+
+void GL_APIENTRY glCopyTexSubImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::CopyTexSubImage2DContextANGLE(ctx, target, level, xoffset, yoffset, x, y, width,
+ height);
+}
+
+void GL_APIENTRY glCopyTexSubImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::CopyTexSubImage3DContextANGLE(ctx, target, level, xoffset, yoffset, zoffset, x, y,
+ width, height);
+}
+
+void GL_APIENTRY glCopyTexSubImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::CopyTexSubImage3DOESContextANGLE(ctx, target, level, xoffset, yoffset, zoffset, x, y,
+ width, height);
+}
+
+void GL_APIENTRY glCreateMemoryObjectsEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *memoryObjects)
+{
+ return gl::CreateMemoryObjectsEXTContextANGLE(ctx, n, memoryObjects);
+}
+
+GLuint GL_APIENTRY glCreateProgramContextANGLE(GLeglContext ctx)
+{
+ return gl::CreateProgramContextANGLE(ctx);
+}
+
+GLuint GL_APIENTRY glCreateShaderContextANGLE(GLeglContext ctx, GLenum type)
+{
+ return gl::CreateShaderContextANGLE(ctx, type);
+}
+
+GLuint GL_APIENTRY glCreateShaderProgramvContextANGLE(GLeglContext ctx,
+ GLenum type,
+ GLsizei count,
+ const GLchar *const *strings)
+{
+ return gl::CreateShaderProgramvContextANGLE(ctx, type, count, strings);
+}
+
+void GL_APIENTRY glCullFaceContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ return gl::CullFaceContextANGLE(ctx, mode);
+}
+
+void GL_APIENTRY glCurrentPaletteMatrixOESContextANGLE(GLeglContext ctx, GLuint matrixpaletteindex)
+{
+ return gl::CurrentPaletteMatrixOESContextANGLE(ctx, matrixpaletteindex);
+}
+
+void GL_APIENTRY glDebugMessageCallbackKHRContextANGLE(GLeglContext ctx,
+ GLDEBUGPROCKHR callback,
+ const void *userParam)
+{
+ return gl::DebugMessageCallbackKHRContextANGLE(ctx, callback, userParam);
+}
+
+void GL_APIENTRY glDebugMessageControlKHRContextANGLE(GLeglContext ctx,
+ GLenum source,
+ GLenum type,
+ GLenum severity,
+ GLsizei count,
+ const GLuint *ids,
+ GLboolean enabled)
+{
+ return gl::DebugMessageControlKHRContextANGLE(ctx, source, type, severity, count, ids, enabled);
+}
+
+void GL_APIENTRY glDebugMessageInsertKHRContextANGLE(GLeglContext ctx,
+ GLenum source,
+ GLenum type,
+ GLuint id,
+ GLenum severity,
+ GLsizei length,
+ const GLchar *buf)
+{
+ return gl::DebugMessageInsertKHRContextANGLE(ctx, source, type, id, severity, length, buf);
+}
+
+void GL_APIENTRY glDeleteBuffersContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *buffers)
+{
+ return gl::DeleteBuffersContextANGLE(ctx, n, buffers);
+}
+
+void GL_APIENTRY glDeleteFencesNVContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *fences)
+{
+ return gl::DeleteFencesNVContextANGLE(ctx, n, fences);
+}
+
+void GL_APIENTRY glDeleteFramebuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *framebuffers)
+{
+ return gl::DeleteFramebuffersContextANGLE(ctx, n, framebuffers);
+}
+
+void GL_APIENTRY glDeleteFramebuffersOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *framebuffers)
+{
+ return gl::DeleteFramebuffersOESContextANGLE(ctx, n, framebuffers);
+}
+
+void GL_APIENTRY glDeleteMemoryObjectsEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *memoryObjects)
+{
+ return gl::DeleteMemoryObjectsEXTContextANGLE(ctx, n, memoryObjects);
+}
+
+void GL_APIENTRY glDeleteProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ return gl::DeleteProgramContextANGLE(ctx, program);
+}
+
+void GL_APIENTRY glDeleteProgramPipelinesContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *pipelines)
+{
+ return gl::DeleteProgramPipelinesContextANGLE(ctx, n, pipelines);
+}
+
+void GL_APIENTRY glDeleteQueriesContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *ids)
+{
+ return gl::DeleteQueriesContextANGLE(ctx, n, ids);
+}
+
+void GL_APIENTRY glDeleteQueriesEXTContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *ids)
+{
+ return gl::DeleteQueriesEXTContextANGLE(ctx, n, ids);
+}
+
+void GL_APIENTRY glDeleteRenderbuffersContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *renderbuffers)
+{
+ return gl::DeleteRenderbuffersContextANGLE(ctx, n, renderbuffers);
+}
+
+void GL_APIENTRY glDeleteRenderbuffersOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *renderbuffers)
+{
+ return gl::DeleteRenderbuffersOESContextANGLE(ctx, n, renderbuffers);
+}
+
+void GL_APIENTRY glDeleteSamplersContextANGLE(GLeglContext ctx,
+ GLsizei count,
+ const GLuint *samplers)
+{
+ return gl::DeleteSamplersContextANGLE(ctx, count, samplers);
+}
+
+void GL_APIENTRY glDeleteSemaphoresEXTContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *semaphores)
+{
+ return gl::DeleteSemaphoresEXTContextANGLE(ctx, n, semaphores);
+}
+
+void GL_APIENTRY glDeleteShaderContextANGLE(GLeglContext ctx, GLuint shader)
+{
+ return gl::DeleteShaderContextANGLE(ctx, shader);
+}
+
+void GL_APIENTRY glDeleteSyncContextANGLE(GLeglContext ctx, GLsync sync)
+{
+ return gl::DeleteSyncContextANGLE(ctx, sync);
+}
+
+void GL_APIENTRY glDeleteTexturesContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *textures)
+{
+ return gl::DeleteTexturesContextANGLE(ctx, n, textures);
+}
+
+void GL_APIENTRY glDeleteTransformFeedbacksContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *ids)
+{
+ return gl::DeleteTransformFeedbacksContextANGLE(ctx, n, ids);
+}
+
+void GL_APIENTRY glDeleteVertexArraysContextANGLE(GLeglContext ctx, GLsizei n, const GLuint *arrays)
+{
+ return gl::DeleteVertexArraysContextANGLE(ctx, n, arrays);
+}
+
+void GL_APIENTRY glDeleteVertexArraysOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ const GLuint *arrays)
+{
+ return gl::DeleteVertexArraysOESContextANGLE(ctx, n, arrays);
+}
+
+void GL_APIENTRY glDepthFuncContextANGLE(GLeglContext ctx, GLenum func)
+{
+ return gl::DepthFuncContextANGLE(ctx, func);
+}
+
+void GL_APIENTRY glDepthMaskContextANGLE(GLeglContext ctx, GLboolean flag)
+{
+ return gl::DepthMaskContextANGLE(ctx, flag);
+}
+
+void GL_APIENTRY glDepthRangefContextANGLE(GLeglContext ctx, GLfloat n, GLfloat f)
+{
+ return gl::DepthRangefContextANGLE(ctx, n, f);
+}
+
+void GL_APIENTRY glDepthRangexContextANGLE(GLeglContext ctx, GLfixed n, GLfixed f)
+{
+ return gl::DepthRangexContextANGLE(ctx, n, f);
+}
+
+void GL_APIENTRY glDetachShaderContextANGLE(GLeglContext ctx, GLuint program, GLuint shader)
+{
+ return gl::DetachShaderContextANGLE(ctx, program, shader);
+}
+
+void GL_APIENTRY glDisableContextANGLE(GLeglContext ctx, GLenum cap)
+{
+ return gl::DisableContextANGLE(ctx, cap);
+}
+
+void GL_APIENTRY glDisableClientStateContextANGLE(GLeglContext ctx, GLenum array)
+{
+ return gl::DisableClientStateContextANGLE(ctx, array);
+}
+
+void GL_APIENTRY glDisableVertexAttribArrayContextANGLE(GLeglContext ctx, GLuint index)
+{
+ return gl::DisableVertexAttribArrayContextANGLE(ctx, index);
+}
+
+void GL_APIENTRY glDiscardFramebufferEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments)
+{
+ return gl::DiscardFramebufferEXTContextANGLE(ctx, target, numAttachments, attachments);
+}
+
+void GL_APIENTRY glDispatchComputeContextANGLE(GLeglContext ctx,
+ GLuint num_groups_x,
+ GLuint num_groups_y,
+ GLuint num_groups_z)
+{
+ return gl::DispatchComputeContextANGLE(ctx, num_groups_x, num_groups_y, num_groups_z);
+}
+
+void GL_APIENTRY glDispatchComputeIndirectContextANGLE(GLeglContext ctx, GLintptr indirect)
+{
+ return gl::DispatchComputeIndirectContextANGLE(ctx, indirect);
+}
+
+void GL_APIENTRY glDrawArraysContextANGLE(GLeglContext ctx, GLenum mode, GLint first, GLsizei count)
+{
+ return gl::DrawArraysContextANGLE(ctx, mode, first, count);
+}
+
+void GL_APIENTRY glDrawArraysIndirectContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const void *indirect)
+{
+ return gl::DrawArraysIndirectContextANGLE(ctx, mode, indirect);
+}
+
+void GL_APIENTRY glDrawArraysInstancedContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei instancecount)
+{
+ return gl::DrawArraysInstancedContextANGLE(ctx, mode, first, count, instancecount);
+}
+
+void GL_APIENTRY glDrawArraysInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint first,
+ GLsizei count,
+ GLsizei primcount)
+{
+ return gl::DrawArraysInstancedANGLEContextANGLE(ctx, mode, first, count, primcount);
+}
+
+void GL_APIENTRY glDrawArraysInstancedEXTContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLint start,
+ GLsizei count,
+ GLsizei primcount)
+{
+ return gl::DrawArraysInstancedEXTContextANGLE(ctx, mode, start, count, primcount);
+}
+
+void GL_APIENTRY glDrawBuffersContextANGLE(GLeglContext ctx, GLsizei n, const GLenum *bufs)
+{
+ return gl::DrawBuffersContextANGLE(ctx, n, bufs);
+}
+
+void GL_APIENTRY glDrawBuffersEXTContextANGLE(GLeglContext ctx, GLsizei n, const GLenum *bufs)
+{
+ return gl::DrawBuffersEXTContextANGLE(ctx, n, bufs);
+}
+
+void GL_APIENTRY glDrawElementsContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices)
+{
+ return gl::DrawElementsContextANGLE(ctx, mode, count, type, indices);
+}
+
+void GL_APIENTRY glDrawElementsIndirectContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLenum type,
+ const void *indirect)
+{
+ return gl::DrawElementsIndirectContextANGLE(ctx, mode, type, indirect);
+}
+
+void GL_APIENTRY glDrawElementsInstancedContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei instancecount)
+{
+ return gl::DrawElementsInstancedContextANGLE(ctx, mode, count, type, indices, instancecount);
+}
+
+void GL_APIENTRY glDrawElementsInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount)
+{
+ return gl::DrawElementsInstancedANGLEContextANGLE(ctx, mode, count, type, indices, primcount);
+}
+
+void GL_APIENTRY glDrawElementsInstancedEXTContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLsizei count,
+ GLenum type,
+ const void *indices,
+ GLsizei primcount)
+{
+ return gl::DrawElementsInstancedEXTContextANGLE(ctx, mode, count, type, indices, primcount);
+}
+
+void GL_APIENTRY glDrawRangeElementsContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ GLuint start,
+ GLuint end,
+ GLsizei count,
+ GLenum type,
+ const void *indices)
+{
+ return gl::DrawRangeElementsContextANGLE(ctx, mode, start, end, count, type, indices);
+}
+
+void GL_APIENTRY glDrawTexfOESContextANGLE(GLeglContext ctx,
+ GLfloat x,
+ GLfloat y,
+ GLfloat z,
+ GLfloat width,
+ GLfloat height)
+{
+ return gl::DrawTexfOESContextANGLE(ctx, x, y, z, width, height);
+}
+
+void GL_APIENTRY glDrawTexfvOESContextANGLE(GLeglContext ctx, const GLfloat *coords)
+{
+ return gl::DrawTexfvOESContextANGLE(ctx, coords);
+}
+
+void GL_APIENTRY
+glDrawTexiOESContextANGLE(GLeglContext ctx, GLint x, GLint y, GLint z, GLint width, GLint height)
+{
+ return gl::DrawTexiOESContextANGLE(ctx, x, y, z, width, height);
+}
+
+void GL_APIENTRY glDrawTexivOESContextANGLE(GLeglContext ctx, const GLint *coords)
+{
+ return gl::DrawTexivOESContextANGLE(ctx, coords);
+}
+
+void GL_APIENTRY glDrawTexsOESContextANGLE(GLeglContext ctx,
+ GLshort x,
+ GLshort y,
+ GLshort z,
+ GLshort width,
+ GLshort height)
+{
+ return gl::DrawTexsOESContextANGLE(ctx, x, y, z, width, height);
+}
+
+void GL_APIENTRY glDrawTexsvOESContextANGLE(GLeglContext ctx, const GLshort *coords)
+{
+ return gl::DrawTexsvOESContextANGLE(ctx, coords);
+}
+
+void GL_APIENTRY glDrawTexxOESContextANGLE(GLeglContext ctx,
+ GLfixed x,
+ GLfixed y,
+ GLfixed z,
+ GLfixed width,
+ GLfixed height)
+{
+ return gl::DrawTexxOESContextANGLE(ctx, x, y, z, width, height);
+}
+
+void GL_APIENTRY glDrawTexxvOESContextANGLE(GLeglContext ctx, const GLfixed *coords)
+{
+ return gl::DrawTexxvOESContextANGLE(ctx, coords);
+}
+
+void GL_APIENTRY glEGLImageTargetRenderbufferStorageOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLeglImageOES image)
+{
+ return gl::EGLImageTargetRenderbufferStorageOESContextANGLE(ctx, target, image);
+}
+
+void GL_APIENTRY glEGLImageTargetTexture2DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLeglImageOES image)
+{
+ return gl::EGLImageTargetTexture2DOESContextANGLE(ctx, target, image);
+}
+
+void GL_APIENTRY glEnableContextANGLE(GLeglContext ctx, GLenum cap)
+{
+ return gl::EnableContextANGLE(ctx, cap);
+}
+
+void GL_APIENTRY glEnableClientStateContextANGLE(GLeglContext ctx, GLenum array)
+{
+ return gl::EnableClientStateContextANGLE(ctx, array);
+}
+
+void GL_APIENTRY glEnableVertexAttribArrayContextANGLE(GLeglContext ctx, GLuint index)
+{
+ return gl::EnableVertexAttribArrayContextANGLE(ctx, index);
+}
+
+void GL_APIENTRY glEndQueryContextANGLE(GLeglContext ctx, GLenum target)
+{
+ return gl::EndQueryContextANGLE(ctx, target);
+}
+
+void GL_APIENTRY glEndQueryEXTContextANGLE(GLeglContext ctx, GLenum target)
+{
+ return gl::EndQueryEXTContextANGLE(ctx, target);
+}
+
+void GL_APIENTRY glEndTransformFeedbackContextANGLE(GLeglContext ctx)
+{
+ return gl::EndTransformFeedbackContextANGLE(ctx);
+}
+
+GLsync GL_APIENTRY glFenceSyncContextANGLE(GLeglContext ctx, GLenum condition, GLbitfield flags)
+{
+ return gl::FenceSyncContextANGLE(ctx, condition, flags);
+}
+
+void GL_APIENTRY glFinishContextANGLE(GLeglContext ctx)
+{
+ return gl::FinishContextANGLE(ctx);
+}
+
+void GL_APIENTRY glFinishFenceNVContextANGLE(GLeglContext ctx, GLuint fence)
+{
+ return gl::FinishFenceNVContextANGLE(ctx, fence);
+}
+
+void GL_APIENTRY glFlushContextANGLE(GLeglContext ctx)
+{
+ return gl::FlushContextANGLE(ctx);
+}
+
+void GL_APIENTRY glFlushMappedBufferRangeContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length)
+{
+ return gl::FlushMappedBufferRangeContextANGLE(ctx, target, offset, length);
+}
+
+void GL_APIENTRY glFlushMappedBufferRangeEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length)
+{
+ return gl::FlushMappedBufferRangeEXTContextANGLE(ctx, target, offset, length);
+}
+
+void GL_APIENTRY glFogfContextANGLE(GLeglContext ctx, GLenum pname, GLfloat param)
+{
+ return gl::FogfContextANGLE(ctx, pname, param);
+}
+
+void GL_APIENTRY glFogfvContextANGLE(GLeglContext ctx, GLenum pname, const GLfloat *params)
+{
+ return gl::FogfvContextANGLE(ctx, pname, params);
+}
+
+void GL_APIENTRY glFogxContextANGLE(GLeglContext ctx, GLenum pname, GLfixed param)
+{
+ return gl::FogxContextANGLE(ctx, pname, param);
+}
+
+void GL_APIENTRY glFogxvContextANGLE(GLeglContext ctx, GLenum pname, const GLfixed *param)
+{
+ return gl::FogxvContextANGLE(ctx, pname, param);
+}
+
+void GL_APIENTRY glFramebufferParameteriContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint param)
+{
+ return gl::FramebufferParameteriContextANGLE(ctx, target, pname, param);
+}
+
+void GL_APIENTRY glFramebufferRenderbufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer)
+{
+ return gl::FramebufferRenderbufferContextANGLE(ctx, target, attachment, renderbuffertarget,
+ renderbuffer);
+}
+
+void GL_APIENTRY glFramebufferRenderbufferOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum renderbuffertarget,
+ GLuint renderbuffer)
+{
+ return gl::FramebufferRenderbufferOESContextANGLE(ctx, target, attachment, renderbuffertarget,
+ renderbuffer);
+}
+
+void GL_APIENTRY glFramebufferTexture2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level)
+{
+ return gl::FramebufferTexture2DContextANGLE(ctx, target, attachment, textarget, texture, level);
+}
+
+void GL_APIENTRY glFramebufferTexture2DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level)
+{
+ return gl::FramebufferTexture2DOESContextANGLE(ctx, target, attachment, textarget, texture,
+ level);
+}
+
+void GL_APIENTRY glFramebufferTexture3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum textarget,
+ GLuint texture,
+ GLint level,
+ GLint zoffset)
+{
+ return gl::FramebufferTexture3DOESContextANGLE(ctx, target, attachment, textarget, texture,
+ level, zoffset);
+}
+
+void GL_APIENTRY glFramebufferTextureEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level)
+{
+ return gl::FramebufferTextureEXTContextANGLE(ctx, target, attachment, texture, level);
+}
+
+void GL_APIENTRY glFramebufferTextureLayerContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint layer)
+{
+ return gl::FramebufferTextureLayerContextANGLE(ctx, target, attachment, texture, level, layer);
+}
+
+void GL_APIENTRY glFramebufferTextureMultiviewOVRContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+ GLint baseViewIndex,
+ GLsizei numViews)
+{
+ return gl::FramebufferTextureMultiviewOVRContextANGLE(ctx, target, attachment, texture, level,
+ baseViewIndex, numViews);
+}
+
+void GL_APIENTRY glFrontFaceContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ return gl::FrontFaceContextANGLE(ctx, mode);
+}
+
+void GL_APIENTRY glFrustumfContextANGLE(GLeglContext ctx,
+ GLfloat l,
+ GLfloat r,
+ GLfloat b,
+ GLfloat t,
+ GLfloat n,
+ GLfloat f)
+{
+ return gl::FrustumfContextANGLE(ctx, l, r, b, t, n, f);
+}
+
+void GL_APIENTRY glFrustumxContextANGLE(GLeglContext ctx,
+ GLfixed l,
+ GLfixed r,
+ GLfixed b,
+ GLfixed t,
+ GLfixed n,
+ GLfixed f)
+{
+ return gl::FrustumxContextANGLE(ctx, l, r, b, t, n, f);
+}
+
+void GL_APIENTRY glGenBuffersContextANGLE(GLeglContext ctx, GLsizei n, GLuint *buffers)
+{
+ return gl::GenBuffersContextANGLE(ctx, n, buffers);
+}
+
+void GL_APIENTRY glGenFencesNVContextANGLE(GLeglContext ctx, GLsizei n, GLuint *fences)
+{
+ return gl::GenFencesNVContextANGLE(ctx, n, fences);
+}
+
+void GL_APIENTRY glGenFramebuffersContextANGLE(GLeglContext ctx, GLsizei n, GLuint *framebuffers)
+{
+ return gl::GenFramebuffersContextANGLE(ctx, n, framebuffers);
+}
+
+void GL_APIENTRY glGenFramebuffersOESContextANGLE(GLeglContext ctx, GLsizei n, GLuint *framebuffers)
+{
+ return gl::GenFramebuffersOESContextANGLE(ctx, n, framebuffers);
+}
+
+void GL_APIENTRY glGenProgramPipelinesContextANGLE(GLeglContext ctx, GLsizei n, GLuint *pipelines)
+{
+ return gl::GenProgramPipelinesContextANGLE(ctx, n, pipelines);
+}
+
+void GL_APIENTRY glGenQueriesContextANGLE(GLeglContext ctx, GLsizei n, GLuint *ids)
+{
+ return gl::GenQueriesContextANGLE(ctx, n, ids);
+}
+
+void GL_APIENTRY glGenQueriesEXTContextANGLE(GLeglContext ctx, GLsizei n, GLuint *ids)
+{
+ return gl::GenQueriesEXTContextANGLE(ctx, n, ids);
+}
+
+void GL_APIENTRY glGenRenderbuffersContextANGLE(GLeglContext ctx, GLsizei n, GLuint *renderbuffers)
+{
+ return gl::GenRenderbuffersContextANGLE(ctx, n, renderbuffers);
+}
+
+void GL_APIENTRY glGenRenderbuffersOESContextANGLE(GLeglContext ctx,
+ GLsizei n,
+ GLuint *renderbuffers)
+{
+ return gl::GenRenderbuffersOESContextANGLE(ctx, n, renderbuffers);
+}
+
+void GL_APIENTRY glGenSamplersContextANGLE(GLeglContext ctx, GLsizei count, GLuint *samplers)
+{
+ return gl::GenSamplersContextANGLE(ctx, count, samplers);
+}
+
+void GL_APIENTRY glGenSemaphoresEXTContextANGLE(GLeglContext ctx, GLsizei n, GLuint *semaphores)
+{
+ return gl::GenSemaphoresEXTContextANGLE(ctx, n, semaphores);
+}
+
+void GL_APIENTRY glGenTexturesContextANGLE(GLeglContext ctx, GLsizei n, GLuint *textures)
+{
+ return gl::GenTexturesContextANGLE(ctx, n, textures);
+}
+
+void GL_APIENTRY glGenTransformFeedbacksContextANGLE(GLeglContext ctx, GLsizei n, GLuint *ids)
+{
+ return gl::GenTransformFeedbacksContextANGLE(ctx, n, ids);
+}
+
+void GL_APIENTRY glGenVertexArraysContextANGLE(GLeglContext ctx, GLsizei n, GLuint *arrays)
+{
+ return gl::GenVertexArraysContextANGLE(ctx, n, arrays);
+}
+
+void GL_APIENTRY glGenVertexArraysOESContextANGLE(GLeglContext ctx, GLsizei n, GLuint *arrays)
+{
+ return gl::GenVertexArraysOESContextANGLE(ctx, n, arrays);
+}
+
+void GL_APIENTRY glGenerateMipmapContextANGLE(GLeglContext ctx, GLenum target)
+{
+ return gl::GenerateMipmapContextANGLE(ctx, target);
+}
+
+void GL_APIENTRY glGenerateMipmapOESContextANGLE(GLeglContext ctx, GLenum target)
+{
+ return gl::GenerateMipmapOESContextANGLE(ctx, target);
+}
+
+void GL_APIENTRY glGetActiveAttribContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name)
+{
+ return gl::GetActiveAttribContextANGLE(ctx, program, index, bufSize, length, size, type, name);
+}
+
+void GL_APIENTRY glGetActiveUniformContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *size,
+ GLenum *type,
+ GLchar *name)
+{
+ return gl::GetActiveUniformContextANGLE(ctx, program, index, bufSize, length, size, type, name);
+}
+
+void GL_APIENTRY glGetActiveUniformBlockNameContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *uniformBlockName)
+{
+ return gl::GetActiveUniformBlockNameContextANGLE(ctx, program, uniformBlockIndex, bufSize,
+ length, uniformBlockName);
+}
+
+void GL_APIENTRY glGetActiveUniformBlockivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetActiveUniformBlockivContextANGLE(ctx, program, uniformBlockIndex, pname, params);
+}
+
+void GL_APIENTRY glGetActiveUniformsivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei uniformCount,
+ const GLuint *uniformIndices,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetActiveUniformsivContextANGLE(ctx, program, uniformCount, uniformIndices, pname,
+ params);
+}
+
+void GL_APIENTRY glGetAttachedShadersContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei maxCount,
+ GLsizei *count,
+ GLuint *shaders)
+{
+ return gl::GetAttachedShadersContextANGLE(ctx, program, maxCount, count, shaders);
+}
+
+GLint GL_APIENTRY glGetAttribLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name)
+{
+ return gl::GetAttribLocationContextANGLE(ctx, program, name);
+}
+
+void GL_APIENTRY glGetBooleani_vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLboolean *data)
+{
+ return gl::GetBooleani_vContextANGLE(ctx, target, index, data);
+}
+
+void GL_APIENTRY glGetBooleanvContextANGLE(GLeglContext ctx, GLenum pname, GLboolean *data)
+{
+ return gl::GetBooleanvContextANGLE(ctx, pname, data);
+}
+
+void GL_APIENTRY glGetBufferParameteri64vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint64 *params)
+{
+ return gl::GetBufferParameteri64vContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetBufferParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetBufferParameterivContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetBufferPointervContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ void **params)
+{
+ return gl::GetBufferPointervContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetBufferPointervOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ void **params)
+{
+ return gl::GetBufferPointervOESContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetClipPlanefContextANGLE(GLeglContext ctx, GLenum plane, GLfloat *equation)
+{
+ return gl::GetClipPlanefContextANGLE(ctx, plane, equation);
+}
+
+void GL_APIENTRY glGetClipPlanexContextANGLE(GLeglContext ctx, GLenum plane, GLfixed *equation)
+{
+ return gl::GetClipPlanexContextANGLE(ctx, plane, equation);
+}
+
+GLuint GL_APIENTRY glGetDebugMessageLogKHRContextANGLE(GLeglContext ctx,
+ GLuint count,
+ GLsizei bufSize,
+ GLenum *sources,
+ GLenum *types,
+ GLuint *ids,
+ GLenum *severities,
+ GLsizei *lengths,
+ GLchar *messageLog)
+{
+ return gl::GetDebugMessageLogKHRContextANGLE(ctx, count, bufSize, sources, types, ids,
+ severities, lengths, messageLog);
+}
+
+GLenum GL_APIENTRY glGetErrorContextANGLE(GLeglContext ctx)
+{
+ return gl::GetErrorContextANGLE(ctx);
+}
+
+void GL_APIENTRY glGetFenceivNVContextANGLE(GLeglContext ctx,
+ GLuint fence,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetFenceivNVContextANGLE(ctx, fence, pname, params);
+}
+
+void GL_APIENTRY glGetFixedvContextANGLE(GLeglContext ctx, GLenum pname, GLfixed *params)
+{
+ return gl::GetFixedvContextANGLE(ctx, pname, params);
+}
+
+void GL_APIENTRY glGetFloatvContextANGLE(GLeglContext ctx, GLenum pname, GLfloat *data)
+{
+ return gl::GetFloatvContextANGLE(ctx, pname, data);
+}
+
+GLint GL_APIENTRY glGetFragDataIndexEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name)
+{
+ return gl::GetFragDataIndexEXTContextANGLE(ctx, program, name);
+}
+
+GLint GL_APIENTRY glGetFragDataLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name)
+{
+ return gl::GetFragDataLocationContextANGLE(ctx, program, name);
+}
+
+void GL_APIENTRY glGetFramebufferAttachmentParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetFramebufferAttachmentParameterivContextANGLE(ctx, target, attachment, pname,
+ params);
+}
+
+void GL_APIENTRY glGetFramebufferAttachmentParameterivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetFramebufferAttachmentParameterivOESContextANGLE(ctx, target, attachment, pname,
+ params);
+}
+
+void GL_APIENTRY glGetFramebufferParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetFramebufferParameterivContextANGLE(ctx, target, pname, params);
+}
+
+GLenum GL_APIENTRY glGetGraphicsResetStatusEXTContextANGLE(GLeglContext ctx)
+{
+ return gl::GetGraphicsResetStatusEXTContextANGLE(ctx);
+}
+
+void GL_APIENTRY glGetInteger64i_vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLint64 *data)
+{
+ return gl::GetInteger64i_vContextANGLE(ctx, target, index, data);
+}
+
+void GL_APIENTRY glGetInteger64vContextANGLE(GLeglContext ctx, GLenum pname, GLint64 *data)
+{
+ return gl::GetInteger64vContextANGLE(ctx, pname, data);
+}
+
+void GL_APIENTRY glGetIntegeri_vContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLint *data)
+{
+ return gl::GetIntegeri_vContextANGLE(ctx, target, index, data);
+}
+
+void GL_APIENTRY glGetIntegervContextANGLE(GLeglContext ctx, GLenum pname, GLint *data)
+{
+ return gl::GetIntegervContextANGLE(ctx, pname, data);
+}
+
+void GL_APIENTRY glGetInternalformativContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLint *params)
+{
+ return gl::GetInternalformativContextANGLE(ctx, target, internalformat, pname, bufSize, params);
+}
+
+void GL_APIENTRY glGetLightfvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetLightfvContextANGLE(ctx, light, pname, params);
+}
+
+void GL_APIENTRY glGetLightxvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ GLfixed *params)
+{
+ return gl::GetLightxvContextANGLE(ctx, light, pname, params);
+}
+
+void GL_APIENTRY glGetMaterialfvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetMaterialfvContextANGLE(ctx, face, pname, params);
+}
+
+void GL_APIENTRY glGetMaterialxvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ GLfixed *params)
+{
+ return gl::GetMaterialxvContextANGLE(ctx, face, pname, params);
+}
+
+void GL_APIENTRY glGetMemoryObjectParameterivEXTContextANGLE(GLeglContext ctx,
+ GLuint memoryObject,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetMemoryObjectParameterivEXTContextANGLE(ctx, memoryObject, pname, params);
+}
+
+void GL_APIENTRY glGetMultisamplefvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLuint index,
+ GLfloat *val)
+{
+ return gl::GetMultisamplefvContextANGLE(ctx, pname, index, val);
+}
+
+void GL_APIENTRY glGetObjectLabelKHRContextANGLE(GLeglContext ctx,
+ GLenum identifier,
+ GLuint name,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *label)
+{
+ return gl::GetObjectLabelKHRContextANGLE(ctx, identifier, name, bufSize, length, label);
+}
+
+void GL_APIENTRY glGetObjectPtrLabelKHRContextANGLE(GLeglContext ctx,
+ const void *ptr,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *label)
+{
+ return gl::GetObjectPtrLabelKHRContextANGLE(ctx, ptr, bufSize, length, label);
+}
+
+void GL_APIENTRY glGetPointervContextANGLE(GLeglContext ctx, GLenum pname, void **params)
+{
+ return gl::GetPointervContextANGLE(ctx, pname, params);
+}
+
+void GL_APIENTRY glGetPointervKHRContextANGLE(GLeglContext ctx, GLenum pname, void **params)
+{
+ return gl::GetPointervKHRContextANGLE(ctx, pname, params);
+}
+
+void GL_APIENTRY glGetProgramBinaryContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary)
+{
+ return gl::GetProgramBinaryContextANGLE(ctx, program, bufSize, length, binaryFormat, binary);
+}
+
+void GL_APIENTRY glGetProgramBinaryOESContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLenum *binaryFormat,
+ void *binary)
+{
+ return gl::GetProgramBinaryOESContextANGLE(ctx, program, bufSize, length, binaryFormat, binary);
+}
+
+void GL_APIENTRY glGetProgramInfoLogContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ return gl::GetProgramInfoLogContextANGLE(ctx, program, bufSize, length, infoLog);
+}
+
+void GL_APIENTRY glGetProgramInterfaceivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetProgramInterfaceivContextANGLE(ctx, program, programInterface, pname, params);
+}
+
+void GL_APIENTRY glGetProgramPipelineInfoLogContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ return gl::GetProgramPipelineInfoLogContextANGLE(ctx, pipeline, bufSize, length, infoLog);
+}
+
+void GL_APIENTRY glGetProgramPipelineivContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetProgramPipelineivContextANGLE(ctx, pipeline, pname, params);
+}
+
+GLuint GL_APIENTRY glGetProgramResourceIndexContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ return gl::GetProgramResourceIndexContextANGLE(ctx, program, programInterface, name);
+}
+
+GLint GL_APIENTRY glGetProgramResourceLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ return gl::GetProgramResourceLocationContextANGLE(ctx, program, programInterface, name);
+}
+
+GLint GL_APIENTRY glGetProgramResourceLocationIndexEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ const GLchar *name)
+{
+ return gl::GetProgramResourceLocationIndexEXTContextANGLE(ctx, program, programInterface, name);
+}
+
+void GL_APIENTRY glGetProgramResourceNameContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *name)
+{
+ return gl::GetProgramResourceNameContextANGLE(ctx, program, programInterface, index, bufSize,
+ length, name);
+}
+
+void GL_APIENTRY glGetProgramResourceivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLuint index,
+ GLsizei propCount,
+ const GLenum *props,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetProgramResourceivContextANGLE(ctx, program, programInterface, index, propCount,
+ props, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetProgramivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetProgramivContextANGLE(ctx, program, pname, params);
+}
+
+void GL_APIENTRY glGetQueryObjecti64vEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLint64 *params)
+{
+ return gl::GetQueryObjecti64vEXTContextANGLE(ctx, id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryObjectivEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetQueryObjectivEXTContextANGLE(ctx, id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryObjectui64vEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLuint64 *params)
+{
+ return gl::GetQueryObjectui64vEXTContextANGLE(ctx, id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryObjectuivContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLuint *params)
+{
+ return gl::GetQueryObjectuivContextANGLE(ctx, id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryObjectuivEXTContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLuint *params)
+{
+ return gl::GetQueryObjectuivEXTContextANGLE(ctx, id, pname, params);
+}
+
+void GL_APIENTRY glGetQueryivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetQueryivContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetQueryivEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetQueryivEXTContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetRenderbufferParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetRenderbufferParameterivContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetRenderbufferParameterivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetRenderbufferParameterivOESContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetSamplerParameterIivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetSamplerParameterIivOESContextANGLE(ctx, sampler, pname, params);
+}
+
+void GL_APIENTRY glGetSamplerParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLuint *params)
+{
+ return gl::GetSamplerParameterIuivOESContextANGLE(ctx, sampler, pname, params);
+}
+
+void GL_APIENTRY glGetSamplerParameterfvContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetSamplerParameterfvContextANGLE(ctx, sampler, pname, params);
+}
+
+void GL_APIENTRY glGetSamplerParameterivContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetSamplerParameterivContextANGLE(ctx, sampler, pname, params);
+}
+
+void GL_APIENTRY glGetSemaphoreParameterui64vEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLenum pname,
+ GLuint64 *params)
+{
+ return gl::GetSemaphoreParameterui64vEXTContextANGLE(ctx, semaphore, pname, params);
+}
+
+void GL_APIENTRY glGetShaderInfoLogContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *infoLog)
+{
+ return gl::GetShaderInfoLogContextANGLE(ctx, shader, bufSize, length, infoLog);
+}
+
+void GL_APIENTRY glGetShaderPrecisionFormatContextANGLE(GLeglContext ctx,
+ GLenum shadertype,
+ GLenum precisiontype,
+ GLint *range,
+ GLint *precision)
+{
+ return gl::GetShaderPrecisionFormatContextANGLE(ctx, shadertype, precisiontype, range,
+ precision);
+}
+
+void GL_APIENTRY glGetShaderSourceContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLchar *source)
+{
+ return gl::GetShaderSourceContextANGLE(ctx, shader, bufSize, length, source);
+}
+
+void GL_APIENTRY glGetShaderivContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetShaderivContextANGLE(ctx, shader, pname, params);
+}
+
+const GLubyte *GL_APIENTRY glGetStringContextANGLE(GLeglContext ctx, GLenum name)
+{
+ return gl::GetStringContextANGLE(ctx, name);
+}
+
+const GLubyte *GL_APIENTRY glGetStringiContextANGLE(GLeglContext ctx, GLenum name, GLuint index)
+{
+ return gl::GetStringiContextANGLE(ctx, name, index);
+}
+
+void GL_APIENTRY glGetSyncivContextANGLE(GLeglContext ctx,
+ GLsync sync,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *values)
+{
+ return gl::GetSyncivContextANGLE(ctx, sync, pname, bufSize, length, values);
+}
+
+void GL_APIENTRY glGetTexEnvfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetTexEnvfvContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetTexEnvivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetTexEnvivContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetTexEnvxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed *params)
+{
+ return gl::GetTexEnvxvContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetTexGenfvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetTexGenfvOESContextANGLE(ctx, coord, pname, params);
+}
+
+void GL_APIENTRY glGetTexGenivOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetTexGenivOESContextANGLE(ctx, coord, pname, params);
+}
+
+void GL_APIENTRY glGetTexGenxvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfixed *params)
+{
+ return gl::GetTexGenxvOESContextANGLE(ctx, coord, pname, params);
+}
+
+void GL_APIENTRY glGetTexLevelParameterfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetTexLevelParameterfvContextANGLE(ctx, target, level, pname, params);
+}
+
+void GL_APIENTRY glGetTexLevelParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetTexLevelParameterivContextANGLE(ctx, target, level, pname, params);
+}
+
+void GL_APIENTRY glGetTexParameterIivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetTexParameterIivOESContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetTexParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLuint *params)
+{
+ return gl::GetTexParameterIuivOESContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetTexParameterfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetTexParameterfvContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetTexParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetTexParameterivContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetTexParameterxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed *params)
+{
+ return gl::GetTexParameterxvContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glGetTransformFeedbackVaryingContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *size,
+ GLenum *type,
+ GLchar *name)
+{
+ return gl::GetTransformFeedbackVaryingContextANGLE(ctx, program, index, bufSize, length, size,
+ type, name);
+}
+
+void GL_APIENTRY glGetTranslatedShaderSourceANGLEContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei bufsize,
+ GLsizei *length,
+ GLchar *source)
+{
+ return gl::GetTranslatedShaderSourceANGLEContextANGLE(ctx, shader, bufsize, length, source);
+}
+
+GLuint GL_APIENTRY glGetUniformBlockIndexContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *uniformBlockName)
+{
+ return gl::GetUniformBlockIndexContextANGLE(ctx, program, uniformBlockName);
+}
+
+void GL_APIENTRY glGetUniformIndicesContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei uniformCount,
+ const GLchar *const *uniformNames,
+ GLuint *uniformIndices)
+{
+ return gl::GetUniformIndicesContextANGLE(ctx, program, uniformCount, uniformNames,
+ uniformIndices);
+}
+
+GLint GL_APIENTRY glGetUniformLocationContextANGLE(GLeglContext ctx,
+ GLuint program,
+ const GLchar *name)
+{
+ return gl::GetUniformLocationContextANGLE(ctx, program, name);
+}
+
+void GL_APIENTRY glGetUniformfvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat *params)
+{
+ return gl::GetUniformfvContextANGLE(ctx, program, location, params);
+}
+
+void GL_APIENTRY glGetUniformivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint *params)
+{
+ return gl::GetUniformivContextANGLE(ctx, program, location, params);
+}
+
+void GL_APIENTRY glGetUniformuivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint *params)
+{
+ return gl::GetUniformuivContextANGLE(ctx, program, location, params);
+}
+
+void GL_APIENTRY glGetUnsignedBytevEXTContextANGLE(GLeglContext ctx, GLenum pname, GLubyte *data)
+{
+ return gl::GetUnsignedBytevEXTContextANGLE(ctx, pname, data);
+}
+
+void GL_APIENTRY glGetUnsignedBytei_vEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLubyte *data)
+{
+ return gl::GetUnsignedBytei_vEXTContextANGLE(ctx, target, index, data);
+}
+
+void GL_APIENTRY glGetVertexAttribIivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetVertexAttribIivContextANGLE(ctx, index, pname, params);
+}
+
+void GL_APIENTRY glGetVertexAttribIuivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLuint *params)
+{
+ return gl::GetVertexAttribIuivContextANGLE(ctx, index, pname, params);
+}
+
+void GL_APIENTRY glGetVertexAttribPointervContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ void **pointer)
+{
+ return gl::GetVertexAttribPointervContextANGLE(ctx, index, pname, pointer);
+}
+
+void GL_APIENTRY glGetVertexAttribfvContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetVertexAttribfvContextANGLE(ctx, index, pname, params);
+}
+
+void GL_APIENTRY glGetVertexAttribivContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetVertexAttribivContextANGLE(ctx, index, pname, params);
+}
+
+void GL_APIENTRY glGetnUniformfvEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLfloat *params)
+{
+ return gl::GetnUniformfvEXTContextANGLE(ctx, program, location, bufSize, params);
+}
+
+void GL_APIENTRY glGetnUniformivEXTContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLint *params)
+{
+ return gl::GetnUniformivEXTContextANGLE(ctx, program, location, bufSize, params);
+}
+
+void GL_APIENTRY glHintContextANGLE(GLeglContext ctx, GLenum target, GLenum mode)
+{
+ return gl::HintContextANGLE(ctx, target, mode);
+}
+
+void GL_APIENTRY glImportMemoryFdEXTContextANGLE(GLeglContext ctx,
+ GLuint memory,
+ GLuint64 size,
+ GLenum handleType,
+ GLint fd)
+{
+ return gl::ImportMemoryFdEXTContextANGLE(ctx, memory, size, handleType, fd);
+}
+
+void GL_APIENTRY glImportSemaphoreFdEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLenum handleType,
+ GLint fd)
+{
+ return gl::ImportSemaphoreFdEXTContextANGLE(ctx, semaphore, handleType, fd);
+}
+
+void GL_APIENTRY glInsertEventMarkerEXTContextANGLE(GLeglContext ctx,
+ GLsizei length,
+ const GLchar *marker)
+{
+ return gl::InsertEventMarkerEXTContextANGLE(ctx, length, marker);
+}
+
+void GL_APIENTRY glInvalidateFramebufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments)
+{
+ return gl::InvalidateFramebufferContextANGLE(ctx, target, numAttachments, attachments);
+}
+
+void GL_APIENTRY glInvalidateSubFramebufferContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei numAttachments,
+ const GLenum *attachments,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::InvalidateSubFramebufferContextANGLE(ctx, target, numAttachments, attachments, x, y,
+ width, height);
+}
+
+GLboolean GL_APIENTRY glIsBufferContextANGLE(GLeglContext ctx, GLuint buffer)
+{
+ return gl::IsBufferContextANGLE(ctx, buffer);
+}
+
+GLboolean GL_APIENTRY glIsEnabledContextANGLE(GLeglContext ctx, GLenum cap)
+{
+ return gl::IsEnabledContextANGLE(ctx, cap);
+}
+
+GLboolean GL_APIENTRY glIsFenceNVContextANGLE(GLeglContext ctx, GLuint fence)
+{
+ return gl::IsFenceNVContextANGLE(ctx, fence);
+}
+
+GLboolean GL_APIENTRY glIsFramebufferContextANGLE(GLeglContext ctx, GLuint framebuffer)
+{
+ return gl::IsFramebufferContextANGLE(ctx, framebuffer);
+}
+
+GLboolean GL_APIENTRY glIsFramebufferOESContextANGLE(GLeglContext ctx, GLuint framebuffer)
+{
+ return gl::IsFramebufferOESContextANGLE(ctx, framebuffer);
+}
+
+GLboolean GL_APIENTRY glIsMemoryObjectEXTContextANGLE(GLeglContext ctx, GLuint memoryObject)
+{
+ return gl::IsMemoryObjectEXTContextANGLE(ctx, memoryObject);
+}
+
+GLboolean GL_APIENTRY glIsProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ return gl::IsProgramContextANGLE(ctx, program);
+}
+
+GLboolean GL_APIENTRY glIsProgramPipelineContextANGLE(GLeglContext ctx, GLuint pipeline)
+{
+ return gl::IsProgramPipelineContextANGLE(ctx, pipeline);
+}
+
+GLboolean GL_APIENTRY glIsQueryContextANGLE(GLeglContext ctx, GLuint id)
+{
+ return gl::IsQueryContextANGLE(ctx, id);
+}
+
+GLboolean GL_APIENTRY glIsQueryEXTContextANGLE(GLeglContext ctx, GLuint id)
+{
+ return gl::IsQueryEXTContextANGLE(ctx, id);
+}
+
+GLboolean GL_APIENTRY glIsRenderbufferContextANGLE(GLeglContext ctx, GLuint renderbuffer)
+{
+ return gl::IsRenderbufferContextANGLE(ctx, renderbuffer);
+}
+
+GLboolean GL_APIENTRY glIsRenderbufferOESContextANGLE(GLeglContext ctx, GLuint renderbuffer)
+{
+ return gl::IsRenderbufferOESContextANGLE(ctx, renderbuffer);
+}
+
+GLboolean GL_APIENTRY glIsSemaphoreEXTContextANGLE(GLeglContext ctx, GLuint semaphore)
+{
+ return gl::IsSemaphoreEXTContextANGLE(ctx, semaphore);
+}
+
+GLboolean GL_APIENTRY glIsSamplerContextANGLE(GLeglContext ctx, GLuint sampler)
+{
+ return gl::IsSamplerContextANGLE(ctx, sampler);
+}
+
+GLboolean GL_APIENTRY glIsShaderContextANGLE(GLeglContext ctx, GLuint shader)
+{
+ return gl::IsShaderContextANGLE(ctx, shader);
+}
+
+GLboolean GL_APIENTRY glIsSyncContextANGLE(GLeglContext ctx, GLsync sync)
+{
+ return gl::IsSyncContextANGLE(ctx, sync);
+}
+
+GLboolean GL_APIENTRY glIsTextureContextANGLE(GLeglContext ctx, GLuint texture)
+{
+ return gl::IsTextureContextANGLE(ctx, texture);
+}
+
+GLboolean GL_APIENTRY glIsTransformFeedbackContextANGLE(GLeglContext ctx, GLuint id)
+{
+ return gl::IsTransformFeedbackContextANGLE(ctx, id);
+}
+
+GLboolean GL_APIENTRY glIsVertexArrayContextANGLE(GLeglContext ctx, GLuint array)
+{
+ return gl::IsVertexArrayContextANGLE(ctx, array);
+}
+
+GLboolean GL_APIENTRY glIsVertexArrayOESContextANGLE(GLeglContext ctx, GLuint array)
+{
+ return gl::IsVertexArrayOESContextANGLE(ctx, array);
+}
+
+void GL_APIENTRY glLightModelfContextANGLE(GLeglContext ctx, GLenum pname, GLfloat param)
+{
+ return gl::LightModelfContextANGLE(ctx, pname, param);
+}
+
+void GL_APIENTRY glLightModelfvContextANGLE(GLeglContext ctx, GLenum pname, const GLfloat *params)
+{
+ return gl::LightModelfvContextANGLE(ctx, pname, params);
+}
+
+void GL_APIENTRY glLightModelxContextANGLE(GLeglContext ctx, GLenum pname, GLfixed param)
+{
+ return gl::LightModelxContextANGLE(ctx, pname, param);
+}
+
+void GL_APIENTRY glLightModelxvContextANGLE(GLeglContext ctx, GLenum pname, const GLfixed *param)
+{
+ return gl::LightModelxvContextANGLE(ctx, pname, param);
+}
+
+void GL_APIENTRY glLightfContextANGLE(GLeglContext ctx, GLenum light, GLenum pname, GLfloat param)
+{
+ return gl::LightfContextANGLE(ctx, light, pname, param);
+}
+
+void GL_APIENTRY glLightfvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ const GLfloat *params)
+{
+ return gl::LightfvContextANGLE(ctx, light, pname, params);
+}
+
+void GL_APIENTRY glLightxContextANGLE(GLeglContext ctx, GLenum light, GLenum pname, GLfixed param)
+{
+ return gl::LightxContextANGLE(ctx, light, pname, param);
+}
+
+void GL_APIENTRY glLightxvContextANGLE(GLeglContext ctx,
+ GLenum light,
+ GLenum pname,
+ const GLfixed *params)
+{
+ return gl::LightxvContextANGLE(ctx, light, pname, params);
+}
+
+void GL_APIENTRY glLineWidthContextANGLE(GLeglContext ctx, GLfloat width)
+{
+ return gl::LineWidthContextANGLE(ctx, width);
+}
+
+void GL_APIENTRY glLineWidthxContextANGLE(GLeglContext ctx, GLfixed width)
+{
+ return gl::LineWidthxContextANGLE(ctx, width);
+}
+
+void GL_APIENTRY glLinkProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ return gl::LinkProgramContextANGLE(ctx, program);
+}
+
+void GL_APIENTRY glLoadIdentityContextANGLE(GLeglContext ctx)
+{
+ return gl::LoadIdentityContextANGLE(ctx);
+}
+
+void GL_APIENTRY glLoadMatrixfContextANGLE(GLeglContext ctx, const GLfloat *m)
+{
+ return gl::LoadMatrixfContextANGLE(ctx, m);
+}
+
+void GL_APIENTRY glLoadMatrixxContextANGLE(GLeglContext ctx, const GLfixed *m)
+{
+ return gl::LoadMatrixxContextANGLE(ctx, m);
+}
+
+void GL_APIENTRY glLoadPaletteFromModelViewMatrixOESContextANGLE(GLeglContext ctx)
+{
+ return gl::LoadPaletteFromModelViewMatrixOESContextANGLE(ctx);
+}
+
+void GL_APIENTRY glLogicOpContextANGLE(GLeglContext ctx, GLenum opcode)
+{
+ return gl::LogicOpContextANGLE(ctx, opcode);
+}
+
+void *GL_APIENTRY glMapBufferOESContextANGLE(GLeglContext ctx, GLenum target, GLenum access)
+{
+ return gl::MapBufferOESContextANGLE(ctx, target, access);
+}
+
+void *GL_APIENTRY glMapBufferRangeContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access)
+{
+ return gl::MapBufferRangeContextANGLE(ctx, target, offset, length, access);
+}
+
+void *GL_APIENTRY glMapBufferRangeEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLintptr offset,
+ GLsizeiptr length,
+ GLbitfield access)
+{
+ return gl::MapBufferRangeEXTContextANGLE(ctx, target, offset, length, access);
+}
+
+void GL_APIENTRY glMaterialfContextANGLE(GLeglContext ctx, GLenum face, GLenum pname, GLfloat param)
+{
+ return gl::MaterialfContextANGLE(ctx, face, pname, param);
+}
+
+void GL_APIENTRY glMaterialfvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ const GLfloat *params)
+{
+ return gl::MaterialfvContextANGLE(ctx, face, pname, params);
+}
+
+void GL_APIENTRY glMaterialxContextANGLE(GLeglContext ctx, GLenum face, GLenum pname, GLfixed param)
+{
+ return gl::MaterialxContextANGLE(ctx, face, pname, param);
+}
+
+void GL_APIENTRY glMaterialxvContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum pname,
+ const GLfixed *param)
+{
+ return gl::MaterialxvContextANGLE(ctx, face, pname, param);
+}
+
+void GL_APIENTRY glMatrixIndexPointerOESContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::MatrixIndexPointerOESContextANGLE(ctx, size, type, stride, pointer);
+}
+
+void GL_APIENTRY glMatrixModeContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ return gl::MatrixModeContextANGLE(ctx, mode);
+}
+
+void GL_APIENTRY glMaxShaderCompilerThreadsKHRContextANGLE(GLeglContext ctx, GLuint count)
+{
+ return gl::MaxShaderCompilerThreadsKHRContextANGLE(ctx, count);
+}
+
+void GL_APIENTRY glMemoryBarrierContextANGLE(GLeglContext ctx, GLbitfield barriers)
+{
+ return gl::MemoryBarrierContextANGLE(ctx, barriers);
+}
+
+void GL_APIENTRY glMemoryBarrierByRegionContextANGLE(GLeglContext ctx, GLbitfield barriers)
+{
+ return gl::MemoryBarrierByRegionContextANGLE(ctx, barriers);
+}
+
+void GL_APIENTRY glMemoryObjectParameterivEXTContextANGLE(GLeglContext ctx,
+ GLuint memoryObject,
+ GLenum pname,
+ const GLint *params)
+{
+ return gl::MemoryObjectParameterivEXTContextANGLE(ctx, memoryObject, pname, params);
+}
+
+void GL_APIENTRY glMultMatrixfContextANGLE(GLeglContext ctx, const GLfloat *m)
+{
+ return gl::MultMatrixfContextANGLE(ctx, m);
+}
+
+void GL_APIENTRY glMultMatrixxContextANGLE(GLeglContext ctx, const GLfixed *m)
+{
+ return gl::MultMatrixxContextANGLE(ctx, m);
+}
+
+void GL_APIENTRY glMultiTexCoord4fContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLfloat s,
+ GLfloat t,
+ GLfloat r,
+ GLfloat q)
+{
+ return gl::MultiTexCoord4fContextANGLE(ctx, target, s, t, r, q);
+}
+
+void GL_APIENTRY glMultiTexCoord4xContextANGLE(GLeglContext ctx,
+ GLenum texture,
+ GLfixed s,
+ GLfixed t,
+ GLfixed r,
+ GLfixed q)
+{
+ return gl::MultiTexCoord4xContextANGLE(ctx, texture, s, t, r, q);
+}
+
+void GL_APIENTRY glNormal3fContextANGLE(GLeglContext ctx, GLfloat nx, GLfloat ny, GLfloat nz)
+{
+ return gl::Normal3fContextANGLE(ctx, nx, ny, nz);
+}
+
+void GL_APIENTRY glNormal3xContextANGLE(GLeglContext ctx, GLfixed nx, GLfixed ny, GLfixed nz)
+{
+ return gl::Normal3xContextANGLE(ctx, nx, ny, nz);
+}
+
+void GL_APIENTRY glNormalPointerContextANGLE(GLeglContext ctx,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::NormalPointerContextANGLE(ctx, type, stride, pointer);
+}
+
+void GL_APIENTRY glObjectLabelKHRContextANGLE(GLeglContext ctx,
+ GLenum identifier,
+ GLuint name,
+ GLsizei length,
+ const GLchar *label)
+{
+ return gl::ObjectLabelKHRContextANGLE(ctx, identifier, name, length, label);
+}
+
+void GL_APIENTRY glObjectPtrLabelKHRContextANGLE(GLeglContext ctx,
+ const void *ptr,
+ GLsizei length,
+ const GLchar *label)
+{
+ return gl::ObjectPtrLabelKHRContextANGLE(ctx, ptr, length, label);
+}
+
+void GL_APIENTRY glOrthofContextANGLE(GLeglContext ctx,
+ GLfloat l,
+ GLfloat r,
+ GLfloat b,
+ GLfloat t,
+ GLfloat n,
+ GLfloat f)
+{
+ return gl::OrthofContextANGLE(ctx, l, r, b, t, n, f);
+}
+
+void GL_APIENTRY glOrthoxContextANGLE(GLeglContext ctx,
+ GLfixed l,
+ GLfixed r,
+ GLfixed b,
+ GLfixed t,
+ GLfixed n,
+ GLfixed f)
+{
+ return gl::OrthoxContextANGLE(ctx, l, r, b, t, n, f);
+}
+
+void GL_APIENTRY glPauseTransformFeedbackContextANGLE(GLeglContext ctx)
+{
+ return gl::PauseTransformFeedbackContextANGLE(ctx);
+}
+
+void GL_APIENTRY glPixelStoreiContextANGLE(GLeglContext ctx, GLenum pname, GLint param)
+{
+ return gl::PixelStoreiContextANGLE(ctx, pname, param);
+}
+
+void GL_APIENTRY glPointParameterfContextANGLE(GLeglContext ctx, GLenum pname, GLfloat param)
+{
+ return gl::PointParameterfContextANGLE(ctx, pname, param);
+}
+
+void GL_APIENTRY glPointParameterfvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ const GLfloat *params)
+{
+ return gl::PointParameterfvContextANGLE(ctx, pname, params);
+}
+
+void GL_APIENTRY glPointParameterxContextANGLE(GLeglContext ctx, GLenum pname, GLfixed param)
+{
+ return gl::PointParameterxContextANGLE(ctx, pname, param);
+}
+
+void GL_APIENTRY glPointParameterxvContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ const GLfixed *params)
+{
+ return gl::PointParameterxvContextANGLE(ctx, pname, params);
+}
+
+void GL_APIENTRY glPointSizeContextANGLE(GLeglContext ctx, GLfloat size)
+{
+ return gl::PointSizeContextANGLE(ctx, size);
+}
+
+void GL_APIENTRY glPointSizePointerOESContextANGLE(GLeglContext ctx,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::PointSizePointerOESContextANGLE(ctx, type, stride, pointer);
+}
+
+void GL_APIENTRY glPointSizexContextANGLE(GLeglContext ctx, GLfixed size)
+{
+ return gl::PointSizexContextANGLE(ctx, size);
+}
+
+void GL_APIENTRY glPolygonOffsetContextANGLE(GLeglContext ctx, GLfloat factor, GLfloat units)
+{
+ return gl::PolygonOffsetContextANGLE(ctx, factor, units);
+}
+
+void GL_APIENTRY glPolygonOffsetxContextANGLE(GLeglContext ctx, GLfixed factor, GLfixed units)
+{
+ return gl::PolygonOffsetxContextANGLE(ctx, factor, units);
+}
+
+void GL_APIENTRY glPopDebugGroupKHRContextANGLE(GLeglContext ctx)
+{
+ return gl::PopDebugGroupKHRContextANGLE(ctx);
+}
+
+void GL_APIENTRY glPopGroupMarkerEXTContextANGLE(GLeglContext ctx)
+{
+ return gl::PopGroupMarkerEXTContextANGLE(ctx);
+}
+
+void GL_APIENTRY glPopMatrixContextANGLE(GLeglContext ctx)
+{
+ return gl::PopMatrixContextANGLE(ctx);
+}
+
+void GL_APIENTRY glProgramBinaryContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLsizei length)
+{
+ return gl::ProgramBinaryContextANGLE(ctx, program, binaryFormat, binary, length);
+}
+
+void GL_APIENTRY glProgramBinaryOESContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum binaryFormat,
+ const void *binary,
+ GLint length)
+{
+ return gl::ProgramBinaryOESContextANGLE(ctx, program, binaryFormat, binary, length);
+}
+
+void GL_APIENTRY glProgramParameteriContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum pname,
+ GLint value)
+{
+ return gl::ProgramParameteriContextANGLE(ctx, program, pname, value);
+}
+
+void GL_APIENTRY glProgramUniform1fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0)
+{
+ return gl::ProgramUniform1fContextANGLE(ctx, program, location, v0);
+}
+
+void GL_APIENTRY glProgramUniform1fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::ProgramUniform1fvContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform1iContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint v0)
+{
+ return gl::ProgramUniform1iContextANGLE(ctx, program, location, v0);
+}
+
+void GL_APIENTRY glProgramUniform1ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::ProgramUniform1ivContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform1uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0)
+{
+ return gl::ProgramUniform1uiContextANGLE(ctx, program, location, v0);
+}
+
+void GL_APIENTRY glProgramUniform1uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::ProgramUniform1uivContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform2fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1)
+{
+ return gl::ProgramUniform2fContextANGLE(ctx, program, location, v0, v1);
+}
+
+void GL_APIENTRY glProgramUniform2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::ProgramUniform2fvContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY
+glProgramUniform2iContextANGLE(GLeglContext ctx, GLuint program, GLint location, GLint v0, GLint v1)
+{
+ return gl::ProgramUniform2iContextANGLE(ctx, program, location, v0, v1);
+}
+
+void GL_APIENTRY glProgramUniform2ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::ProgramUniform2ivContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform2uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1)
+{
+ return gl::ProgramUniform2uiContextANGLE(ctx, program, location, v0, v1);
+}
+
+void GL_APIENTRY glProgramUniform2uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::ProgramUniform2uivContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform3fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1,
+ GLfloat v2)
+{
+ return gl::ProgramUniform3fContextANGLE(ctx, program, location, v0, v1, v2);
+}
+
+void GL_APIENTRY glProgramUniform3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::ProgramUniform3fvContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform3iContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint v0,
+ GLint v1,
+ GLint v2)
+{
+ return gl::ProgramUniform3iContextANGLE(ctx, program, location, v0, v1, v2);
+}
+
+void GL_APIENTRY glProgramUniform3ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::ProgramUniform3ivContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform3uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1,
+ GLuint v2)
+{
+ return gl::ProgramUniform3uiContextANGLE(ctx, program, location, v0, v1, v2);
+}
+
+void GL_APIENTRY glProgramUniform3uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::ProgramUniform3uivContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform4fContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1,
+ GLfloat v2,
+ GLfloat v3)
+{
+ return gl::ProgramUniform4fContextANGLE(ctx, program, location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glProgramUniform4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::ProgramUniform4fvContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform4iContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLint v0,
+ GLint v1,
+ GLint v2,
+ GLint v3)
+{
+ return gl::ProgramUniform4iContextANGLE(ctx, program, location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glProgramUniform4ivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::ProgramUniform4ivContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniform4uiContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLuint v0,
+ GLuint v1,
+ GLuint v2,
+ GLuint v3)
+{
+ return gl::ProgramUniform4uiContextANGLE(ctx, program, location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glProgramUniform4uivContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::ProgramUniform4uivContextANGLE(ctx, program, location, count, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix2fvContextANGLE(ctx, program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix2x3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix2x3fvContextANGLE(ctx, program, location, count, transpose,
+ value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix2x4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix2x4fvContextANGLE(ctx, program, location, count, transpose,
+ value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix3fvContextANGLE(ctx, program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix3x2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix3x2fvContextANGLE(ctx, program, location, count, transpose,
+ value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix3x4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix3x4fvContextANGLE(ctx, program, location, count, transpose,
+ value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix4fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix4fvContextANGLE(ctx, program, location, count, transpose, value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix4x2fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix4x2fvContextANGLE(ctx, program, location, count, transpose,
+ value);
+}
+
+void GL_APIENTRY glProgramUniformMatrix4x3fvContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::ProgramUniformMatrix4x3fvContextANGLE(ctx, program, location, count, transpose,
+ value);
+}
+
+void GL_APIENTRY glPushDebugGroupKHRContextANGLE(GLeglContext ctx,
+ GLenum source,
+ GLuint id,
+ GLsizei length,
+ const GLchar *message)
+{
+ return gl::PushDebugGroupKHRContextANGLE(ctx, source, id, length, message);
+}
+
+void GL_APIENTRY glPushGroupMarkerEXTContextANGLE(GLeglContext ctx,
+ GLsizei length,
+ const GLchar *marker)
+{
+ return gl::PushGroupMarkerEXTContextANGLE(ctx, length, marker);
+}
+
+void GL_APIENTRY glPushMatrixContextANGLE(GLeglContext ctx)
+{
+ return gl::PushMatrixContextANGLE(ctx);
+}
+
+void GL_APIENTRY glQueryCounterEXTContextANGLE(GLeglContext ctx, GLuint id, GLenum target)
+{
+ return gl::QueryCounterEXTContextANGLE(ctx, id, target);
+}
+
+GLbitfield GL_APIENTRY glQueryMatrixxOESContextANGLE(GLeglContext ctx,
+ GLfixed *mantissa,
+ GLint *exponent)
+{
+ return gl::QueryMatrixxOESContextANGLE(ctx, mantissa, exponent);
+}
+
+void GL_APIENTRY glReadBufferContextANGLE(GLeglContext ctx, GLenum src)
+{
+ return gl::ReadBufferContextANGLE(ctx, src);
+}
+
+void GL_APIENTRY glReadPixelsContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ void *pixels)
+{
+ return gl::ReadPixelsContextANGLE(ctx, x, y, width, height, format, type, pixels);
+}
+
+void GL_APIENTRY glReadnPixelsEXTContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ void *data)
+{
+ return gl::ReadnPixelsEXTContextANGLE(ctx, x, y, width, height, format, type, bufSize, data);
+}
+
+void GL_APIENTRY glReleaseShaderCompilerContextANGLE(GLeglContext ctx)
+{
+ return gl::ReleaseShaderCompilerContextANGLE(ctx);
+}
+
+void GL_APIENTRY glRenderbufferStorageContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::RenderbufferStorageContextANGLE(ctx, target, internalformat, width, height);
+}
+
+void GL_APIENTRY glRenderbufferStorageMultisampleContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::RenderbufferStorageMultisampleContextANGLE(ctx, target, samples, internalformat,
+ width, height);
+}
+
+void GL_APIENTRY glRenderbufferStorageMultisampleANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::RenderbufferStorageMultisampleANGLEContextANGLE(ctx, target, samples, internalformat,
+ width, height);
+}
+
+void GL_APIENTRY glRenderbufferStorageOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::RenderbufferStorageOESContextANGLE(ctx, target, internalformat, width, height);
+}
+
+void GL_APIENTRY glResumeTransformFeedbackContextANGLE(GLeglContext ctx)
+{
+ return gl::ResumeTransformFeedbackContextANGLE(ctx);
+}
+
+void GL_APIENTRY
+glRotatefContextANGLE(GLeglContext ctx, GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+ return gl::RotatefContextANGLE(ctx, angle, x, y, z);
+}
+
+void GL_APIENTRY
+glRotatexContextANGLE(GLeglContext ctx, GLfixed angle, GLfixed x, GLfixed y, GLfixed z)
+{
+ return gl::RotatexContextANGLE(ctx, angle, x, y, z);
+}
+
+void GL_APIENTRY glSampleCoverageContextANGLE(GLeglContext ctx, GLfloat value, GLboolean invert)
+{
+ return gl::SampleCoverageContextANGLE(ctx, value, invert);
+}
+
+void GL_APIENTRY glSampleCoveragexContextANGLE(GLeglContext ctx, GLclampx value, GLboolean invert)
+{
+ return gl::SampleCoveragexContextANGLE(ctx, value, invert);
+}
+
+void GL_APIENTRY glSampleMaskiContextANGLE(GLeglContext ctx, GLuint maskNumber, GLbitfield mask)
+{
+ return gl::SampleMaskiContextANGLE(ctx, maskNumber, mask);
+}
+
+void GL_APIENTRY glSamplerParameterIivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLint *param)
+{
+ return gl::SamplerParameterIivOESContextANGLE(ctx, sampler, pname, param);
+}
+
+void GL_APIENTRY glSamplerParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLuint *param)
+{
+ return gl::SamplerParameterIuivOESContextANGLE(ctx, sampler, pname, param);
+}
+
+void GL_APIENTRY glSamplerParameterfContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLfloat param)
+{
+ return gl::SamplerParameterfContextANGLE(ctx, sampler, pname, param);
+}
+
+void GL_APIENTRY glSamplerParameterfvContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLfloat *param)
+{
+ return gl::SamplerParameterfvContextANGLE(ctx, sampler, pname, param);
+}
+
+void GL_APIENTRY glSamplerParameteriContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLint param)
+{
+ return gl::SamplerParameteriContextANGLE(ctx, sampler, pname, param);
+}
+
+void GL_APIENTRY glSamplerParameterivContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ const GLint *param)
+{
+ return gl::SamplerParameterivContextANGLE(ctx, sampler, pname, param);
+}
+
+void GL_APIENTRY glScalefContextANGLE(GLeglContext ctx, GLfloat x, GLfloat y, GLfloat z)
+{
+ return gl::ScalefContextANGLE(ctx, x, y, z);
+}
+
+void GL_APIENTRY glScalexContextANGLE(GLeglContext ctx, GLfixed x, GLfixed y, GLfixed z)
+{
+ return gl::ScalexContextANGLE(ctx, x, y, z);
+}
+
+void GL_APIENTRY
+glScissorContextANGLE(GLeglContext ctx, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ return gl::ScissorContextANGLE(ctx, x, y, width, height);
+}
+
+void GL_APIENTRY glSemaphoreParameterui64vEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLenum pname,
+ const GLuint64 *params)
+{
+ return gl::SemaphoreParameterui64vEXTContextANGLE(ctx, semaphore, pname, params);
+}
+
+void GL_APIENTRY glSetFenceNVContextANGLE(GLeglContext ctx, GLuint fence, GLenum condition)
+{
+ return gl::SetFenceNVContextANGLE(ctx, fence, condition);
+}
+
+void GL_APIENTRY glShadeModelContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ return gl::ShadeModelContextANGLE(ctx, mode);
+}
+
+void GL_APIENTRY glShaderBinaryContextANGLE(GLeglContext ctx,
+ GLsizei count,
+ const GLuint *shaders,
+ GLenum binaryformat,
+ const void *binary,
+ GLsizei length)
+{
+ return gl::ShaderBinaryContextANGLE(ctx, count, shaders, binaryformat, binary, length);
+}
+
+void GL_APIENTRY glShaderSourceContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLsizei count,
+ const GLchar *const *string,
+ const GLint *length)
+{
+ return gl::ShaderSourceContextANGLE(ctx, shader, count, string, length);
+}
+
+void GL_APIENTRY glSignalSemaphoreEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *dstLayouts)
+{
+ return gl::SignalSemaphoreEXTContextANGLE(ctx, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, dstLayouts);
+}
+
+void GL_APIENTRY glStencilFuncContextANGLE(GLeglContext ctx, GLenum func, GLint ref, GLuint mask)
+{
+ return gl::StencilFuncContextANGLE(ctx, func, ref, mask);
+}
+
+void GL_APIENTRY glStencilFuncSeparateContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum func,
+ GLint ref,
+ GLuint mask)
+{
+ return gl::StencilFuncSeparateContextANGLE(ctx, face, func, ref, mask);
+}
+
+void GL_APIENTRY glStencilMaskContextANGLE(GLeglContext ctx, GLuint mask)
+{
+ return gl::StencilMaskContextANGLE(ctx, mask);
+}
+
+void GL_APIENTRY glStencilMaskSeparateContextANGLE(GLeglContext ctx, GLenum face, GLuint mask)
+{
+ return gl::StencilMaskSeparateContextANGLE(ctx, face, mask);
+}
+
+void GL_APIENTRY glStencilOpContextANGLE(GLeglContext ctx, GLenum fail, GLenum zfail, GLenum zpass)
+{
+ return gl::StencilOpContextANGLE(ctx, fail, zfail, zpass);
+}
+
+void GL_APIENTRY glStencilOpSeparateContextANGLE(GLeglContext ctx,
+ GLenum face,
+ GLenum sfail,
+ GLenum dpfail,
+ GLenum dppass)
+{
+ return gl::StencilOpSeparateContextANGLE(ctx, face, sfail, dpfail, dppass);
+}
+
+GLboolean GL_APIENTRY glTestFenceNVContextANGLE(GLeglContext ctx, GLuint fence)
+{
+ return gl::TestFenceNVContextANGLE(ctx, fence);
+}
+
+void GL_APIENTRY glTexCoordPointerContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::TexCoordPointerContextANGLE(ctx, size, type, stride, pointer);
+}
+
+void GL_APIENTRY glTexEnvfContextANGLE(GLeglContext ctx, GLenum target, GLenum pname, GLfloat param)
+{
+ return gl::TexEnvfContextANGLE(ctx, target, pname, param);
+}
+
+void GL_APIENTRY glTexEnvfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfloat *params)
+{
+ return gl::TexEnvfvContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glTexEnviContextANGLE(GLeglContext ctx, GLenum target, GLenum pname, GLint param)
+{
+ return gl::TexEnviContextANGLE(ctx, target, pname, param);
+}
+
+void GL_APIENTRY glTexEnvivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLint *params)
+{
+ return gl::TexEnvivContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glTexEnvxContextANGLE(GLeglContext ctx, GLenum target, GLenum pname, GLfixed param)
+{
+ return gl::TexEnvxContextANGLE(ctx, target, pname, param);
+}
+
+void GL_APIENTRY glTexEnvxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfixed *params)
+{
+ return gl::TexEnvxvContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glTexGenfOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfloat param)
+{
+ return gl::TexGenfOESContextANGLE(ctx, coord, pname, param);
+}
+
+void GL_APIENTRY glTexGenfvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ const GLfloat *params)
+{
+ return gl::TexGenfvOESContextANGLE(ctx, coord, pname, params);
+}
+
+void GL_APIENTRY glTexGeniOESContextANGLE(GLeglContext ctx, GLenum coord, GLenum pname, GLint param)
+{
+ return gl::TexGeniOESContextANGLE(ctx, coord, pname, param);
+}
+
+void GL_APIENTRY glTexGenivOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ const GLint *params)
+{
+ return gl::TexGenivOESContextANGLE(ctx, coord, pname, params);
+}
+
+void GL_APIENTRY glTexGenxOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ GLfixed param)
+{
+ return gl::TexGenxOESContextANGLE(ctx, coord, pname, param);
+}
+
+void GL_APIENTRY glTexGenxvOESContextANGLE(GLeglContext ctx,
+ GLenum coord,
+ GLenum pname,
+ const GLfixed *params)
+{
+ return gl::TexGenxvOESContextANGLE(ctx, coord, pname, params);
+}
+
+void GL_APIENTRY glTexImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexImage2DContextANGLE(ctx, target, level, internalformat, width, height, border,
+ format, type, pixels);
+}
+
+void GL_APIENTRY glTexImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexImage3DContextANGLE(ctx, target, level, internalformat, width, height, depth,
+ border, format, type, pixels);
+}
+
+void GL_APIENTRY glTexImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexImage3DOESContextANGLE(ctx, target, level, internalformat, width, height, depth,
+ border, format, type, pixels);
+}
+
+void GL_APIENTRY glTexParameterIivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLint *params)
+{
+ return gl::TexParameterIivOESContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glTexParameterIuivOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLuint *params)
+{
+ return gl::TexParameterIuivOESContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glTexParameterfContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfloat param)
+{
+ return gl::TexParameterfContextANGLE(ctx, target, pname, param);
+}
+
+void GL_APIENTRY glTexParameterfvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfloat *params)
+{
+ return gl::TexParameterfvContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glTexParameteriContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLint param)
+{
+ return gl::TexParameteriContextANGLE(ctx, target, pname, param);
+}
+
+void GL_APIENTRY glTexParameterivContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLint *params)
+{
+ return gl::TexParameterivContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glTexParameterxContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLfixed param)
+{
+ return gl::TexParameterxContextANGLE(ctx, target, pname, param);
+}
+
+void GL_APIENTRY glTexParameterxvContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ const GLfixed *params)
+{
+ return gl::TexParameterxvContextANGLE(ctx, target, pname, params);
+}
+
+void GL_APIENTRY glTexStorage1DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width)
+{
+ return gl::TexStorage1DEXTContextANGLE(ctx, target, levels, internalformat, width);
+}
+
+void GL_APIENTRY glTexStorage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::TexStorage2DContextANGLE(ctx, target, levels, internalformat, width, height);
+}
+
+void GL_APIENTRY glTexStorage2DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height)
+{
+ return gl::TexStorage2DEXTContextANGLE(ctx, target, levels, internalformat, width, height);
+}
+
+void GL_APIENTRY glTexStorage2DMultisampleContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations)
+{
+ return gl::TexStorage2DMultisampleContextANGLE(ctx, target, samples, internalformat, width,
+ height, fixedsamplelocations);
+}
+
+void GL_APIENTRY glTexStorage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth)
+{
+ return gl::TexStorage3DContextANGLE(ctx, target, levels, internalformat, width, height, depth);
+}
+
+void GL_APIENTRY glTexStorage3DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth)
+{
+ return gl::TexStorage3DEXTContextANGLE(ctx, target, levels, internalformat, width, height,
+ depth);
+}
+
+void GL_APIENTRY glTexStorage3DMultisampleOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedsamplelocations)
+{
+ return gl::TexStorage3DMultisampleOESContextANGLE(ctx, target, samples, internalformat, width,
+ height, depth, fixedsamplelocations);
+}
+
+void GL_APIENTRY glTexStorageMem2DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::TexStorageMem2DEXTContextANGLE(ctx, target, levels, internalFormat, width, height,
+ memory, offset);
+}
+
+void GL_APIENTRY glTexStorageMem2DMultisampleEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::TexStorageMem2DMultisampleEXTContextANGLE(
+ ctx, target, samples, internalFormat, width, height, fixedSampleLocations, memory, offset);
+}
+
+void GL_APIENTRY glTexStorageMem3DEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei levels,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::TexStorageMem3DEXTContextANGLE(ctx, target, levels, internalFormat, width, height,
+ depth, memory, offset);
+}
+
+void GL_APIENTRY glTexStorageMem3DMultisampleEXTContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalFormat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLboolean fixedSampleLocations,
+ GLuint memory,
+ GLuint64 offset)
+{
+ return gl::TexStorageMem3DMultisampleEXTContextANGLE(ctx, target, samples, internalFormat,
+ width, height, depth, fixedSampleLocations,
+ memory, offset);
+}
+
+void GL_APIENTRY glTexSubImage2DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexSubImage2DContextANGLE(ctx, target, level, xoffset, yoffset, width, height,
+ format, type, pixels);
+}
+
+void GL_APIENTRY glTexSubImage3DContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexSubImage3DContextANGLE(ctx, target, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, pixels);
+}
+
+void GL_APIENTRY glTexSubImage3DOESContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ const void *pixels)
+{
+ return gl::TexSubImage3DOESContextANGLE(ctx, target, level, xoffset, yoffset, zoffset, width,
+ height, depth, format, type, pixels);
+}
+
+void GL_APIENTRY glTransformFeedbackVaryingsContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLsizei count,
+ const GLchar *const *varyings,
+ GLenum bufferMode)
+{
+ return gl::TransformFeedbackVaryingsContextANGLE(ctx, program, count, varyings, bufferMode);
+}
+
+void GL_APIENTRY glTranslatefContextANGLE(GLeglContext ctx, GLfloat x, GLfloat y, GLfloat z)
+{
+ return gl::TranslatefContextANGLE(ctx, x, y, z);
+}
+
+void GL_APIENTRY glTranslatexContextANGLE(GLeglContext ctx, GLfixed x, GLfixed y, GLfixed z)
+{
+ return gl::TranslatexContextANGLE(ctx, x, y, z);
+}
+
+void GL_APIENTRY glUniform1fContextANGLE(GLeglContext ctx, GLint location, GLfloat v0)
+{
+ return gl::Uniform1fContextANGLE(ctx, location, v0);
+}
+
+void GL_APIENTRY glUniform1fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::Uniform1fvContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY glUniform1iContextANGLE(GLeglContext ctx, GLint location, GLint v0)
+{
+ return gl::Uniform1iContextANGLE(ctx, location, v0);
+}
+
+void GL_APIENTRY glUniform1ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::Uniform1ivContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY glUniform1uiContextANGLE(GLeglContext ctx, GLint location, GLuint v0)
+{
+ return gl::Uniform1uiContextANGLE(ctx, location, v0);
+}
+
+void GL_APIENTRY glUniform1uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::Uniform1uivContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY glUniform2fContextANGLE(GLeglContext ctx, GLint location, GLfloat v0, GLfloat v1)
+{
+ return gl::Uniform2fContextANGLE(ctx, location, v0, v1);
+}
+
+void GL_APIENTRY glUniform2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::Uniform2fvContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY glUniform2iContextANGLE(GLeglContext ctx, GLint location, GLint v0, GLint v1)
+{
+ return gl::Uniform2iContextANGLE(ctx, location, v0, v1);
+}
+
+void GL_APIENTRY glUniform2ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::Uniform2ivContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY glUniform2uiContextANGLE(GLeglContext ctx, GLint location, GLuint v0, GLuint v1)
+{
+ return gl::Uniform2uiContextANGLE(ctx, location, v0, v1);
+}
+
+void GL_APIENTRY glUniform2uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::Uniform2uivContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY
+glUniform3fContextANGLE(GLeglContext ctx, GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+ return gl::Uniform3fContextANGLE(ctx, location, v0, v1, v2);
+}
+
+void GL_APIENTRY glUniform3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::Uniform3fvContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY
+glUniform3iContextANGLE(GLeglContext ctx, GLint location, GLint v0, GLint v1, GLint v2)
+{
+ return gl::Uniform3iContextANGLE(ctx, location, v0, v1, v2);
+}
+
+void GL_APIENTRY glUniform3ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::Uniform3ivContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY
+glUniform3uiContextANGLE(GLeglContext ctx, GLint location, GLuint v0, GLuint v1, GLuint v2)
+{
+ return gl::Uniform3uiContextANGLE(ctx, location, v0, v1, v2);
+}
+
+void GL_APIENTRY glUniform3uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::Uniform3uivContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY glUniform4fContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLfloat v0,
+ GLfloat v1,
+ GLfloat v2,
+ GLfloat v3)
+{
+ return gl::Uniform4fContextANGLE(ctx, location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glUniform4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLfloat *value)
+{
+ return gl::Uniform4fvContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY
+glUniform4iContextANGLE(GLeglContext ctx, GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+ return gl::Uniform4iContextANGLE(ctx, location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glUniform4ivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLint *value)
+{
+ return gl::Uniform4ivContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY glUniform4uiContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLuint v0,
+ GLuint v1,
+ GLuint v2,
+ GLuint v3)
+{
+ return gl::Uniform4uiContextANGLE(ctx, location, v0, v1, v2, v3);
+}
+
+void GL_APIENTRY glUniform4uivContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ const GLuint *value)
+{
+ return gl::Uniform4uivContextANGLE(ctx, location, count, value);
+}
+
+void GL_APIENTRY glUniformBlockBindingContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLuint uniformBlockBinding)
+{
+ return gl::UniformBlockBindingContextANGLE(ctx, program, uniformBlockIndex,
+ uniformBlockBinding);
+}
+
+void GL_APIENTRY glUniformMatrix2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix2fvContextANGLE(ctx, location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix2x3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix2x3fvContextANGLE(ctx, location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix2x4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix2x4fvContextANGLE(ctx, location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix3fvContextANGLE(ctx, location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix3x2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix3x2fvContextANGLE(ctx, location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix3x4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix3x4fvContextANGLE(ctx, location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix4fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix4fvContextANGLE(ctx, location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix4x2fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix4x2fvContextANGLE(ctx, location, count, transpose, value);
+}
+
+void GL_APIENTRY glUniformMatrix4x3fvContextANGLE(GLeglContext ctx,
+ GLint location,
+ GLsizei count,
+ GLboolean transpose,
+ const GLfloat *value)
+{
+ return gl::UniformMatrix4x3fvContextANGLE(ctx, location, count, transpose, value);
+}
+
+GLboolean GL_APIENTRY glUnmapBufferContextANGLE(GLeglContext ctx, GLenum target)
+{
+ return gl::UnmapBufferContextANGLE(ctx, target);
+}
+
+GLboolean GL_APIENTRY glUnmapBufferOESContextANGLE(GLeglContext ctx, GLenum target)
+{
+ return gl::UnmapBufferOESContextANGLE(ctx, target);
+}
+
+void GL_APIENTRY glUseProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ return gl::UseProgramContextANGLE(ctx, program);
+}
+
+void GL_APIENTRY glUseProgramStagesContextANGLE(GLeglContext ctx,
+ GLuint pipeline,
+ GLbitfield stages,
+ GLuint program)
+{
+ return gl::UseProgramStagesContextANGLE(ctx, pipeline, stages, program);
+}
+
+void GL_APIENTRY glValidateProgramContextANGLE(GLeglContext ctx, GLuint program)
+{
+ return gl::ValidateProgramContextANGLE(ctx, program);
+}
+
+void GL_APIENTRY glValidateProgramPipelineContextANGLE(GLeglContext ctx, GLuint pipeline)
+{
+ return gl::ValidateProgramPipelineContextANGLE(ctx, pipeline);
+}
+
+void GL_APIENTRY glVertexAttrib1fContextANGLE(GLeglContext ctx, GLuint index, GLfloat x)
+{
+ return gl::VertexAttrib1fContextANGLE(ctx, index, x);
+}
+
+void GL_APIENTRY glVertexAttrib1fvContextANGLE(GLeglContext ctx, GLuint index, const GLfloat *v)
+{
+ return gl::VertexAttrib1fvContextANGLE(ctx, index, v);
+}
+
+void GL_APIENTRY glVertexAttrib2fContextANGLE(GLeglContext ctx, GLuint index, GLfloat x, GLfloat y)
+{
+ return gl::VertexAttrib2fContextANGLE(ctx, index, x, y);
+}
+
+void GL_APIENTRY glVertexAttrib2fvContextANGLE(GLeglContext ctx, GLuint index, const GLfloat *v)
+{
+ return gl::VertexAttrib2fvContextANGLE(ctx, index, v);
+}
+
+void GL_APIENTRY
+glVertexAttrib3fContextANGLE(GLeglContext ctx, GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+ return gl::VertexAttrib3fContextANGLE(ctx, index, x, y, z);
+}
+
+void GL_APIENTRY glVertexAttrib3fvContextANGLE(GLeglContext ctx, GLuint index, const GLfloat *v)
+{
+ return gl::VertexAttrib3fvContextANGLE(ctx, index, v);
+}
+
+void GL_APIENTRY glVertexAttrib4fContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLfloat x,
+ GLfloat y,
+ GLfloat z,
+ GLfloat w)
+{
+ return gl::VertexAttrib4fContextANGLE(ctx, index, x, y, z, w);
+}
+
+void GL_APIENTRY glVertexAttrib4fvContextANGLE(GLeglContext ctx, GLuint index, const GLfloat *v)
+{
+ return gl::VertexAttrib4fvContextANGLE(ctx, index, v);
+}
+
+void GL_APIENTRY glVertexAttribBindingContextANGLE(GLeglContext ctx,
+ GLuint attribindex,
+ GLuint bindingindex)
+{
+ return gl::VertexAttribBindingContextANGLE(ctx, attribindex, bindingindex);
+}
+
+void GL_APIENTRY glVertexAttribDivisorContextANGLE(GLeglContext ctx, GLuint index, GLuint divisor)
+{
+ return gl::VertexAttribDivisorContextANGLE(ctx, index, divisor);
+}
+
+void GL_APIENTRY glVertexAttribDivisorANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLuint divisor)
+{
+ return gl::VertexAttribDivisorANGLEContextANGLE(ctx, index, divisor);
+}
+
+void GL_APIENTRY glVertexAttribDivisorEXTContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLuint divisor)
+{
+ return gl::VertexAttribDivisorEXTContextANGLE(ctx, index, divisor);
+}
+
+void GL_APIENTRY glVertexAttribFormatContextANGLE(GLeglContext ctx,
+ GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLuint relativeoffset)
+{
+ return gl::VertexAttribFormatContextANGLE(ctx, attribindex, size, type, normalized,
+ relativeoffset);
+}
+
+void GL_APIENTRY
+glVertexAttribI4iContextANGLE(GLeglContext ctx, GLuint index, GLint x, GLint y, GLint z, GLint w)
+{
+ return gl::VertexAttribI4iContextANGLE(ctx, index, x, y, z, w);
+}
+
+void GL_APIENTRY glVertexAttribI4ivContextANGLE(GLeglContext ctx, GLuint index, const GLint *v)
+{
+ return gl::VertexAttribI4ivContextANGLE(ctx, index, v);
+}
+
+void GL_APIENTRY glVertexAttribI4uiContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLuint x,
+ GLuint y,
+ GLuint z,
+ GLuint w)
+{
+ return gl::VertexAttribI4uiContextANGLE(ctx, index, x, y, z, w);
+}
+
+void GL_APIENTRY glVertexAttribI4uivContextANGLE(GLeglContext ctx, GLuint index, const GLuint *v)
+{
+ return gl::VertexAttribI4uivContextANGLE(ctx, index, v);
+}
+
+void GL_APIENTRY glVertexAttribIFormatContextANGLE(GLeglContext ctx,
+ GLuint attribindex,
+ GLint size,
+ GLenum type,
+ GLuint relativeoffset)
+{
+ return gl::VertexAttribIFormatContextANGLE(ctx, attribindex, size, type, relativeoffset);
+}
+
+void GL_APIENTRY glVertexAttribIPointerContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::VertexAttribIPointerContextANGLE(ctx, index, size, type, stride, pointer);
+}
+
+void GL_APIENTRY glVertexAttribPointerContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLint size,
+ GLenum type,
+ GLboolean normalized,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::VertexAttribPointerContextANGLE(ctx, index, size, type, normalized, stride, pointer);
+}
+
+void GL_APIENTRY glVertexBindingDivisorContextANGLE(GLeglContext ctx,
+ GLuint bindingindex,
+ GLuint divisor)
+{
+ return gl::VertexBindingDivisorContextANGLE(ctx, bindingindex, divisor);
+}
+
+void GL_APIENTRY glVertexPointerContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::VertexPointerContextANGLE(ctx, size, type, stride, pointer);
+}
+
+void GL_APIENTRY
+glViewportContextANGLE(GLeglContext ctx, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+ return gl::ViewportContextANGLE(ctx, x, y, width, height);
+}
+
+void GL_APIENTRY glWaitSemaphoreEXTContextANGLE(GLeglContext ctx,
+ GLuint semaphore,
+ GLuint numBufferBarriers,
+ const GLuint *buffers,
+ GLuint numTextureBarriers,
+ const GLuint *textures,
+ const GLenum *srcLayouts)
+{
+ return gl::WaitSemaphoreEXTContextANGLE(ctx, semaphore, numBufferBarriers, buffers,
+ numTextureBarriers, textures, srcLayouts);
+}
+
+void GL_APIENTRY glWaitSyncContextANGLE(GLeglContext ctx,
+ GLsync sync,
+ GLbitfield flags,
+ GLuint64 timeout)
+{
+ return gl::WaitSyncContextANGLE(ctx, sync, flags, timeout);
+}
+
+void GL_APIENTRY glWeightPointerOESContextANGLE(GLeglContext ctx,
+ GLint size,
+ GLenum type,
+ GLsizei stride,
+ const void *pointer)
+{
+ return gl::WeightPointerOESContextANGLE(ctx, size, type, stride, pointer);
+}
+
+void GL_APIENTRY glBindUniformLocationCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ const GLchar *name)
+{
+ return gl::BindUniformLocationCHROMIUMContextANGLE(ctx, program, location, name);
+}
+
+void GL_APIENTRY glCoverageModulationCHROMIUMContextANGLE(GLeglContext ctx, GLenum components)
+{
+ return gl::CoverageModulationCHROMIUMContextANGLE(ctx, components);
+}
+
+void GL_APIENTRY glMatrixLoadfCHROMIUMContextANGLE(GLeglContext ctx,
+ GLenum matrixMode,
+ const GLfloat *matrix)
+{
+ return gl::MatrixLoadfCHROMIUMContextANGLE(ctx, matrixMode, matrix);
+}
+
+void GL_APIENTRY glMatrixLoadIdentityCHROMIUMContextANGLE(GLeglContext ctx, GLenum matrixMode)
+{
+ return gl::MatrixLoadIdentityCHROMIUMContextANGLE(ctx, matrixMode);
+}
+
+GLuint GL_APIENTRY glGenPathsCHROMIUMContextANGLE(GLeglContext ctx, GLsizei range)
+{
+ return gl::GenPathsCHROMIUMContextANGLE(ctx, range);
+}
+
+void GL_APIENTRY glDeletePathsCHROMIUMContextANGLE(GLeglContext ctx, GLuint first, GLsizei range)
+{
+ return gl::DeletePathsCHROMIUMContextANGLE(ctx, first, range);
+}
+
+GLboolean GL_APIENTRY glIsPathCHROMIUMContextANGLE(GLeglContext ctx, GLuint path)
+{
+ return gl::IsPathCHROMIUMContextANGLE(ctx, path);
+}
+
+void GL_APIENTRY glPathCommandsCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLsizei numCommands,
+ const GLubyte *commands,
+ GLsizei numCoords,
+ GLenum coordType,
+ const void *coords)
+{
+ return gl::PathCommandsCHROMIUMContextANGLE(ctx, path, numCommands, commands, numCoords,
+ coordType, coords);
+}
+
+void GL_APIENTRY glPathParameterfCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLfloat value)
+{
+ return gl::PathParameterfCHROMIUMContextANGLE(ctx, path, pname, value);
+}
+
+void GL_APIENTRY glPathParameteriCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLint value)
+{
+ return gl::PathParameteriCHROMIUMContextANGLE(ctx, path, pname, value);
+}
+
+void GL_APIENTRY glGetPathParameterfvCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLfloat *value)
+{
+ return gl::GetPathParameterfvCHROMIUMContextANGLE(ctx, path, pname, value);
+}
+
+void GL_APIENTRY glGetPathParameterivCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum pname,
+ GLint *value)
+{
+ return gl::GetPathParameterivCHROMIUMContextANGLE(ctx, path, pname, value);
+}
+
+void GL_APIENTRY glPathStencilFuncCHROMIUMContextANGLE(GLeglContext ctx,
+ GLenum func,
+ GLint ref,
+ GLuint mask)
+{
+ return gl::PathStencilFuncCHROMIUMContextANGLE(ctx, func, ref, mask);
+}
+
+void GL_APIENTRY glStencilFillPathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum fillMode,
+ GLuint mask)
+{
+ return gl::StencilFillPathCHROMIUMContextANGLE(ctx, path, fillMode, mask);
+}
+
+void GL_APIENTRY glStencilStrokePathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLint reference,
+ GLuint mask)
+{
+ return gl::StencilStrokePathCHROMIUMContextANGLE(ctx, path, reference, mask);
+}
+
+void GL_APIENTRY glCoverFillPathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum coverMode)
+{
+ return gl::CoverFillPathCHROMIUMContextANGLE(ctx, path, coverMode);
+}
+
+void GL_APIENTRY glCoverStrokePathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum coverMode)
+{
+ return gl::CoverStrokePathCHROMIUMContextANGLE(ctx, path, coverMode);
+}
+
+void GL_APIENTRY glStencilThenCoverFillPathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode)
+{
+ return gl::StencilThenCoverFillPathCHROMIUMContextANGLE(ctx, path, fillMode, mask, coverMode);
+}
+
+void GL_APIENTRY glStencilThenCoverStrokePathCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint path,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode)
+{
+ return gl::StencilThenCoverStrokePathCHROMIUMContextANGLE(ctx, path, reference, mask,
+ coverMode);
+}
+
+void GL_APIENTRY glCoverFillPathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::CoverFillPathInstancedCHROMIUMContextANGLE(
+ ctx, numPath, pathNameType, paths, pathBase, coverMode, transformType, transformValues);
+}
+
+void GL_APIENTRY glCoverStrokePathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::CoverStrokePathInstancedCHROMIUMContextANGLE(
+ ctx, numPath, pathNameType, paths, pathBase, coverMode, transformType, transformValues);
+}
+
+void GL_APIENTRY glStencilStrokePathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPath,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::StencilStrokePathInstancedCHROMIUMContextANGLE(ctx, numPath, pathNameType, paths,
+ pathBase, reference, mask,
+ transformType, transformValues);
+}
+
+void GL_APIENTRY glStencilFillPathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::StencilFillPathInstancedCHROMIUMContextANGLE(ctx, numPaths, pathNameType, paths,
+ pathBase, fillMode, mask, transformType,
+ transformValues);
+}
+
+void GL_APIENTRY
+glStencilThenCoverFillPathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLenum fillMode,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::StencilThenCoverFillPathInstancedCHROMIUMContextANGLE(
+ ctx, numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode, transformType,
+ transformValues);
+}
+
+void GL_APIENTRY
+glStencilThenCoverStrokePathInstancedCHROMIUMContextANGLE(GLeglContext ctx,
+ GLsizei numPaths,
+ GLenum pathNameType,
+ const void *paths,
+ GLuint pathBase,
+ GLint reference,
+ GLuint mask,
+ GLenum coverMode,
+ GLenum transformType,
+ const GLfloat *transformValues)
+{
+ return gl::StencilThenCoverStrokePathInstancedCHROMIUMContextANGLE(
+ ctx, numPaths, pathNameType, paths, pathBase, reference, mask, coverMode, transformType,
+ transformValues);
+}
+
+void GL_APIENTRY glBindFragmentInputLocationCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint programs,
+ GLint location,
+ const GLchar *name)
+{
+ return gl::BindFragmentInputLocationCHROMIUMContextANGLE(ctx, programs, location, name);
+}
+
+void GL_APIENTRY glProgramPathFragmentInputGenCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLenum genMode,
+ GLint components,
+ const GLfloat *coeffs)
+{
+ return gl::ProgramPathFragmentInputGenCHROMIUMContextANGLE(ctx, program, location, genMode,
+ components, coeffs);
+}
+
+void GL_APIENTRY glCopyTextureCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ return gl::CopyTextureCHROMIUMContextANGLE(ctx, sourceId, sourceLevel, destTarget, destId,
+ destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+}
+
+void GL_APIENTRY glCopySubTextureCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint x,
+ GLint y,
+ GLint width,
+ GLint height,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ return gl::CopySubTextureCHROMIUMContextANGLE(
+ ctx, sourceId, sourceLevel, destTarget, destId, destLevel, xoffset, yoffset, x, y, width,
+ height, unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+}
+
+void GL_APIENTRY glCompressedCopyTextureCHROMIUMContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLuint destId)
+{
+ return gl::CompressedCopyTextureCHROMIUMContextANGLE(ctx, sourceId, destId);
+}
+
+void GL_APIENTRY glRequestExtensionANGLEContextANGLE(GLeglContext ctx, const GLchar *name)
+{
+ return gl::RequestExtensionANGLEContextANGLE(ctx, name);
+}
+
+void GL_APIENTRY glGetBooleanvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *params)
+{
+ return gl::GetBooleanvRobustANGLEContextANGLE(ctx, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetBufferParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetBufferParameterivRobustANGLEContextANGLE(ctx, target, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetFloatvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetFloatvRobustANGLEContextANGLE(ctx, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetFramebufferAttachmentParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum attachment,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetFramebufferAttachmentParameterivRobustANGLEContextANGLE(
+ ctx, target, attachment, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetIntegervRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data)
+{
+ return gl::GetIntegervRobustANGLEContextANGLE(ctx, pname, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetProgramivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetProgramivRobustANGLEContextANGLE(ctx, program, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetRenderbufferParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetRenderbufferParameterivRobustANGLEContextANGLE(ctx, target, pname, bufSize,
+ length, params);
+}
+
+void GL_APIENTRY glGetShaderivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint shader,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetShaderivRobustANGLEContextANGLE(ctx, shader, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetTexParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetTexParameterfvRobustANGLEContextANGLE(ctx, target, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetTexParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetTexParameterivRobustANGLEContextANGLE(ctx, target, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetUniformfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetUniformfvRobustANGLEContextANGLE(ctx, program, location, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetUniformivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetUniformivRobustANGLEContextANGLE(ctx, program, location, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetVertexAttribfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetVertexAttribfvRobustANGLEContextANGLE(ctx, index, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetVertexAttribivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetVertexAttribivRobustANGLEContextANGLE(ctx, index, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetVertexAttribPointervRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **pointer)
+{
+ return gl::GetVertexAttribPointervRobustANGLEContextANGLE(ctx, index, pname, bufSize, length,
+ pointer);
+}
+
+void GL_APIENTRY glReadPixelsRobustANGLEContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *pixels)
+{
+ return gl::ReadPixelsRobustANGLEContextANGLE(ctx, x, y, width, height, format, type, bufSize,
+ length, columns, rows, pixels);
+}
+
+void GL_APIENTRY glTexImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ return gl::TexImage2DRobustANGLEContextANGLE(ctx, target, level, internalformat, width, height,
+ border, format, type, bufSize, pixels);
+}
+
+void GL_APIENTRY glTexParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *params)
+{
+ return gl::TexParameterfvRobustANGLEContextANGLE(ctx, target, pname, bufSize, params);
+}
+
+void GL_APIENTRY glTexParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params)
+{
+ return gl::TexParameterivRobustANGLEContextANGLE(ctx, target, pname, bufSize, params);
+}
+
+void GL_APIENTRY glTexSubImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ return gl::TexSubImage2DRobustANGLEContextANGLE(ctx, target, level, xoffset, yoffset, width,
+ height, format, type, bufSize, pixels);
+}
+
+void GL_APIENTRY glTexImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ return gl::TexImage3DRobustANGLEContextANGLE(ctx, target, level, internalformat, width, height,
+ depth, border, format, type, bufSize, pixels);
+}
+
+void GL_APIENTRY glTexSubImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ const void *pixels)
+{
+ return gl::TexSubImage3DRobustANGLEContextANGLE(ctx, target, level, xoffset, yoffset, zoffset,
+ width, height, depth, format, type, bufSize,
+ pixels);
+}
+
+void GL_APIENTRY glCompressedTexImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ return gl::CompressedTexImage2DRobustANGLEContextANGLE(
+ ctx, target, level, internalformat, width, height, border, imageSize, dataSize, data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage2DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLsizei xoffset,
+ GLsizei yoffset,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ return gl::CompressedTexSubImage2DRobustANGLEContextANGLE(
+ ctx, target, level, xoffset, yoffset, width, height, format, imageSize, dataSize, data);
+}
+
+void GL_APIENTRY glCompressedTexImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLint border,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ return gl::CompressedTexImage3DRobustANGLEContextANGLE(ctx, target, level, internalformat,
+ width, height, depth, border, imageSize,
+ dataSize, data);
+}
+
+void GL_APIENTRY glCompressedTexSubImage3DRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLsizei width,
+ GLsizei height,
+ GLsizei depth,
+ GLenum format,
+ GLsizei imageSize,
+ GLsizei dataSize,
+ const GLvoid *data)
+{
+ return gl::CompressedTexSubImage3DRobustANGLEContextANGLE(ctx, target, level, xoffset, yoffset,
+ zoffset, width, height, depth, format,
+ imageSize, dataSize, data);
+}
+
+void GL_APIENTRY glGetQueryivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetQueryivRobustANGLEContextANGLE(ctx, target, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetQueryObjectuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetQueryObjectuivRobustANGLEContextANGLE(ctx, id, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetBufferPointervRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params)
+{
+ return gl::GetBufferPointervRobustANGLEContextANGLE(ctx, target, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetIntegeri_vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *data)
+{
+ return gl::GetIntegeri_vRobustANGLEContextANGLE(ctx, target, index, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetInternalformativRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum internalformat,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetInternalformativRobustANGLEContextANGLE(ctx, target, internalformat, pname,
+ bufSize, length, params);
+}
+
+void GL_APIENTRY glGetVertexAttribIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetVertexAttribIivRobustANGLEContextANGLE(ctx, index, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetVertexAttribIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint index,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetVertexAttribIuivRobustANGLEContextANGLE(ctx, index, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetUniformuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetUniformuivRobustANGLEContextANGLE(ctx, program, location, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetActiveUniformBlockivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLuint uniformBlockIndex,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetActiveUniformBlockivRobustANGLEContextANGLE(ctx, program, uniformBlockIndex,
+ pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetInteger64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data)
+{
+ return gl::GetInteger64vRobustANGLEContextANGLE(ctx, pname, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetInteger64i_vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *data)
+{
+ return gl::GetInteger64i_vRobustANGLEContextANGLE(ctx, target, index, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetBufferParameteri64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params)
+{
+ return gl::GetBufferParameteri64vRobustANGLEContextANGLE(ctx, target, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glSamplerParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLuint pname,
+ GLsizei bufSize,
+ const GLint *param)
+{
+ return gl::SamplerParameterivRobustANGLEContextANGLE(ctx, sampler, pname, bufSize, param);
+}
+
+void GL_APIENTRY glSamplerParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLfloat *param)
+{
+ return gl::SamplerParameterfvRobustANGLEContextANGLE(ctx, sampler, pname, bufSize, param);
+}
+
+void GL_APIENTRY glGetSamplerParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetSamplerParameterivRobustANGLEContextANGLE(ctx, sampler, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetSamplerParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetSamplerParameterfvRobustANGLEContextANGLE(ctx, sampler, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetFramebufferParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetFramebufferParameterivRobustANGLEContextANGLE(ctx, sampler, pname, bufSize,
+ length, params);
+}
+
+void GL_APIENTRY glGetProgramInterfaceivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLenum programInterface,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetProgramInterfaceivRobustANGLEContextANGLE(ctx, program, programInterface, pname,
+ bufSize, length, params);
+}
+
+void GL_APIENTRY glGetBooleani_vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLboolean *data)
+{
+ return gl::GetBooleani_vRobustANGLEContextANGLE(ctx, target, index, bufSize, length, data);
+}
+
+void GL_APIENTRY glGetMultisamplefvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLuint index,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *val)
+{
+ return gl::GetMultisamplefvRobustANGLEContextANGLE(ctx, pname, index, bufSize, length, val);
+}
+
+void GL_APIENTRY glGetTexLevelParameterivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetTexLevelParameterivRobustANGLEContextANGLE(ctx, target, level, pname, bufSize,
+ length, params);
+}
+
+void GL_APIENTRY glGetTexLevelParameterfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetTexLevelParameterfvRobustANGLEContextANGLE(ctx, target, level, pname, bufSize,
+ length, params);
+}
+
+void GL_APIENTRY glGetPointervRobustANGLERobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ void **params)
+{
+ return gl::GetPointervRobustANGLERobustANGLEContextANGLE(ctx, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glReadnPixelsRobustANGLEContextANGLE(GLeglContext ctx,
+ GLint x,
+ GLint y,
+ GLsizei width,
+ GLsizei height,
+ GLenum format,
+ GLenum type,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLsizei *columns,
+ GLsizei *rows,
+ void *data)
+{
+ return gl::ReadnPixelsRobustANGLEContextANGLE(ctx, x, y, width, height, format, type, bufSize,
+ length, columns, rows, data);
+}
+
+void GL_APIENTRY glGetnUniformfvRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLfloat *params)
+{
+ return gl::GetnUniformfvRobustANGLEContextANGLE(ctx, program, location, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetnUniformivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetnUniformivRobustANGLEContextANGLE(ctx, program, location, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetnUniformuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint program,
+ GLint location,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetnUniformuivRobustANGLEContextANGLE(ctx, program, location, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glTexParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *params)
+{
+ return gl::TexParameterIivRobustANGLEContextANGLE(ctx, target, pname, bufSize, params);
+}
+
+void GL_APIENTRY glTexParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *params)
+{
+ return gl::TexParameterIuivRobustANGLEContextANGLE(ctx, target, pname, bufSize, params);
+}
+
+void GL_APIENTRY glGetTexParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetTexParameterIivRobustANGLEContextANGLE(ctx, target, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetTexParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetTexParameterIuivRobustANGLEContextANGLE(ctx, target, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glSamplerParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLint *param)
+{
+ return gl::SamplerParameterIivRobustANGLEContextANGLE(ctx, sampler, pname, bufSize, param);
+}
+
+void GL_APIENTRY glSamplerParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ const GLuint *param)
+{
+ return gl::SamplerParameterIuivRobustANGLEContextANGLE(ctx, sampler, pname, bufSize, param);
+}
+
+void GL_APIENTRY glGetSamplerParameterIivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetSamplerParameterIivRobustANGLEContextANGLE(ctx, sampler, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetSamplerParameterIuivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint sampler,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint *params)
+{
+ return gl::GetSamplerParameterIuivRobustANGLEContextANGLE(ctx, sampler, pname, bufSize, length,
+ params);
+}
+
+void GL_APIENTRY glGetQueryObjectivRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint *params)
+{
+ return gl::GetQueryObjectivRobustANGLEContextANGLE(ctx, id, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetQueryObjecti64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLint64 *params)
+{
+ return gl::GetQueryObjecti64vRobustANGLEContextANGLE(ctx, id, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glGetQueryObjectui64vRobustANGLEContextANGLE(GLeglContext ctx,
+ GLuint id,
+ GLenum pname,
+ GLsizei bufSize,
+ GLsizei *length,
+ GLuint64 *params)
+{
+ return gl::GetQueryObjectui64vRobustANGLEContextANGLE(ctx, id, pname, bufSize, length, params);
+}
+
+void GL_APIENTRY glCopyTexture3DANGLEContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint internalFormat,
+ GLenum destType,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ return gl::CopyTexture3DANGLEContextANGLE(ctx, sourceId, sourceLevel, destTarget, destId,
+ destLevel, internalFormat, destType, unpackFlipY,
+ unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+}
+
+void GL_APIENTRY glCopySubTexture3DANGLEContextANGLE(GLeglContext ctx,
+ GLuint sourceId,
+ GLint sourceLevel,
+ GLenum destTarget,
+ GLuint destId,
+ GLint destLevel,
+ GLint xoffset,
+ GLint yoffset,
+ GLint zoffset,
+ GLint x,
+ GLint y,
+ GLint z,
+ GLint width,
+ GLint height,
+ GLint depth,
+ GLboolean unpackFlipY,
+ GLboolean unpackPremultiplyAlpha,
+ GLboolean unpackUnmultiplyAlpha)
+{
+ return gl::CopySubTexture3DANGLEContextANGLE(
+ ctx, sourceId, sourceLevel, destTarget, destId, destLevel, xoffset, yoffset, zoffset, x, y,
+ z, width, height, depth, unpackFlipY, unpackPremultiplyAlpha, unpackUnmultiplyAlpha);
+}
+
+void GL_APIENTRY glTexStorage2DMultisampleANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLsizei samples,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations)
+{
+ return gl::TexStorage2DMultisampleANGLEContextANGLE(ctx, target, samples, internalformat, width,
+ height, fixedsamplelocations);
+}
+
+void GL_APIENTRY glGetTexLevelParameterivANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLint *params)
+{
+ return gl::GetTexLevelParameterivANGLEContextANGLE(ctx, target, level, pname, params);
+}
+
+void GL_APIENTRY glGetTexLevelParameterfvANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLenum pname,
+ GLfloat *params)
+{
+ return gl::GetTexLevelParameterfvANGLEContextANGLE(ctx, target, level, pname, params);
+}
+
+void GL_APIENTRY glMultiDrawArraysANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ GLsizei drawcount)
+{
+ return gl::MultiDrawArraysANGLEContextANGLE(ctx, mode, firsts, counts, drawcount);
+}
+
+void GL_APIENTRY glMultiDrawArraysInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLint *firsts,
+ const GLsizei *counts,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount)
+{
+ return gl::MultiDrawArraysInstancedANGLEContextANGLE(ctx, mode, firsts, counts, instanceCounts,
+ drawcount);
+}
+
+void GL_APIENTRY glMultiDrawElementsANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ GLsizei drawcount)
+{
+ return gl::MultiDrawElementsANGLEContextANGLE(ctx, mode, counts, type, indices, drawcount);
+}
+
+void GL_APIENTRY glMultiDrawElementsInstancedANGLEContextANGLE(GLeglContext ctx,
+ GLenum mode,
+ const GLsizei *counts,
+ GLenum type,
+ const GLvoid *const *indices,
+ const GLsizei *instanceCounts,
+ GLsizei drawcount)
+{
+ return gl::MultiDrawElementsInstancedANGLEContextANGLE(ctx, mode, counts, type, indices,
+ instanceCounts, drawcount);
+}
+
+void GL_APIENTRY glGetMultisamplefvANGLEContextANGLE(GLeglContext ctx,
+ GLenum pname,
+ GLuint index,
+ GLfloat *val)
+{
+ return gl::GetMultisamplefvANGLEContextANGLE(ctx, pname, index, val);
+}
+
+void GL_APIENTRY glSampleMaskiANGLEContextANGLE(GLeglContext ctx,
+ GLuint maskNumber,
+ GLbitfield mask)
+{
+ return gl::SampleMaskiANGLEContextANGLE(ctx, maskNumber, mask);
+}
+
+void GL_APIENTRY glProvokingVertexANGLEContextANGLE(GLeglContext ctx, GLenum mode)
+{
+ return gl::ProvokingVertexANGLEContextANGLE(ctx, mode);
+}
+
+void GL_APIENTRY glLoseContextCHROMIUMContextANGLE(GLeglContext ctx, GLenum current, GLenum other)
+{
+ return gl::LoseContextCHROMIUMContextANGLE(ctx, current, other);
+}
+
+void GL_APIENTRY glTexImage2DExternalANGLEContextANGLE(GLeglContext ctx,
+ GLenum target,
+ GLint level,
+ GLint internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type)
+{
+ return gl::TexImage2DExternalANGLEContextANGLE(ctx, target, level, internalformat, width,
+ height, border, format, type);
+}
+
+void GL_APIENTRY glInvalidateTextureANGLEContextANGLE(GLeglContext ctx, GLenum target)
+{
+ return gl::InvalidateTextureANGLEContextANGLE(ctx, target);
+}
+
+} // extern "C"
diff --git a/gfx/angle/checkout/src/libGLESv2/libGLESv2_autogen.def b/gfx/angle/checkout/src/libGLESv2/libGLESv2_autogen.def
new file mode 100644
index 0000000000..803a8022e4
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/libGLESv2_autogen.def
@@ -0,0 +1,1572 @@
+; GENERATED FILE - DO NOT EDIT.
+; Generated by generate_entry_points.py using data from Khronos and ANGLE XML files.
+;
+; 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.
+LIBRARY libGLESv2
+EXPORTS
+
+ ; OpenGL ES 2.0
+ glActiveTexture
+ glAttachShader
+ glBindAttribLocation
+ glBindBuffer
+ glBindFramebuffer
+ glBindRenderbuffer
+ glBindTexture
+ glBlendColor
+ glBlendEquation
+ glBlendEquationSeparate
+ glBlendFunc
+ glBlendFuncSeparate
+ glBufferData
+ glBufferSubData
+ glCheckFramebufferStatus
+ glClear
+ glClearColor
+ glClearDepthf
+ glClearStencil
+ glColorMask
+ glCompileShader
+ glCompressedTexImage2D
+ glCompressedTexSubImage2D
+ glCopyTexImage2D
+ glCopyTexSubImage2D
+ glCreateProgram
+ glCreateShader
+ glCullFace
+ glDeleteBuffers
+ glDeleteFramebuffers
+ glDeleteProgram
+ glDeleteRenderbuffers
+ glDeleteShader
+ glDeleteTextures
+ glDepthFunc
+ glDepthMask
+ glDepthRangef
+ glDetachShader
+ glDisable
+ glDisableVertexAttribArray
+ glDrawArrays
+ glDrawElements
+ glEnable
+ glEnableVertexAttribArray
+ glFinish
+ glFlush
+ glFramebufferRenderbuffer
+ glFramebufferTexture2D
+ glFrontFace
+ glGenBuffers
+ glGenFramebuffers
+ glGenRenderbuffers
+ glGenTextures
+ glGenerateMipmap
+ glGetActiveAttrib
+ glGetActiveUniform
+ glGetAttachedShaders
+ glGetAttribLocation
+ glGetBooleanv
+ glGetBufferParameteriv
+ glGetError
+ glGetFloatv
+ glGetFramebufferAttachmentParameteriv
+ glGetIntegerv
+ glGetProgramInfoLog
+ glGetProgramiv
+ glGetRenderbufferParameteriv
+ glGetShaderInfoLog
+ glGetShaderPrecisionFormat
+ glGetShaderSource
+ glGetShaderiv
+ glGetString
+ glGetTexParameterfv
+ glGetTexParameteriv
+ glGetUniformLocation
+ glGetUniformfv
+ glGetUniformiv
+ glGetVertexAttribPointerv
+ glGetVertexAttribfv
+ glGetVertexAttribiv
+ glHint
+ glIsBuffer
+ glIsEnabled
+ glIsFramebuffer
+ glIsProgram
+ glIsRenderbuffer
+ glIsShader
+ glIsTexture
+ glLineWidth
+ glLinkProgram
+ glPixelStorei
+ glPolygonOffset
+ glReadPixels
+ glReleaseShaderCompiler
+ glRenderbufferStorage
+ glSampleCoverage
+ glScissor
+ glShaderBinary
+ glShaderSource
+ glStencilFunc
+ glStencilFuncSeparate
+ glStencilMask
+ glStencilMaskSeparate
+ glStencilOp
+ glStencilOpSeparate
+ glTexImage2D
+ glTexParameterf
+ glTexParameterfv
+ glTexParameteri
+ glTexParameteriv
+ glTexSubImage2D
+ glUniform1f
+ glUniform1fv
+ glUniform1i
+ glUniform1iv
+ glUniform2f
+ glUniform2fv
+ glUniform2i
+ glUniform2iv
+ glUniform3f
+ glUniform3fv
+ glUniform3i
+ glUniform3iv
+ glUniform4f
+ glUniform4fv
+ glUniform4i
+ glUniform4iv
+ glUniformMatrix2fv
+ glUniformMatrix3fv
+ glUniformMatrix4fv
+ glUseProgram
+ glValidateProgram
+ glVertexAttrib1f
+ glVertexAttrib1fv
+ glVertexAttrib2f
+ glVertexAttrib2fv
+ glVertexAttrib3f
+ glVertexAttrib3fv
+ glVertexAttrib4f
+ glVertexAttrib4fv
+ glVertexAttribPointer
+ glViewport
+
+ ; OpenGL ES 3.0
+ glBeginQuery
+ glBeginTransformFeedback
+ glBindBufferBase
+ glBindBufferRange
+ glBindSampler
+ glBindTransformFeedback
+ glBindVertexArray
+ glBlitFramebuffer
+ glClearBufferfi
+ glClearBufferfv
+ glClearBufferiv
+ glClearBufferuiv
+ glClientWaitSync
+ glCompressedTexImage3D
+ glCompressedTexSubImage3D
+ glCopyBufferSubData
+ glCopyTexSubImage3D
+ glDeleteQueries
+ glDeleteSamplers
+ glDeleteSync
+ glDeleteTransformFeedbacks
+ glDeleteVertexArrays
+ glDrawArraysInstanced
+ glDrawBuffers
+ glDrawElementsInstanced
+ glDrawRangeElements
+ glEndQuery
+ glEndTransformFeedback
+ glFenceSync
+ glFlushMappedBufferRange
+ glFramebufferTextureLayer
+ glGenQueries
+ glGenSamplers
+ glGenTransformFeedbacks
+ glGenVertexArrays
+ glGetActiveUniformBlockName
+ glGetActiveUniformBlockiv
+ glGetActiveUniformsiv
+ glGetBufferParameteri64v
+ glGetBufferPointerv
+ glGetFragDataLocation
+ glGetInteger64i_v
+ glGetInteger64v
+ glGetIntegeri_v
+ glGetInternalformativ
+ glGetProgramBinary
+ glGetQueryObjectuiv
+ glGetQueryiv
+ glGetSamplerParameterfv
+ glGetSamplerParameteriv
+ glGetStringi
+ glGetSynciv
+ glGetTransformFeedbackVarying
+ glGetUniformBlockIndex
+ glGetUniformIndices
+ glGetUniformuiv
+ glGetVertexAttribIiv
+ glGetVertexAttribIuiv
+ glInvalidateFramebuffer
+ glInvalidateSubFramebuffer
+ glIsQuery
+ glIsSampler
+ glIsSync
+ glIsTransformFeedback
+ glIsVertexArray
+ glMapBufferRange
+ glPauseTransformFeedback
+ glProgramBinary
+ glProgramParameteri
+ glReadBuffer
+ glRenderbufferStorageMultisample
+ glResumeTransformFeedback
+ glSamplerParameterf
+ glSamplerParameterfv
+ glSamplerParameteri
+ glSamplerParameteriv
+ glTexImage3D
+ glTexStorage2D
+ glTexStorage3D
+ glTexSubImage3D
+ glTransformFeedbackVaryings
+ glUniform1ui
+ glUniform1uiv
+ glUniform2ui
+ glUniform2uiv
+ glUniform3ui
+ glUniform3uiv
+ glUniform4ui
+ glUniform4uiv
+ glUniformBlockBinding
+ glUniformMatrix2x3fv
+ glUniformMatrix2x4fv
+ glUniformMatrix3x2fv
+ glUniformMatrix3x4fv
+ glUniformMatrix4x2fv
+ glUniformMatrix4x3fv
+ glUnmapBuffer
+ glVertexAttribDivisor
+ glVertexAttribI4i
+ glVertexAttribI4iv
+ glVertexAttribI4ui
+ glVertexAttribI4uiv
+ glVertexAttribIPointer
+ glWaitSync
+
+ ; OpenGL ES 3.1
+ glActiveShaderProgram
+ glBindImageTexture
+ glBindProgramPipeline
+ glBindVertexBuffer
+ glCreateShaderProgramv
+ glDeleteProgramPipelines
+ glDispatchCompute
+ glDispatchComputeIndirect
+ glDrawArraysIndirect
+ glDrawElementsIndirect
+ glFramebufferParameteri
+ glGenProgramPipelines
+ glGetBooleani_v
+ glGetFramebufferParameteriv
+ glGetMultisamplefv
+ glGetProgramInterfaceiv
+ glGetProgramPipelineInfoLog
+ glGetProgramPipelineiv
+ glGetProgramResourceIndex
+ glGetProgramResourceLocation
+ glGetProgramResourceName
+ glGetProgramResourceiv
+ glGetTexLevelParameterfv
+ glGetTexLevelParameteriv
+ glIsProgramPipeline
+ glMemoryBarrier
+ glMemoryBarrierByRegion
+ glProgramUniform1f
+ glProgramUniform1fv
+ glProgramUniform1i
+ glProgramUniform1iv
+ glProgramUniform1ui
+ glProgramUniform1uiv
+ glProgramUniform2f
+ glProgramUniform2fv
+ glProgramUniform2i
+ glProgramUniform2iv
+ glProgramUniform2ui
+ glProgramUniform2uiv
+ glProgramUniform3f
+ glProgramUniform3fv
+ glProgramUniform3i
+ glProgramUniform3iv
+ glProgramUniform3ui
+ glProgramUniform3uiv
+ glProgramUniform4f
+ glProgramUniform4fv
+ glProgramUniform4i
+ glProgramUniform4iv
+ glProgramUniform4ui
+ glProgramUniform4uiv
+ glProgramUniformMatrix2fv
+ glProgramUniformMatrix2x3fv
+ glProgramUniformMatrix2x4fv
+ glProgramUniformMatrix3fv
+ glProgramUniformMatrix3x2fv
+ glProgramUniformMatrix3x4fv
+ glProgramUniformMatrix4fv
+ glProgramUniformMatrix4x2fv
+ glProgramUniformMatrix4x3fv
+ glSampleMaski
+ glTexStorage2DMultisample
+ glUseProgramStages
+ glValidateProgramPipeline
+ glVertexAttribBinding
+ glVertexAttribFormat
+ glVertexAttribIFormat
+ glVertexBindingDivisor
+
+ ; OpenGL ES 1.0
+ glAlphaFunc
+ glAlphaFuncx
+ glClearColorx
+ glClearDepthx
+ glClientActiveTexture
+ glClipPlanef
+ glClipPlanex
+ glColor4f
+ glColor4ub
+ glColor4x
+ glColorPointer
+ glDepthRangex
+ glDisableClientState
+ glEnableClientState
+ glFogf
+ glFogfv
+ glFogx
+ glFogxv
+ glFrustumf
+ glFrustumx
+ glGetClipPlanef
+ glGetClipPlanex
+ glGetFixedv
+ glGetLightfv
+ glGetLightxv
+ glGetMaterialfv
+ glGetMaterialxv
+ glGetPointerv
+ glGetTexEnvfv
+ glGetTexEnviv
+ glGetTexEnvxv
+ glGetTexParameterxv
+ glLightModelf
+ glLightModelfv
+ glLightModelx
+ glLightModelxv
+ glLightf
+ glLightfv
+ glLightx
+ glLightxv
+ glLineWidthx
+ glLoadIdentity
+ glLoadMatrixf
+ glLoadMatrixx
+ glLogicOp
+ glMaterialf
+ glMaterialfv
+ glMaterialx
+ glMaterialxv
+ glMatrixMode
+ glMultMatrixf
+ glMultMatrixx
+ glMultiTexCoord4f
+ glMultiTexCoord4x
+ glNormal3f
+ glNormal3x
+ glNormalPointer
+ glOrthof
+ glOrthox
+ glPointParameterf
+ glPointParameterfv
+ glPointParameterx
+ glPointParameterxv
+ glPointSize
+ glPointSizex
+ glPolygonOffsetx
+ glPopMatrix
+ glPushMatrix
+ glRotatef
+ glRotatex
+ glSampleCoveragex
+ glScalef
+ glScalex
+ glShadeModel
+ glTexCoordPointer
+ glTexEnvf
+ glTexEnvfv
+ glTexEnvi
+ glTexEnviv
+ glTexEnvx
+ glTexEnvxv
+ glTexParameterx
+ glTexParameterxv
+ glTranslatef
+ glTranslatex
+ glVertexPointer
+
+ ; GL_ANGLE_copy_texture_3d
+ glCopySubTexture3DANGLE
+ glCopyTexture3DANGLE
+
+ ; GL_ANGLE_framebuffer_blit
+ glBlitFramebufferANGLE
+
+ ; GL_ANGLE_framebuffer_multisample
+ glRenderbufferStorageMultisampleANGLE
+
+ ; GL_ANGLE_instanced_arrays
+ glDrawArraysInstancedANGLE
+ glDrawElementsInstancedANGLE
+ glVertexAttribDivisorANGLE
+
+ ; GL_ANGLE_multi_draw
+ glMultiDrawArraysANGLE
+ glMultiDrawArraysInstancedANGLE
+ glMultiDrawElementsANGLE
+ glMultiDrawElementsInstancedANGLE
+
+ ; GL_ANGLE_provoking_vertex
+ glProvokingVertexANGLE
+
+ ; GL_ANGLE_request_extension
+ glRequestExtensionANGLE
+
+ ; GL_ANGLE_robust_client_memory
+ glCompressedTexImage2DRobustANGLE
+ glCompressedTexImage3DRobustANGLE
+ glCompressedTexSubImage2DRobustANGLE
+ glCompressedTexSubImage3DRobustANGLE
+ glGetActiveUniformBlockivRobustANGLE
+ glGetBooleani_vRobustANGLE
+ glGetBooleanvRobustANGLE
+ glGetBufferParameteri64vRobustANGLE
+ glGetBufferParameterivRobustANGLE
+ glGetBufferPointervRobustANGLE
+ glGetFloatvRobustANGLE
+ glGetFramebufferAttachmentParameterivRobustANGLE
+ glGetFramebufferParameterivRobustANGLE
+ glGetInteger64i_vRobustANGLE
+ glGetInteger64vRobustANGLE
+ glGetIntegeri_vRobustANGLE
+ glGetIntegervRobustANGLE
+ glGetInternalformativRobustANGLE
+ glGetMultisamplefvRobustANGLE
+ glGetPointervRobustANGLERobustANGLE
+ glGetProgramInterfaceivRobustANGLE
+ glGetProgramivRobustANGLE
+ glGetQueryObjecti64vRobustANGLE
+ glGetQueryObjectivRobustANGLE
+ glGetQueryObjectui64vRobustANGLE
+ glGetQueryObjectuivRobustANGLE
+ glGetQueryivRobustANGLE
+ glGetRenderbufferParameterivRobustANGLE
+ glGetSamplerParameterIivRobustANGLE
+ glGetSamplerParameterIuivRobustANGLE
+ glGetSamplerParameterfvRobustANGLE
+ glGetSamplerParameterivRobustANGLE
+ glGetShaderivRobustANGLE
+ glGetTexLevelParameterfvRobustANGLE
+ glGetTexLevelParameterivRobustANGLE
+ glGetTexParameterIivRobustANGLE
+ glGetTexParameterIuivRobustANGLE
+ glGetTexParameterfvRobustANGLE
+ glGetTexParameterivRobustANGLE
+ glGetUniformfvRobustANGLE
+ glGetUniformivRobustANGLE
+ glGetUniformuivRobustANGLE
+ glGetVertexAttribIivRobustANGLE
+ glGetVertexAttribIuivRobustANGLE
+ glGetVertexAttribPointervRobustANGLE
+ glGetVertexAttribfvRobustANGLE
+ glGetVertexAttribivRobustANGLE
+ glGetnUniformfvRobustANGLE
+ glGetnUniformivRobustANGLE
+ glGetnUniformuivRobustANGLE
+ glReadPixelsRobustANGLE
+ glReadnPixelsRobustANGLE
+ glSamplerParameterIivRobustANGLE
+ glSamplerParameterIuivRobustANGLE
+ glSamplerParameterfvRobustANGLE
+ glSamplerParameterivRobustANGLE
+ glTexImage2DRobustANGLE
+ glTexImage3DRobustANGLE
+ glTexParameterIivRobustANGLE
+ glTexParameterIuivRobustANGLE
+ glTexParameterfvRobustANGLE
+ glTexParameterivRobustANGLE
+ glTexSubImage2DRobustANGLE
+ glTexSubImage3DRobustANGLE
+
+ ; GL_ANGLE_texture_external_update
+ glInvalidateTextureANGLE
+ glTexImage2DExternalANGLE
+
+ ; GL_ANGLE_texture_multisample
+ glGetMultisamplefvANGLE
+ glGetTexLevelParameterfvANGLE
+ glGetTexLevelParameterivANGLE
+ glSampleMaskiANGLE
+ glTexStorage2DMultisampleANGLE
+
+ ; GL_ANGLE_translated_shader_source
+ glGetTranslatedShaderSourceANGLE
+
+ ; GL_CHROMIUM_bind_uniform_location
+ glBindUniformLocationCHROMIUM
+
+ ; GL_CHROMIUM_copy_compressed_texture
+ glCompressedCopyTextureCHROMIUM
+
+ ; GL_CHROMIUM_copy_texture
+ glCopySubTextureCHROMIUM
+ glCopyTextureCHROMIUM
+
+ ; GL_CHROMIUM_framebuffer_mixed_samples
+ glCoverageModulationCHROMIUM
+ glMatrixLoadIdentityCHROMIUM
+ glMatrixLoadfCHROMIUM
+
+ ; GL_CHROMIUM_lose_context
+ glLoseContextCHROMIUM
+
+ ; GL_CHROMIUM_path_rendering
+ glBindFragmentInputLocationCHROMIUM
+ glCoverFillPathCHROMIUM
+ glCoverFillPathInstancedCHROMIUM
+ glCoverStrokePathCHROMIUM
+ glCoverStrokePathInstancedCHROMIUM
+ glDeletePathsCHROMIUM
+ glGenPathsCHROMIUM
+ glGetPathParameterfvCHROMIUM
+ glGetPathParameterivCHROMIUM
+ glIsPathCHROMIUM
+ glPathCommandsCHROMIUM
+ glPathParameterfCHROMIUM
+ glPathParameteriCHROMIUM
+ glPathStencilFuncCHROMIUM
+ glProgramPathFragmentInputGenCHROMIUM
+ glStencilFillPathCHROMIUM
+ glStencilFillPathInstancedCHROMIUM
+ glStencilStrokePathCHROMIUM
+ glStencilStrokePathInstancedCHROMIUM
+ glStencilThenCoverFillPathCHROMIUM
+ glStencilThenCoverFillPathInstancedCHROMIUM
+ glStencilThenCoverStrokePathCHROMIUM
+ glStencilThenCoverStrokePathInstancedCHROMIUM
+
+ ; GL_EXT_blend_func_extended
+ glBindFragDataLocationEXT
+ glBindFragDataLocationIndexedEXT
+ glGetFragDataIndexEXT
+ glGetProgramResourceLocationIndexEXT
+
+ ; GL_EXT_debug_marker
+ glInsertEventMarkerEXT
+ glPopGroupMarkerEXT
+ glPushGroupMarkerEXT
+
+ ; GL_EXT_discard_framebuffer
+ glDiscardFramebufferEXT
+
+ ; GL_EXT_disjoint_timer_query
+ glBeginQueryEXT
+ glDeleteQueriesEXT
+ glEndQueryEXT
+ glGenQueriesEXT
+ glGetQueryObjecti64vEXT
+ glGetQueryObjectivEXT
+ glGetQueryObjectui64vEXT
+ glGetQueryObjectuivEXT
+ glGetQueryivEXT
+ glIsQueryEXT
+ glQueryCounterEXT
+
+ ; GL_EXT_draw_buffers
+ glDrawBuffersEXT
+
+ ; GL_EXT_geometry_shader
+ glFramebufferTextureEXT
+
+ ; GL_EXT_instanced_arrays
+ glDrawArraysInstancedEXT
+ glDrawElementsInstancedEXT
+ glVertexAttribDivisorEXT
+
+ ; GL_EXT_map_buffer_range
+ glFlushMappedBufferRangeEXT
+ glMapBufferRangeEXT
+
+ ; GL_EXT_memory_object
+ glBufferStorageMemEXT
+ glCreateMemoryObjectsEXT
+ glDeleteMemoryObjectsEXT
+ glGetMemoryObjectParameterivEXT
+ glGetUnsignedBytei_vEXT
+ glGetUnsignedBytevEXT
+ glIsMemoryObjectEXT
+ glMemoryObjectParameterivEXT
+ glTexStorageMem2DEXT
+ glTexStorageMem2DMultisampleEXT
+ glTexStorageMem3DEXT
+ glTexStorageMem3DMultisampleEXT
+
+ ; GL_EXT_memory_object_fd
+ glImportMemoryFdEXT
+
+ ; GL_EXT_occlusion_query_boolean
+
+ ; GL_EXT_robustness
+ glGetGraphicsResetStatusEXT
+ glGetnUniformfvEXT
+ glGetnUniformivEXT
+ glReadnPixelsEXT
+
+ ; GL_EXT_semaphore
+ glDeleteSemaphoresEXT
+ glGenSemaphoresEXT
+ glGetSemaphoreParameterui64vEXT
+ glIsSemaphoreEXT
+ glSemaphoreParameterui64vEXT
+ glSignalSemaphoreEXT
+ glWaitSemaphoreEXT
+
+ ; GL_EXT_semaphore_fd
+ glImportSemaphoreFdEXT
+
+ ; GL_EXT_texture_storage
+ glTexStorage1DEXT
+ glTexStorage2DEXT
+ glTexStorage3DEXT
+
+ ; GL_KHR_debug
+ glDebugMessageCallbackKHR
+ glDebugMessageControlKHR
+ glDebugMessageInsertKHR
+ glGetDebugMessageLogKHR
+ glGetObjectLabelKHR
+ glGetObjectPtrLabelKHR
+ glGetPointervKHR
+ glObjectLabelKHR
+ glObjectPtrLabelKHR
+ glPopDebugGroupKHR
+ glPushDebugGroupKHR
+
+ ; GL_KHR_parallel_shader_compile
+ glMaxShaderCompilerThreadsKHR
+
+ ; GL_NV_fence
+ glDeleteFencesNV
+ glFinishFenceNV
+ glGenFencesNV
+ glGetFenceivNV
+ glIsFenceNV
+ glSetFenceNV
+ glTestFenceNV
+
+ ; GL_OES_EGL_image
+ glEGLImageTargetRenderbufferStorageOES
+ glEGLImageTargetTexture2DOES
+
+ ; GL_OES_draw_texture
+ glDrawTexfOES
+ glDrawTexfvOES
+ glDrawTexiOES
+ glDrawTexivOES
+ glDrawTexsOES
+ glDrawTexsvOES
+ glDrawTexxOES
+ glDrawTexxvOES
+
+ ; GL_OES_framebuffer_object
+ glBindFramebufferOES
+ glBindRenderbufferOES
+ glCheckFramebufferStatusOES
+ glDeleteFramebuffersOES
+ glDeleteRenderbuffersOES
+ glFramebufferRenderbufferOES
+ glFramebufferTexture2DOES
+ glGenFramebuffersOES
+ glGenRenderbuffersOES
+ glGenerateMipmapOES
+ glGetFramebufferAttachmentParameterivOES
+ glGetRenderbufferParameterivOES
+ glIsFramebufferOES
+ glIsRenderbufferOES
+ glRenderbufferStorageOES
+
+ ; GL_OES_get_program_binary
+ glGetProgramBinaryOES
+ glProgramBinaryOES
+
+ ; GL_OES_mapbuffer
+ glGetBufferPointervOES
+ glMapBufferOES
+ glUnmapBufferOES
+
+ ; GL_OES_matrix_palette
+ glCurrentPaletteMatrixOES
+ glLoadPaletteFromModelViewMatrixOES
+ glMatrixIndexPointerOES
+ glWeightPointerOES
+
+ ; GL_OES_point_size_array
+ glPointSizePointerOES
+
+ ; GL_OES_query_matrix
+ glQueryMatrixxOES
+
+ ; GL_OES_texture_3D
+ glCompressedTexImage3DOES
+ glCompressedTexSubImage3DOES
+ glCopyTexSubImage3DOES
+ glFramebufferTexture3DOES
+ glTexImage3DOES
+ glTexSubImage3DOES
+
+ ; GL_OES_texture_border_clamp
+ glGetSamplerParameterIivOES
+ glGetSamplerParameterIuivOES
+ glGetTexParameterIivOES
+ glGetTexParameterIuivOES
+ glSamplerParameterIivOES
+ glSamplerParameterIuivOES
+ glTexParameterIivOES
+ glTexParameterIuivOES
+
+ ; GL_OES_texture_cube_map
+ glGetTexGenfvOES
+ glGetTexGenivOES
+ glGetTexGenxvOES
+ glTexGenfOES
+ glTexGenfvOES
+ glTexGeniOES
+ glTexGenivOES
+ glTexGenxOES
+ glTexGenxvOES
+
+ ; GL_OES_texture_storage_multisample_2d_array
+ glTexStorage3DMultisampleOES
+
+ ; GL_OES_vertex_array_object
+ glBindVertexArrayOES
+ glDeleteVertexArraysOES
+ glGenVertexArraysOES
+ glIsVertexArrayOES
+
+ ; GL_OVR_multiview
+ glFramebufferTextureMultiviewOVR
+
+ ; GL_OVR_multiview2
+
+ ; EGL_ANGLE_explicit_context
+ glActiveShaderProgramContextANGLE
+ glActiveTextureContextANGLE
+ glAlphaFuncContextANGLE
+ glAlphaFuncxContextANGLE
+ glAttachShaderContextANGLE
+ glBeginQueryContextANGLE
+ glBeginQueryEXTContextANGLE
+ glBeginTransformFeedbackContextANGLE
+ glBindAttribLocationContextANGLE
+ glBindBufferContextANGLE
+ glBindBufferBaseContextANGLE
+ glBindBufferRangeContextANGLE
+ glBindFragDataLocationEXTContextANGLE
+ glBindFragDataLocationIndexedEXTContextANGLE
+ glBindFragmentInputLocationCHROMIUMContextANGLE
+ glBindFramebufferContextANGLE
+ glBindFramebufferOESContextANGLE
+ glBindImageTextureContextANGLE
+ glBindProgramPipelineContextANGLE
+ glBindRenderbufferContextANGLE
+ glBindRenderbufferOESContextANGLE
+ glBindSamplerContextANGLE
+ glBindTextureContextANGLE
+ glBindTransformFeedbackContextANGLE
+ glBindUniformLocationCHROMIUMContextANGLE
+ glBindVertexArrayContextANGLE
+ glBindVertexArrayOESContextANGLE
+ glBindVertexBufferContextANGLE
+ glBlendColorContextANGLE
+ glBlendEquationContextANGLE
+ glBlendEquationSeparateContextANGLE
+ glBlendFuncContextANGLE
+ glBlendFuncSeparateContextANGLE
+ glBlitFramebufferContextANGLE
+ glBlitFramebufferANGLEContextANGLE
+ glBufferDataContextANGLE
+ glBufferStorageMemEXTContextANGLE
+ glBufferSubDataContextANGLE
+ glCheckFramebufferStatusContextANGLE
+ glCheckFramebufferStatusOESContextANGLE
+ glClearContextANGLE
+ glClearBufferfiContextANGLE
+ glClearBufferfvContextANGLE
+ glClearBufferivContextANGLE
+ glClearBufferuivContextANGLE
+ glClearColorContextANGLE
+ glClearColorxContextANGLE
+ glClearDepthfContextANGLE
+ glClearDepthxContextANGLE
+ glClearStencilContextANGLE
+ glClientActiveTextureContextANGLE
+ glClientWaitSyncContextANGLE
+ glClipPlanefContextANGLE
+ glClipPlanexContextANGLE
+ glColor4fContextANGLE
+ glColor4ubContextANGLE
+ glColor4xContextANGLE
+ glColorMaskContextANGLE
+ glColorPointerContextANGLE
+ glCompileShaderContextANGLE
+ glCompressedCopyTextureCHROMIUMContextANGLE
+ glCompressedTexImage2DContextANGLE
+ glCompressedTexImage2DRobustANGLEContextANGLE
+ glCompressedTexImage3DContextANGLE
+ glCompressedTexImage3DOESContextANGLE
+ glCompressedTexImage3DRobustANGLEContextANGLE
+ glCompressedTexSubImage2DContextANGLE
+ glCompressedTexSubImage2DRobustANGLEContextANGLE
+ glCompressedTexSubImage3DContextANGLE
+ glCompressedTexSubImage3DOESContextANGLE
+ glCompressedTexSubImage3DRobustANGLEContextANGLE
+ glCopyBufferSubDataContextANGLE
+ glCopySubTexture3DANGLEContextANGLE
+ glCopySubTextureCHROMIUMContextANGLE
+ glCopyTexImage2DContextANGLE
+ glCopyTexSubImage2DContextANGLE
+ glCopyTexSubImage3DContextANGLE
+ glCopyTexSubImage3DOESContextANGLE
+ glCopyTexture3DANGLEContextANGLE
+ glCopyTextureCHROMIUMContextANGLE
+ glCoverFillPathCHROMIUMContextANGLE
+ glCoverFillPathInstancedCHROMIUMContextANGLE
+ glCoverStrokePathCHROMIUMContextANGLE
+ glCoverStrokePathInstancedCHROMIUMContextANGLE
+ glCoverageModulationCHROMIUMContextANGLE
+ glCreateMemoryObjectsEXTContextANGLE
+ glCreateProgramContextANGLE
+ glCreateShaderContextANGLE
+ glCreateShaderProgramvContextANGLE
+ glCullFaceContextANGLE
+ glCurrentPaletteMatrixOESContextANGLE
+ glDebugMessageCallbackKHRContextANGLE
+ glDebugMessageControlKHRContextANGLE
+ glDebugMessageInsertKHRContextANGLE
+ glDeleteBuffersContextANGLE
+ glDeleteFencesNVContextANGLE
+ glDeleteFramebuffersContextANGLE
+ glDeleteFramebuffersOESContextANGLE
+ glDeleteMemoryObjectsEXTContextANGLE
+ glDeletePathsCHROMIUMContextANGLE
+ glDeleteProgramContextANGLE
+ glDeleteProgramPipelinesContextANGLE
+ glDeleteQueriesContextANGLE
+ glDeleteQueriesEXTContextANGLE
+ glDeleteRenderbuffersContextANGLE
+ glDeleteRenderbuffersOESContextANGLE
+ glDeleteSamplersContextANGLE
+ glDeleteSemaphoresEXTContextANGLE
+ glDeleteShaderContextANGLE
+ glDeleteSyncContextANGLE
+ glDeleteTexturesContextANGLE
+ glDeleteTransformFeedbacksContextANGLE
+ glDeleteVertexArraysContextANGLE
+ glDeleteVertexArraysOESContextANGLE
+ glDepthFuncContextANGLE
+ glDepthMaskContextANGLE
+ glDepthRangefContextANGLE
+ glDepthRangexContextANGLE
+ glDetachShaderContextANGLE
+ glDisableContextANGLE
+ glDisableClientStateContextANGLE
+ glDisableVertexAttribArrayContextANGLE
+ glDiscardFramebufferEXTContextANGLE
+ glDispatchComputeContextANGLE
+ glDispatchComputeIndirectContextANGLE
+ glDrawArraysContextANGLE
+ glDrawArraysIndirectContextANGLE
+ glDrawArraysInstancedContextANGLE
+ glDrawArraysInstancedANGLEContextANGLE
+ glDrawArraysInstancedEXTContextANGLE
+ glDrawBuffersContextANGLE
+ glDrawBuffersEXTContextANGLE
+ glDrawElementsContextANGLE
+ glDrawElementsIndirectContextANGLE
+ glDrawElementsInstancedContextANGLE
+ glDrawElementsInstancedANGLEContextANGLE
+ glDrawElementsInstancedEXTContextANGLE
+ glDrawRangeElementsContextANGLE
+ glDrawTexfOESContextANGLE
+ glDrawTexfvOESContextANGLE
+ glDrawTexiOESContextANGLE
+ glDrawTexivOESContextANGLE
+ glDrawTexsOESContextANGLE
+ glDrawTexsvOESContextANGLE
+ glDrawTexxOESContextANGLE
+ glDrawTexxvOESContextANGLE
+ glEGLImageTargetRenderbufferStorageOESContextANGLE
+ glEGLImageTargetTexture2DOESContextANGLE
+ glEnableContextANGLE
+ glEnableClientStateContextANGLE
+ glEnableVertexAttribArrayContextANGLE
+ glEndQueryContextANGLE
+ glEndQueryEXTContextANGLE
+ glEndTransformFeedbackContextANGLE
+ glFenceSyncContextANGLE
+ glFinishContextANGLE
+ glFinishFenceNVContextANGLE
+ glFlushContextANGLE
+ glFlushMappedBufferRangeContextANGLE
+ glFlushMappedBufferRangeEXTContextANGLE
+ glFogfContextANGLE
+ glFogfvContextANGLE
+ glFogxContextANGLE
+ glFogxvContextANGLE
+ glFramebufferParameteriContextANGLE
+ glFramebufferRenderbufferContextANGLE
+ glFramebufferRenderbufferOESContextANGLE
+ glFramebufferTexture2DContextANGLE
+ glFramebufferTexture2DOESContextANGLE
+ glFramebufferTexture3DOESContextANGLE
+ glFramebufferTextureEXTContextANGLE
+ glFramebufferTextureLayerContextANGLE
+ glFramebufferTextureMultiviewOVRContextANGLE
+ glFrontFaceContextANGLE
+ glFrustumfContextANGLE
+ glFrustumxContextANGLE
+ glGenBuffersContextANGLE
+ glGenFencesNVContextANGLE
+ glGenFramebuffersContextANGLE
+ glGenFramebuffersOESContextANGLE
+ glGenPathsCHROMIUMContextANGLE
+ glGenProgramPipelinesContextANGLE
+ glGenQueriesContextANGLE
+ glGenQueriesEXTContextANGLE
+ glGenRenderbuffersContextANGLE
+ glGenRenderbuffersOESContextANGLE
+ glGenSamplersContextANGLE
+ glGenSemaphoresEXTContextANGLE
+ glGenTexturesContextANGLE
+ glGenTransformFeedbacksContextANGLE
+ glGenVertexArraysContextANGLE
+ glGenVertexArraysOESContextANGLE
+ glGenerateMipmapContextANGLE
+ glGenerateMipmapOESContextANGLE
+ glGetActiveAttribContextANGLE
+ glGetActiveUniformContextANGLE
+ glGetActiveUniformBlockNameContextANGLE
+ glGetActiveUniformBlockivContextANGLE
+ glGetActiveUniformBlockivRobustANGLEContextANGLE
+ glGetActiveUniformsivContextANGLE
+ glGetAttachedShadersContextANGLE
+ glGetAttribLocationContextANGLE
+ glGetBooleani_vContextANGLE
+ glGetBooleani_vRobustANGLEContextANGLE
+ glGetBooleanvContextANGLE
+ glGetBooleanvRobustANGLEContextANGLE
+ glGetBufferParameteri64vContextANGLE
+ glGetBufferParameteri64vRobustANGLEContextANGLE
+ glGetBufferParameterivContextANGLE
+ glGetBufferParameterivRobustANGLEContextANGLE
+ glGetBufferPointervContextANGLE
+ glGetBufferPointervOESContextANGLE
+ glGetBufferPointervRobustANGLEContextANGLE
+ glGetClipPlanefContextANGLE
+ glGetClipPlanexContextANGLE
+ glGetDebugMessageLogKHRContextANGLE
+ glGetErrorContextANGLE
+ glGetFenceivNVContextANGLE
+ glGetFixedvContextANGLE
+ glGetFloatvContextANGLE
+ glGetFloatvRobustANGLEContextANGLE
+ glGetFragDataIndexEXTContextANGLE
+ glGetFragDataLocationContextANGLE
+ glGetFramebufferAttachmentParameterivContextANGLE
+ glGetFramebufferAttachmentParameterivOESContextANGLE
+ glGetFramebufferAttachmentParameterivRobustANGLEContextANGLE
+ glGetFramebufferParameterivContextANGLE
+ glGetFramebufferParameterivRobustANGLEContextANGLE
+ glGetGraphicsResetStatusEXTContextANGLE
+ glGetInteger64i_vContextANGLE
+ glGetInteger64i_vRobustANGLEContextANGLE
+ glGetInteger64vContextANGLE
+ glGetInteger64vRobustANGLEContextANGLE
+ glGetIntegeri_vContextANGLE
+ glGetIntegeri_vRobustANGLEContextANGLE
+ glGetIntegervContextANGLE
+ glGetIntegervRobustANGLEContextANGLE
+ glGetInternalformativContextANGLE
+ glGetInternalformativRobustANGLEContextANGLE
+ glGetLightfvContextANGLE
+ glGetLightxvContextANGLE
+ glGetMaterialfvContextANGLE
+ glGetMaterialxvContextANGLE
+ glGetMemoryObjectParameterivEXTContextANGLE
+ glGetMultisamplefvContextANGLE
+ glGetMultisamplefvANGLEContextANGLE
+ glGetMultisamplefvRobustANGLEContextANGLE
+ glGetObjectLabelKHRContextANGLE
+ glGetObjectPtrLabelKHRContextANGLE
+ glGetPathParameterfvCHROMIUMContextANGLE
+ glGetPathParameterivCHROMIUMContextANGLE
+ glGetPointervContextANGLE
+ glGetPointervKHRContextANGLE
+ glGetPointervRobustANGLERobustANGLEContextANGLE
+ glGetProgramBinaryContextANGLE
+ glGetProgramBinaryOESContextANGLE
+ glGetProgramInfoLogContextANGLE
+ glGetProgramInterfaceivContextANGLE
+ glGetProgramInterfaceivRobustANGLEContextANGLE
+ glGetProgramPipelineInfoLogContextANGLE
+ glGetProgramPipelineivContextANGLE
+ glGetProgramResourceIndexContextANGLE
+ glGetProgramResourceLocationContextANGLE
+ glGetProgramResourceLocationIndexEXTContextANGLE
+ glGetProgramResourceNameContextANGLE
+ glGetProgramResourceivContextANGLE
+ glGetProgramivContextANGLE
+ glGetProgramivRobustANGLEContextANGLE
+ glGetQueryObjecti64vEXTContextANGLE
+ glGetQueryObjecti64vRobustANGLEContextANGLE
+ glGetQueryObjectivEXTContextANGLE
+ glGetQueryObjectivRobustANGLEContextANGLE
+ glGetQueryObjectui64vEXTContextANGLE
+ glGetQueryObjectui64vRobustANGLEContextANGLE
+ glGetQueryObjectuivContextANGLE
+ glGetQueryObjectuivEXTContextANGLE
+ glGetQueryObjectuivRobustANGLEContextANGLE
+ glGetQueryivContextANGLE
+ glGetQueryivEXTContextANGLE
+ glGetQueryivRobustANGLEContextANGLE
+ glGetRenderbufferParameterivContextANGLE
+ glGetRenderbufferParameterivOESContextANGLE
+ glGetRenderbufferParameterivRobustANGLEContextANGLE
+ glGetSamplerParameterIivOESContextANGLE
+ glGetSamplerParameterIivRobustANGLEContextANGLE
+ glGetSamplerParameterIuivOESContextANGLE
+ glGetSamplerParameterIuivRobustANGLEContextANGLE
+ glGetSamplerParameterfvContextANGLE
+ glGetSamplerParameterfvRobustANGLEContextANGLE
+ glGetSamplerParameterivContextANGLE
+ glGetSamplerParameterivRobustANGLEContextANGLE
+ glGetSemaphoreParameterui64vEXTContextANGLE
+ glGetShaderInfoLogContextANGLE
+ glGetShaderPrecisionFormatContextANGLE
+ glGetShaderSourceContextANGLE
+ glGetShaderivContextANGLE
+ glGetShaderivRobustANGLEContextANGLE
+ glGetStringContextANGLE
+ glGetStringiContextANGLE
+ glGetSyncivContextANGLE
+ glGetTexEnvfvContextANGLE
+ glGetTexEnvivContextANGLE
+ glGetTexEnvxvContextANGLE
+ glGetTexGenfvOESContextANGLE
+ glGetTexGenivOESContextANGLE
+ glGetTexGenxvOESContextANGLE
+ glGetTexLevelParameterfvContextANGLE
+ glGetTexLevelParameterfvANGLEContextANGLE
+ glGetTexLevelParameterfvRobustANGLEContextANGLE
+ glGetTexLevelParameterivContextANGLE
+ glGetTexLevelParameterivANGLEContextANGLE
+ glGetTexLevelParameterivRobustANGLEContextANGLE
+ glGetTexParameterIivOESContextANGLE
+ glGetTexParameterIivRobustANGLEContextANGLE
+ glGetTexParameterIuivOESContextANGLE
+ glGetTexParameterIuivRobustANGLEContextANGLE
+ glGetTexParameterfvContextANGLE
+ glGetTexParameterfvRobustANGLEContextANGLE
+ glGetTexParameterivContextANGLE
+ glGetTexParameterivRobustANGLEContextANGLE
+ glGetTexParameterxvContextANGLE
+ glGetTransformFeedbackVaryingContextANGLE
+ glGetTranslatedShaderSourceANGLEContextANGLE
+ glGetUniformBlockIndexContextANGLE
+ glGetUniformIndicesContextANGLE
+ glGetUniformLocationContextANGLE
+ glGetUniformfvContextANGLE
+ glGetUniformfvRobustANGLEContextANGLE
+ glGetUniformivContextANGLE
+ glGetUniformivRobustANGLEContextANGLE
+ glGetUniformuivContextANGLE
+ glGetUniformuivRobustANGLEContextANGLE
+ glGetUnsignedBytei_vEXTContextANGLE
+ glGetUnsignedBytevEXTContextANGLE
+ glGetVertexAttribIivContextANGLE
+ glGetVertexAttribIivRobustANGLEContextANGLE
+ glGetVertexAttribIuivContextANGLE
+ glGetVertexAttribIuivRobustANGLEContextANGLE
+ glGetVertexAttribPointervContextANGLE
+ glGetVertexAttribPointervRobustANGLEContextANGLE
+ glGetVertexAttribfvContextANGLE
+ glGetVertexAttribfvRobustANGLEContextANGLE
+ glGetVertexAttribivContextANGLE
+ glGetVertexAttribivRobustANGLEContextANGLE
+ glGetnUniformfvEXTContextANGLE
+ glGetnUniformfvRobustANGLEContextANGLE
+ glGetnUniformivEXTContextANGLE
+ glGetnUniformivRobustANGLEContextANGLE
+ glGetnUniformuivRobustANGLEContextANGLE
+ glHintContextANGLE
+ glImportMemoryFdEXTContextANGLE
+ glImportSemaphoreFdEXTContextANGLE
+ glInsertEventMarkerEXTContextANGLE
+ glInvalidateFramebufferContextANGLE
+ glInvalidateSubFramebufferContextANGLE
+ glInvalidateTextureANGLEContextANGLE
+ glIsBufferContextANGLE
+ glIsEnabledContextANGLE
+ glIsFenceNVContextANGLE
+ glIsFramebufferContextANGLE
+ glIsFramebufferOESContextANGLE
+ glIsMemoryObjectEXTContextANGLE
+ glIsPathCHROMIUMContextANGLE
+ glIsProgramContextANGLE
+ glIsProgramPipelineContextANGLE
+ glIsQueryContextANGLE
+ glIsQueryEXTContextANGLE
+ glIsRenderbufferContextANGLE
+ glIsRenderbufferOESContextANGLE
+ glIsSamplerContextANGLE
+ glIsSemaphoreEXTContextANGLE
+ glIsShaderContextANGLE
+ glIsSyncContextANGLE
+ glIsTextureContextANGLE
+ glIsTransformFeedbackContextANGLE
+ glIsVertexArrayContextANGLE
+ glIsVertexArrayOESContextANGLE
+ glLightModelfContextANGLE
+ glLightModelfvContextANGLE
+ glLightModelxContextANGLE
+ glLightModelxvContextANGLE
+ glLightfContextANGLE
+ glLightfvContextANGLE
+ glLightxContextANGLE
+ glLightxvContextANGLE
+ glLineWidthContextANGLE
+ glLineWidthxContextANGLE
+ glLinkProgramContextANGLE
+ glLoadIdentityContextANGLE
+ glLoadMatrixfContextANGLE
+ glLoadMatrixxContextANGLE
+ glLoadPaletteFromModelViewMatrixOESContextANGLE
+ glLogicOpContextANGLE
+ glLoseContextCHROMIUMContextANGLE
+ glMapBufferOESContextANGLE
+ glMapBufferRangeContextANGLE
+ glMapBufferRangeEXTContextANGLE
+ glMaterialfContextANGLE
+ glMaterialfvContextANGLE
+ glMaterialxContextANGLE
+ glMaterialxvContextANGLE
+ glMatrixIndexPointerOESContextANGLE
+ glMatrixLoadIdentityCHROMIUMContextANGLE
+ glMatrixLoadfCHROMIUMContextANGLE
+ glMatrixModeContextANGLE
+ glMaxShaderCompilerThreadsKHRContextANGLE
+ glMemoryBarrierContextANGLE
+ glMemoryBarrierByRegionContextANGLE
+ glMemoryObjectParameterivEXTContextANGLE
+ glMultMatrixfContextANGLE
+ glMultMatrixxContextANGLE
+ glMultiDrawArraysANGLEContextANGLE
+ glMultiDrawArraysInstancedANGLEContextANGLE
+ glMultiDrawElementsANGLEContextANGLE
+ glMultiDrawElementsInstancedANGLEContextANGLE
+ glMultiTexCoord4fContextANGLE
+ glMultiTexCoord4xContextANGLE
+ glNormal3fContextANGLE
+ glNormal3xContextANGLE
+ glNormalPointerContextANGLE
+ glObjectLabelKHRContextANGLE
+ glObjectPtrLabelKHRContextANGLE
+ glOrthofContextANGLE
+ glOrthoxContextANGLE
+ glPathCommandsCHROMIUMContextANGLE
+ glPathParameterfCHROMIUMContextANGLE
+ glPathParameteriCHROMIUMContextANGLE
+ glPathStencilFuncCHROMIUMContextANGLE
+ glPauseTransformFeedbackContextANGLE
+ glPixelStoreiContextANGLE
+ glPointParameterfContextANGLE
+ glPointParameterfvContextANGLE
+ glPointParameterxContextANGLE
+ glPointParameterxvContextANGLE
+ glPointSizeContextANGLE
+ glPointSizePointerOESContextANGLE
+ glPointSizexContextANGLE
+ glPolygonOffsetContextANGLE
+ glPolygonOffsetxContextANGLE
+ glPopDebugGroupKHRContextANGLE
+ glPopGroupMarkerEXTContextANGLE
+ glPopMatrixContextANGLE
+ glProgramBinaryContextANGLE
+ glProgramBinaryOESContextANGLE
+ glProgramParameteriContextANGLE
+ glProgramPathFragmentInputGenCHROMIUMContextANGLE
+ glProgramUniform1fContextANGLE
+ glProgramUniform1fvContextANGLE
+ glProgramUniform1iContextANGLE
+ glProgramUniform1ivContextANGLE
+ glProgramUniform1uiContextANGLE
+ glProgramUniform1uivContextANGLE
+ glProgramUniform2fContextANGLE
+ glProgramUniform2fvContextANGLE
+ glProgramUniform2iContextANGLE
+ glProgramUniform2ivContextANGLE
+ glProgramUniform2uiContextANGLE
+ glProgramUniform2uivContextANGLE
+ glProgramUniform3fContextANGLE
+ glProgramUniform3fvContextANGLE
+ glProgramUniform3iContextANGLE
+ glProgramUniform3ivContextANGLE
+ glProgramUniform3uiContextANGLE
+ glProgramUniform3uivContextANGLE
+ glProgramUniform4fContextANGLE
+ glProgramUniform4fvContextANGLE
+ glProgramUniform4iContextANGLE
+ glProgramUniform4ivContextANGLE
+ glProgramUniform4uiContextANGLE
+ glProgramUniform4uivContextANGLE
+ glProgramUniformMatrix2fvContextANGLE
+ glProgramUniformMatrix2x3fvContextANGLE
+ glProgramUniformMatrix2x4fvContextANGLE
+ glProgramUniformMatrix3fvContextANGLE
+ glProgramUniformMatrix3x2fvContextANGLE
+ glProgramUniformMatrix3x4fvContextANGLE
+ glProgramUniformMatrix4fvContextANGLE
+ glProgramUniformMatrix4x2fvContextANGLE
+ glProgramUniformMatrix4x3fvContextANGLE
+ glProvokingVertexANGLEContextANGLE
+ glPushDebugGroupKHRContextANGLE
+ glPushGroupMarkerEXTContextANGLE
+ glPushMatrixContextANGLE
+ glQueryCounterEXTContextANGLE
+ glQueryMatrixxOESContextANGLE
+ glReadBufferContextANGLE
+ glReadPixelsContextANGLE
+ glReadPixelsRobustANGLEContextANGLE
+ glReadnPixelsEXTContextANGLE
+ glReadnPixelsRobustANGLEContextANGLE
+ glReleaseShaderCompilerContextANGLE
+ glRenderbufferStorageContextANGLE
+ glRenderbufferStorageMultisampleContextANGLE
+ glRenderbufferStorageMultisampleANGLEContextANGLE
+ glRenderbufferStorageOESContextANGLE
+ glRequestExtensionANGLEContextANGLE
+ glResumeTransformFeedbackContextANGLE
+ glRotatefContextANGLE
+ glRotatexContextANGLE
+ glSampleCoverageContextANGLE
+ glSampleCoveragexContextANGLE
+ glSampleMaskiContextANGLE
+ glSampleMaskiANGLEContextANGLE
+ glSamplerParameterIivOESContextANGLE
+ glSamplerParameterIivRobustANGLEContextANGLE
+ glSamplerParameterIuivOESContextANGLE
+ glSamplerParameterIuivRobustANGLEContextANGLE
+ glSamplerParameterfContextANGLE
+ glSamplerParameterfvContextANGLE
+ glSamplerParameterfvRobustANGLEContextANGLE
+ glSamplerParameteriContextANGLE
+ glSamplerParameterivContextANGLE
+ glSamplerParameterivRobustANGLEContextANGLE
+ glScalefContextANGLE
+ glScalexContextANGLE
+ glScissorContextANGLE
+ glSemaphoreParameterui64vEXTContextANGLE
+ glSetFenceNVContextANGLE
+ glShadeModelContextANGLE
+ glShaderBinaryContextANGLE
+ glShaderSourceContextANGLE
+ glSignalSemaphoreEXTContextANGLE
+ glStencilFillPathCHROMIUMContextANGLE
+ glStencilFillPathInstancedCHROMIUMContextANGLE
+ glStencilFuncContextANGLE
+ glStencilFuncSeparateContextANGLE
+ glStencilMaskContextANGLE
+ glStencilMaskSeparateContextANGLE
+ glStencilOpContextANGLE
+ glStencilOpSeparateContextANGLE
+ glStencilStrokePathCHROMIUMContextANGLE
+ glStencilStrokePathInstancedCHROMIUMContextANGLE
+ glStencilThenCoverFillPathCHROMIUMContextANGLE
+ glStencilThenCoverFillPathInstancedCHROMIUMContextANGLE
+ glStencilThenCoverStrokePathCHROMIUMContextANGLE
+ glStencilThenCoverStrokePathInstancedCHROMIUMContextANGLE
+ glTestFenceNVContextANGLE
+ glTexCoordPointerContextANGLE
+ glTexEnvfContextANGLE
+ glTexEnvfvContextANGLE
+ glTexEnviContextANGLE
+ glTexEnvivContextANGLE
+ glTexEnvxContextANGLE
+ glTexEnvxvContextANGLE
+ glTexGenfOESContextANGLE
+ glTexGenfvOESContextANGLE
+ glTexGeniOESContextANGLE
+ glTexGenivOESContextANGLE
+ glTexGenxOESContextANGLE
+ glTexGenxvOESContextANGLE
+ glTexImage2DContextANGLE
+ glTexImage2DExternalANGLEContextANGLE
+ glTexImage2DRobustANGLEContextANGLE
+ glTexImage3DContextANGLE
+ glTexImage3DOESContextANGLE
+ glTexImage3DRobustANGLEContextANGLE
+ glTexParameterIivOESContextANGLE
+ glTexParameterIivRobustANGLEContextANGLE
+ glTexParameterIuivOESContextANGLE
+ glTexParameterIuivRobustANGLEContextANGLE
+ glTexParameterfContextANGLE
+ glTexParameterfvContextANGLE
+ glTexParameterfvRobustANGLEContextANGLE
+ glTexParameteriContextANGLE
+ glTexParameterivContextANGLE
+ glTexParameterivRobustANGLEContextANGLE
+ glTexParameterxContextANGLE
+ glTexParameterxvContextANGLE
+ glTexStorage1DEXTContextANGLE
+ glTexStorage2DContextANGLE
+ glTexStorage2DEXTContextANGLE
+ glTexStorage2DMultisampleContextANGLE
+ glTexStorage2DMultisampleANGLEContextANGLE
+ glTexStorage3DContextANGLE
+ glTexStorage3DEXTContextANGLE
+ glTexStorage3DMultisampleOESContextANGLE
+ glTexStorageMem2DEXTContextANGLE
+ glTexStorageMem2DMultisampleEXTContextANGLE
+ glTexStorageMem3DEXTContextANGLE
+ glTexStorageMem3DMultisampleEXTContextANGLE
+ glTexSubImage2DContextANGLE
+ glTexSubImage2DRobustANGLEContextANGLE
+ glTexSubImage3DContextANGLE
+ glTexSubImage3DOESContextANGLE
+ glTexSubImage3DRobustANGLEContextANGLE
+ glTransformFeedbackVaryingsContextANGLE
+ glTranslatefContextANGLE
+ glTranslatexContextANGLE
+ glUniform1fContextANGLE
+ glUniform1fvContextANGLE
+ glUniform1iContextANGLE
+ glUniform1ivContextANGLE
+ glUniform1uiContextANGLE
+ glUniform1uivContextANGLE
+ glUniform2fContextANGLE
+ glUniform2fvContextANGLE
+ glUniform2iContextANGLE
+ glUniform2ivContextANGLE
+ glUniform2uiContextANGLE
+ glUniform2uivContextANGLE
+ glUniform3fContextANGLE
+ glUniform3fvContextANGLE
+ glUniform3iContextANGLE
+ glUniform3ivContextANGLE
+ glUniform3uiContextANGLE
+ glUniform3uivContextANGLE
+ glUniform4fContextANGLE
+ glUniform4fvContextANGLE
+ glUniform4iContextANGLE
+ glUniform4ivContextANGLE
+ glUniform4uiContextANGLE
+ glUniform4uivContextANGLE
+ glUniformBlockBindingContextANGLE
+ glUniformMatrix2fvContextANGLE
+ glUniformMatrix2x3fvContextANGLE
+ glUniformMatrix2x4fvContextANGLE
+ glUniformMatrix3fvContextANGLE
+ glUniformMatrix3x2fvContextANGLE
+ glUniformMatrix3x4fvContextANGLE
+ glUniformMatrix4fvContextANGLE
+ glUniformMatrix4x2fvContextANGLE
+ glUniformMatrix4x3fvContextANGLE
+ glUnmapBufferContextANGLE
+ glUnmapBufferOESContextANGLE
+ glUseProgramContextANGLE
+ glUseProgramStagesContextANGLE
+ glValidateProgramContextANGLE
+ glValidateProgramPipelineContextANGLE
+ glVertexAttrib1fContextANGLE
+ glVertexAttrib1fvContextANGLE
+ glVertexAttrib2fContextANGLE
+ glVertexAttrib2fvContextANGLE
+ glVertexAttrib3fContextANGLE
+ glVertexAttrib3fvContextANGLE
+ glVertexAttrib4fContextANGLE
+ glVertexAttrib4fvContextANGLE
+ glVertexAttribBindingContextANGLE
+ glVertexAttribDivisorContextANGLE
+ glVertexAttribDivisorANGLEContextANGLE
+ glVertexAttribDivisorEXTContextANGLE
+ glVertexAttribFormatContextANGLE
+ glVertexAttribI4iContextANGLE
+ glVertexAttribI4ivContextANGLE
+ glVertexAttribI4uiContextANGLE
+ glVertexAttribI4uivContextANGLE
+ glVertexAttribIFormatContextANGLE
+ glVertexAttribIPointerContextANGLE
+ glVertexAttribPointerContextANGLE
+ glVertexBindingDivisorContextANGLE
+ glVertexPointerContextANGLE
+ glViewportContextANGLE
+ glWaitSemaphoreEXTContextANGLE
+ glWaitSyncContextANGLE
+ glWeightPointerOESContextANGLE
+
+ ; EGL 1.0
+ EGL_ChooseConfig
+ EGL_CopyBuffers
+ EGL_CreateContext
+ EGL_CreatePbufferSurface
+ EGL_CreatePixmapSurface
+ EGL_CreateWindowSurface
+ EGL_DestroyContext
+ EGL_DestroySurface
+ EGL_GetConfigAttrib
+ EGL_GetConfigs
+ EGL_GetCurrentDisplay
+ EGL_GetCurrentSurface
+ EGL_GetDisplay
+ EGL_GetError
+ EGL_GetProcAddress
+ EGL_Initialize
+ EGL_MakeCurrent
+ EGL_QueryContext
+ EGL_QueryString
+ EGL_QuerySurface
+ EGL_SwapBuffers
+ EGL_Terminate
+ EGL_WaitGL
+ EGL_WaitNative
+
+ ; EGL 1.1
+ EGL_BindTexImage
+ EGL_ReleaseTexImage
+ EGL_SurfaceAttrib
+ EGL_SwapInterval
+
+ ; EGL 1.2
+ EGL_BindAPI
+ EGL_CreatePbufferFromClientBuffer
+ EGL_QueryAPI
+ EGL_ReleaseThread
+ EGL_WaitClient
+
+ ; EGL 1.4
+ EGL_GetCurrentContext
+
+ ; EGL 1.5
+ EGL_ClientWaitSync
+ EGL_CreateImage
+ EGL_CreatePlatformPixmapSurface
+ EGL_CreatePlatformWindowSurface
+ EGL_CreateSync
+ EGL_DestroyImage
+ EGL_DestroySync
+ EGL_GetPlatformDisplay
+ EGL_GetSyncAttrib
+ EGL_WaitSync
+
+ ; EGL_ANDROID_blob_cache
+ EGL_SetBlobCacheFuncsANDROID
+
+ ; EGL_ANDROID_get_frame_timestamps
+ EGL_GetCompositorTimingANDROID
+ EGL_GetCompositorTimingSupportedANDROID
+ EGL_GetFrameTimestampSupportedANDROID
+ EGL_GetFrameTimestampsANDROID
+ EGL_GetNextFrameIdANDROID
+
+ ; EGL_ANDROID_get_native_client_buffer
+ EGL_GetNativeClientBufferANDROID
+
+ ; EGL_ANDROID_native_fence_sync
+ EGL_DupNativeFenceFDANDROID
+
+ ; EGL_ANDROID_presentation_time
+ EGL_PresentationTimeANDROID
+
+ ; EGL_ANGLE_device_creation
+ EGL_CreateDeviceANGLE
+ EGL_ReleaseDeviceANGLE
+
+ ; EGL_ANGLE_feature_control
+ EGL_QueryDisplayAttribANGLE
+ EGL_QueryStringiANGLE
+
+ ; EGL_ANGLE_program_cache_control
+ EGL_ProgramCacheGetAttribANGLE
+ EGL_ProgramCachePopulateANGLE
+ EGL_ProgramCacheQueryANGLE
+ EGL_ProgramCacheResizeANGLE
+
+ ; EGL_ANGLE_query_surface_pointer
+ EGL_QuerySurfacePointerANGLE
+
+ ; EGL_ANGLE_stream_producer_d3d_texture
+ EGL_CreateStreamProducerD3DTextureANGLE
+ EGL_StreamPostD3DTextureANGLE
+
+ ; EGL_CHROMIUM_get_sync_values
+ EGL_GetSyncValuesCHROMIUM
+
+ ; EGL_EXT_device_query
+ EGL_QueryDeviceAttribEXT
+ EGL_QueryDeviceStringEXT
+ EGL_QueryDisplayAttribEXT
+
+ ; EGL_EXT_platform_base
+ EGL_CreatePlatformPixmapSurfaceEXT
+ EGL_CreatePlatformWindowSurfaceEXT
+ EGL_GetPlatformDisplayEXT
+
+ ; EGL_KHR_debug
+ EGL_DebugMessageControlKHR
+ EGL_LabelObjectKHR
+ EGL_QueryDebugKHR
+
+ ; EGL_KHR_fence_sync
+ EGL_ClientWaitSyncKHR
+ EGL_CreateSyncKHR
+ EGL_DestroySyncKHR
+ EGL_GetSyncAttribKHR
+
+ ; EGL_KHR_image
+ EGL_CreateImageKHR
+ EGL_DestroyImageKHR
+
+ ; EGL_KHR_stream
+ EGL_CreateStreamKHR
+ EGL_DestroyStreamKHR
+ EGL_QueryStreamKHR
+ EGL_QueryStreamu64KHR
+ EGL_StreamAttribKHR
+
+ ; EGL_KHR_stream_consumer_gltexture
+ EGL_StreamConsumerAcquireKHR
+ EGL_StreamConsumerGLTextureExternalKHR
+ EGL_StreamConsumerReleaseKHR
+
+ ; EGL_KHR_swap_buffers_with_damage
+ EGL_SwapBuffersWithDamageKHR
+
+ ; EGL_KHR_wait_sync
+ EGL_WaitSyncKHR
+
+ ; EGL_NV_post_sub_buffer
+ EGL_PostSubBufferNV
+
+ ; EGL_NV_stream_consumer_gltexture_yuv
+ EGL_StreamConsumerGLTextureExternalAttribsNV
diff --git a/gfx/angle/checkout/src/libGLESv2/proc_table_egl.h b/gfx/angle/checkout/src/libGLESv2/proc_table_egl.h
new file mode 100644
index 0000000000..38506e7c4c
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/proc_table_egl.h
@@ -0,0 +1,25 @@
+//
+// Copyright 2017 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.
+//
+// getProcAddress loader table:
+// Mapping from a string entry point name to function address.
+//
+
+#ifndef LIBGLESV2_PROC_TABLE_H_
+#define LIBGLESV2_PROC_TABLE_H_
+
+#include <EGL/egl.h>
+#include <stddef.h>
+#include <utility>
+
+namespace egl
+{
+using ProcEntry = std::pair<const char *, __eglMustCastToProperFunctionPointerType>;
+
+extern ProcEntry g_procTable[];
+extern size_t g_numProcs;
+} // namespace egl
+
+#endif // LIBGLESV2_PROC_TABLE_H_
diff --git a/gfx/angle/checkout/src/libGLESv2/proc_table_egl_autogen.cpp b/gfx/angle/checkout/src/libGLESv2/proc_table_egl_autogen.cpp
new file mode 100644
index 0000000000..3fc0850de4
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/proc_table_egl_autogen.cpp
@@ -0,0 +1,1495 @@
+// GENERATED FILE - DO NOT EDIT.
+// Generated by gen_proc_table.py using data from gl.xml, gl_angle_ext.xml, egl.xml,
+// egl_angle_ext.xml.
+//
+// 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.
+//
+// getProcAddress loader table:
+// Mapping from a string entry point name to function address.
+//
+
+#include "libGLESv2/proc_table_egl.h"
+
+#include "libGLESv2/entry_points_egl.h"
+#include "libGLESv2/entry_points_egl_ext.h"
+#include "libGLESv2/entry_points_gles_1_0_autogen.h"
+#include "libGLESv2/entry_points_gles_2_0_autogen.h"
+#include "libGLESv2/entry_points_gles_3_0_autogen.h"
+#include "libGLESv2/entry_points_gles_3_1_autogen.h"
+#include "libGLESv2/entry_points_gles_ext_autogen.h"
+#include "platform/Platform.h"
+
+#define P(FUNC) reinterpret_cast<__eglMustCastToProperFunctionPointerType>(FUNC)
+
+namespace egl
+{
+ProcEntry g_procTable[] = {
+ {"ANGLEGetDisplayPlatform", P(ANGLEGetDisplayPlatform)},
+ {"ANGLEResetDisplayPlatform", P(ANGLEResetDisplayPlatform)},
+ {"eglBindAPI", P(EGL_BindAPI)},
+ {"eglBindTexImage", P(EGL_BindTexImage)},
+ {"eglChooseConfig", P(EGL_ChooseConfig)},
+ {"eglClientWaitSync", P(EGL_ClientWaitSync)},
+ {"eglClientWaitSyncKHR", P(EGL_ClientWaitSyncKHR)},
+ {"eglCopyBuffers", P(EGL_CopyBuffers)},
+ {"eglCreateContext", P(EGL_CreateContext)},
+ {"eglCreateDeviceANGLE", P(EGL_CreateDeviceANGLE)},
+ {"eglCreateImage", P(EGL_CreateImage)},
+ {"eglCreateImageKHR", P(EGL_CreateImageKHR)},
+ {"eglCreatePbufferFromClientBuffer", P(EGL_CreatePbufferFromClientBuffer)},
+ {"eglCreatePbufferSurface", P(EGL_CreatePbufferSurface)},
+ {"eglCreatePixmapSurface", P(EGL_CreatePixmapSurface)},
+ {"eglCreatePlatformPixmapSurface", P(EGL_CreatePlatformPixmapSurface)},
+ {"eglCreatePlatformPixmapSurfaceEXT", P(EGL_CreatePlatformPixmapSurfaceEXT)},
+ {"eglCreatePlatformWindowSurface", P(EGL_CreatePlatformWindowSurface)},
+ {"eglCreatePlatformWindowSurfaceEXT", P(EGL_CreatePlatformWindowSurfaceEXT)},
+ {"eglCreateStreamKHR", P(EGL_CreateStreamKHR)},
+ {"eglCreateStreamProducerD3DTextureANGLE", P(EGL_CreateStreamProducerD3DTextureANGLE)},
+ {"eglCreateSync", P(EGL_CreateSync)},
+ {"eglCreateSyncKHR", P(EGL_CreateSyncKHR)},
+ {"eglCreateWindowSurface", P(EGL_CreateWindowSurface)},
+ {"eglDebugMessageControlKHR", P(EGL_DebugMessageControlKHR)},
+ {"eglDestroyContext", P(EGL_DestroyContext)},
+ {"eglDestroyImage", P(EGL_DestroyImage)},
+ {"eglDestroyImageKHR", P(EGL_DestroyImageKHR)},
+ {"eglDestroyStreamKHR", P(EGL_DestroyStreamKHR)},
+ {"eglDestroySurface", P(EGL_DestroySurface)},
+ {"eglDestroySync", P(EGL_DestroySync)},
+ {"eglDestroySyncKHR", P(EGL_DestroySyncKHR)},
+ {"eglDupNativeFenceFDANDROID", P(EGL_DupNativeFenceFDANDROID)},
+ {"eglGetCompositorTimingANDROID", P(EGL_GetCompositorTimingANDROID)},
+ {"eglGetCompositorTimingSupportedANDROID", P(EGL_GetCompositorTimingSupportedANDROID)},
+ {"eglGetConfigAttrib", P(EGL_GetConfigAttrib)},
+ {"eglGetConfigs", P(EGL_GetConfigs)},
+ {"eglGetCurrentContext", P(EGL_GetCurrentContext)},
+ {"eglGetCurrentDisplay", P(EGL_GetCurrentDisplay)},
+ {"eglGetCurrentSurface", P(EGL_GetCurrentSurface)},
+ {"eglGetDisplay", P(EGL_GetDisplay)},
+ {"eglGetError", P(EGL_GetError)},
+ {"eglGetFrameTimestampSupportedANDROID", P(EGL_GetFrameTimestampSupportedANDROID)},
+ {"eglGetFrameTimestampsANDROID", P(EGL_GetFrameTimestampsANDROID)},
+ {"eglGetNativeClientBufferANDROID", P(EGL_GetNativeClientBufferANDROID)},
+ {"eglGetNextFrameIdANDROID", P(EGL_GetNextFrameIdANDROID)},
+ {"eglGetPlatformDisplay", P(EGL_GetPlatformDisplay)},
+ {"eglGetPlatformDisplayEXT", P(EGL_GetPlatformDisplayEXT)},
+ {"eglGetProcAddress", P(EGL_GetProcAddress)},
+ {"eglGetSyncAttrib", P(EGL_GetSyncAttrib)},
+ {"eglGetSyncAttribKHR", P(EGL_GetSyncAttribKHR)},
+ {"eglGetSyncValuesCHROMIUM", P(EGL_GetSyncValuesCHROMIUM)},
+ {"eglInitialize", P(EGL_Initialize)},
+ {"eglLabelObjectKHR", P(EGL_LabelObjectKHR)},
+ {"eglMakeCurrent", P(EGL_MakeCurrent)},
+ {"eglPostSubBufferNV", P(EGL_PostSubBufferNV)},
+ {"eglPresentationTimeANDROID", P(EGL_PresentationTimeANDROID)},
+ {"eglProgramCacheGetAttribANGLE", P(EGL_ProgramCacheGetAttribANGLE)},
+ {"eglProgramCachePopulateANGLE", P(EGL_ProgramCachePopulateANGLE)},
+ {"eglProgramCacheQueryANGLE", P(EGL_ProgramCacheQueryANGLE)},
+ {"eglProgramCacheResizeANGLE", P(EGL_ProgramCacheResizeANGLE)},
+ {"eglQueryAPI", P(EGL_QueryAPI)},
+ {"eglQueryContext", P(EGL_QueryContext)},
+ {"eglQueryDebugKHR", P(EGL_QueryDebugKHR)},
+ {"eglQueryDeviceAttribEXT", P(EGL_QueryDeviceAttribEXT)},
+ {"eglQueryDeviceStringEXT", P(EGL_QueryDeviceStringEXT)},
+ {"eglQueryDisplayAttribANGLE", P(EGL_QueryDisplayAttribANGLE)},
+ {"eglQueryDisplayAttribEXT", P(EGL_QueryDisplayAttribEXT)},
+ {"eglQueryStreamKHR", P(EGL_QueryStreamKHR)},
+ {"eglQueryStreamu64KHR", P(EGL_QueryStreamu64KHR)},
+ {"eglQueryString", P(EGL_QueryString)},
+ {"eglQueryStringiANGLE", P(EGL_QueryStringiANGLE)},
+ {"eglQuerySurface", P(EGL_QuerySurface)},
+ {"eglQuerySurfacePointerANGLE", P(EGL_QuerySurfacePointerANGLE)},
+ {"eglReleaseDeviceANGLE", P(EGL_ReleaseDeviceANGLE)},
+ {"eglReleaseTexImage", P(EGL_ReleaseTexImage)},
+ {"eglReleaseThread", P(EGL_ReleaseThread)},
+ {"eglSetBlobCacheFuncsANDROID", P(EGL_SetBlobCacheFuncsANDROID)},
+ {"eglStreamAttribKHR", P(EGL_StreamAttribKHR)},
+ {"eglStreamConsumerAcquireKHR", P(EGL_StreamConsumerAcquireKHR)},
+ {"eglStreamConsumerGLTextureExternalAttribsNV",
+ P(EGL_StreamConsumerGLTextureExternalAttribsNV)},
+ {"eglStreamConsumerGLTextureExternalKHR", P(EGL_StreamConsumerGLTextureExternalKHR)},
+ {"eglStreamConsumerReleaseKHR", P(EGL_StreamConsumerReleaseKHR)},
+ {"eglStreamPostD3DTextureANGLE", P(EGL_StreamPostD3DTextureANGLE)},
+ {"eglSurfaceAttrib", P(EGL_SurfaceAttrib)},
+ {"eglSwapBuffers", P(EGL_SwapBuffers)},
+ {"eglSwapBuffersWithDamageKHR", P(EGL_SwapBuffersWithDamageKHR)},
+ {"eglSwapInterval", P(EGL_SwapInterval)},
+ {"eglTerminate", P(EGL_Terminate)},
+ {"eglWaitClient", P(EGL_WaitClient)},
+ {"eglWaitGL", P(EGL_WaitGL)},
+ {"eglWaitNative", P(EGL_WaitNative)},
+ {"eglWaitSync", P(EGL_WaitSync)},
+ {"eglWaitSyncKHR", P(EGL_WaitSyncKHR)},
+ {"glActiveShaderProgram", P(gl::ActiveShaderProgram)},
+ {"glActiveShaderProgramContextANGLE", P(gl::ActiveShaderProgramContextANGLE)},
+ {"glActiveTexture", P(gl::ActiveTexture)},
+ {"glActiveTextureContextANGLE", P(gl::ActiveTextureContextANGLE)},
+ {"glAlphaFunc", P(gl::AlphaFunc)},
+ {"glAlphaFuncContextANGLE", P(gl::AlphaFuncContextANGLE)},
+ {"glAlphaFuncx", P(gl::AlphaFuncx)},
+ {"glAlphaFuncxContextANGLE", P(gl::AlphaFuncxContextANGLE)},
+ {"glAttachShader", P(gl::AttachShader)},
+ {"glAttachShaderContextANGLE", P(gl::AttachShaderContextANGLE)},
+ {"glBeginQuery", P(gl::BeginQuery)},
+ {"glBeginQueryContextANGLE", P(gl::BeginQueryContextANGLE)},
+ {"glBeginQueryEXT", P(gl::BeginQueryEXT)},
+ {"glBeginQueryEXTContextANGLE", P(gl::BeginQueryEXTContextANGLE)},
+ {"glBeginTransformFeedback", P(gl::BeginTransformFeedback)},
+ {"glBeginTransformFeedbackContextANGLE", P(gl::BeginTransformFeedbackContextANGLE)},
+ {"glBindAttribLocation", P(gl::BindAttribLocation)},
+ {"glBindAttribLocationContextANGLE", P(gl::BindAttribLocationContextANGLE)},
+ {"glBindBuffer", P(gl::BindBuffer)},
+ {"glBindBufferBase", P(gl::BindBufferBase)},
+ {"glBindBufferBaseContextANGLE", P(gl::BindBufferBaseContextANGLE)},
+ {"glBindBufferContextANGLE", P(gl::BindBufferContextANGLE)},
+ {"glBindBufferRange", P(gl::BindBufferRange)},
+ {"glBindBufferRangeContextANGLE", P(gl::BindBufferRangeContextANGLE)},
+ {"glBindFragDataLocationEXT", P(gl::BindFragDataLocationEXT)},
+ {"glBindFragDataLocationEXTContextANGLE", P(gl::BindFragDataLocationEXTContextANGLE)},
+ {"glBindFragDataLocationIndexedEXT", P(gl::BindFragDataLocationIndexedEXT)},
+ {"glBindFragDataLocationIndexedEXTContextANGLE",
+ P(gl::BindFragDataLocationIndexedEXTContextANGLE)},
+ {"glBindFragmentInputLocationCHROMIUM", P(gl::BindFragmentInputLocationCHROMIUM)},
+ {"glBindFragmentInputLocationCHROMIUMContextANGLE",
+ P(gl::BindFragmentInputLocationCHROMIUMContextANGLE)},
+ {"glBindFramebuffer", P(gl::BindFramebuffer)},
+ {"glBindFramebufferContextANGLE", P(gl::BindFramebufferContextANGLE)},
+ {"glBindFramebufferOES", P(gl::BindFramebufferOES)},
+ {"glBindFramebufferOESContextANGLE", P(gl::BindFramebufferOESContextANGLE)},
+ {"glBindImageTexture", P(gl::BindImageTexture)},
+ {"glBindImageTextureContextANGLE", P(gl::BindImageTextureContextANGLE)},
+ {"glBindProgramPipeline", P(gl::BindProgramPipeline)},
+ {"glBindProgramPipelineContextANGLE", P(gl::BindProgramPipelineContextANGLE)},
+ {"glBindRenderbuffer", P(gl::BindRenderbuffer)},
+ {"glBindRenderbufferContextANGLE", P(gl::BindRenderbufferContextANGLE)},
+ {"glBindRenderbufferOES", P(gl::BindRenderbufferOES)},
+ {"glBindRenderbufferOESContextANGLE", P(gl::BindRenderbufferOESContextANGLE)},
+ {"glBindSampler", P(gl::BindSampler)},
+ {"glBindSamplerContextANGLE", P(gl::BindSamplerContextANGLE)},
+ {"glBindTexture", P(gl::BindTexture)},
+ {"glBindTextureContextANGLE", P(gl::BindTextureContextANGLE)},
+ {"glBindTransformFeedback", P(gl::BindTransformFeedback)},
+ {"glBindTransformFeedbackContextANGLE", P(gl::BindTransformFeedbackContextANGLE)},
+ {"glBindUniformLocationCHROMIUM", P(gl::BindUniformLocationCHROMIUM)},
+ {"glBindUniformLocationCHROMIUMContextANGLE", P(gl::BindUniformLocationCHROMIUMContextANGLE)},
+ {"glBindVertexArray", P(gl::BindVertexArray)},
+ {"glBindVertexArrayContextANGLE", P(gl::BindVertexArrayContextANGLE)},
+ {"glBindVertexArrayOES", P(gl::BindVertexArrayOES)},
+ {"glBindVertexArrayOESContextANGLE", P(gl::BindVertexArrayOESContextANGLE)},
+ {"glBindVertexBuffer", P(gl::BindVertexBuffer)},
+ {"glBindVertexBufferContextANGLE", P(gl::BindVertexBufferContextANGLE)},
+ {"glBlendColor", P(gl::BlendColor)},
+ {"glBlendColorContextANGLE", P(gl::BlendColorContextANGLE)},
+ {"glBlendEquation", P(gl::BlendEquation)},
+ {"glBlendEquationContextANGLE", P(gl::BlendEquationContextANGLE)},
+ {"glBlendEquationSeparate", P(gl::BlendEquationSeparate)},
+ {"glBlendEquationSeparateContextANGLE", P(gl::BlendEquationSeparateContextANGLE)},
+ {"glBlendFunc", P(gl::BlendFunc)},
+ {"glBlendFuncContextANGLE", P(gl::BlendFuncContextANGLE)},
+ {"glBlendFuncSeparate", P(gl::BlendFuncSeparate)},
+ {"glBlendFuncSeparateContextANGLE", P(gl::BlendFuncSeparateContextANGLE)},
+ {"glBlitFramebuffer", P(gl::BlitFramebuffer)},
+ {"glBlitFramebufferANGLE", P(gl::BlitFramebufferANGLE)},
+ {"glBlitFramebufferANGLEContextANGLE", P(gl::BlitFramebufferANGLEContextANGLE)},
+ {"glBlitFramebufferContextANGLE", P(gl::BlitFramebufferContextANGLE)},
+ {"glBufferData", P(gl::BufferData)},
+ {"glBufferDataContextANGLE", P(gl::BufferDataContextANGLE)},
+ {"glBufferStorageMemEXT", P(gl::BufferStorageMemEXT)},
+ {"glBufferStorageMemEXTContextANGLE", P(gl::BufferStorageMemEXTContextANGLE)},
+ {"glBufferSubData", P(gl::BufferSubData)},
+ {"glBufferSubDataContextANGLE", P(gl::BufferSubDataContextANGLE)},
+ {"glCheckFramebufferStatus", P(gl::CheckFramebufferStatus)},
+ {"glCheckFramebufferStatusContextANGLE", P(gl::CheckFramebufferStatusContextANGLE)},
+ {"glCheckFramebufferStatusOES", P(gl::CheckFramebufferStatusOES)},
+ {"glCheckFramebufferStatusOESContextANGLE", P(gl::CheckFramebufferStatusOESContextANGLE)},
+ {"glClear", P(gl::Clear)},
+ {"glClearBufferfi", P(gl::ClearBufferfi)},
+ {"glClearBufferfiContextANGLE", P(gl::ClearBufferfiContextANGLE)},
+ {"glClearBufferfv", P(gl::ClearBufferfv)},
+ {"glClearBufferfvContextANGLE", P(gl::ClearBufferfvContextANGLE)},
+ {"glClearBufferiv", P(gl::ClearBufferiv)},
+ {"glClearBufferivContextANGLE", P(gl::ClearBufferivContextANGLE)},
+ {"glClearBufferuiv", P(gl::ClearBufferuiv)},
+ {"glClearBufferuivContextANGLE", P(gl::ClearBufferuivContextANGLE)},
+ {"glClearColor", P(gl::ClearColor)},
+ {"glClearColorContextANGLE", P(gl::ClearColorContextANGLE)},
+ {"glClearColorx", P(gl::ClearColorx)},
+ {"glClearColorxContextANGLE", P(gl::ClearColorxContextANGLE)},
+ {"glClearContextANGLE", P(gl::ClearContextANGLE)},
+ {"glClearDepthf", P(gl::ClearDepthf)},
+ {"glClearDepthfContextANGLE", P(gl::ClearDepthfContextANGLE)},
+ {"glClearDepthx", P(gl::ClearDepthx)},
+ {"glClearDepthxContextANGLE", P(gl::ClearDepthxContextANGLE)},
+ {"glClearStencil", P(gl::ClearStencil)},
+ {"glClearStencilContextANGLE", P(gl::ClearStencilContextANGLE)},
+ {"glClientActiveTexture", P(gl::ClientActiveTexture)},
+ {"glClientActiveTextureContextANGLE", P(gl::ClientActiveTextureContextANGLE)},
+ {"glClientWaitSync", P(gl::ClientWaitSync)},
+ {"glClientWaitSyncContextANGLE", P(gl::ClientWaitSyncContextANGLE)},
+ {"glClipPlanef", P(gl::ClipPlanef)},
+ {"glClipPlanefContextANGLE", P(gl::ClipPlanefContextANGLE)},
+ {"glClipPlanex", P(gl::ClipPlanex)},
+ {"glClipPlanexContextANGLE", P(gl::ClipPlanexContextANGLE)},
+ {"glColor4f", P(gl::Color4f)},
+ {"glColor4fContextANGLE", P(gl::Color4fContextANGLE)},
+ {"glColor4ub", P(gl::Color4ub)},
+ {"glColor4ubContextANGLE", P(gl::Color4ubContextANGLE)},
+ {"glColor4x", P(gl::Color4x)},
+ {"glColor4xContextANGLE", P(gl::Color4xContextANGLE)},
+ {"glColorMask", P(gl::ColorMask)},
+ {"glColorMaskContextANGLE", P(gl::ColorMaskContextANGLE)},
+ {"glColorPointer", P(gl::ColorPointer)},
+ {"glColorPointerContextANGLE", P(gl::ColorPointerContextANGLE)},
+ {"glCompileShader", P(gl::CompileShader)},
+ {"glCompileShaderContextANGLE", P(gl::CompileShaderContextANGLE)},
+ {"glCompressedCopyTextureCHROMIUM", P(gl::CompressedCopyTextureCHROMIUM)},
+ {"glCompressedCopyTextureCHROMIUMContextANGLE",
+ P(gl::CompressedCopyTextureCHROMIUMContextANGLE)},
+ {"glCompressedTexImage2D", P(gl::CompressedTexImage2D)},
+ {"glCompressedTexImage2DContextANGLE", P(gl::CompressedTexImage2DContextANGLE)},
+ {"glCompressedTexImage2DRobustANGLE", P(gl::CompressedTexImage2DRobustANGLE)},
+ {"glCompressedTexImage2DRobustANGLEContextANGLE",
+ P(gl::CompressedTexImage2DRobustANGLEContextANGLE)},
+ {"glCompressedTexImage3D", P(gl::CompressedTexImage3D)},
+ {"glCompressedTexImage3DContextANGLE", P(gl::CompressedTexImage3DContextANGLE)},
+ {"glCompressedTexImage3DOES", P(gl::CompressedTexImage3DOES)},
+ {"glCompressedTexImage3DOESContextANGLE", P(gl::CompressedTexImage3DOESContextANGLE)},
+ {"glCompressedTexImage3DRobustANGLE", P(gl::CompressedTexImage3DRobustANGLE)},
+ {"glCompressedTexImage3DRobustANGLEContextANGLE",
+ P(gl::CompressedTexImage3DRobustANGLEContextANGLE)},
+ {"glCompressedTexSubImage2D", P(gl::CompressedTexSubImage2D)},
+ {"glCompressedTexSubImage2DContextANGLE", P(gl::CompressedTexSubImage2DContextANGLE)},
+ {"glCompressedTexSubImage2DRobustANGLE", P(gl::CompressedTexSubImage2DRobustANGLE)},
+ {"glCompressedTexSubImage2DRobustANGLEContextANGLE",
+ P(gl::CompressedTexSubImage2DRobustANGLEContextANGLE)},
+ {"glCompressedTexSubImage3D", P(gl::CompressedTexSubImage3D)},
+ {"glCompressedTexSubImage3DContextANGLE", P(gl::CompressedTexSubImage3DContextANGLE)},
+ {"glCompressedTexSubImage3DOES", P(gl::CompressedTexSubImage3DOES)},
+ {"glCompressedTexSubImage3DOESContextANGLE", P(gl::CompressedTexSubImage3DOESContextANGLE)},
+ {"glCompressedTexSubImage3DRobustANGLE", P(gl::CompressedTexSubImage3DRobustANGLE)},
+ {"glCompressedTexSubImage3DRobustANGLEContextANGLE",
+ P(gl::CompressedTexSubImage3DRobustANGLEContextANGLE)},
+ {"glCopyBufferSubData", P(gl::CopyBufferSubData)},
+ {"glCopyBufferSubDataContextANGLE", P(gl::CopyBufferSubDataContextANGLE)},
+ {"glCopySubTexture3DANGLE", P(gl::CopySubTexture3DANGLE)},
+ {"glCopySubTexture3DANGLEContextANGLE", P(gl::CopySubTexture3DANGLEContextANGLE)},
+ {"glCopySubTextureCHROMIUM", P(gl::CopySubTextureCHROMIUM)},
+ {"glCopySubTextureCHROMIUMContextANGLE", P(gl::CopySubTextureCHROMIUMContextANGLE)},
+ {"glCopyTexImage2D", P(gl::CopyTexImage2D)},
+ {"glCopyTexImage2DContextANGLE", P(gl::CopyTexImage2DContextANGLE)},
+ {"glCopyTexSubImage2D", P(gl::CopyTexSubImage2D)},
+ {"glCopyTexSubImage2DContextANGLE", P(gl::CopyTexSubImage2DContextANGLE)},
+ {"glCopyTexSubImage3D", P(gl::CopyTexSubImage3D)},
+ {"glCopyTexSubImage3DContextANGLE", P(gl::CopyTexSubImage3DContextANGLE)},
+ {"glCopyTexSubImage3DOES", P(gl::CopyTexSubImage3DOES)},
+ {"glCopyTexSubImage3DOESContextANGLE", P(gl::CopyTexSubImage3DOESContextANGLE)},
+ {"glCopyTexture3DANGLE", P(gl::CopyTexture3DANGLE)},
+ {"glCopyTexture3DANGLEContextANGLE", P(gl::CopyTexture3DANGLEContextANGLE)},
+ {"glCopyTextureCHROMIUM", P(gl::CopyTextureCHROMIUM)},
+ {"glCopyTextureCHROMIUMContextANGLE", P(gl::CopyTextureCHROMIUMContextANGLE)},
+ {"glCoverFillPathCHROMIUM", P(gl::CoverFillPathCHROMIUM)},
+ {"glCoverFillPathCHROMIUMContextANGLE", P(gl::CoverFillPathCHROMIUMContextANGLE)},
+ {"glCoverFillPathInstancedCHROMIUM", P(gl::CoverFillPathInstancedCHROMIUM)},
+ {"glCoverFillPathInstancedCHROMIUMContextANGLE",
+ P(gl::CoverFillPathInstancedCHROMIUMContextANGLE)},
+ {"glCoverStrokePathCHROMIUM", P(gl::CoverStrokePathCHROMIUM)},
+ {"glCoverStrokePathCHROMIUMContextANGLE", P(gl::CoverStrokePathCHROMIUMContextANGLE)},
+ {"glCoverStrokePathInstancedCHROMIUM", P(gl::CoverStrokePathInstancedCHROMIUM)},
+ {"glCoverStrokePathInstancedCHROMIUMContextANGLE",
+ P(gl::CoverStrokePathInstancedCHROMIUMContextANGLE)},
+ {"glCoverageModulationCHROMIUM", P(gl::CoverageModulationCHROMIUM)},
+ {"glCoverageModulationCHROMIUMContextANGLE", P(gl::CoverageModulationCHROMIUMContextANGLE)},
+ {"glCreateMemoryObjectsEXT", P(gl::CreateMemoryObjectsEXT)},
+ {"glCreateMemoryObjectsEXTContextANGLE", P(gl::CreateMemoryObjectsEXTContextANGLE)},
+ {"glCreateProgram", P(gl::CreateProgram)},
+ {"glCreateProgramContextANGLE", P(gl::CreateProgramContextANGLE)},
+ {"glCreateShader", P(gl::CreateShader)},
+ {"glCreateShaderContextANGLE", P(gl::CreateShaderContextANGLE)},
+ {"glCreateShaderProgramv", P(gl::CreateShaderProgramv)},
+ {"glCreateShaderProgramvContextANGLE", P(gl::CreateShaderProgramvContextANGLE)},
+ {"glCullFace", P(gl::CullFace)},
+ {"glCullFaceContextANGLE", P(gl::CullFaceContextANGLE)},
+ {"glCurrentPaletteMatrixOES", P(gl::CurrentPaletteMatrixOES)},
+ {"glCurrentPaletteMatrixOESContextANGLE", P(gl::CurrentPaletteMatrixOESContextANGLE)},
+ {"glDebugMessageCallbackKHR", P(gl::DebugMessageCallbackKHR)},
+ {"glDebugMessageCallbackKHRContextANGLE", P(gl::DebugMessageCallbackKHRContextANGLE)},
+ {"glDebugMessageControlKHR", P(gl::DebugMessageControlKHR)},
+ {"glDebugMessageControlKHRContextANGLE", P(gl::DebugMessageControlKHRContextANGLE)},
+ {"glDebugMessageInsertKHR", P(gl::DebugMessageInsertKHR)},
+ {"glDebugMessageInsertKHRContextANGLE", P(gl::DebugMessageInsertKHRContextANGLE)},
+ {"glDeleteBuffers", P(gl::DeleteBuffers)},
+ {"glDeleteBuffersContextANGLE", P(gl::DeleteBuffersContextANGLE)},
+ {"glDeleteFencesNV", P(gl::DeleteFencesNV)},
+ {"glDeleteFencesNVContextANGLE", P(gl::DeleteFencesNVContextANGLE)},
+ {"glDeleteFramebuffers", P(gl::DeleteFramebuffers)},
+ {"glDeleteFramebuffersContextANGLE", P(gl::DeleteFramebuffersContextANGLE)},
+ {"glDeleteFramebuffersOES", P(gl::DeleteFramebuffersOES)},
+ {"glDeleteFramebuffersOESContextANGLE", P(gl::DeleteFramebuffersOESContextANGLE)},
+ {"glDeleteMemoryObjectsEXT", P(gl::DeleteMemoryObjectsEXT)},
+ {"glDeleteMemoryObjectsEXTContextANGLE", P(gl::DeleteMemoryObjectsEXTContextANGLE)},
+ {"glDeletePathsCHROMIUM", P(gl::DeletePathsCHROMIUM)},
+ {"glDeletePathsCHROMIUMContextANGLE", P(gl::DeletePathsCHROMIUMContextANGLE)},
+ {"glDeleteProgram", P(gl::DeleteProgram)},
+ {"glDeleteProgramContextANGLE", P(gl::DeleteProgramContextANGLE)},
+ {"glDeleteProgramPipelines", P(gl::DeleteProgramPipelines)},
+ {"glDeleteProgramPipelinesContextANGLE", P(gl::DeleteProgramPipelinesContextANGLE)},
+ {"glDeleteQueries", P(gl::DeleteQueries)},
+ {"glDeleteQueriesContextANGLE", P(gl::DeleteQueriesContextANGLE)},
+ {"glDeleteQueriesEXT", P(gl::DeleteQueriesEXT)},
+ {"glDeleteQueriesEXTContextANGLE", P(gl::DeleteQueriesEXTContextANGLE)},
+ {"glDeleteRenderbuffers", P(gl::DeleteRenderbuffers)},
+ {"glDeleteRenderbuffersContextANGLE", P(gl::DeleteRenderbuffersContextANGLE)},
+ {"glDeleteRenderbuffersOES", P(gl::DeleteRenderbuffersOES)},
+ {"glDeleteRenderbuffersOESContextANGLE", P(gl::DeleteRenderbuffersOESContextANGLE)},
+ {"glDeleteSamplers", P(gl::DeleteSamplers)},
+ {"glDeleteSamplersContextANGLE", P(gl::DeleteSamplersContextANGLE)},
+ {"glDeleteSemaphoresEXT", P(gl::DeleteSemaphoresEXT)},
+ {"glDeleteSemaphoresEXTContextANGLE", P(gl::DeleteSemaphoresEXTContextANGLE)},
+ {"glDeleteShader", P(gl::DeleteShader)},
+ {"glDeleteShaderContextANGLE", P(gl::DeleteShaderContextANGLE)},
+ {"glDeleteSync", P(gl::DeleteSync)},
+ {"glDeleteSyncContextANGLE", P(gl::DeleteSyncContextANGLE)},
+ {"glDeleteTextures", P(gl::DeleteTextures)},
+ {"glDeleteTexturesContextANGLE", P(gl::DeleteTexturesContextANGLE)},
+ {"glDeleteTransformFeedbacks", P(gl::DeleteTransformFeedbacks)},
+ {"glDeleteTransformFeedbacksContextANGLE", P(gl::DeleteTransformFeedbacksContextANGLE)},
+ {"glDeleteVertexArrays", P(gl::DeleteVertexArrays)},
+ {"glDeleteVertexArraysContextANGLE", P(gl::DeleteVertexArraysContextANGLE)},
+ {"glDeleteVertexArraysOES", P(gl::DeleteVertexArraysOES)},
+ {"glDeleteVertexArraysOESContextANGLE", P(gl::DeleteVertexArraysOESContextANGLE)},
+ {"glDepthFunc", P(gl::DepthFunc)},
+ {"glDepthFuncContextANGLE", P(gl::DepthFuncContextANGLE)},
+ {"glDepthMask", P(gl::DepthMask)},
+ {"glDepthMaskContextANGLE", P(gl::DepthMaskContextANGLE)},
+ {"glDepthRangef", P(gl::DepthRangef)},
+ {"glDepthRangefContextANGLE", P(gl::DepthRangefContextANGLE)},
+ {"glDepthRangex", P(gl::DepthRangex)},
+ {"glDepthRangexContextANGLE", P(gl::DepthRangexContextANGLE)},
+ {"glDetachShader", P(gl::DetachShader)},
+ {"glDetachShaderContextANGLE", P(gl::DetachShaderContextANGLE)},
+ {"glDisable", P(gl::Disable)},
+ {"glDisableClientState", P(gl::DisableClientState)},
+ {"glDisableClientStateContextANGLE", P(gl::DisableClientStateContextANGLE)},
+ {"glDisableContextANGLE", P(gl::DisableContextANGLE)},
+ {"glDisableVertexAttribArray", P(gl::DisableVertexAttribArray)},
+ {"glDisableVertexAttribArrayContextANGLE", P(gl::DisableVertexAttribArrayContextANGLE)},
+ {"glDiscardFramebufferEXT", P(gl::DiscardFramebufferEXT)},
+ {"glDiscardFramebufferEXTContextANGLE", P(gl::DiscardFramebufferEXTContextANGLE)},
+ {"glDispatchCompute", P(gl::DispatchCompute)},
+ {"glDispatchComputeContextANGLE", P(gl::DispatchComputeContextANGLE)},
+ {"glDispatchComputeIndirect", P(gl::DispatchComputeIndirect)},
+ {"glDispatchComputeIndirectContextANGLE", P(gl::DispatchComputeIndirectContextANGLE)},
+ {"glDrawArrays", P(gl::DrawArrays)},
+ {"glDrawArraysContextANGLE", P(gl::DrawArraysContextANGLE)},
+ {"glDrawArraysIndirect", P(gl::DrawArraysIndirect)},
+ {"glDrawArraysIndirectContextANGLE", P(gl::DrawArraysIndirectContextANGLE)},
+ {"glDrawArraysInstanced", P(gl::DrawArraysInstanced)},
+ {"glDrawArraysInstancedANGLE", P(gl::DrawArraysInstancedANGLE)},
+ {"glDrawArraysInstancedANGLEContextANGLE", P(gl::DrawArraysInstancedANGLEContextANGLE)},
+ {"glDrawArraysInstancedContextANGLE", P(gl::DrawArraysInstancedContextANGLE)},
+ {"glDrawArraysInstancedEXT", P(gl::DrawArraysInstancedEXT)},
+ {"glDrawArraysInstancedEXTContextANGLE", P(gl::DrawArraysInstancedEXTContextANGLE)},
+ {"glDrawBuffers", P(gl::DrawBuffers)},
+ {"glDrawBuffersContextANGLE", P(gl::DrawBuffersContextANGLE)},
+ {"glDrawBuffersEXT", P(gl::DrawBuffersEXT)},
+ {"glDrawBuffersEXTContextANGLE", P(gl::DrawBuffersEXTContextANGLE)},
+ {"glDrawElements", P(gl::DrawElements)},
+ {"glDrawElementsContextANGLE", P(gl::DrawElementsContextANGLE)},
+ {"glDrawElementsIndirect", P(gl::DrawElementsIndirect)},
+ {"glDrawElementsIndirectContextANGLE", P(gl::DrawElementsIndirectContextANGLE)},
+ {"glDrawElementsInstanced", P(gl::DrawElementsInstanced)},
+ {"glDrawElementsInstancedANGLE", P(gl::DrawElementsInstancedANGLE)},
+ {"glDrawElementsInstancedANGLEContextANGLE", P(gl::DrawElementsInstancedANGLEContextANGLE)},
+ {"glDrawElementsInstancedContextANGLE", P(gl::DrawElementsInstancedContextANGLE)},
+ {"glDrawElementsInstancedEXT", P(gl::DrawElementsInstancedEXT)},
+ {"glDrawElementsInstancedEXTContextANGLE", P(gl::DrawElementsInstancedEXTContextANGLE)},
+ {"glDrawRangeElements", P(gl::DrawRangeElements)},
+ {"glDrawRangeElementsContextANGLE", P(gl::DrawRangeElementsContextANGLE)},
+ {"glDrawTexfOES", P(gl::DrawTexfOES)},
+ {"glDrawTexfOESContextANGLE", P(gl::DrawTexfOESContextANGLE)},
+ {"glDrawTexfvOES", P(gl::DrawTexfvOES)},
+ {"glDrawTexfvOESContextANGLE", P(gl::DrawTexfvOESContextANGLE)},
+ {"glDrawTexiOES", P(gl::DrawTexiOES)},
+ {"glDrawTexiOESContextANGLE", P(gl::DrawTexiOESContextANGLE)},
+ {"glDrawTexivOES", P(gl::DrawTexivOES)},
+ {"glDrawTexivOESContextANGLE", P(gl::DrawTexivOESContextANGLE)},
+ {"glDrawTexsOES", P(gl::DrawTexsOES)},
+ {"glDrawTexsOESContextANGLE", P(gl::DrawTexsOESContextANGLE)},
+ {"glDrawTexsvOES", P(gl::DrawTexsvOES)},
+ {"glDrawTexsvOESContextANGLE", P(gl::DrawTexsvOESContextANGLE)},
+ {"glDrawTexxOES", P(gl::DrawTexxOES)},
+ {"glDrawTexxOESContextANGLE", P(gl::DrawTexxOESContextANGLE)},
+ {"glDrawTexxvOES", P(gl::DrawTexxvOES)},
+ {"glDrawTexxvOESContextANGLE", P(gl::DrawTexxvOESContextANGLE)},
+ {"glEGLImageTargetRenderbufferStorageOES", P(gl::EGLImageTargetRenderbufferStorageOES)},
+ {"glEGLImageTargetRenderbufferStorageOESContextANGLE",
+ P(gl::EGLImageTargetRenderbufferStorageOESContextANGLE)},
+ {"glEGLImageTargetTexture2DOES", P(gl::EGLImageTargetTexture2DOES)},
+ {"glEGLImageTargetTexture2DOESContextANGLE", P(gl::EGLImageTargetTexture2DOESContextANGLE)},
+ {"glEnable", P(gl::Enable)},
+ {"glEnableClientState", P(gl::EnableClientState)},
+ {"glEnableClientStateContextANGLE", P(gl::EnableClientStateContextANGLE)},
+ {"glEnableContextANGLE", P(gl::EnableContextANGLE)},
+ {"glEnableVertexAttribArray", P(gl::EnableVertexAttribArray)},
+ {"glEnableVertexAttribArrayContextANGLE", P(gl::EnableVertexAttribArrayContextANGLE)},
+ {"glEndQuery", P(gl::EndQuery)},
+ {"glEndQueryContextANGLE", P(gl::EndQueryContextANGLE)},
+ {"glEndQueryEXT", P(gl::EndQueryEXT)},
+ {"glEndQueryEXTContextANGLE", P(gl::EndQueryEXTContextANGLE)},
+ {"glEndTransformFeedback", P(gl::EndTransformFeedback)},
+ {"glEndTransformFeedbackContextANGLE", P(gl::EndTransformFeedbackContextANGLE)},
+ {"glFenceSync", P(gl::FenceSync)},
+ {"glFenceSyncContextANGLE", P(gl::FenceSyncContextANGLE)},
+ {"glFinish", P(gl::Finish)},
+ {"glFinishContextANGLE", P(gl::FinishContextANGLE)},
+ {"glFinishFenceNV", P(gl::FinishFenceNV)},
+ {"glFinishFenceNVContextANGLE", P(gl::FinishFenceNVContextANGLE)},
+ {"glFlush", P(gl::Flush)},
+ {"glFlushContextANGLE", P(gl::FlushContextANGLE)},
+ {"glFlushMappedBufferRange", P(gl::FlushMappedBufferRange)},
+ {"glFlushMappedBufferRangeContextANGLE", P(gl::FlushMappedBufferRangeContextANGLE)},
+ {"glFlushMappedBufferRangeEXT", P(gl::FlushMappedBufferRangeEXT)},
+ {"glFlushMappedBufferRangeEXTContextANGLE", P(gl::FlushMappedBufferRangeEXTContextANGLE)},
+ {"glFogf", P(gl::Fogf)},
+ {"glFogfContextANGLE", P(gl::FogfContextANGLE)},
+ {"glFogfv", P(gl::Fogfv)},
+ {"glFogfvContextANGLE", P(gl::FogfvContextANGLE)},
+ {"glFogx", P(gl::Fogx)},
+ {"glFogxContextANGLE", P(gl::FogxContextANGLE)},
+ {"glFogxv", P(gl::Fogxv)},
+ {"glFogxvContextANGLE", P(gl::FogxvContextANGLE)},
+ {"glFramebufferParameteri", P(gl::FramebufferParameteri)},
+ {"glFramebufferParameteriContextANGLE", P(gl::FramebufferParameteriContextANGLE)},
+ {"glFramebufferRenderbuffer", P(gl::FramebufferRenderbuffer)},
+ {"glFramebufferRenderbufferContextANGLE", P(gl::FramebufferRenderbufferContextANGLE)},
+ {"glFramebufferRenderbufferOES", P(gl::FramebufferRenderbufferOES)},
+ {"glFramebufferRenderbufferOESContextANGLE", P(gl::FramebufferRenderbufferOESContextANGLE)},
+ {"glFramebufferTexture2D", P(gl::FramebufferTexture2D)},
+ {"glFramebufferTexture2DContextANGLE", P(gl::FramebufferTexture2DContextANGLE)},
+ {"glFramebufferTexture2DOES", P(gl::FramebufferTexture2DOES)},
+ {"glFramebufferTexture2DOESContextANGLE", P(gl::FramebufferTexture2DOESContextANGLE)},
+ {"glFramebufferTexture3DOES", P(gl::FramebufferTexture3DOES)},
+ {"glFramebufferTexture3DOESContextANGLE", P(gl::FramebufferTexture3DOESContextANGLE)},
+ {"glFramebufferTextureEXT", P(gl::FramebufferTextureEXT)},
+ {"glFramebufferTextureEXTContextANGLE", P(gl::FramebufferTextureEXTContextANGLE)},
+ {"glFramebufferTextureLayer", P(gl::FramebufferTextureLayer)},
+ {"glFramebufferTextureLayerContextANGLE", P(gl::FramebufferTextureLayerContextANGLE)},
+ {"glFramebufferTextureMultiviewOVR", P(gl::FramebufferTextureMultiviewOVR)},
+ {"glFramebufferTextureMultiviewOVRContextANGLE",
+ P(gl::FramebufferTextureMultiviewOVRContextANGLE)},
+ {"glFrontFace", P(gl::FrontFace)},
+ {"glFrontFaceContextANGLE", P(gl::FrontFaceContextANGLE)},
+ {"glFrustumf", P(gl::Frustumf)},
+ {"glFrustumfContextANGLE", P(gl::FrustumfContextANGLE)},
+ {"glFrustumx", P(gl::Frustumx)},
+ {"glFrustumxContextANGLE", P(gl::FrustumxContextANGLE)},
+ {"glGenBuffers", P(gl::GenBuffers)},
+ {"glGenBuffersContextANGLE", P(gl::GenBuffersContextANGLE)},
+ {"glGenFencesNV", P(gl::GenFencesNV)},
+ {"glGenFencesNVContextANGLE", P(gl::GenFencesNVContextANGLE)},
+ {"glGenFramebuffers", P(gl::GenFramebuffers)},
+ {"glGenFramebuffersContextANGLE", P(gl::GenFramebuffersContextANGLE)},
+ {"glGenFramebuffersOES", P(gl::GenFramebuffersOES)},
+ {"glGenFramebuffersOESContextANGLE", P(gl::GenFramebuffersOESContextANGLE)},
+ {"glGenPathsCHROMIUM", P(gl::GenPathsCHROMIUM)},
+ {"glGenPathsCHROMIUMContextANGLE", P(gl::GenPathsCHROMIUMContextANGLE)},
+ {"glGenProgramPipelines", P(gl::GenProgramPipelines)},
+ {"glGenProgramPipelinesContextANGLE", P(gl::GenProgramPipelinesContextANGLE)},
+ {"glGenQueries", P(gl::GenQueries)},
+ {"glGenQueriesContextANGLE", P(gl::GenQueriesContextANGLE)},
+ {"glGenQueriesEXT", P(gl::GenQueriesEXT)},
+ {"glGenQueriesEXTContextANGLE", P(gl::GenQueriesEXTContextANGLE)},
+ {"glGenRenderbuffers", P(gl::GenRenderbuffers)},
+ {"glGenRenderbuffersContextANGLE", P(gl::GenRenderbuffersContextANGLE)},
+ {"glGenRenderbuffersOES", P(gl::GenRenderbuffersOES)},
+ {"glGenRenderbuffersOESContextANGLE", P(gl::GenRenderbuffersOESContextANGLE)},
+ {"glGenSamplers", P(gl::GenSamplers)},
+ {"glGenSamplersContextANGLE", P(gl::GenSamplersContextANGLE)},
+ {"glGenSemaphoresEXT", P(gl::GenSemaphoresEXT)},
+ {"glGenSemaphoresEXTContextANGLE", P(gl::GenSemaphoresEXTContextANGLE)},
+ {"glGenTextures", P(gl::GenTextures)},
+ {"glGenTexturesContextANGLE", P(gl::GenTexturesContextANGLE)},
+ {"glGenTransformFeedbacks", P(gl::GenTransformFeedbacks)},
+ {"glGenTransformFeedbacksContextANGLE", P(gl::GenTransformFeedbacksContextANGLE)},
+ {"glGenVertexArrays", P(gl::GenVertexArrays)},
+ {"glGenVertexArraysContextANGLE", P(gl::GenVertexArraysContextANGLE)},
+ {"glGenVertexArraysOES", P(gl::GenVertexArraysOES)},
+ {"glGenVertexArraysOESContextANGLE", P(gl::GenVertexArraysOESContextANGLE)},
+ {"glGenerateMipmap", P(gl::GenerateMipmap)},
+ {"glGenerateMipmapContextANGLE", P(gl::GenerateMipmapContextANGLE)},
+ {"glGenerateMipmapOES", P(gl::GenerateMipmapOES)},
+ {"glGenerateMipmapOESContextANGLE", P(gl::GenerateMipmapOESContextANGLE)},
+ {"glGetActiveAttrib", P(gl::GetActiveAttrib)},
+ {"glGetActiveAttribContextANGLE", P(gl::GetActiveAttribContextANGLE)},
+ {"glGetActiveUniform", P(gl::GetActiveUniform)},
+ {"glGetActiveUniformBlockName", P(gl::GetActiveUniformBlockName)},
+ {"glGetActiveUniformBlockNameContextANGLE", P(gl::GetActiveUniformBlockNameContextANGLE)},
+ {"glGetActiveUniformBlockiv", P(gl::GetActiveUniformBlockiv)},
+ {"glGetActiveUniformBlockivContextANGLE", P(gl::GetActiveUniformBlockivContextANGLE)},
+ {"glGetActiveUniformBlockivRobustANGLE", P(gl::GetActiveUniformBlockivRobustANGLE)},
+ {"glGetActiveUniformBlockivRobustANGLEContextANGLE",
+ P(gl::GetActiveUniformBlockivRobustANGLEContextANGLE)},
+ {"glGetActiveUniformContextANGLE", P(gl::GetActiveUniformContextANGLE)},
+ {"glGetActiveUniformsiv", P(gl::GetActiveUniformsiv)},
+ {"glGetActiveUniformsivContextANGLE", P(gl::GetActiveUniformsivContextANGLE)},
+ {"glGetAttachedShaders", P(gl::GetAttachedShaders)},
+ {"glGetAttachedShadersContextANGLE", P(gl::GetAttachedShadersContextANGLE)},
+ {"glGetAttribLocation", P(gl::GetAttribLocation)},
+ {"glGetAttribLocationContextANGLE", P(gl::GetAttribLocationContextANGLE)},
+ {"glGetBooleani_v", P(gl::GetBooleani_v)},
+ {"glGetBooleani_vContextANGLE", P(gl::GetBooleani_vContextANGLE)},
+ {"glGetBooleani_vRobustANGLE", P(gl::GetBooleani_vRobustANGLE)},
+ {"glGetBooleani_vRobustANGLEContextANGLE", P(gl::GetBooleani_vRobustANGLEContextANGLE)},
+ {"glGetBooleanv", P(gl::GetBooleanv)},
+ {"glGetBooleanvContextANGLE", P(gl::GetBooleanvContextANGLE)},
+ {"glGetBooleanvRobustANGLE", P(gl::GetBooleanvRobustANGLE)},
+ {"glGetBooleanvRobustANGLEContextANGLE", P(gl::GetBooleanvRobustANGLEContextANGLE)},
+ {"glGetBufferParameteri64v", P(gl::GetBufferParameteri64v)},
+ {"glGetBufferParameteri64vContextANGLE", P(gl::GetBufferParameteri64vContextANGLE)},
+ {"glGetBufferParameteri64vRobustANGLE", P(gl::GetBufferParameteri64vRobustANGLE)},
+ {"glGetBufferParameteri64vRobustANGLEContextANGLE",
+ P(gl::GetBufferParameteri64vRobustANGLEContextANGLE)},
+ {"glGetBufferParameteriv", P(gl::GetBufferParameteriv)},
+ {"glGetBufferParameterivContextANGLE", P(gl::GetBufferParameterivContextANGLE)},
+ {"glGetBufferParameterivRobustANGLE", P(gl::GetBufferParameterivRobustANGLE)},
+ {"glGetBufferParameterivRobustANGLEContextANGLE",
+ P(gl::GetBufferParameterivRobustANGLEContextANGLE)},
+ {"glGetBufferPointerv", P(gl::GetBufferPointerv)},
+ {"glGetBufferPointervContextANGLE", P(gl::GetBufferPointervContextANGLE)},
+ {"glGetBufferPointervOES", P(gl::GetBufferPointervOES)},
+ {"glGetBufferPointervOESContextANGLE", P(gl::GetBufferPointervOESContextANGLE)},
+ {"glGetBufferPointervRobustANGLE", P(gl::GetBufferPointervRobustANGLE)},
+ {"glGetBufferPointervRobustANGLEContextANGLE", P(gl::GetBufferPointervRobustANGLEContextANGLE)},
+ {"glGetClipPlanef", P(gl::GetClipPlanef)},
+ {"glGetClipPlanefContextANGLE", P(gl::GetClipPlanefContextANGLE)},
+ {"glGetClipPlanex", P(gl::GetClipPlanex)},
+ {"glGetClipPlanexContextANGLE", P(gl::GetClipPlanexContextANGLE)},
+ {"glGetDebugMessageLogKHR", P(gl::GetDebugMessageLogKHR)},
+ {"glGetDebugMessageLogKHRContextANGLE", P(gl::GetDebugMessageLogKHRContextANGLE)},
+ {"glGetError", P(gl::GetError)},
+ {"glGetErrorContextANGLE", P(gl::GetErrorContextANGLE)},
+ {"glGetFenceivNV", P(gl::GetFenceivNV)},
+ {"glGetFenceivNVContextANGLE", P(gl::GetFenceivNVContextANGLE)},
+ {"glGetFixedv", P(gl::GetFixedv)},
+ {"glGetFixedvContextANGLE", P(gl::GetFixedvContextANGLE)},
+ {"glGetFloatv", P(gl::GetFloatv)},
+ {"glGetFloatvContextANGLE", P(gl::GetFloatvContextANGLE)},
+ {"glGetFloatvRobustANGLE", P(gl::GetFloatvRobustANGLE)},
+ {"glGetFloatvRobustANGLEContextANGLE", P(gl::GetFloatvRobustANGLEContextANGLE)},
+ {"glGetFragDataIndexEXT", P(gl::GetFragDataIndexEXT)},
+ {"glGetFragDataIndexEXTContextANGLE", P(gl::GetFragDataIndexEXTContextANGLE)},
+ {"glGetFragDataLocation", P(gl::GetFragDataLocation)},
+ {"glGetFragDataLocationContextANGLE", P(gl::GetFragDataLocationContextANGLE)},
+ {"glGetFramebufferAttachmentParameteriv", P(gl::GetFramebufferAttachmentParameteriv)},
+ {"glGetFramebufferAttachmentParameterivContextANGLE",
+ P(gl::GetFramebufferAttachmentParameterivContextANGLE)},
+ {"glGetFramebufferAttachmentParameterivOES", P(gl::GetFramebufferAttachmentParameterivOES)},
+ {"glGetFramebufferAttachmentParameterivOESContextANGLE",
+ P(gl::GetFramebufferAttachmentParameterivOESContextANGLE)},
+ {"glGetFramebufferAttachmentParameterivRobustANGLE",
+ P(gl::GetFramebufferAttachmentParameterivRobustANGLE)},
+ {"glGetFramebufferAttachmentParameterivRobustANGLEContextANGLE",
+ P(gl::GetFramebufferAttachmentParameterivRobustANGLEContextANGLE)},
+ {"glGetFramebufferParameteriv", P(gl::GetFramebufferParameteriv)},
+ {"glGetFramebufferParameterivContextANGLE", P(gl::GetFramebufferParameterivContextANGLE)},
+ {"glGetFramebufferParameterivRobustANGLE", P(gl::GetFramebufferParameterivRobustANGLE)},
+ {"glGetFramebufferParameterivRobustANGLEContextANGLE",
+ P(gl::GetFramebufferParameterivRobustANGLEContextANGLE)},
+ {"glGetGraphicsResetStatusEXT", P(gl::GetGraphicsResetStatusEXT)},
+ {"glGetGraphicsResetStatusEXTContextANGLE", P(gl::GetGraphicsResetStatusEXTContextANGLE)},
+ {"glGetInteger64i_v", P(gl::GetInteger64i_v)},
+ {"glGetInteger64i_vContextANGLE", P(gl::GetInteger64i_vContextANGLE)},
+ {"glGetInteger64i_vRobustANGLE", P(gl::GetInteger64i_vRobustANGLE)},
+ {"glGetInteger64i_vRobustANGLEContextANGLE", P(gl::GetInteger64i_vRobustANGLEContextANGLE)},
+ {"glGetInteger64v", P(gl::GetInteger64v)},
+ {"glGetInteger64vContextANGLE", P(gl::GetInteger64vContextANGLE)},
+ {"glGetInteger64vRobustANGLE", P(gl::GetInteger64vRobustANGLE)},
+ {"glGetInteger64vRobustANGLEContextANGLE", P(gl::GetInteger64vRobustANGLEContextANGLE)},
+ {"glGetIntegeri_v", P(gl::GetIntegeri_v)},
+ {"glGetIntegeri_vContextANGLE", P(gl::GetIntegeri_vContextANGLE)},
+ {"glGetIntegeri_vRobustANGLE", P(gl::GetIntegeri_vRobustANGLE)},
+ {"glGetIntegeri_vRobustANGLEContextANGLE", P(gl::GetIntegeri_vRobustANGLEContextANGLE)},
+ {"glGetIntegerv", P(gl::GetIntegerv)},
+ {"glGetIntegervContextANGLE", P(gl::GetIntegervContextANGLE)},
+ {"glGetIntegervRobustANGLE", P(gl::GetIntegervRobustANGLE)},
+ {"glGetIntegervRobustANGLEContextANGLE", P(gl::GetIntegervRobustANGLEContextANGLE)},
+ {"glGetInternalformativ", P(gl::GetInternalformativ)},
+ {"glGetInternalformativContextANGLE", P(gl::GetInternalformativContextANGLE)},
+ {"glGetInternalformativRobustANGLE", P(gl::GetInternalformativRobustANGLE)},
+ {"glGetInternalformativRobustANGLEContextANGLE",
+ P(gl::GetInternalformativRobustANGLEContextANGLE)},
+ {"glGetLightfv", P(gl::GetLightfv)},
+ {"glGetLightfvContextANGLE", P(gl::GetLightfvContextANGLE)},
+ {"glGetLightxv", P(gl::GetLightxv)},
+ {"glGetLightxvContextANGLE", P(gl::GetLightxvContextANGLE)},
+ {"glGetMaterialfv", P(gl::GetMaterialfv)},
+ {"glGetMaterialfvContextANGLE", P(gl::GetMaterialfvContextANGLE)},
+ {"glGetMaterialxv", P(gl::GetMaterialxv)},
+ {"glGetMaterialxvContextANGLE", P(gl::GetMaterialxvContextANGLE)},
+ {"glGetMemoryObjectParameterivEXT", P(gl::GetMemoryObjectParameterivEXT)},
+ {"glGetMemoryObjectParameterivEXTContextANGLE",
+ P(gl::GetMemoryObjectParameterivEXTContextANGLE)},
+ {"glGetMultisamplefv", P(gl::GetMultisamplefv)},
+ {"glGetMultisamplefvANGLE", P(gl::GetMultisamplefvANGLE)},
+ {"glGetMultisamplefvANGLEContextANGLE", P(gl::GetMultisamplefvANGLEContextANGLE)},
+ {"glGetMultisamplefvContextANGLE", P(gl::GetMultisamplefvContextANGLE)},
+ {"glGetMultisamplefvRobustANGLE", P(gl::GetMultisamplefvRobustANGLE)},
+ {"glGetMultisamplefvRobustANGLEContextANGLE", P(gl::GetMultisamplefvRobustANGLEContextANGLE)},
+ {"glGetObjectLabelKHR", P(gl::GetObjectLabelKHR)},
+ {"glGetObjectLabelKHRContextANGLE", P(gl::GetObjectLabelKHRContextANGLE)},
+ {"glGetObjectPtrLabelKHR", P(gl::GetObjectPtrLabelKHR)},
+ {"glGetObjectPtrLabelKHRContextANGLE", P(gl::GetObjectPtrLabelKHRContextANGLE)},
+ {"glGetPathParameterfvCHROMIUM", P(gl::GetPathParameterfvCHROMIUM)},
+ {"glGetPathParameterfvCHROMIUMContextANGLE", P(gl::GetPathParameterfvCHROMIUMContextANGLE)},
+ {"glGetPathParameterivCHROMIUM", P(gl::GetPathParameterivCHROMIUM)},
+ {"glGetPathParameterivCHROMIUMContextANGLE", P(gl::GetPathParameterivCHROMIUMContextANGLE)},
+ {"glGetPointerv", P(gl::GetPointerv)},
+ {"glGetPointervContextANGLE", P(gl::GetPointervContextANGLE)},
+ {"glGetPointervKHR", P(gl::GetPointervKHR)},
+ {"glGetPointervKHRContextANGLE", P(gl::GetPointervKHRContextANGLE)},
+ {"glGetPointervRobustANGLERobustANGLE", P(gl::GetPointervRobustANGLERobustANGLE)},
+ {"glGetPointervRobustANGLERobustANGLEContextANGLE",
+ P(gl::GetPointervRobustANGLERobustANGLEContextANGLE)},
+ {"glGetProgramBinary", P(gl::GetProgramBinary)},
+ {"glGetProgramBinaryContextANGLE", P(gl::GetProgramBinaryContextANGLE)},
+ {"glGetProgramBinaryOES", P(gl::GetProgramBinaryOES)},
+ {"glGetProgramBinaryOESContextANGLE", P(gl::GetProgramBinaryOESContextANGLE)},
+ {"glGetProgramInfoLog", P(gl::GetProgramInfoLog)},
+ {"glGetProgramInfoLogContextANGLE", P(gl::GetProgramInfoLogContextANGLE)},
+ {"glGetProgramInterfaceiv", P(gl::GetProgramInterfaceiv)},
+ {"glGetProgramInterfaceivContextANGLE", P(gl::GetProgramInterfaceivContextANGLE)},
+ {"glGetProgramInterfaceivRobustANGLE", P(gl::GetProgramInterfaceivRobustANGLE)},
+ {"glGetProgramInterfaceivRobustANGLEContextANGLE",
+ P(gl::GetProgramInterfaceivRobustANGLEContextANGLE)},
+ {"glGetProgramPipelineInfoLog", P(gl::GetProgramPipelineInfoLog)},
+ {"glGetProgramPipelineInfoLogContextANGLE", P(gl::GetProgramPipelineInfoLogContextANGLE)},
+ {"glGetProgramPipelineiv", P(gl::GetProgramPipelineiv)},
+ {"glGetProgramPipelineivContextANGLE", P(gl::GetProgramPipelineivContextANGLE)},
+ {"glGetProgramResourceIndex", P(gl::GetProgramResourceIndex)},
+ {"glGetProgramResourceIndexContextANGLE", P(gl::GetProgramResourceIndexContextANGLE)},
+ {"glGetProgramResourceLocation", P(gl::GetProgramResourceLocation)},
+ {"glGetProgramResourceLocationContextANGLE", P(gl::GetProgramResourceLocationContextANGLE)},
+ {"glGetProgramResourceLocationIndexEXT", P(gl::GetProgramResourceLocationIndexEXT)},
+ {"glGetProgramResourceLocationIndexEXTContextANGLE",
+ P(gl::GetProgramResourceLocationIndexEXTContextANGLE)},
+ {"glGetProgramResourceName", P(gl::GetProgramResourceName)},
+ {"glGetProgramResourceNameContextANGLE", P(gl::GetProgramResourceNameContextANGLE)},
+ {"glGetProgramResourceiv", P(gl::GetProgramResourceiv)},
+ {"glGetProgramResourceivContextANGLE", P(gl::GetProgramResourceivContextANGLE)},
+ {"glGetProgramiv", P(gl::GetProgramiv)},
+ {"glGetProgramivContextANGLE", P(gl::GetProgramivContextANGLE)},
+ {"glGetProgramivRobustANGLE", P(gl::GetProgramivRobustANGLE)},
+ {"glGetProgramivRobustANGLEContextANGLE", P(gl::GetProgramivRobustANGLEContextANGLE)},
+ {"glGetQueryObjecti64vEXT", P(gl::GetQueryObjecti64vEXT)},
+ {"glGetQueryObjecti64vEXTContextANGLE", P(gl::GetQueryObjecti64vEXTContextANGLE)},
+ {"glGetQueryObjecti64vRobustANGLE", P(gl::GetQueryObjecti64vRobustANGLE)},
+ {"glGetQueryObjecti64vRobustANGLEContextANGLE",
+ P(gl::GetQueryObjecti64vRobustANGLEContextANGLE)},
+ {"glGetQueryObjectivEXT", P(gl::GetQueryObjectivEXT)},
+ {"glGetQueryObjectivEXTContextANGLE", P(gl::GetQueryObjectivEXTContextANGLE)},
+ {"glGetQueryObjectivRobustANGLE", P(gl::GetQueryObjectivRobustANGLE)},
+ {"glGetQueryObjectivRobustANGLEContextANGLE", P(gl::GetQueryObjectivRobustANGLEContextANGLE)},
+ {"glGetQueryObjectui64vEXT", P(gl::GetQueryObjectui64vEXT)},
+ {"glGetQueryObjectui64vEXTContextANGLE", P(gl::GetQueryObjectui64vEXTContextANGLE)},
+ {"glGetQueryObjectui64vRobustANGLE", P(gl::GetQueryObjectui64vRobustANGLE)},
+ {"glGetQueryObjectui64vRobustANGLEContextANGLE",
+ P(gl::GetQueryObjectui64vRobustANGLEContextANGLE)},
+ {"glGetQueryObjectuiv", P(gl::GetQueryObjectuiv)},
+ {"glGetQueryObjectuivContextANGLE", P(gl::GetQueryObjectuivContextANGLE)},
+ {"glGetQueryObjectuivEXT", P(gl::GetQueryObjectuivEXT)},
+ {"glGetQueryObjectuivEXTContextANGLE", P(gl::GetQueryObjectuivEXTContextANGLE)},
+ {"glGetQueryObjectuivRobustANGLE", P(gl::GetQueryObjectuivRobustANGLE)},
+ {"glGetQueryObjectuivRobustANGLEContextANGLE", P(gl::GetQueryObjectuivRobustANGLEContextANGLE)},
+ {"glGetQueryiv", P(gl::GetQueryiv)},
+ {"glGetQueryivContextANGLE", P(gl::GetQueryivContextANGLE)},
+ {"glGetQueryivEXT", P(gl::GetQueryivEXT)},
+ {"glGetQueryivEXTContextANGLE", P(gl::GetQueryivEXTContextANGLE)},
+ {"glGetQueryivRobustANGLE", P(gl::GetQueryivRobustANGLE)},
+ {"glGetQueryivRobustANGLEContextANGLE", P(gl::GetQueryivRobustANGLEContextANGLE)},
+ {"glGetRenderbufferParameteriv", P(gl::GetRenderbufferParameteriv)},
+ {"glGetRenderbufferParameterivContextANGLE", P(gl::GetRenderbufferParameterivContextANGLE)},
+ {"glGetRenderbufferParameterivOES", P(gl::GetRenderbufferParameterivOES)},
+ {"glGetRenderbufferParameterivOESContextANGLE",
+ P(gl::GetRenderbufferParameterivOESContextANGLE)},
+ {"glGetRenderbufferParameterivRobustANGLE", P(gl::GetRenderbufferParameterivRobustANGLE)},
+ {"glGetRenderbufferParameterivRobustANGLEContextANGLE",
+ P(gl::GetRenderbufferParameterivRobustANGLEContextANGLE)},
+ {"glGetSamplerParameterIivOES", P(gl::GetSamplerParameterIivOES)},
+ {"glGetSamplerParameterIivOESContextANGLE", P(gl::GetSamplerParameterIivOESContextANGLE)},
+ {"glGetSamplerParameterIivRobustANGLE", P(gl::GetSamplerParameterIivRobustANGLE)},
+ {"glGetSamplerParameterIivRobustANGLEContextANGLE",
+ P(gl::GetSamplerParameterIivRobustANGLEContextANGLE)},
+ {"glGetSamplerParameterIuivOES", P(gl::GetSamplerParameterIuivOES)},
+ {"glGetSamplerParameterIuivOESContextANGLE", P(gl::GetSamplerParameterIuivOESContextANGLE)},
+ {"glGetSamplerParameterIuivRobustANGLE", P(gl::GetSamplerParameterIuivRobustANGLE)},
+ {"glGetSamplerParameterIuivRobustANGLEContextANGLE",
+ P(gl::GetSamplerParameterIuivRobustANGLEContextANGLE)},
+ {"glGetSamplerParameterfv", P(gl::GetSamplerParameterfv)},
+ {"glGetSamplerParameterfvContextANGLE", P(gl::GetSamplerParameterfvContextANGLE)},
+ {"glGetSamplerParameterfvRobustANGLE", P(gl::GetSamplerParameterfvRobustANGLE)},
+ {"glGetSamplerParameterfvRobustANGLEContextANGLE",
+ P(gl::GetSamplerParameterfvRobustANGLEContextANGLE)},
+ {"glGetSamplerParameteriv", P(gl::GetSamplerParameteriv)},
+ {"glGetSamplerParameterivContextANGLE", P(gl::GetSamplerParameterivContextANGLE)},
+ {"glGetSamplerParameterivRobustANGLE", P(gl::GetSamplerParameterivRobustANGLE)},
+ {"glGetSamplerParameterivRobustANGLEContextANGLE",
+ P(gl::GetSamplerParameterivRobustANGLEContextANGLE)},
+ {"glGetSemaphoreParameterui64vEXT", P(gl::GetSemaphoreParameterui64vEXT)},
+ {"glGetSemaphoreParameterui64vEXTContextANGLE",
+ P(gl::GetSemaphoreParameterui64vEXTContextANGLE)},
+ {"glGetShaderInfoLog", P(gl::GetShaderInfoLog)},
+ {"glGetShaderInfoLogContextANGLE", P(gl::GetShaderInfoLogContextANGLE)},
+ {"glGetShaderPrecisionFormat", P(gl::GetShaderPrecisionFormat)},
+ {"glGetShaderPrecisionFormatContextANGLE", P(gl::GetShaderPrecisionFormatContextANGLE)},
+ {"glGetShaderSource", P(gl::GetShaderSource)},
+ {"glGetShaderSourceContextANGLE", P(gl::GetShaderSourceContextANGLE)},
+ {"glGetShaderiv", P(gl::GetShaderiv)},
+ {"glGetShaderivContextANGLE", P(gl::GetShaderivContextANGLE)},
+ {"glGetShaderivRobustANGLE", P(gl::GetShaderivRobustANGLE)},
+ {"glGetShaderivRobustANGLEContextANGLE", P(gl::GetShaderivRobustANGLEContextANGLE)},
+ {"glGetString", P(gl::GetString)},
+ {"glGetStringContextANGLE", P(gl::GetStringContextANGLE)},
+ {"glGetStringi", P(gl::GetStringi)},
+ {"glGetStringiContextANGLE", P(gl::GetStringiContextANGLE)},
+ {"glGetSynciv", P(gl::GetSynciv)},
+ {"glGetSyncivContextANGLE", P(gl::GetSyncivContextANGLE)},
+ {"glGetTexEnvfv", P(gl::GetTexEnvfv)},
+ {"glGetTexEnvfvContextANGLE", P(gl::GetTexEnvfvContextANGLE)},
+ {"glGetTexEnviv", P(gl::GetTexEnviv)},
+ {"glGetTexEnvivContextANGLE", P(gl::GetTexEnvivContextANGLE)},
+ {"glGetTexEnvxv", P(gl::GetTexEnvxv)},
+ {"glGetTexEnvxvContextANGLE", P(gl::GetTexEnvxvContextANGLE)},
+ {"glGetTexGenfvOES", P(gl::GetTexGenfvOES)},
+ {"glGetTexGenfvOESContextANGLE", P(gl::GetTexGenfvOESContextANGLE)},
+ {"glGetTexGenivOES", P(gl::GetTexGenivOES)},
+ {"glGetTexGenivOESContextANGLE", P(gl::GetTexGenivOESContextANGLE)},
+ {"glGetTexGenxvOES", P(gl::GetTexGenxvOES)},
+ {"glGetTexGenxvOESContextANGLE", P(gl::GetTexGenxvOESContextANGLE)},
+ {"glGetTexLevelParameterfv", P(gl::GetTexLevelParameterfv)},
+ {"glGetTexLevelParameterfvANGLE", P(gl::GetTexLevelParameterfvANGLE)},
+ {"glGetTexLevelParameterfvANGLEContextANGLE", P(gl::GetTexLevelParameterfvANGLEContextANGLE)},
+ {"glGetTexLevelParameterfvContextANGLE", P(gl::GetTexLevelParameterfvContextANGLE)},
+ {"glGetTexLevelParameterfvRobustANGLE", P(gl::GetTexLevelParameterfvRobustANGLE)},
+ {"glGetTexLevelParameterfvRobustANGLEContextANGLE",
+ P(gl::GetTexLevelParameterfvRobustANGLEContextANGLE)},
+ {"glGetTexLevelParameteriv", P(gl::GetTexLevelParameteriv)},
+ {"glGetTexLevelParameterivANGLE", P(gl::GetTexLevelParameterivANGLE)},
+ {"glGetTexLevelParameterivANGLEContextANGLE", P(gl::GetTexLevelParameterivANGLEContextANGLE)},
+ {"glGetTexLevelParameterivContextANGLE", P(gl::GetTexLevelParameterivContextANGLE)},
+ {"glGetTexLevelParameterivRobustANGLE", P(gl::GetTexLevelParameterivRobustANGLE)},
+ {"glGetTexLevelParameterivRobustANGLEContextANGLE",
+ P(gl::GetTexLevelParameterivRobustANGLEContextANGLE)},
+ {"glGetTexParameterIivOES", P(gl::GetTexParameterIivOES)},
+ {"glGetTexParameterIivOESContextANGLE", P(gl::GetTexParameterIivOESContextANGLE)},
+ {"glGetTexParameterIivRobustANGLE", P(gl::GetTexParameterIivRobustANGLE)},
+ {"glGetTexParameterIivRobustANGLEContextANGLE",
+ P(gl::GetTexParameterIivRobustANGLEContextANGLE)},
+ {"glGetTexParameterIuivOES", P(gl::GetTexParameterIuivOES)},
+ {"glGetTexParameterIuivOESContextANGLE", P(gl::GetTexParameterIuivOESContextANGLE)},
+ {"glGetTexParameterIuivRobustANGLE", P(gl::GetTexParameterIuivRobustANGLE)},
+ {"glGetTexParameterIuivRobustANGLEContextANGLE",
+ P(gl::GetTexParameterIuivRobustANGLEContextANGLE)},
+ {"glGetTexParameterfv", P(gl::GetTexParameterfv)},
+ {"glGetTexParameterfvContextANGLE", P(gl::GetTexParameterfvContextANGLE)},
+ {"glGetTexParameterfvRobustANGLE", P(gl::GetTexParameterfvRobustANGLE)},
+ {"glGetTexParameterfvRobustANGLEContextANGLE", P(gl::GetTexParameterfvRobustANGLEContextANGLE)},
+ {"glGetTexParameteriv", P(gl::GetTexParameteriv)},
+ {"glGetTexParameterivContextANGLE", P(gl::GetTexParameterivContextANGLE)},
+ {"glGetTexParameterivRobustANGLE", P(gl::GetTexParameterivRobustANGLE)},
+ {"glGetTexParameterivRobustANGLEContextANGLE", P(gl::GetTexParameterivRobustANGLEContextANGLE)},
+ {"glGetTexParameterxv", P(gl::GetTexParameterxv)},
+ {"glGetTexParameterxvContextANGLE", P(gl::GetTexParameterxvContextANGLE)},
+ {"glGetTransformFeedbackVarying", P(gl::GetTransformFeedbackVarying)},
+ {"glGetTransformFeedbackVaryingContextANGLE", P(gl::GetTransformFeedbackVaryingContextANGLE)},
+ {"glGetTranslatedShaderSourceANGLE", P(gl::GetTranslatedShaderSourceANGLE)},
+ {"glGetTranslatedShaderSourceANGLEContextANGLE",
+ P(gl::GetTranslatedShaderSourceANGLEContextANGLE)},
+ {"glGetUniformBlockIndex", P(gl::GetUniformBlockIndex)},
+ {"glGetUniformBlockIndexContextANGLE", P(gl::GetUniformBlockIndexContextANGLE)},
+ {"glGetUniformIndices", P(gl::GetUniformIndices)},
+ {"glGetUniformIndicesContextANGLE", P(gl::GetUniformIndicesContextANGLE)},
+ {"glGetUniformLocation", P(gl::GetUniformLocation)},
+ {"glGetUniformLocationContextANGLE", P(gl::GetUniformLocationContextANGLE)},
+ {"glGetUniformfv", P(gl::GetUniformfv)},
+ {"glGetUniformfvContextANGLE", P(gl::GetUniformfvContextANGLE)},
+ {"glGetUniformfvRobustANGLE", P(gl::GetUniformfvRobustANGLE)},
+ {"glGetUniformfvRobustANGLEContextANGLE", P(gl::GetUniformfvRobustANGLEContextANGLE)},
+ {"glGetUniformiv", P(gl::GetUniformiv)},
+ {"glGetUniformivContextANGLE", P(gl::GetUniformivContextANGLE)},
+ {"glGetUniformivRobustANGLE", P(gl::GetUniformivRobustANGLE)},
+ {"glGetUniformivRobustANGLEContextANGLE", P(gl::GetUniformivRobustANGLEContextANGLE)},
+ {"glGetUniformuiv", P(gl::GetUniformuiv)},
+ {"glGetUniformuivContextANGLE", P(gl::GetUniformuivContextANGLE)},
+ {"glGetUniformuivRobustANGLE", P(gl::GetUniformuivRobustANGLE)},
+ {"glGetUniformuivRobustANGLEContextANGLE", P(gl::GetUniformuivRobustANGLEContextANGLE)},
+ {"glGetUnsignedBytei_vEXT", P(gl::GetUnsignedBytei_vEXT)},
+ {"glGetUnsignedBytei_vEXTContextANGLE", P(gl::GetUnsignedBytei_vEXTContextANGLE)},
+ {"glGetUnsignedBytevEXT", P(gl::GetUnsignedBytevEXT)},
+ {"glGetUnsignedBytevEXTContextANGLE", P(gl::GetUnsignedBytevEXTContextANGLE)},
+ {"glGetVertexAttribIiv", P(gl::GetVertexAttribIiv)},
+ {"glGetVertexAttribIivContextANGLE", P(gl::GetVertexAttribIivContextANGLE)},
+ {"glGetVertexAttribIivRobustANGLE", P(gl::GetVertexAttribIivRobustANGLE)},
+ {"glGetVertexAttribIivRobustANGLEContextANGLE",
+ P(gl::GetVertexAttribIivRobustANGLEContextANGLE)},
+ {"glGetVertexAttribIuiv", P(gl::GetVertexAttribIuiv)},
+ {"glGetVertexAttribIuivContextANGLE", P(gl::GetVertexAttribIuivContextANGLE)},
+ {"glGetVertexAttribIuivRobustANGLE", P(gl::GetVertexAttribIuivRobustANGLE)},
+ {"glGetVertexAttribIuivRobustANGLEContextANGLE",
+ P(gl::GetVertexAttribIuivRobustANGLEContextANGLE)},
+ {"glGetVertexAttribPointerv", P(gl::GetVertexAttribPointerv)},
+ {"glGetVertexAttribPointervContextANGLE", P(gl::GetVertexAttribPointervContextANGLE)},
+ {"glGetVertexAttribPointervRobustANGLE", P(gl::GetVertexAttribPointervRobustANGLE)},
+ {"glGetVertexAttribPointervRobustANGLEContextANGLE",
+ P(gl::GetVertexAttribPointervRobustANGLEContextANGLE)},
+ {"glGetVertexAttribfv", P(gl::GetVertexAttribfv)},
+ {"glGetVertexAttribfvContextANGLE", P(gl::GetVertexAttribfvContextANGLE)},
+ {"glGetVertexAttribfvRobustANGLE", P(gl::GetVertexAttribfvRobustANGLE)},
+ {"glGetVertexAttribfvRobustANGLEContextANGLE", P(gl::GetVertexAttribfvRobustANGLEContextANGLE)},
+ {"glGetVertexAttribiv", P(gl::GetVertexAttribiv)},
+ {"glGetVertexAttribivContextANGLE", P(gl::GetVertexAttribivContextANGLE)},
+ {"glGetVertexAttribivRobustANGLE", P(gl::GetVertexAttribivRobustANGLE)},
+ {"glGetVertexAttribivRobustANGLEContextANGLE", P(gl::GetVertexAttribivRobustANGLEContextANGLE)},
+ {"glGetnUniformfvEXT", P(gl::GetnUniformfvEXT)},
+ {"glGetnUniformfvEXTContextANGLE", P(gl::GetnUniformfvEXTContextANGLE)},
+ {"glGetnUniformfvRobustANGLE", P(gl::GetnUniformfvRobustANGLE)},
+ {"glGetnUniformfvRobustANGLEContextANGLE", P(gl::GetnUniformfvRobustANGLEContextANGLE)},
+ {"glGetnUniformivEXT", P(gl::GetnUniformivEXT)},
+ {"glGetnUniformivEXTContextANGLE", P(gl::GetnUniformivEXTContextANGLE)},
+ {"glGetnUniformivRobustANGLE", P(gl::GetnUniformivRobustANGLE)},
+ {"glGetnUniformivRobustANGLEContextANGLE", P(gl::GetnUniformivRobustANGLEContextANGLE)},
+ {"glGetnUniformuivRobustANGLE", P(gl::GetnUniformuivRobustANGLE)},
+ {"glGetnUniformuivRobustANGLEContextANGLE", P(gl::GetnUniformuivRobustANGLEContextANGLE)},
+ {"glHint", P(gl::Hint)},
+ {"glHintContextANGLE", P(gl::HintContextANGLE)},
+ {"glImportMemoryFdEXT", P(gl::ImportMemoryFdEXT)},
+ {"glImportMemoryFdEXTContextANGLE", P(gl::ImportMemoryFdEXTContextANGLE)},
+ {"glImportSemaphoreFdEXT", P(gl::ImportSemaphoreFdEXT)},
+ {"glImportSemaphoreFdEXTContextANGLE", P(gl::ImportSemaphoreFdEXTContextANGLE)},
+ {"glInsertEventMarkerEXT", P(gl::InsertEventMarkerEXT)},
+ {"glInsertEventMarkerEXTContextANGLE", P(gl::InsertEventMarkerEXTContextANGLE)},
+ {"glInvalidateFramebuffer", P(gl::InvalidateFramebuffer)},
+ {"glInvalidateFramebufferContextANGLE", P(gl::InvalidateFramebufferContextANGLE)},
+ {"glInvalidateSubFramebuffer", P(gl::InvalidateSubFramebuffer)},
+ {"glInvalidateSubFramebufferContextANGLE", P(gl::InvalidateSubFramebufferContextANGLE)},
+ {"glInvalidateTextureANGLE", P(gl::InvalidateTextureANGLE)},
+ {"glInvalidateTextureANGLEContextANGLE", P(gl::InvalidateTextureANGLEContextANGLE)},
+ {"glIsBuffer", P(gl::IsBuffer)},
+ {"glIsBufferContextANGLE", P(gl::IsBufferContextANGLE)},
+ {"glIsEnabled", P(gl::IsEnabled)},
+ {"glIsEnabledContextANGLE", P(gl::IsEnabledContextANGLE)},
+ {"glIsFenceNV", P(gl::IsFenceNV)},
+ {"glIsFenceNVContextANGLE", P(gl::IsFenceNVContextANGLE)},
+ {"glIsFramebuffer", P(gl::IsFramebuffer)},
+ {"glIsFramebufferContextANGLE", P(gl::IsFramebufferContextANGLE)},
+ {"glIsFramebufferOES", P(gl::IsFramebufferOES)},
+ {"glIsFramebufferOESContextANGLE", P(gl::IsFramebufferOESContextANGLE)},
+ {"glIsMemoryObjectEXT", P(gl::IsMemoryObjectEXT)},
+ {"glIsMemoryObjectEXTContextANGLE", P(gl::IsMemoryObjectEXTContextANGLE)},
+ {"glIsPathCHROMIUM", P(gl::IsPathCHROMIUM)},
+ {"glIsPathCHROMIUMContextANGLE", P(gl::IsPathCHROMIUMContextANGLE)},
+ {"glIsProgram", P(gl::IsProgram)},
+ {"glIsProgramContextANGLE", P(gl::IsProgramContextANGLE)},
+ {"glIsProgramPipeline", P(gl::IsProgramPipeline)},
+ {"glIsProgramPipelineContextANGLE", P(gl::IsProgramPipelineContextANGLE)},
+ {"glIsQuery", P(gl::IsQuery)},
+ {"glIsQueryContextANGLE", P(gl::IsQueryContextANGLE)},
+ {"glIsQueryEXT", P(gl::IsQueryEXT)},
+ {"glIsQueryEXTContextANGLE", P(gl::IsQueryEXTContextANGLE)},
+ {"glIsRenderbuffer", P(gl::IsRenderbuffer)},
+ {"glIsRenderbufferContextANGLE", P(gl::IsRenderbufferContextANGLE)},
+ {"glIsRenderbufferOES", P(gl::IsRenderbufferOES)},
+ {"glIsRenderbufferOESContextANGLE", P(gl::IsRenderbufferOESContextANGLE)},
+ {"glIsSampler", P(gl::IsSampler)},
+ {"glIsSamplerContextANGLE", P(gl::IsSamplerContextANGLE)},
+ {"glIsSemaphoreEXT", P(gl::IsSemaphoreEXT)},
+ {"glIsSemaphoreEXTContextANGLE", P(gl::IsSemaphoreEXTContextANGLE)},
+ {"glIsShader", P(gl::IsShader)},
+ {"glIsShaderContextANGLE", P(gl::IsShaderContextANGLE)},
+ {"glIsSync", P(gl::IsSync)},
+ {"glIsSyncContextANGLE", P(gl::IsSyncContextANGLE)},
+ {"glIsTexture", P(gl::IsTexture)},
+ {"glIsTextureContextANGLE", P(gl::IsTextureContextANGLE)},
+ {"glIsTransformFeedback", P(gl::IsTransformFeedback)},
+ {"glIsTransformFeedbackContextANGLE", P(gl::IsTransformFeedbackContextANGLE)},
+ {"glIsVertexArray", P(gl::IsVertexArray)},
+ {"glIsVertexArrayContextANGLE", P(gl::IsVertexArrayContextANGLE)},
+ {"glIsVertexArrayOES", P(gl::IsVertexArrayOES)},
+ {"glIsVertexArrayOESContextANGLE", P(gl::IsVertexArrayOESContextANGLE)},
+ {"glLightModelf", P(gl::LightModelf)},
+ {"glLightModelfContextANGLE", P(gl::LightModelfContextANGLE)},
+ {"glLightModelfv", P(gl::LightModelfv)},
+ {"glLightModelfvContextANGLE", P(gl::LightModelfvContextANGLE)},
+ {"glLightModelx", P(gl::LightModelx)},
+ {"glLightModelxContextANGLE", P(gl::LightModelxContextANGLE)},
+ {"glLightModelxv", P(gl::LightModelxv)},
+ {"glLightModelxvContextANGLE", P(gl::LightModelxvContextANGLE)},
+ {"glLightf", P(gl::Lightf)},
+ {"glLightfContextANGLE", P(gl::LightfContextANGLE)},
+ {"glLightfv", P(gl::Lightfv)},
+ {"glLightfvContextANGLE", P(gl::LightfvContextANGLE)},
+ {"glLightx", P(gl::Lightx)},
+ {"glLightxContextANGLE", P(gl::LightxContextANGLE)},
+ {"glLightxv", P(gl::Lightxv)},
+ {"glLightxvContextANGLE", P(gl::LightxvContextANGLE)},
+ {"glLineWidth", P(gl::LineWidth)},
+ {"glLineWidthContextANGLE", P(gl::LineWidthContextANGLE)},
+ {"glLineWidthx", P(gl::LineWidthx)},
+ {"glLineWidthxContextANGLE", P(gl::LineWidthxContextANGLE)},
+ {"glLinkProgram", P(gl::LinkProgram)},
+ {"glLinkProgramContextANGLE", P(gl::LinkProgramContextANGLE)},
+ {"glLoadIdentity", P(gl::LoadIdentity)},
+ {"glLoadIdentityContextANGLE", P(gl::LoadIdentityContextANGLE)},
+ {"glLoadMatrixf", P(gl::LoadMatrixf)},
+ {"glLoadMatrixfContextANGLE", P(gl::LoadMatrixfContextANGLE)},
+ {"glLoadMatrixx", P(gl::LoadMatrixx)},
+ {"glLoadMatrixxContextANGLE", P(gl::LoadMatrixxContextANGLE)},
+ {"glLoadPaletteFromModelViewMatrixOES", P(gl::LoadPaletteFromModelViewMatrixOES)},
+ {"glLoadPaletteFromModelViewMatrixOESContextANGLE",
+ P(gl::LoadPaletteFromModelViewMatrixOESContextANGLE)},
+ {"glLogicOp", P(gl::LogicOp)},
+ {"glLogicOpContextANGLE", P(gl::LogicOpContextANGLE)},
+ {"glLoseContextCHROMIUM", P(gl::LoseContextCHROMIUM)},
+ {"glLoseContextCHROMIUMContextANGLE", P(gl::LoseContextCHROMIUMContextANGLE)},
+ {"glMapBufferOES", P(gl::MapBufferOES)},
+ {"glMapBufferOESContextANGLE", P(gl::MapBufferOESContextANGLE)},
+ {"glMapBufferRange", P(gl::MapBufferRange)},
+ {"glMapBufferRangeContextANGLE", P(gl::MapBufferRangeContextANGLE)},
+ {"glMapBufferRangeEXT", P(gl::MapBufferRangeEXT)},
+ {"glMapBufferRangeEXTContextANGLE", P(gl::MapBufferRangeEXTContextANGLE)},
+ {"glMaterialf", P(gl::Materialf)},
+ {"glMaterialfContextANGLE", P(gl::MaterialfContextANGLE)},
+ {"glMaterialfv", P(gl::Materialfv)},
+ {"glMaterialfvContextANGLE", P(gl::MaterialfvContextANGLE)},
+ {"glMaterialx", P(gl::Materialx)},
+ {"glMaterialxContextANGLE", P(gl::MaterialxContextANGLE)},
+ {"glMaterialxv", P(gl::Materialxv)},
+ {"glMaterialxvContextANGLE", P(gl::MaterialxvContextANGLE)},
+ {"glMatrixIndexPointerOES", P(gl::MatrixIndexPointerOES)},
+ {"glMatrixIndexPointerOESContextANGLE", P(gl::MatrixIndexPointerOESContextANGLE)},
+ {"glMatrixLoadIdentityCHROMIUM", P(gl::MatrixLoadIdentityCHROMIUM)},
+ {"glMatrixLoadIdentityCHROMIUMContextANGLE", P(gl::MatrixLoadIdentityCHROMIUMContextANGLE)},
+ {"glMatrixLoadfCHROMIUM", P(gl::MatrixLoadfCHROMIUM)},
+ {"glMatrixLoadfCHROMIUMContextANGLE", P(gl::MatrixLoadfCHROMIUMContextANGLE)},
+ {"glMatrixMode", P(gl::MatrixMode)},
+ {"glMatrixModeContextANGLE", P(gl::MatrixModeContextANGLE)},
+ {"glMaxShaderCompilerThreadsKHR", P(gl::MaxShaderCompilerThreadsKHR)},
+ {"glMaxShaderCompilerThreadsKHRContextANGLE", P(gl::MaxShaderCompilerThreadsKHRContextANGLE)},
+ {"glMemoryBarrier", P(gl::MemoryBarrier)},
+ {"glMemoryBarrierByRegion", P(gl::MemoryBarrierByRegion)},
+ {"glMemoryBarrierByRegionContextANGLE", P(gl::MemoryBarrierByRegionContextANGLE)},
+ {"glMemoryBarrierContextANGLE", P(gl::MemoryBarrierContextANGLE)},
+ {"glMemoryObjectParameterivEXT", P(gl::MemoryObjectParameterivEXT)},
+ {"glMemoryObjectParameterivEXTContextANGLE", P(gl::MemoryObjectParameterivEXTContextANGLE)},
+ {"glMultMatrixf", P(gl::MultMatrixf)},
+ {"glMultMatrixfContextANGLE", P(gl::MultMatrixfContextANGLE)},
+ {"glMultMatrixx", P(gl::MultMatrixx)},
+ {"glMultMatrixxContextANGLE", P(gl::MultMatrixxContextANGLE)},
+ {"glMultiDrawArraysANGLE", P(gl::MultiDrawArraysANGLE)},
+ {"glMultiDrawArraysANGLEContextANGLE", P(gl::MultiDrawArraysANGLEContextANGLE)},
+ {"glMultiDrawArraysInstancedANGLE", P(gl::MultiDrawArraysInstancedANGLE)},
+ {"glMultiDrawArraysInstancedANGLEContextANGLE",
+ P(gl::MultiDrawArraysInstancedANGLEContextANGLE)},
+ {"glMultiDrawElementsANGLE", P(gl::MultiDrawElementsANGLE)},
+ {"glMultiDrawElementsANGLEContextANGLE", P(gl::MultiDrawElementsANGLEContextANGLE)},
+ {"glMultiDrawElementsInstancedANGLE", P(gl::MultiDrawElementsInstancedANGLE)},
+ {"glMultiDrawElementsInstancedANGLEContextANGLE",
+ P(gl::MultiDrawElementsInstancedANGLEContextANGLE)},
+ {"glMultiTexCoord4f", P(gl::MultiTexCoord4f)},
+ {"glMultiTexCoord4fContextANGLE", P(gl::MultiTexCoord4fContextANGLE)},
+ {"glMultiTexCoord4x", P(gl::MultiTexCoord4x)},
+ {"glMultiTexCoord4xContextANGLE", P(gl::MultiTexCoord4xContextANGLE)},
+ {"glNormal3f", P(gl::Normal3f)},
+ {"glNormal3fContextANGLE", P(gl::Normal3fContextANGLE)},
+ {"glNormal3x", P(gl::Normal3x)},
+ {"glNormal3xContextANGLE", P(gl::Normal3xContextANGLE)},
+ {"glNormalPointer", P(gl::NormalPointer)},
+ {"glNormalPointerContextANGLE", P(gl::NormalPointerContextANGLE)},
+ {"glObjectLabelKHR", P(gl::ObjectLabelKHR)},
+ {"glObjectLabelKHRContextANGLE", P(gl::ObjectLabelKHRContextANGLE)},
+ {"glObjectPtrLabelKHR", P(gl::ObjectPtrLabelKHR)},
+ {"glObjectPtrLabelKHRContextANGLE", P(gl::ObjectPtrLabelKHRContextANGLE)},
+ {"glOrthof", P(gl::Orthof)},
+ {"glOrthofContextANGLE", P(gl::OrthofContextANGLE)},
+ {"glOrthox", P(gl::Orthox)},
+ {"glOrthoxContextANGLE", P(gl::OrthoxContextANGLE)},
+ {"glPathCommandsCHROMIUM", P(gl::PathCommandsCHROMIUM)},
+ {"glPathCommandsCHROMIUMContextANGLE", P(gl::PathCommandsCHROMIUMContextANGLE)},
+ {"glPathParameterfCHROMIUM", P(gl::PathParameterfCHROMIUM)},
+ {"glPathParameterfCHROMIUMContextANGLE", P(gl::PathParameterfCHROMIUMContextANGLE)},
+ {"glPathParameteriCHROMIUM", P(gl::PathParameteriCHROMIUM)},
+ {"glPathParameteriCHROMIUMContextANGLE", P(gl::PathParameteriCHROMIUMContextANGLE)},
+ {"glPathStencilFuncCHROMIUM", P(gl::PathStencilFuncCHROMIUM)},
+ {"glPathStencilFuncCHROMIUMContextANGLE", P(gl::PathStencilFuncCHROMIUMContextANGLE)},
+ {"glPauseTransformFeedback", P(gl::PauseTransformFeedback)},
+ {"glPauseTransformFeedbackContextANGLE", P(gl::PauseTransformFeedbackContextANGLE)},
+ {"glPixelStorei", P(gl::PixelStorei)},
+ {"glPixelStoreiContextANGLE", P(gl::PixelStoreiContextANGLE)},
+ {"glPointParameterf", P(gl::PointParameterf)},
+ {"glPointParameterfContextANGLE", P(gl::PointParameterfContextANGLE)},
+ {"glPointParameterfv", P(gl::PointParameterfv)},
+ {"glPointParameterfvContextANGLE", P(gl::PointParameterfvContextANGLE)},
+ {"glPointParameterx", P(gl::PointParameterx)},
+ {"glPointParameterxContextANGLE", P(gl::PointParameterxContextANGLE)},
+ {"glPointParameterxv", P(gl::PointParameterxv)},
+ {"glPointParameterxvContextANGLE", P(gl::PointParameterxvContextANGLE)},
+ {"glPointSize", P(gl::PointSize)},
+ {"glPointSizeContextANGLE", P(gl::PointSizeContextANGLE)},
+ {"glPointSizePointerOES", P(gl::PointSizePointerOES)},
+ {"glPointSizePointerOESContextANGLE", P(gl::PointSizePointerOESContextANGLE)},
+ {"glPointSizex", P(gl::PointSizex)},
+ {"glPointSizexContextANGLE", P(gl::PointSizexContextANGLE)},
+ {"glPolygonOffset", P(gl::PolygonOffset)},
+ {"glPolygonOffsetContextANGLE", P(gl::PolygonOffsetContextANGLE)},
+ {"glPolygonOffsetx", P(gl::PolygonOffsetx)},
+ {"glPolygonOffsetxContextANGLE", P(gl::PolygonOffsetxContextANGLE)},
+ {"glPopDebugGroupKHR", P(gl::PopDebugGroupKHR)},
+ {"glPopDebugGroupKHRContextANGLE", P(gl::PopDebugGroupKHRContextANGLE)},
+ {"glPopGroupMarkerEXT", P(gl::PopGroupMarkerEXT)},
+ {"glPopGroupMarkerEXTContextANGLE", P(gl::PopGroupMarkerEXTContextANGLE)},
+ {"glPopMatrix", P(gl::PopMatrix)},
+ {"glPopMatrixContextANGLE", P(gl::PopMatrixContextANGLE)},
+ {"glProgramBinary", P(gl::ProgramBinary)},
+ {"glProgramBinaryContextANGLE", P(gl::ProgramBinaryContextANGLE)},
+ {"glProgramBinaryOES", P(gl::ProgramBinaryOES)},
+ {"glProgramBinaryOESContextANGLE", P(gl::ProgramBinaryOESContextANGLE)},
+ {"glProgramParameteri", P(gl::ProgramParameteri)},
+ {"glProgramParameteriContextANGLE", P(gl::ProgramParameteriContextANGLE)},
+ {"glProgramPathFragmentInputGenCHROMIUM", P(gl::ProgramPathFragmentInputGenCHROMIUM)},
+ {"glProgramPathFragmentInputGenCHROMIUMContextANGLE",
+ P(gl::ProgramPathFragmentInputGenCHROMIUMContextANGLE)},
+ {"glProgramUniform1f", P(gl::ProgramUniform1f)},
+ {"glProgramUniform1fContextANGLE", P(gl::ProgramUniform1fContextANGLE)},
+ {"glProgramUniform1fv", P(gl::ProgramUniform1fv)},
+ {"glProgramUniform1fvContextANGLE", P(gl::ProgramUniform1fvContextANGLE)},
+ {"glProgramUniform1i", P(gl::ProgramUniform1i)},
+ {"glProgramUniform1iContextANGLE", P(gl::ProgramUniform1iContextANGLE)},
+ {"glProgramUniform1iv", P(gl::ProgramUniform1iv)},
+ {"glProgramUniform1ivContextANGLE", P(gl::ProgramUniform1ivContextANGLE)},
+ {"glProgramUniform1ui", P(gl::ProgramUniform1ui)},
+ {"glProgramUniform1uiContextANGLE", P(gl::ProgramUniform1uiContextANGLE)},
+ {"glProgramUniform1uiv", P(gl::ProgramUniform1uiv)},
+ {"glProgramUniform1uivContextANGLE", P(gl::ProgramUniform1uivContextANGLE)},
+ {"glProgramUniform2f", P(gl::ProgramUniform2f)},
+ {"glProgramUniform2fContextANGLE", P(gl::ProgramUniform2fContextANGLE)},
+ {"glProgramUniform2fv", P(gl::ProgramUniform2fv)},
+ {"glProgramUniform2fvContextANGLE", P(gl::ProgramUniform2fvContextANGLE)},
+ {"glProgramUniform2i", P(gl::ProgramUniform2i)},
+ {"glProgramUniform2iContextANGLE", P(gl::ProgramUniform2iContextANGLE)},
+ {"glProgramUniform2iv", P(gl::ProgramUniform2iv)},
+ {"glProgramUniform2ivContextANGLE", P(gl::ProgramUniform2ivContextANGLE)},
+ {"glProgramUniform2ui", P(gl::ProgramUniform2ui)},
+ {"glProgramUniform2uiContextANGLE", P(gl::ProgramUniform2uiContextANGLE)},
+ {"glProgramUniform2uiv", P(gl::ProgramUniform2uiv)},
+ {"glProgramUniform2uivContextANGLE", P(gl::ProgramUniform2uivContextANGLE)},
+ {"glProgramUniform3f", P(gl::ProgramUniform3f)},
+ {"glProgramUniform3fContextANGLE", P(gl::ProgramUniform3fContextANGLE)},
+ {"glProgramUniform3fv", P(gl::ProgramUniform3fv)},
+ {"glProgramUniform3fvContextANGLE", P(gl::ProgramUniform3fvContextANGLE)},
+ {"glProgramUniform3i", P(gl::ProgramUniform3i)},
+ {"glProgramUniform3iContextANGLE", P(gl::ProgramUniform3iContextANGLE)},
+ {"glProgramUniform3iv", P(gl::ProgramUniform3iv)},
+ {"glProgramUniform3ivContextANGLE", P(gl::ProgramUniform3ivContextANGLE)},
+ {"glProgramUniform3ui", P(gl::ProgramUniform3ui)},
+ {"glProgramUniform3uiContextANGLE", P(gl::ProgramUniform3uiContextANGLE)},
+ {"glProgramUniform3uiv", P(gl::ProgramUniform3uiv)},
+ {"glProgramUniform3uivContextANGLE", P(gl::ProgramUniform3uivContextANGLE)},
+ {"glProgramUniform4f", P(gl::ProgramUniform4f)},
+ {"glProgramUniform4fContextANGLE", P(gl::ProgramUniform4fContextANGLE)},
+ {"glProgramUniform4fv", P(gl::ProgramUniform4fv)},
+ {"glProgramUniform4fvContextANGLE", P(gl::ProgramUniform4fvContextANGLE)},
+ {"glProgramUniform4i", P(gl::ProgramUniform4i)},
+ {"glProgramUniform4iContextANGLE", P(gl::ProgramUniform4iContextANGLE)},
+ {"glProgramUniform4iv", P(gl::ProgramUniform4iv)},
+ {"glProgramUniform4ivContextANGLE", P(gl::ProgramUniform4ivContextANGLE)},
+ {"glProgramUniform4ui", P(gl::ProgramUniform4ui)},
+ {"glProgramUniform4uiContextANGLE", P(gl::ProgramUniform4uiContextANGLE)},
+ {"glProgramUniform4uiv", P(gl::ProgramUniform4uiv)},
+ {"glProgramUniform4uivContextANGLE", P(gl::ProgramUniform4uivContextANGLE)},
+ {"glProgramUniformMatrix2fv", P(gl::ProgramUniformMatrix2fv)},
+ {"glProgramUniformMatrix2fvContextANGLE", P(gl::ProgramUniformMatrix2fvContextANGLE)},
+ {"glProgramUniformMatrix2x3fv", P(gl::ProgramUniformMatrix2x3fv)},
+ {"glProgramUniformMatrix2x3fvContextANGLE", P(gl::ProgramUniformMatrix2x3fvContextANGLE)},
+ {"glProgramUniformMatrix2x4fv", P(gl::ProgramUniformMatrix2x4fv)},
+ {"glProgramUniformMatrix2x4fvContextANGLE", P(gl::ProgramUniformMatrix2x4fvContextANGLE)},
+ {"glProgramUniformMatrix3fv", P(gl::ProgramUniformMatrix3fv)},
+ {"glProgramUniformMatrix3fvContextANGLE", P(gl::ProgramUniformMatrix3fvContextANGLE)},
+ {"glProgramUniformMatrix3x2fv", P(gl::ProgramUniformMatrix3x2fv)},
+ {"glProgramUniformMatrix3x2fvContextANGLE", P(gl::ProgramUniformMatrix3x2fvContextANGLE)},
+ {"glProgramUniformMatrix3x4fv", P(gl::ProgramUniformMatrix3x4fv)},
+ {"glProgramUniformMatrix3x4fvContextANGLE", P(gl::ProgramUniformMatrix3x4fvContextANGLE)},
+ {"glProgramUniformMatrix4fv", P(gl::ProgramUniformMatrix4fv)},
+ {"glProgramUniformMatrix4fvContextANGLE", P(gl::ProgramUniformMatrix4fvContextANGLE)},
+ {"glProgramUniformMatrix4x2fv", P(gl::ProgramUniformMatrix4x2fv)},
+ {"glProgramUniformMatrix4x2fvContextANGLE", P(gl::ProgramUniformMatrix4x2fvContextANGLE)},
+ {"glProgramUniformMatrix4x3fv", P(gl::ProgramUniformMatrix4x3fv)},
+ {"glProgramUniformMatrix4x3fvContextANGLE", P(gl::ProgramUniformMatrix4x3fvContextANGLE)},
+ {"glProvokingVertexANGLE", P(gl::ProvokingVertexANGLE)},
+ {"glProvokingVertexANGLEContextANGLE", P(gl::ProvokingVertexANGLEContextANGLE)},
+ {"glPushDebugGroupKHR", P(gl::PushDebugGroupKHR)},
+ {"glPushDebugGroupKHRContextANGLE", P(gl::PushDebugGroupKHRContextANGLE)},
+ {"glPushGroupMarkerEXT", P(gl::PushGroupMarkerEXT)},
+ {"glPushGroupMarkerEXTContextANGLE", P(gl::PushGroupMarkerEXTContextANGLE)},
+ {"glPushMatrix", P(gl::PushMatrix)},
+ {"glPushMatrixContextANGLE", P(gl::PushMatrixContextANGLE)},
+ {"glQueryCounterEXT", P(gl::QueryCounterEXT)},
+ {"glQueryCounterEXTContextANGLE", P(gl::QueryCounterEXTContextANGLE)},
+ {"glQueryMatrixxOES", P(gl::QueryMatrixxOES)},
+ {"glQueryMatrixxOESContextANGLE", P(gl::QueryMatrixxOESContextANGLE)},
+ {"glReadBuffer", P(gl::ReadBuffer)},
+ {"glReadBufferContextANGLE", P(gl::ReadBufferContextANGLE)},
+ {"glReadPixels", P(gl::ReadPixels)},
+ {"glReadPixelsContextANGLE", P(gl::ReadPixelsContextANGLE)},
+ {"glReadPixelsRobustANGLE", P(gl::ReadPixelsRobustANGLE)},
+ {"glReadPixelsRobustANGLEContextANGLE", P(gl::ReadPixelsRobustANGLEContextANGLE)},
+ {"glReadnPixelsEXT", P(gl::ReadnPixelsEXT)},
+ {"glReadnPixelsEXTContextANGLE", P(gl::ReadnPixelsEXTContextANGLE)},
+ {"glReadnPixelsRobustANGLE", P(gl::ReadnPixelsRobustANGLE)},
+ {"glReadnPixelsRobustANGLEContextANGLE", P(gl::ReadnPixelsRobustANGLEContextANGLE)},
+ {"glReleaseShaderCompiler", P(gl::ReleaseShaderCompiler)},
+ {"glReleaseShaderCompilerContextANGLE", P(gl::ReleaseShaderCompilerContextANGLE)},
+ {"glRenderbufferStorage", P(gl::RenderbufferStorage)},
+ {"glRenderbufferStorageContextANGLE", P(gl::RenderbufferStorageContextANGLE)},
+ {"glRenderbufferStorageMultisample", P(gl::RenderbufferStorageMultisample)},
+ {"glRenderbufferStorageMultisampleANGLE", P(gl::RenderbufferStorageMultisampleANGLE)},
+ {"glRenderbufferStorageMultisampleANGLEContextANGLE",
+ P(gl::RenderbufferStorageMultisampleANGLEContextANGLE)},
+ {"glRenderbufferStorageMultisampleContextANGLE",
+ P(gl::RenderbufferStorageMultisampleContextANGLE)},
+ {"glRenderbufferStorageOES", P(gl::RenderbufferStorageOES)},
+ {"glRenderbufferStorageOESContextANGLE", P(gl::RenderbufferStorageOESContextANGLE)},
+ {"glRequestExtensionANGLE", P(gl::RequestExtensionANGLE)},
+ {"glRequestExtensionANGLEContextANGLE", P(gl::RequestExtensionANGLEContextANGLE)},
+ {"glResumeTransformFeedback", P(gl::ResumeTransformFeedback)},
+ {"glResumeTransformFeedbackContextANGLE", P(gl::ResumeTransformFeedbackContextANGLE)},
+ {"glRotatef", P(gl::Rotatef)},
+ {"glRotatefContextANGLE", P(gl::RotatefContextANGLE)},
+ {"glRotatex", P(gl::Rotatex)},
+ {"glRotatexContextANGLE", P(gl::RotatexContextANGLE)},
+ {"glSampleCoverage", P(gl::SampleCoverage)},
+ {"glSampleCoverageContextANGLE", P(gl::SampleCoverageContextANGLE)},
+ {"glSampleCoveragex", P(gl::SampleCoveragex)},
+ {"glSampleCoveragexContextANGLE", P(gl::SampleCoveragexContextANGLE)},
+ {"glSampleMaski", P(gl::SampleMaski)},
+ {"glSampleMaskiANGLE", P(gl::SampleMaskiANGLE)},
+ {"glSampleMaskiANGLEContextANGLE", P(gl::SampleMaskiANGLEContextANGLE)},
+ {"glSampleMaskiContextANGLE", P(gl::SampleMaskiContextANGLE)},
+ {"glSamplerParameterIivOES", P(gl::SamplerParameterIivOES)},
+ {"glSamplerParameterIivOESContextANGLE", P(gl::SamplerParameterIivOESContextANGLE)},
+ {"glSamplerParameterIivRobustANGLE", P(gl::SamplerParameterIivRobustANGLE)},
+ {"glSamplerParameterIivRobustANGLEContextANGLE",
+ P(gl::SamplerParameterIivRobustANGLEContextANGLE)},
+ {"glSamplerParameterIuivOES", P(gl::SamplerParameterIuivOES)},
+ {"glSamplerParameterIuivOESContextANGLE", P(gl::SamplerParameterIuivOESContextANGLE)},
+ {"glSamplerParameterIuivRobustANGLE", P(gl::SamplerParameterIuivRobustANGLE)},
+ {"glSamplerParameterIuivRobustANGLEContextANGLE",
+ P(gl::SamplerParameterIuivRobustANGLEContextANGLE)},
+ {"glSamplerParameterf", P(gl::SamplerParameterf)},
+ {"glSamplerParameterfContextANGLE", P(gl::SamplerParameterfContextANGLE)},
+ {"glSamplerParameterfv", P(gl::SamplerParameterfv)},
+ {"glSamplerParameterfvContextANGLE", P(gl::SamplerParameterfvContextANGLE)},
+ {"glSamplerParameterfvRobustANGLE", P(gl::SamplerParameterfvRobustANGLE)},
+ {"glSamplerParameterfvRobustANGLEContextANGLE",
+ P(gl::SamplerParameterfvRobustANGLEContextANGLE)},
+ {"glSamplerParameteri", P(gl::SamplerParameteri)},
+ {"glSamplerParameteriContextANGLE", P(gl::SamplerParameteriContextANGLE)},
+ {"glSamplerParameteriv", P(gl::SamplerParameteriv)},
+ {"glSamplerParameterivContextANGLE", P(gl::SamplerParameterivContextANGLE)},
+ {"glSamplerParameterivRobustANGLE", P(gl::SamplerParameterivRobustANGLE)},
+ {"glSamplerParameterivRobustANGLEContextANGLE",
+ P(gl::SamplerParameterivRobustANGLEContextANGLE)},
+ {"glScalef", P(gl::Scalef)},
+ {"glScalefContextANGLE", P(gl::ScalefContextANGLE)},
+ {"glScalex", P(gl::Scalex)},
+ {"glScalexContextANGLE", P(gl::ScalexContextANGLE)},
+ {"glScissor", P(gl::Scissor)},
+ {"glScissorContextANGLE", P(gl::ScissorContextANGLE)},
+ {"glSemaphoreParameterui64vEXT", P(gl::SemaphoreParameterui64vEXT)},
+ {"glSemaphoreParameterui64vEXTContextANGLE", P(gl::SemaphoreParameterui64vEXTContextANGLE)},
+ {"glSetFenceNV", P(gl::SetFenceNV)},
+ {"glSetFenceNVContextANGLE", P(gl::SetFenceNVContextANGLE)},
+ {"glShadeModel", P(gl::ShadeModel)},
+ {"glShadeModelContextANGLE", P(gl::ShadeModelContextANGLE)},
+ {"glShaderBinary", P(gl::ShaderBinary)},
+ {"glShaderBinaryContextANGLE", P(gl::ShaderBinaryContextANGLE)},
+ {"glShaderSource", P(gl::ShaderSource)},
+ {"glShaderSourceContextANGLE", P(gl::ShaderSourceContextANGLE)},
+ {"glSignalSemaphoreEXT", P(gl::SignalSemaphoreEXT)},
+ {"glSignalSemaphoreEXTContextANGLE", P(gl::SignalSemaphoreEXTContextANGLE)},
+ {"glStencilFillPathCHROMIUM", P(gl::StencilFillPathCHROMIUM)},
+ {"glStencilFillPathCHROMIUMContextANGLE", P(gl::StencilFillPathCHROMIUMContextANGLE)},
+ {"glStencilFillPathInstancedCHROMIUM", P(gl::StencilFillPathInstancedCHROMIUM)},
+ {"glStencilFillPathInstancedCHROMIUMContextANGLE",
+ P(gl::StencilFillPathInstancedCHROMIUMContextANGLE)},
+ {"glStencilFunc", P(gl::StencilFunc)},
+ {"glStencilFuncContextANGLE", P(gl::StencilFuncContextANGLE)},
+ {"glStencilFuncSeparate", P(gl::StencilFuncSeparate)},
+ {"glStencilFuncSeparateContextANGLE", P(gl::StencilFuncSeparateContextANGLE)},
+ {"glStencilMask", P(gl::StencilMask)},
+ {"glStencilMaskContextANGLE", P(gl::StencilMaskContextANGLE)},
+ {"glStencilMaskSeparate", P(gl::StencilMaskSeparate)},
+ {"glStencilMaskSeparateContextANGLE", P(gl::StencilMaskSeparateContextANGLE)},
+ {"glStencilOp", P(gl::StencilOp)},
+ {"glStencilOpContextANGLE", P(gl::StencilOpContextANGLE)},
+ {"glStencilOpSeparate", P(gl::StencilOpSeparate)},
+ {"glStencilOpSeparateContextANGLE", P(gl::StencilOpSeparateContextANGLE)},
+ {"glStencilStrokePathCHROMIUM", P(gl::StencilStrokePathCHROMIUM)},
+ {"glStencilStrokePathCHROMIUMContextANGLE", P(gl::StencilStrokePathCHROMIUMContextANGLE)},
+ {"glStencilStrokePathInstancedCHROMIUM", P(gl::StencilStrokePathInstancedCHROMIUM)},
+ {"glStencilStrokePathInstancedCHROMIUMContextANGLE",
+ P(gl::StencilStrokePathInstancedCHROMIUMContextANGLE)},
+ {"glStencilThenCoverFillPathCHROMIUM", P(gl::StencilThenCoverFillPathCHROMIUM)},
+ {"glStencilThenCoverFillPathCHROMIUMContextANGLE",
+ P(gl::StencilThenCoverFillPathCHROMIUMContextANGLE)},
+ {"glStencilThenCoverFillPathInstancedCHROMIUM",
+ P(gl::StencilThenCoverFillPathInstancedCHROMIUM)},
+ {"glStencilThenCoverFillPathInstancedCHROMIUMContextANGLE",
+ P(gl::StencilThenCoverFillPathInstancedCHROMIUMContextANGLE)},
+ {"glStencilThenCoverStrokePathCHROMIUM", P(gl::StencilThenCoverStrokePathCHROMIUM)},
+ {"glStencilThenCoverStrokePathCHROMIUMContextANGLE",
+ P(gl::StencilThenCoverStrokePathCHROMIUMContextANGLE)},
+ {"glStencilThenCoverStrokePathInstancedCHROMIUM",
+ P(gl::StencilThenCoverStrokePathInstancedCHROMIUM)},
+ {"glStencilThenCoverStrokePathInstancedCHROMIUMContextANGLE",
+ P(gl::StencilThenCoverStrokePathInstancedCHROMIUMContextANGLE)},
+ {"glTestFenceNV", P(gl::TestFenceNV)},
+ {"glTestFenceNVContextANGLE", P(gl::TestFenceNVContextANGLE)},
+ {"glTexCoordPointer", P(gl::TexCoordPointer)},
+ {"glTexCoordPointerContextANGLE", P(gl::TexCoordPointerContextANGLE)},
+ {"glTexEnvf", P(gl::TexEnvf)},
+ {"glTexEnvfContextANGLE", P(gl::TexEnvfContextANGLE)},
+ {"glTexEnvfv", P(gl::TexEnvfv)},
+ {"glTexEnvfvContextANGLE", P(gl::TexEnvfvContextANGLE)},
+ {"glTexEnvi", P(gl::TexEnvi)},
+ {"glTexEnviContextANGLE", P(gl::TexEnviContextANGLE)},
+ {"glTexEnviv", P(gl::TexEnviv)},
+ {"glTexEnvivContextANGLE", P(gl::TexEnvivContextANGLE)},
+ {"glTexEnvx", P(gl::TexEnvx)},
+ {"glTexEnvxContextANGLE", P(gl::TexEnvxContextANGLE)},
+ {"glTexEnvxv", P(gl::TexEnvxv)},
+ {"glTexEnvxvContextANGLE", P(gl::TexEnvxvContextANGLE)},
+ {"glTexGenfOES", P(gl::TexGenfOES)},
+ {"glTexGenfOESContextANGLE", P(gl::TexGenfOESContextANGLE)},
+ {"glTexGenfvOES", P(gl::TexGenfvOES)},
+ {"glTexGenfvOESContextANGLE", P(gl::TexGenfvOESContextANGLE)},
+ {"glTexGeniOES", P(gl::TexGeniOES)},
+ {"glTexGeniOESContextANGLE", P(gl::TexGeniOESContextANGLE)},
+ {"glTexGenivOES", P(gl::TexGenivOES)},
+ {"glTexGenivOESContextANGLE", P(gl::TexGenivOESContextANGLE)},
+ {"glTexGenxOES", P(gl::TexGenxOES)},
+ {"glTexGenxOESContextANGLE", P(gl::TexGenxOESContextANGLE)},
+ {"glTexGenxvOES", P(gl::TexGenxvOES)},
+ {"glTexGenxvOESContextANGLE", P(gl::TexGenxvOESContextANGLE)},
+ {"glTexImage2D", P(gl::TexImage2D)},
+ {"glTexImage2DContextANGLE", P(gl::TexImage2DContextANGLE)},
+ {"glTexImage2DExternalANGLE", P(gl::TexImage2DExternalANGLE)},
+ {"glTexImage2DExternalANGLEContextANGLE", P(gl::TexImage2DExternalANGLEContextANGLE)},
+ {"glTexImage2DRobustANGLE", P(gl::TexImage2DRobustANGLE)},
+ {"glTexImage2DRobustANGLEContextANGLE", P(gl::TexImage2DRobustANGLEContextANGLE)},
+ {"glTexImage3D", P(gl::TexImage3D)},
+ {"glTexImage3DContextANGLE", P(gl::TexImage3DContextANGLE)},
+ {"glTexImage3DOES", P(gl::TexImage3DOES)},
+ {"glTexImage3DOESContextANGLE", P(gl::TexImage3DOESContextANGLE)},
+ {"glTexImage3DRobustANGLE", P(gl::TexImage3DRobustANGLE)},
+ {"glTexImage3DRobustANGLEContextANGLE", P(gl::TexImage3DRobustANGLEContextANGLE)},
+ {"glTexParameterIivOES", P(gl::TexParameterIivOES)},
+ {"glTexParameterIivOESContextANGLE", P(gl::TexParameterIivOESContextANGLE)},
+ {"glTexParameterIivRobustANGLE", P(gl::TexParameterIivRobustANGLE)},
+ {"glTexParameterIivRobustANGLEContextANGLE", P(gl::TexParameterIivRobustANGLEContextANGLE)},
+ {"glTexParameterIuivOES", P(gl::TexParameterIuivOES)},
+ {"glTexParameterIuivOESContextANGLE", P(gl::TexParameterIuivOESContextANGLE)},
+ {"glTexParameterIuivRobustANGLE", P(gl::TexParameterIuivRobustANGLE)},
+ {"glTexParameterIuivRobustANGLEContextANGLE", P(gl::TexParameterIuivRobustANGLEContextANGLE)},
+ {"glTexParameterf", P(gl::TexParameterf)},
+ {"glTexParameterfContextANGLE", P(gl::TexParameterfContextANGLE)},
+ {"glTexParameterfv", P(gl::TexParameterfv)},
+ {"glTexParameterfvContextANGLE", P(gl::TexParameterfvContextANGLE)},
+ {"glTexParameterfvRobustANGLE", P(gl::TexParameterfvRobustANGLE)},
+ {"glTexParameterfvRobustANGLEContextANGLE", P(gl::TexParameterfvRobustANGLEContextANGLE)},
+ {"glTexParameteri", P(gl::TexParameteri)},
+ {"glTexParameteriContextANGLE", P(gl::TexParameteriContextANGLE)},
+ {"glTexParameteriv", P(gl::TexParameteriv)},
+ {"glTexParameterivContextANGLE", P(gl::TexParameterivContextANGLE)},
+ {"glTexParameterivRobustANGLE", P(gl::TexParameterivRobustANGLE)},
+ {"glTexParameterivRobustANGLEContextANGLE", P(gl::TexParameterivRobustANGLEContextANGLE)},
+ {"glTexParameterx", P(gl::TexParameterx)},
+ {"glTexParameterxContextANGLE", P(gl::TexParameterxContextANGLE)},
+ {"glTexParameterxv", P(gl::TexParameterxv)},
+ {"glTexParameterxvContextANGLE", P(gl::TexParameterxvContextANGLE)},
+ {"glTexStorage1DEXT", P(gl::TexStorage1DEXT)},
+ {"glTexStorage1DEXTContextANGLE", P(gl::TexStorage1DEXTContextANGLE)},
+ {"glTexStorage2D", P(gl::TexStorage2D)},
+ {"glTexStorage2DContextANGLE", P(gl::TexStorage2DContextANGLE)},
+ {"glTexStorage2DEXT", P(gl::TexStorage2DEXT)},
+ {"glTexStorage2DEXTContextANGLE", P(gl::TexStorage2DEXTContextANGLE)},
+ {"glTexStorage2DMultisample", P(gl::TexStorage2DMultisample)},
+ {"glTexStorage2DMultisampleANGLE", P(gl::TexStorage2DMultisampleANGLE)},
+ {"glTexStorage2DMultisampleANGLEContextANGLE", P(gl::TexStorage2DMultisampleANGLEContextANGLE)},
+ {"glTexStorage2DMultisampleContextANGLE", P(gl::TexStorage2DMultisampleContextANGLE)},
+ {"glTexStorage3D", P(gl::TexStorage3D)},
+ {"glTexStorage3DContextANGLE", P(gl::TexStorage3DContextANGLE)},
+ {"glTexStorage3DEXT", P(gl::TexStorage3DEXT)},
+ {"glTexStorage3DEXTContextANGLE", P(gl::TexStorage3DEXTContextANGLE)},
+ {"glTexStorage3DMultisampleOES", P(gl::TexStorage3DMultisampleOES)},
+ {"glTexStorage3DMultisampleOESContextANGLE", P(gl::TexStorage3DMultisampleOESContextANGLE)},
+ {"glTexStorageMem2DEXT", P(gl::TexStorageMem2DEXT)},
+ {"glTexStorageMem2DEXTContextANGLE", P(gl::TexStorageMem2DEXTContextANGLE)},
+ {"glTexStorageMem2DMultisampleEXT", P(gl::TexStorageMem2DMultisampleEXT)},
+ {"glTexStorageMem2DMultisampleEXTContextANGLE",
+ P(gl::TexStorageMem2DMultisampleEXTContextANGLE)},
+ {"glTexStorageMem3DEXT", P(gl::TexStorageMem3DEXT)},
+ {"glTexStorageMem3DEXTContextANGLE", P(gl::TexStorageMem3DEXTContextANGLE)},
+ {"glTexStorageMem3DMultisampleEXT", P(gl::TexStorageMem3DMultisampleEXT)},
+ {"glTexStorageMem3DMultisampleEXTContextANGLE",
+ P(gl::TexStorageMem3DMultisampleEXTContextANGLE)},
+ {"glTexSubImage2D", P(gl::TexSubImage2D)},
+ {"glTexSubImage2DContextANGLE", P(gl::TexSubImage2DContextANGLE)},
+ {"glTexSubImage2DRobustANGLE", P(gl::TexSubImage2DRobustANGLE)},
+ {"glTexSubImage2DRobustANGLEContextANGLE", P(gl::TexSubImage2DRobustANGLEContextANGLE)},
+ {"glTexSubImage3D", P(gl::TexSubImage3D)},
+ {"glTexSubImage3DContextANGLE", P(gl::TexSubImage3DContextANGLE)},
+ {"glTexSubImage3DOES", P(gl::TexSubImage3DOES)},
+ {"glTexSubImage3DOESContextANGLE", P(gl::TexSubImage3DOESContextANGLE)},
+ {"glTexSubImage3DRobustANGLE", P(gl::TexSubImage3DRobustANGLE)},
+ {"glTexSubImage3DRobustANGLEContextANGLE", P(gl::TexSubImage3DRobustANGLEContextANGLE)},
+ {"glTransformFeedbackVaryings", P(gl::TransformFeedbackVaryings)},
+ {"glTransformFeedbackVaryingsContextANGLE", P(gl::TransformFeedbackVaryingsContextANGLE)},
+ {"glTranslatef", P(gl::Translatef)},
+ {"glTranslatefContextANGLE", P(gl::TranslatefContextANGLE)},
+ {"glTranslatex", P(gl::Translatex)},
+ {"glTranslatexContextANGLE", P(gl::TranslatexContextANGLE)},
+ {"glUniform1f", P(gl::Uniform1f)},
+ {"glUniform1fContextANGLE", P(gl::Uniform1fContextANGLE)},
+ {"glUniform1fv", P(gl::Uniform1fv)},
+ {"glUniform1fvContextANGLE", P(gl::Uniform1fvContextANGLE)},
+ {"glUniform1i", P(gl::Uniform1i)},
+ {"glUniform1iContextANGLE", P(gl::Uniform1iContextANGLE)},
+ {"glUniform1iv", P(gl::Uniform1iv)},
+ {"glUniform1ivContextANGLE", P(gl::Uniform1ivContextANGLE)},
+ {"glUniform1ui", P(gl::Uniform1ui)},
+ {"glUniform1uiContextANGLE", P(gl::Uniform1uiContextANGLE)},
+ {"glUniform1uiv", P(gl::Uniform1uiv)},
+ {"glUniform1uivContextANGLE", P(gl::Uniform1uivContextANGLE)},
+ {"glUniform2f", P(gl::Uniform2f)},
+ {"glUniform2fContextANGLE", P(gl::Uniform2fContextANGLE)},
+ {"glUniform2fv", P(gl::Uniform2fv)},
+ {"glUniform2fvContextANGLE", P(gl::Uniform2fvContextANGLE)},
+ {"glUniform2i", P(gl::Uniform2i)},
+ {"glUniform2iContextANGLE", P(gl::Uniform2iContextANGLE)},
+ {"glUniform2iv", P(gl::Uniform2iv)},
+ {"glUniform2ivContextANGLE", P(gl::Uniform2ivContextANGLE)},
+ {"glUniform2ui", P(gl::Uniform2ui)},
+ {"glUniform2uiContextANGLE", P(gl::Uniform2uiContextANGLE)},
+ {"glUniform2uiv", P(gl::Uniform2uiv)},
+ {"glUniform2uivContextANGLE", P(gl::Uniform2uivContextANGLE)},
+ {"glUniform3f", P(gl::Uniform3f)},
+ {"glUniform3fContextANGLE", P(gl::Uniform3fContextANGLE)},
+ {"glUniform3fv", P(gl::Uniform3fv)},
+ {"glUniform3fvContextANGLE", P(gl::Uniform3fvContextANGLE)},
+ {"glUniform3i", P(gl::Uniform3i)},
+ {"glUniform3iContextANGLE", P(gl::Uniform3iContextANGLE)},
+ {"glUniform3iv", P(gl::Uniform3iv)},
+ {"glUniform3ivContextANGLE", P(gl::Uniform3ivContextANGLE)},
+ {"glUniform3ui", P(gl::Uniform3ui)},
+ {"glUniform3uiContextANGLE", P(gl::Uniform3uiContextANGLE)},
+ {"glUniform3uiv", P(gl::Uniform3uiv)},
+ {"glUniform3uivContextANGLE", P(gl::Uniform3uivContextANGLE)},
+ {"glUniform4f", P(gl::Uniform4f)},
+ {"glUniform4fContextANGLE", P(gl::Uniform4fContextANGLE)},
+ {"glUniform4fv", P(gl::Uniform4fv)},
+ {"glUniform4fvContextANGLE", P(gl::Uniform4fvContextANGLE)},
+ {"glUniform4i", P(gl::Uniform4i)},
+ {"glUniform4iContextANGLE", P(gl::Uniform4iContextANGLE)},
+ {"glUniform4iv", P(gl::Uniform4iv)},
+ {"glUniform4ivContextANGLE", P(gl::Uniform4ivContextANGLE)},
+ {"glUniform4ui", P(gl::Uniform4ui)},
+ {"glUniform4uiContextANGLE", P(gl::Uniform4uiContextANGLE)},
+ {"glUniform4uiv", P(gl::Uniform4uiv)},
+ {"glUniform4uivContextANGLE", P(gl::Uniform4uivContextANGLE)},
+ {"glUniformBlockBinding", P(gl::UniformBlockBinding)},
+ {"glUniformBlockBindingContextANGLE", P(gl::UniformBlockBindingContextANGLE)},
+ {"glUniformMatrix2fv", P(gl::UniformMatrix2fv)},
+ {"glUniformMatrix2fvContextANGLE", P(gl::UniformMatrix2fvContextANGLE)},
+ {"glUniformMatrix2x3fv", P(gl::UniformMatrix2x3fv)},
+ {"glUniformMatrix2x3fvContextANGLE", P(gl::UniformMatrix2x3fvContextANGLE)},
+ {"glUniformMatrix2x4fv", P(gl::UniformMatrix2x4fv)},
+ {"glUniformMatrix2x4fvContextANGLE", P(gl::UniformMatrix2x4fvContextANGLE)},
+ {"glUniformMatrix3fv", P(gl::UniformMatrix3fv)},
+ {"glUniformMatrix3fvContextANGLE", P(gl::UniformMatrix3fvContextANGLE)},
+ {"glUniformMatrix3x2fv", P(gl::UniformMatrix3x2fv)},
+ {"glUniformMatrix3x2fvContextANGLE", P(gl::UniformMatrix3x2fvContextANGLE)},
+ {"glUniformMatrix3x4fv", P(gl::UniformMatrix3x4fv)},
+ {"glUniformMatrix3x4fvContextANGLE", P(gl::UniformMatrix3x4fvContextANGLE)},
+ {"glUniformMatrix4fv", P(gl::UniformMatrix4fv)},
+ {"glUniformMatrix4fvContextANGLE", P(gl::UniformMatrix4fvContextANGLE)},
+ {"glUniformMatrix4x2fv", P(gl::UniformMatrix4x2fv)},
+ {"glUniformMatrix4x2fvContextANGLE", P(gl::UniformMatrix4x2fvContextANGLE)},
+ {"glUniformMatrix4x3fv", P(gl::UniformMatrix4x3fv)},
+ {"glUniformMatrix4x3fvContextANGLE", P(gl::UniformMatrix4x3fvContextANGLE)},
+ {"glUnmapBuffer", P(gl::UnmapBuffer)},
+ {"glUnmapBufferContextANGLE", P(gl::UnmapBufferContextANGLE)},
+ {"glUnmapBufferOES", P(gl::UnmapBufferOES)},
+ {"glUnmapBufferOESContextANGLE", P(gl::UnmapBufferOESContextANGLE)},
+ {"glUseProgram", P(gl::UseProgram)},
+ {"glUseProgramContextANGLE", P(gl::UseProgramContextANGLE)},
+ {"glUseProgramStages", P(gl::UseProgramStages)},
+ {"glUseProgramStagesContextANGLE", P(gl::UseProgramStagesContextANGLE)},
+ {"glValidateProgram", P(gl::ValidateProgram)},
+ {"glValidateProgramContextANGLE", P(gl::ValidateProgramContextANGLE)},
+ {"glValidateProgramPipeline", P(gl::ValidateProgramPipeline)},
+ {"glValidateProgramPipelineContextANGLE", P(gl::ValidateProgramPipelineContextANGLE)},
+ {"glVertexAttrib1f", P(gl::VertexAttrib1f)},
+ {"glVertexAttrib1fContextANGLE", P(gl::VertexAttrib1fContextANGLE)},
+ {"glVertexAttrib1fv", P(gl::VertexAttrib1fv)},
+ {"glVertexAttrib1fvContextANGLE", P(gl::VertexAttrib1fvContextANGLE)},
+ {"glVertexAttrib2f", P(gl::VertexAttrib2f)},
+ {"glVertexAttrib2fContextANGLE", P(gl::VertexAttrib2fContextANGLE)},
+ {"glVertexAttrib2fv", P(gl::VertexAttrib2fv)},
+ {"glVertexAttrib2fvContextANGLE", P(gl::VertexAttrib2fvContextANGLE)},
+ {"glVertexAttrib3f", P(gl::VertexAttrib3f)},
+ {"glVertexAttrib3fContextANGLE", P(gl::VertexAttrib3fContextANGLE)},
+ {"glVertexAttrib3fv", P(gl::VertexAttrib3fv)},
+ {"glVertexAttrib3fvContextANGLE", P(gl::VertexAttrib3fvContextANGLE)},
+ {"glVertexAttrib4f", P(gl::VertexAttrib4f)},
+ {"glVertexAttrib4fContextANGLE", P(gl::VertexAttrib4fContextANGLE)},
+ {"glVertexAttrib4fv", P(gl::VertexAttrib4fv)},
+ {"glVertexAttrib4fvContextANGLE", P(gl::VertexAttrib4fvContextANGLE)},
+ {"glVertexAttribBinding", P(gl::VertexAttribBinding)},
+ {"glVertexAttribBindingContextANGLE", P(gl::VertexAttribBindingContextANGLE)},
+ {"glVertexAttribDivisor", P(gl::VertexAttribDivisor)},
+ {"glVertexAttribDivisorANGLE", P(gl::VertexAttribDivisorANGLE)},
+ {"glVertexAttribDivisorANGLEContextANGLE", P(gl::VertexAttribDivisorANGLEContextANGLE)},
+ {"glVertexAttribDivisorContextANGLE", P(gl::VertexAttribDivisorContextANGLE)},
+ {"glVertexAttribDivisorEXT", P(gl::VertexAttribDivisorEXT)},
+ {"glVertexAttribDivisorEXTContextANGLE", P(gl::VertexAttribDivisorEXTContextANGLE)},
+ {"glVertexAttribFormat", P(gl::VertexAttribFormat)},
+ {"glVertexAttribFormatContextANGLE", P(gl::VertexAttribFormatContextANGLE)},
+ {"glVertexAttribI4i", P(gl::VertexAttribI4i)},
+ {"glVertexAttribI4iContextANGLE", P(gl::VertexAttribI4iContextANGLE)},
+ {"glVertexAttribI4iv", P(gl::VertexAttribI4iv)},
+ {"glVertexAttribI4ivContextANGLE", P(gl::VertexAttribI4ivContextANGLE)},
+ {"glVertexAttribI4ui", P(gl::VertexAttribI4ui)},
+ {"glVertexAttribI4uiContextANGLE", P(gl::VertexAttribI4uiContextANGLE)},
+ {"glVertexAttribI4uiv", P(gl::VertexAttribI4uiv)},
+ {"glVertexAttribI4uivContextANGLE", P(gl::VertexAttribI4uivContextANGLE)},
+ {"glVertexAttribIFormat", P(gl::VertexAttribIFormat)},
+ {"glVertexAttribIFormatContextANGLE", P(gl::VertexAttribIFormatContextANGLE)},
+ {"glVertexAttribIPointer", P(gl::VertexAttribIPointer)},
+ {"glVertexAttribIPointerContextANGLE", P(gl::VertexAttribIPointerContextANGLE)},
+ {"glVertexAttribPointer", P(gl::VertexAttribPointer)},
+ {"glVertexAttribPointerContextANGLE", P(gl::VertexAttribPointerContextANGLE)},
+ {"glVertexBindingDivisor", P(gl::VertexBindingDivisor)},
+ {"glVertexBindingDivisorContextANGLE", P(gl::VertexBindingDivisorContextANGLE)},
+ {"glVertexPointer", P(gl::VertexPointer)},
+ {"glVertexPointerContextANGLE", P(gl::VertexPointerContextANGLE)},
+ {"glViewport", P(gl::Viewport)},
+ {"glViewportContextANGLE", P(gl::ViewportContextANGLE)},
+ {"glWaitSemaphoreEXT", P(gl::WaitSemaphoreEXT)},
+ {"glWaitSemaphoreEXTContextANGLE", P(gl::WaitSemaphoreEXTContextANGLE)},
+ {"glWaitSync", P(gl::WaitSync)},
+ {"glWaitSyncContextANGLE", P(gl::WaitSyncContextANGLE)},
+ {"glWeightPointerOES", P(gl::WeightPointerOES)},
+ {"glWeightPointerOESContextANGLE", P(gl::WeightPointerOESContextANGLE)}};
+
+size_t g_numProcs = 1402;
+} // namespace egl
diff --git a/gfx/angle/checkout/src/libGLESv2/resource.h b/gfx/angle/checkout/src/libGLESv2/resource.h
new file mode 100644
index 0000000000..7308c2ecfd
--- /dev/null
+++ b/gfx/angle/checkout/src/libGLESv2/resource.h
@@ -0,0 +1,14 @@
+//{{NO_DEPENDENCIES}}
+// Microsoft Visual C++ generated include file.
+// Used by libGLESv2.rc
+
+// Next default values for new objects
+//
+#ifdef APSTUDIO_INVOKED
+# ifndef APSTUDIO_READONLY_SYMBOLS
+# define _APS_NEXT_RESOURCE_VALUE 101
+# define _APS_NEXT_COMMAND_VALUE 40001
+# define _APS_NEXT_CONTROL_VALUE 1001
+# define _APS_NEXT_SYMED_VALUE 101
+# endif
+#endif