diff options
Diffstat (limited to 'gfx/angle/checkout/src/libANGLE/validationESEXT_autogen.h')
-rw-r--r-- | gfx/angle/checkout/src/libANGLE/validationESEXT_autogen.h | 2646 |
1 files changed, 2646 insertions, 0 deletions
diff --git a/gfx/angle/checkout/src/libANGLE/validationESEXT_autogen.h b/gfx/angle/checkout/src/libANGLE/validationESEXT_autogen.h new file mode 100644 index 0000000000..47be44ab2f --- /dev/null +++ b/gfx/angle/checkout/src/libANGLE/validationESEXT_autogen.h @@ -0,0 +1,2646 @@ +// GENERATED FILE - DO NOT EDIT. +// Generated by generate_entry_points.py using data from gl.xml and gl_angle_ext.xml. +// +// Copyright 2020 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. +// +// validationESEXT_autogen.h: +// Validation functions for the OpenGL ES extension entry points. + +#ifndef LIBANGLE_VALIDATION_ESEXT_AUTOGEN_H_ +#define LIBANGLE_VALIDATION_ESEXT_AUTOGEN_H_ + +#include "common/PackedEnums.h" +#include "common/entry_points_enum_autogen.h" + +namespace gl +{ +class Context; + +// GL_AMD_performance_monitor +bool ValidateBeginPerfMonitorAMD(const Context *context, + angle::EntryPoint entryPoint, + GLuint monitor); +bool ValidateDeletePerfMonitorsAMD(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const GLuint *monitors); +bool ValidateEndPerfMonitorAMD(const Context *context, + angle::EntryPoint entryPoint, + GLuint monitor); +bool ValidateGenPerfMonitorsAMD(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const GLuint *monitors); +bool ValidateGetPerfMonitorCounterDataAMD(const Context *context, + angle::EntryPoint entryPoint, + GLuint monitor, + GLenum pname, + GLsizei dataSize, + const GLuint *data, + const GLint *bytesWritten); +bool ValidateGetPerfMonitorCounterInfoAMD(const Context *context, + angle::EntryPoint entryPoint, + GLuint group, + GLuint counter, + GLenum pname, + const void *data); +bool ValidateGetPerfMonitorCounterStringAMD(const Context *context, + angle::EntryPoint entryPoint, + GLuint group, + GLuint counter, + GLsizei bufSize, + const GLsizei *length, + const GLchar *counterString); +bool ValidateGetPerfMonitorCountersAMD(const Context *context, + angle::EntryPoint entryPoint, + GLuint group, + const GLint *numCounters, + const GLint *maxActiveCounters, + GLsizei counterSize, + const GLuint *counters); +bool ValidateGetPerfMonitorGroupStringAMD(const Context *context, + angle::EntryPoint entryPoint, + GLuint group, + GLsizei bufSize, + const GLsizei *length, + const GLchar *groupString); +bool ValidateGetPerfMonitorGroupsAMD(const Context *context, + angle::EntryPoint entryPoint, + const GLint *numGroups, + GLsizei groupsSize, + const GLuint *groups); +bool ValidateSelectPerfMonitorCountersAMD(const Context *context, + angle::EntryPoint entryPoint, + GLuint monitor, + GLboolean enable, + GLuint group, + GLint numCounters, + const GLuint *counterList); + +// GL_ANDROID_extension_pack_es31a + +// GL_ANGLE_base_vertex_base_instance +bool ValidateDrawArraysInstancedBaseInstanceANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLint first, + GLsizei count, + GLsizei instanceCount, + GLuint baseInstance); +bool ValidateDrawElementsInstancedBaseVertexBaseInstanceANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLsizei count, + DrawElementsType typePacked, + const GLvoid *indices, + GLsizei instanceCount, + GLint baseVertex, + GLuint baseInstance); +bool ValidateMultiDrawArraysInstancedBaseInstanceANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + const GLint *firsts, + const GLsizei *counts, + const GLsizei *instanceCounts, + const GLuint *baseInstances, + GLsizei drawcount); +bool ValidateMultiDrawElementsInstancedBaseVertexBaseInstanceANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + const GLsizei *counts, + DrawElementsType typePacked, + const GLvoid *const *indices, + const GLsizei *instanceCounts, + const GLint *baseVertices, + const GLuint *baseInstances, + GLsizei drawcount); + +// GL_ANGLE_copy_texture_3d +bool ValidateCopyTexture3DANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureID sourceIdPacked, + GLint sourceLevel, + TextureTarget destTargetPacked, + TextureID destIdPacked, + GLint destLevel, + GLint internalFormat, + GLenum destType, + GLboolean unpackFlipY, + GLboolean unpackPremultiplyAlpha, + GLboolean unpackUnmultiplyAlpha); +bool ValidateCopySubTexture3DANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureID sourceIdPacked, + GLint sourceLevel, + TextureTarget destTargetPacked, + TextureID destIdPacked, + 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_depth_texture + +// GL_ANGLE_framebuffer_blit +bool ValidateBlitFramebufferANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLint srcX0, + GLint srcY0, + GLint srcX1, + GLint srcY1, + GLint dstX0, + GLint dstY0, + GLint dstX1, + GLint dstY1, + GLbitfield mask, + GLenum filter); + +// GL_ANGLE_framebuffer_multisample +bool ValidateRenderbufferStorageMultisampleANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLsizei samples, + GLenum internalformat, + GLsizei width, + GLsizei height); + +// GL_ANGLE_get_image +bool ValidateGetTexImageANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLenum format, + GLenum type, + const void *pixels); +bool ValidateGetCompressedTexImageANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + const void *pixels); +bool ValidateGetRenderbufferImageANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum format, + GLenum type, + const void *pixels); + +// GL_ANGLE_get_tex_level_parameter +bool ValidateGetTexLevelParameterivANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLenum pname, + const GLint *params); +bool ValidateGetTexLevelParameterfvANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLenum pname, + const GLfloat *params); + +// GL_ANGLE_instanced_arrays +bool ValidateDrawArraysInstancedANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLint first, + GLsizei count, + GLsizei primcount); +bool ValidateDrawElementsInstancedANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLsizei primcount); +bool ValidateVertexAttribDivisorANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLuint index, + GLuint divisor); + +// GL_ANGLE_logic_op +bool ValidateLogicOpANGLE(const Context *context, + angle::EntryPoint entryPoint, + LogicalOperation opcodePacked); + +// GL_ANGLE_memory_object_flags +bool ValidateTexStorageMemFlags2DANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLsizei height, + MemoryObjectID memoryPacked, + GLuint64 offset, + GLbitfield createFlags, + GLbitfield usageFlags, + const void *imageCreateInfoPNext); +bool ValidateTexStorageMemFlags2DMultisampleANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei samples, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLboolean fixedSampleLocations, + MemoryObjectID memoryPacked, + GLuint64 offset, + GLbitfield createFlags, + GLbitfield usageFlags, + const void *imageCreateInfoPNext); +bool ValidateTexStorageMemFlags3DANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLsizei depth, + MemoryObjectID memoryPacked, + GLuint64 offset, + GLbitfield createFlags, + GLbitfield usageFlags, + const void *imageCreateInfoPNext); +bool ValidateTexStorageMemFlags3DMultisampleANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei samples, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLboolean fixedSampleLocations, + MemoryObjectID memoryPacked, + GLuint64 offset, + GLbitfield createFlags, + GLbitfield usageFlags, + const void *imageCreateInfoPNext); + +// GL_ANGLE_memory_object_fuchsia +bool ValidateImportMemoryZirconHandleANGLE(const Context *context, + angle::EntryPoint entryPoint, + MemoryObjectID memoryPacked, + GLuint64 size, + HandleType handleTypePacked, + GLuint handle); + +// GL_ANGLE_multi_draw +bool ValidateMultiDrawArraysANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + const GLint *firsts, + const GLsizei *counts, + GLsizei drawcount); +bool ValidateMultiDrawArraysInstancedANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + const GLint *firsts, + const GLsizei *counts, + const GLsizei *instanceCounts, + GLsizei drawcount); +bool ValidateMultiDrawElementsANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + const GLsizei *counts, + DrawElementsType typePacked, + const GLvoid *const *indices, + GLsizei drawcount); +bool ValidateMultiDrawElementsInstancedANGLE(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + const GLsizei *counts, + DrawElementsType typePacked, + const GLvoid *const *indices, + const GLsizei *instanceCounts, + GLsizei drawcount); + +// GL_ANGLE_pack_reverse_row_order + +// GL_ANGLE_program_binary + +// GL_ANGLE_provoking_vertex +bool ValidateProvokingVertexANGLE(const Context *context, + angle::EntryPoint entryPoint, + ProvokingVertexConvention modePacked); + +// GL_ANGLE_request_extension +bool ValidateRequestExtensionANGLE(const Context *context, + angle::EntryPoint entryPoint, + const GLchar *name); +bool ValidateDisableExtensionANGLE(const Context *context, + angle::EntryPoint entryPoint, + const GLchar *name); + +// GL_ANGLE_robust_client_memory +bool ValidateGetBooleanvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLboolean *params); +bool ValidateGetBufferParameterivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetFloatvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLfloat *params); +bool ValidateGetFramebufferAttachmentParameterivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum attachment, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetIntegervRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *data); +bool ValidateGetProgramivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetRenderbufferParameterivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetShaderivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID shaderPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetTexParameterfvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLfloat *params); +bool ValidateGetTexParameterivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetUniformfvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei bufSize, + const GLsizei *length, + const GLfloat *params); +bool ValidateGetUniformivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetVertexAttribfvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLuint index, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLfloat *params); +bool ValidateGetVertexAttribivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLuint index, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetVertexAttribPointervRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLuint index, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + void *const *pointer); +bool ValidateReadPixelsRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLint x, + GLint y, + GLsizei width, + GLsizei height, + GLenum format, + GLenum type, + GLsizei bufSize, + const GLsizei *length, + const GLsizei *columns, + const GLsizei *rows, + const void *pixels); +bool ValidateTexImage2DRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLint internalformat, + GLsizei width, + GLsizei height, + GLint border, + GLenum format, + GLenum type, + GLsizei bufSize, + const void *pixels); +bool ValidateTexParameterfvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + GLsizei bufSize, + const GLfloat *params); +bool ValidateTexParameterivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + GLsizei bufSize, + const GLint *params); +bool ValidateTexSubImage2DRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLint xoffset, + GLint yoffset, + GLsizei width, + GLsizei height, + GLenum format, + GLenum type, + GLsizei bufSize, + const void *pixels); +bool ValidateTexImage3DRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLint internalformat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLint border, + GLenum format, + GLenum type, + GLsizei bufSize, + const void *pixels); +bool ValidateTexSubImage3DRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLint xoffset, + GLint yoffset, + GLint zoffset, + GLsizei width, + GLsizei height, + GLsizei depth, + GLenum format, + GLenum type, + GLsizei bufSize, + const void *pixels); +bool ValidateCompressedTexImage2DRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLenum internalformat, + GLsizei width, + GLsizei height, + GLint border, + GLsizei imageSize, + GLsizei dataSize, + const GLvoid *data); +bool ValidateCompressedTexSubImage2DRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLsizei xoffset, + GLsizei yoffset, + GLsizei width, + GLsizei height, + GLenum format, + GLsizei imageSize, + GLsizei dataSize, + const GLvoid *data); +bool ValidateCompressedTexImage3DRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLenum internalformat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLint border, + GLsizei imageSize, + GLsizei dataSize, + const GLvoid *data); +bool ValidateCompressedTexSubImage3DRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLint xoffset, + GLint yoffset, + GLint zoffset, + GLsizei width, + GLsizei height, + GLsizei depth, + GLenum format, + GLsizei imageSize, + GLsizei dataSize, + const GLvoid *data); +bool ValidateGetQueryivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + QueryType targetPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetQueryObjectuivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + QueryID idPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLuint *params); +bool ValidateGetBufferPointervRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + void *const *params); +bool ValidateGetIntegeri_vRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index, + GLsizei bufSize, + const GLsizei *length, + const GLint *data); +bool ValidateGetInternalformativRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum internalformat, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetVertexAttribIivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLuint index, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetVertexAttribIuivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLuint index, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLuint *params); +bool ValidateGetUniformuivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei bufSize, + const GLsizei *length, + const GLuint *params); +bool ValidateGetActiveUniformBlockivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformBlockIndex uniformBlockIndexPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetInteger64vRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint64 *data); +bool ValidateGetInteger64i_vRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index, + GLsizei bufSize, + const GLsizei *length, + const GLint64 *data); +bool ValidateGetBufferParameteri64vRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint64 *params); +bool ValidateSamplerParameterivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLuint pname, + GLsizei bufSize, + const GLint *param); +bool ValidateSamplerParameterfvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + GLsizei bufSize, + const GLfloat *param); +bool ValidateGetSamplerParameterivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetSamplerParameterfvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLfloat *params); +bool ValidateGetFramebufferParameterivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetProgramInterfaceivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + GLenum programInterface, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetBooleani_vRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index, + GLsizei bufSize, + const GLsizei *length, + const GLboolean *data); +bool ValidateGetMultisamplefvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + GLuint index, + GLsizei bufSize, + const GLsizei *length, + const GLfloat *val); +bool ValidateGetTexLevelParameterivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetTexLevelParameterfvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLfloat *params); +bool ValidateGetPointervRobustANGLERobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + void *const *params); +bool ValidateReadnPixelsRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLint x, + GLint y, + GLsizei width, + GLsizei height, + GLenum format, + GLenum type, + GLsizei bufSize, + const GLsizei *length, + const GLsizei *columns, + const GLsizei *rows, + const void *data); +bool ValidateGetnUniformfvRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei bufSize, + const GLsizei *length, + const GLfloat *params); +bool ValidateGetnUniformivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetnUniformuivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei bufSize, + const GLsizei *length, + const GLuint *params); +bool ValidateTexParameterIivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + GLsizei bufSize, + const GLint *params); +bool ValidateTexParameterIuivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + GLsizei bufSize, + const GLuint *params); +bool ValidateGetTexParameterIivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetTexParameterIuivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLuint *params); +bool ValidateSamplerParameterIivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + GLsizei bufSize, + const GLint *param); +bool ValidateSamplerParameterIuivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + GLsizei bufSize, + const GLuint *param); +bool ValidateGetSamplerParameterIivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetSamplerParameterIuivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLuint *params); +bool ValidateGetQueryObjectivRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + QueryID idPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint *params); +bool ValidateGetQueryObjecti64vRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + QueryID idPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLint64 *params); +bool ValidateGetQueryObjectui64vRobustANGLE(const Context *context, + angle::EntryPoint entryPoint, + QueryID idPacked, + GLenum pname, + GLsizei bufSize, + const GLsizei *length, + const GLuint64 *params); + +// GL_ANGLE_robust_resource_initialization + +// GL_ANGLE_semaphore_fuchsia +bool ValidateImportSemaphoreZirconHandleANGLE(const Context *context, + angle::EntryPoint entryPoint, + SemaphoreID semaphorePacked, + HandleType handleTypePacked, + GLuint handle); + +// GL_ANGLE_shader_pixel_local_storage +bool ValidateFramebufferMemorylessPixelLocalStorageANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLint plane, + GLenum internalformat); +bool ValidateFramebufferTexturePixelLocalStorageANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLint plane, + TextureID backingtexturePacked, + GLint level, + GLint layer); +bool ValidateBeginPixelLocalStorageANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLsizei planes, + const GLenum *loadops, + const void *cleardata); +bool ValidateEndPixelLocalStorageANGLE(const Context *context, angle::EntryPoint entryPoint); +bool ValidatePixelLocalStorageBarrierANGLE(const Context *context, angle::EntryPoint entryPoint); + +// GL_ANGLE_texture_compression_dxt3 + +// GL_ANGLE_texture_compression_dxt5 + +// GL_ANGLE_texture_external_update +bool ValidateTexImage2DExternalANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLint internalformat, + GLsizei width, + GLsizei height, + GLint border, + GLenum format, + GLenum type); +bool ValidateInvalidateTextureANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked); + +// GL_ANGLE_texture_multisample +bool ValidateTexStorage2DMultisampleANGLE(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei samples, + GLenum internalformat, + GLsizei width, + GLsizei height, + GLboolean fixedsamplelocations); +bool ValidateGetMultisamplefvANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + GLuint index, + const GLfloat *val); +bool ValidateSampleMaskiANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLuint maskNumber, + GLbitfield mask); + +// GL_ANGLE_texture_usage + +// GL_ANGLE_translated_shader_source +bool ValidateGetTranslatedShaderSourceANGLE(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID shaderPacked, + GLsizei bufSize, + const GLsizei *length, + const GLchar *source); + +// GL_ANGLE_vulkan_image +bool ValidateAcquireTexturesANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLuint numTextures, + const TextureID *texturesPacked, + const GLenum *layouts); +bool ValidateReleaseTexturesANGLE(const Context *context, + angle::EntryPoint entryPoint, + GLuint numTextures, + const TextureID *texturesPacked, + const GLenum *layouts); + +// GL_APPLE_clip_distance + +// GL_ARB_sync + +// GL_CHROMIUM_bind_uniform_location +bool ValidateBindUniformLocationCHROMIUM(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + const GLchar *name); + +// GL_CHROMIUM_copy_compressed_texture +bool ValidateCompressedCopyTextureCHROMIUM(const Context *context, + angle::EntryPoint entryPoint, + TextureID sourceIdPacked, + TextureID destIdPacked); + +// GL_CHROMIUM_copy_texture +bool ValidateCopyTextureCHROMIUM(const Context *context, + angle::EntryPoint entryPoint, + TextureID sourceIdPacked, + GLint sourceLevel, + TextureTarget destTargetPacked, + TextureID destIdPacked, + GLint destLevel, + GLint internalFormat, + GLenum destType, + GLboolean unpackFlipY, + GLboolean unpackPremultiplyAlpha, + GLboolean unpackUnmultiplyAlpha); +bool ValidateCopySubTextureCHROMIUM(const Context *context, + angle::EntryPoint entryPoint, + TextureID sourceIdPacked, + GLint sourceLevel, + TextureTarget destTargetPacked, + TextureID destIdPacked, + 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 +bool ValidateCoverageModulationCHROMIUM(const Context *context, + angle::EntryPoint entryPoint, + GLenum components); + +// GL_CHROMIUM_lose_context +bool ValidateLoseContextCHROMIUM(const Context *context, + angle::EntryPoint entryPoint, + GraphicsResetStatus currentPacked, + GraphicsResetStatus otherPacked); + +// GL_EXT_EGL_image_array + +// GL_EXT_EGL_image_storage +bool ValidateEGLImageTargetTexStorageEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLeglImageOES image, + const GLint *attrib_list); +bool ValidateEGLImageTargetTextureStorageEXT(const Context *context, + angle::EntryPoint entryPoint, + GLuint texture, + GLeglImageOES image, + const GLint *attrib_list); + +// GL_EXT_YUV_target + +// GL_EXT_base_instance +bool ValidateDrawArraysInstancedBaseInstanceEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLint first, + GLsizei count, + GLsizei instancecount, + GLuint baseinstance); +bool ValidateDrawElementsInstancedBaseInstanceEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLsizei instancecount, + GLuint baseinstance); +bool ValidateDrawElementsInstancedBaseVertexBaseInstanceEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLsizei instancecount, + GLint basevertex, + GLuint baseinstance); + +// GL_EXT_blend_func_extended +bool ValidateBindFragDataLocationEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + GLuint color, + const GLchar *name); +bool ValidateBindFragDataLocationIndexedEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + GLuint colorNumber, + GLuint index, + const GLchar *name); +bool ValidateGetFragDataIndexEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + const GLchar *name); +bool ValidateGetProgramResourceLocationIndexEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + GLenum programInterface, + const GLchar *name); + +// GL_EXT_blend_minmax + +// GL_EXT_buffer_storage +bool ValidateBufferStorageEXT(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked, + GLsizeiptr size, + const void *data, + GLbitfield flags); + +// GL_EXT_clip_control +bool ValidateClipControlEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum origin, + GLenum depth); + +// GL_EXT_clip_cull_distance + +// GL_EXT_color_buffer_float + +// GL_EXT_color_buffer_half_float + +// GL_EXT_copy_image +bool ValidateCopyImageSubDataEXT(const Context *context, + angle::EntryPoint entryPoint, + GLuint srcName, + GLenum srcTarget, + GLint srcLevel, + GLint srcX, + GLint srcY, + GLint srcZ, + GLuint dstName, + GLenum dstTarget, + GLint dstLevel, + GLint dstX, + GLint dstY, + GLint dstZ, + GLsizei srcWidth, + GLsizei srcHeight, + GLsizei srcDepth); + +// GL_EXT_debug_label +bool ValidateGetObjectLabelEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum type, + GLuint object, + GLsizei bufSize, + const GLsizei *length, + const GLchar *label); +bool ValidateLabelObjectEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum type, + GLuint object, + GLsizei length, + const GLchar *label); + +// GL_EXT_debug_marker +bool ValidateInsertEventMarkerEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei length, + const GLchar *marker); +bool ValidatePopGroupMarkerEXT(const Context *context, angle::EntryPoint entryPoint); +bool ValidatePushGroupMarkerEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei length, + const GLchar *marker); + +// GL_EXT_discard_framebuffer +bool ValidateDiscardFramebufferEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLsizei numAttachments, + const GLenum *attachments); + +// GL_EXT_disjoint_timer_query +bool ValidateBeginQueryEXT(const Context *context, + angle::EntryPoint entryPoint, + QueryType targetPacked, + QueryID idPacked); +bool ValidateDeleteQueriesEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const QueryID *idsPacked); +bool ValidateEndQueryEXT(const Context *context, + angle::EntryPoint entryPoint, + QueryType targetPacked); +bool ValidateGenQueriesEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const QueryID *idsPacked); +bool ValidateGetInteger64vEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + const GLint64 *data); +bool ValidateGetQueryObjecti64vEXT(const Context *context, + angle::EntryPoint entryPoint, + QueryID idPacked, + GLenum pname, + const GLint64 *params); +bool ValidateGetQueryObjectivEXT(const Context *context, + angle::EntryPoint entryPoint, + QueryID idPacked, + GLenum pname, + const GLint *params); +bool ValidateGetQueryObjectui64vEXT(const Context *context, + angle::EntryPoint entryPoint, + QueryID idPacked, + GLenum pname, + const GLuint64 *params); +bool ValidateGetQueryObjectuivEXT(const Context *context, + angle::EntryPoint entryPoint, + QueryID idPacked, + GLenum pname, + const GLuint *params); +bool ValidateGetQueryivEXT(const Context *context, + angle::EntryPoint entryPoint, + QueryType targetPacked, + GLenum pname, + const GLint *params); +bool ValidateIsQueryEXT(const Context *context, angle::EntryPoint entryPoint, QueryID idPacked); +bool ValidateQueryCounterEXT(const Context *context, + angle::EntryPoint entryPoint, + QueryID idPacked, + QueryType targetPacked); + +// GL_EXT_draw_buffers +bool ValidateDrawBuffersEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const GLenum *bufs); + +// GL_EXT_draw_buffers_indexed +bool ValidateBlendEquationSeparateiEXT(const Context *context, + angle::EntryPoint entryPoint, + GLuint buf, + GLenum modeRGB, + GLenum modeAlpha); +bool ValidateBlendEquationiEXT(const Context *context, + angle::EntryPoint entryPoint, + GLuint buf, + GLenum mode); +bool ValidateBlendFuncSeparateiEXT(const Context *context, + angle::EntryPoint entryPoint, + GLuint buf, + GLenum srcRGB, + GLenum dstRGB, + GLenum srcAlpha, + GLenum dstAlpha); +bool ValidateBlendFunciEXT(const Context *context, + angle::EntryPoint entryPoint, + GLuint buf, + GLenum src, + GLenum dst); +bool ValidateColorMaskiEXT(const Context *context, + angle::EntryPoint entryPoint, + GLuint index, + GLboolean r, + GLboolean g, + GLboolean b, + GLboolean a); +bool ValidateDisableiEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index); +bool ValidateEnableiEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index); +bool ValidateIsEnablediEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index); + +// GL_EXT_draw_elements_base_vertex +bool ValidateDrawElementsBaseVertexEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLint basevertex); +bool ValidateDrawElementsInstancedBaseVertexEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLsizei instancecount, + GLint basevertex); +bool ValidateDrawRangeElementsBaseVertexEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLuint start, + GLuint end, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLint basevertex); +bool ValidateMultiDrawElementsBaseVertexEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + const GLsizei *count, + DrawElementsType typePacked, + const void *const *indices, + GLsizei drawcount, + const GLint *basevertex); + +// GL_EXT_external_buffer +bool ValidateBufferStorageExternalEXT(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked, + GLintptr offset, + GLsizeiptr size, + GLeglClientBufferEXT clientBuffer, + GLbitfield flags); +bool ValidateNamedBufferStorageExternalEXT(const Context *context, + angle::EntryPoint entryPoint, + GLuint buffer, + GLintptr offset, + GLsizeiptr size, + GLeglClientBufferEXT clientBuffer, + GLbitfield flags); + +// GL_EXT_float_blend + +// GL_EXT_geometry_shader +bool ValidateFramebufferTextureEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum attachment, + TextureID texturePacked, + GLint level); + +// GL_EXT_gpu_shader5 + +// GL_EXT_instanced_arrays +bool ValidateDrawArraysInstancedEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLint start, + GLsizei count, + GLsizei primcount); +bool ValidateDrawElementsInstancedEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLsizei primcount); +bool ValidateVertexAttribDivisorEXT(const Context *context, + angle::EntryPoint entryPoint, + GLuint index, + GLuint divisor); + +// GL_EXT_map_buffer_range +bool ValidateFlushMappedBufferRangeEXT(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked, + GLintptr offset, + GLsizeiptr length); +bool ValidateMapBufferRangeEXT(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked, + GLintptr offset, + GLsizeiptr length, + GLbitfield access); + +// GL_EXT_memory_object +bool ValidateBufferStorageMemEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizeiptr size, + MemoryObjectID memoryPacked, + GLuint64 offset); +bool ValidateCreateMemoryObjectsEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const MemoryObjectID *memoryObjectsPacked); +bool ValidateDeleteMemoryObjectsEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const MemoryObjectID *memoryObjectsPacked); +bool ValidateGetMemoryObjectParameterivEXT(const Context *context, + angle::EntryPoint entryPoint, + MemoryObjectID memoryObjectPacked, + GLenum pname, + const GLint *params); +bool ValidateGetUnsignedBytevEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + const GLubyte *data); +bool ValidateGetUnsignedBytei_vEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index, + const GLubyte *data); +bool ValidateIsMemoryObjectEXT(const Context *context, + angle::EntryPoint entryPoint, + MemoryObjectID memoryObjectPacked); +bool ValidateMemoryObjectParameterivEXT(const Context *context, + angle::EntryPoint entryPoint, + MemoryObjectID memoryObjectPacked, + GLenum pname, + const GLint *params); +bool ValidateTexStorageMem2DEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLsizei height, + MemoryObjectID memoryPacked, + GLuint64 offset); +bool ValidateTexStorageMem2DMultisampleEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei samples, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLboolean fixedSampleLocations, + MemoryObjectID memoryPacked, + GLuint64 offset); +bool ValidateTexStorageMem3DEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei levels, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLsizei depth, + MemoryObjectID memoryPacked, + GLuint64 offset); +bool ValidateTexStorageMem3DMultisampleEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei samples, + GLenum internalFormat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLboolean fixedSampleLocations, + MemoryObjectID memoryPacked, + GLuint64 offset); + +// GL_EXT_memory_object_fd +bool ValidateImportMemoryFdEXT(const Context *context, + angle::EntryPoint entryPoint, + MemoryObjectID memoryPacked, + GLuint64 size, + HandleType handleTypePacked, + GLint fd); + +// GL_EXT_multi_draw_indirect +bool ValidateMultiDrawArraysIndirectEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + const void *indirect, + GLsizei drawcount, + GLsizei stride); +bool ValidateMultiDrawElementsIndirectEXT(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + DrawElementsType typePacked, + const void *indirect, + GLsizei drawcount, + GLsizei stride); + +// GL_EXT_multisampled_render_to_texture +bool ValidateFramebufferTexture2DMultisampleEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum attachment, + TextureTarget textargetPacked, + TextureID texturePacked, + GLint level, + GLsizei samples); +bool ValidateRenderbufferStorageMultisampleEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLsizei samples, + GLenum internalformat, + GLsizei width, + GLsizei height); + +// GL_EXT_multisampled_render_to_texture2 + +// GL_EXT_occlusion_query_boolean + +// GL_EXT_primitive_bounding_box +bool ValidatePrimitiveBoundingBoxEXT(const Context *context, + angle::EntryPoint entryPoint, + GLfloat minX, + GLfloat minY, + GLfloat minZ, + GLfloat minW, + GLfloat maxX, + GLfloat maxY, + GLfloat maxZ, + GLfloat maxW); + +// GL_EXT_protected_textures + +// GL_EXT_pvrtc_sRGB + +// GL_EXT_read_format_bgra + +// GL_EXT_robustness +bool ValidateGetGraphicsResetStatusEXT(const Context *context, angle::EntryPoint entryPoint); +bool ValidateGetnUniformfvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei bufSize, + const GLfloat *params); +bool ValidateGetnUniformivEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei bufSize, + const GLint *params); +bool ValidateReadnPixelsEXT(const Context *context, + angle::EntryPoint entryPoint, + GLint x, + GLint y, + GLsizei width, + GLsizei height, + GLenum format, + GLenum type, + GLsizei bufSize, + const void *data); + +// GL_EXT_sRGB + +// GL_EXT_sRGB_write_control + +// GL_EXT_semaphore +bool ValidateDeleteSemaphoresEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const SemaphoreID *semaphoresPacked); +bool ValidateGenSemaphoresEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const SemaphoreID *semaphoresPacked); +bool ValidateGetSemaphoreParameterui64vEXT(const Context *context, + angle::EntryPoint entryPoint, + SemaphoreID semaphorePacked, + GLenum pname, + const GLuint64 *params); +bool ValidateIsSemaphoreEXT(const Context *context, + angle::EntryPoint entryPoint, + SemaphoreID semaphorePacked); +bool ValidateSemaphoreParameterui64vEXT(const Context *context, + angle::EntryPoint entryPoint, + SemaphoreID semaphorePacked, + GLenum pname, + const GLuint64 *params); +bool ValidateSignalSemaphoreEXT(const Context *context, + angle::EntryPoint entryPoint, + SemaphoreID semaphorePacked, + GLuint numBufferBarriers, + const BufferID *buffersPacked, + GLuint numTextureBarriers, + const TextureID *texturesPacked, + const GLenum *dstLayouts); +bool ValidateWaitSemaphoreEXT(const Context *context, + angle::EntryPoint entryPoint, + SemaphoreID semaphorePacked, + GLuint numBufferBarriers, + const BufferID *buffersPacked, + GLuint numTextureBarriers, + const TextureID *texturesPacked, + const GLenum *srcLayouts); + +// GL_EXT_semaphore_fd +bool ValidateImportSemaphoreFdEXT(const Context *context, + angle::EntryPoint entryPoint, + SemaphoreID semaphorePacked, + HandleType handleTypePacked, + GLint fd); + +// GL_EXT_separate_shader_objects +bool ValidateActiveShaderProgramEXT(const Context *context, + angle::EntryPoint entryPoint, + ProgramPipelineID pipelinePacked, + ShaderProgramID programPacked); +bool ValidateBindProgramPipelineEXT(const Context *context, + angle::EntryPoint entryPoint, + ProgramPipelineID pipelinePacked); +bool ValidateCreateShaderProgramvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderType typePacked, + GLsizei count, + const GLchar **strings); +bool ValidateDeleteProgramPipelinesEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const ProgramPipelineID *pipelinesPacked); +bool ValidateGenProgramPipelinesEXT(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const ProgramPipelineID *pipelinesPacked); +bool ValidateGetProgramPipelineInfoLogEXT(const Context *context, + angle::EntryPoint entryPoint, + ProgramPipelineID pipelinePacked, + GLsizei bufSize, + const GLsizei *length, + const GLchar *infoLog); +bool ValidateGetProgramPipelineivEXT(const Context *context, + angle::EntryPoint entryPoint, + ProgramPipelineID pipelinePacked, + GLenum pname, + const GLint *params); +bool ValidateIsProgramPipelineEXT(const Context *context, + angle::EntryPoint entryPoint, + ProgramPipelineID pipelinePacked); +bool ValidateProgramParameteriEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + GLenum pname, + GLint value); +bool ValidateProgramUniform1fEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLfloat v0); +bool ValidateProgramUniform1fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLfloat *value); +bool ValidateProgramUniform1iEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLint v0); +bool ValidateProgramUniform1ivEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLint *value); +bool ValidateProgramUniform1uiEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLuint v0); +bool ValidateProgramUniform1uivEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLuint *value); +bool ValidateProgramUniform2fEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLfloat v0, + GLfloat v1); +bool ValidateProgramUniform2fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLfloat *value); +bool ValidateProgramUniform2iEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLint v0, + GLint v1); +bool ValidateProgramUniform2ivEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLint *value); +bool ValidateProgramUniform2uiEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLuint v0, + GLuint v1); +bool ValidateProgramUniform2uivEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLuint *value); +bool ValidateProgramUniform3fEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLfloat v0, + GLfloat v1, + GLfloat v2); +bool ValidateProgramUniform3fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLfloat *value); +bool ValidateProgramUniform3iEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLint v0, + GLint v1, + GLint v2); +bool ValidateProgramUniform3ivEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLint *value); +bool ValidateProgramUniform3uiEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLuint v0, + GLuint v1, + GLuint v2); +bool ValidateProgramUniform3uivEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLuint *value); +bool ValidateProgramUniform4fEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLfloat v0, + GLfloat v1, + GLfloat v2, + GLfloat v3); +bool ValidateProgramUniform4fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLfloat *value); +bool ValidateProgramUniform4iEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLint v0, + GLint v1, + GLint v2, + GLint v3); +bool ValidateProgramUniform4ivEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLint *value); +bool ValidateProgramUniform4uiEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLuint v0, + GLuint v1, + GLuint v2, + GLuint v3); +bool ValidateProgramUniform4uivEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + const GLuint *value); +bool ValidateProgramUniformMatrix2fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + GLboolean transpose, + const GLfloat *value); +bool ValidateProgramUniformMatrix2x3fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + GLboolean transpose, + const GLfloat *value); +bool ValidateProgramUniformMatrix2x4fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + GLboolean transpose, + const GLfloat *value); +bool ValidateProgramUniformMatrix3fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + GLboolean transpose, + const GLfloat *value); +bool ValidateProgramUniformMatrix3x2fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + GLboolean transpose, + const GLfloat *value); +bool ValidateProgramUniformMatrix3x4fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + GLboolean transpose, + const GLfloat *value); +bool ValidateProgramUniformMatrix4fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + GLboolean transpose, + const GLfloat *value); +bool ValidateProgramUniformMatrix4x2fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + GLboolean transpose, + const GLfloat *value); +bool ValidateProgramUniformMatrix4x3fvEXT(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + UniformLocation locationPacked, + GLsizei count, + GLboolean transpose, + const GLfloat *value); +bool ValidateUseProgramStagesEXT(const Context *context, + angle::EntryPoint entryPoint, + ProgramPipelineID pipelinePacked, + GLbitfield stages, + ShaderProgramID programPacked); +bool ValidateValidateProgramPipelineEXT(const Context *context, + angle::EntryPoint entryPoint, + ProgramPipelineID pipelinePacked); + +// GL_EXT_shader_framebuffer_fetch + +// GL_EXT_shader_framebuffer_fetch_non_coherent +bool ValidateFramebufferFetchBarrierEXT(const Context *context, angle::EntryPoint entryPoint); + +// GL_EXT_shader_io_blocks + +// GL_EXT_shader_non_constant_global_initializers + +// GL_EXT_shader_texture_lod + +// GL_EXT_shadow_samplers + +// GL_EXT_tessellation_shader +bool ValidatePatchParameteriEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + GLint value); + +// GL_EXT_texture_border_clamp +bool ValidateGetSamplerParameterIivEXT(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + const GLint *params); +bool ValidateGetSamplerParameterIuivEXT(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + const GLuint *params); +bool ValidateGetTexParameterIivEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + const GLint *params); +bool ValidateGetTexParameterIuivEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + const GLuint *params); +bool ValidateSamplerParameterIivEXT(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + const GLint *param); +bool ValidateSamplerParameterIuivEXT(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + const GLuint *param); +bool ValidateTexParameterIivEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + const GLint *params); +bool ValidateTexParameterIuivEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + const GLuint *params); + +// GL_EXT_texture_buffer +bool ValidateTexBufferEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum internalformat, + BufferID bufferPacked); +bool ValidateTexBufferRangeEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum internalformat, + BufferID bufferPacked, + GLintptr offset, + GLsizeiptr size); + +// GL_EXT_texture_compression_bptc + +// GL_EXT_texture_compression_dxt1 + +// GL_EXT_texture_compression_rgtc + +// GL_EXT_texture_compression_s3tc + +// GL_EXT_texture_compression_s3tc_srgb + +// GL_EXT_texture_cube_map_array + +// GL_EXT_texture_filter_anisotropic + +// GL_EXT_texture_format_BGRA8888 + +// GL_EXT_texture_format_sRGB_override + +// GL_EXT_texture_norm16 + +// GL_EXT_texture_rg + +// GL_EXT_texture_sRGB_R8 + +// GL_EXT_texture_sRGB_RG8 + +// GL_EXT_texture_sRGB_decode + +// GL_EXT_texture_storage +bool ValidateTexStorage1DEXT(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLsizei levels, + GLenum internalformat, + GLsizei width); +bool ValidateTexStorage2DEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei levels, + GLenum internalformat, + GLsizei width, + GLsizei height); +bool ValidateTexStorage3DEXT(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei levels, + GLenum internalformat, + GLsizei width, + GLsizei height, + GLsizei depth); + +// GL_EXT_texture_type_2_10_10_10_REV + +// GL_EXT_unpack_subimage + +// GL_IMG_texture_compression_pvrtc + +// GL_IMG_texture_compression_pvrtc2 + +// GL_KHR_blend_equation_advanced +bool ValidateBlendBarrierKHR(const Context *context, angle::EntryPoint entryPoint); + +// GL_KHR_debug +bool ValidateDebugMessageCallbackKHR(const Context *context, + angle::EntryPoint entryPoint, + GLDEBUGPROCKHR callback, + const void *userParam); +bool ValidateDebugMessageControlKHR(const Context *context, + angle::EntryPoint entryPoint, + GLenum source, + GLenum type, + GLenum severity, + GLsizei count, + const GLuint *ids, + GLboolean enabled); +bool ValidateDebugMessageInsertKHR(const Context *context, + angle::EntryPoint entryPoint, + GLenum source, + GLenum type, + GLuint id, + GLenum severity, + GLsizei length, + const GLchar *buf); +bool ValidateGetDebugMessageLogKHR(const Context *context, + angle::EntryPoint entryPoint, + GLuint count, + GLsizei bufSize, + const GLenum *sources, + const GLenum *types, + const GLuint *ids, + const GLenum *severities, + const GLsizei *lengths, + const GLchar *messageLog); +bool ValidateGetObjectLabelKHR(const Context *context, + angle::EntryPoint entryPoint, + GLenum identifier, + GLuint name, + GLsizei bufSize, + const GLsizei *length, + const GLchar *label); +bool ValidateGetObjectPtrLabelKHR(const Context *context, + angle::EntryPoint entryPoint, + const void *ptr, + GLsizei bufSize, + const GLsizei *length, + const GLchar *label); +bool ValidateGetPointervKHR(const Context *context, + angle::EntryPoint entryPoint, + GLenum pname, + void *const *params); +bool ValidateObjectLabelKHR(const Context *context, + angle::EntryPoint entryPoint, + GLenum identifier, + GLuint name, + GLsizei length, + const GLchar *label); +bool ValidateObjectPtrLabelKHR(const Context *context, + angle::EntryPoint entryPoint, + const void *ptr, + GLsizei length, + const GLchar *label); +bool ValidatePopDebugGroupKHR(const Context *context, angle::EntryPoint entryPoint); +bool ValidatePushDebugGroupKHR(const Context *context, + angle::EntryPoint entryPoint, + GLenum source, + GLuint id, + GLsizei length, + const GLchar *message); + +// GL_KHR_no_error + +// GL_KHR_parallel_shader_compile +bool ValidateMaxShaderCompilerThreadsKHR(const Context *context, + angle::EntryPoint entryPoint, + GLuint count); + +// GL_KHR_robust_buffer_access_behavior + +// GL_KHR_texture_compression_astc_hdr + +// GL_KHR_texture_compression_astc_ldr + +// GL_KHR_texture_compression_astc_sliced_3d + +// GL_MESA_framebuffer_flip_y +bool ValidateFramebufferParameteriMESA(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum pname, + GLint param); +bool ValidateGetFramebufferParameterivMESA(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum pname, + const GLint *params); + +// GL_NV_fence +bool ValidateDeleteFencesNV(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const FenceNVID *fencesPacked); +bool ValidateFinishFenceNV(const Context *context, + angle::EntryPoint entryPoint, + FenceNVID fencePacked); +bool ValidateGenFencesNV(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const FenceNVID *fencesPacked); +bool ValidateGetFenceivNV(const Context *context, + angle::EntryPoint entryPoint, + FenceNVID fencePacked, + GLenum pname, + const GLint *params); +bool ValidateIsFenceNV(const Context *context, angle::EntryPoint entryPoint, FenceNVID fencePacked); +bool ValidateSetFenceNV(const Context *context, + angle::EntryPoint entryPoint, + FenceNVID fencePacked, + GLenum condition); +bool ValidateTestFenceNV(const Context *context, + angle::EntryPoint entryPoint, + FenceNVID fencePacked); + +// GL_NV_framebuffer_blit +bool ValidateBlitFramebufferNV(const Context *context, + angle::EntryPoint entryPoint, + GLint srcX0, + GLint srcY0, + GLint srcX1, + GLint srcY1, + GLint dstX0, + GLint dstY0, + GLint dstX1, + GLint dstY1, + GLbitfield mask, + GLenum filter); + +// GL_NV_pixel_buffer_object + +// GL_NV_read_depth + +// GL_NV_read_depth_stencil + +// GL_NV_read_stencil + +// GL_NV_robustness_video_memory_purge + +// GL_NV_shader_noperspective_interpolation + +// GL_OES_EGL_image +bool ValidateEGLImageTargetRenderbufferStorageOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLeglImageOES image); +bool ValidateEGLImageTargetTexture2DOES(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLeglImageOES image); + +// GL_OES_EGL_image_external + +// GL_OES_EGL_image_external_essl3 + +// GL_OES_compressed_ETC1_RGB8_texture + +// GL_OES_compressed_paletted_texture + +// GL_OES_copy_image +bool ValidateCopyImageSubDataOES(const Context *context, + angle::EntryPoint entryPoint, + GLuint srcName, + GLenum srcTarget, + GLint srcLevel, + GLint srcX, + GLint srcY, + GLint srcZ, + GLuint dstName, + GLenum dstTarget, + GLint dstLevel, + GLint dstX, + GLint dstY, + GLint dstZ, + GLsizei srcWidth, + GLsizei srcHeight, + GLsizei srcDepth); + +// GL_OES_depth24 + +// GL_OES_depth32 + +// GL_OES_depth_texture + +// GL_OES_draw_buffers_indexed +bool ValidateBlendEquationSeparateiOES(const Context *context, + angle::EntryPoint entryPoint, + GLuint buf, + GLenum modeRGB, + GLenum modeAlpha); +bool ValidateBlendEquationiOES(const Context *context, + angle::EntryPoint entryPoint, + GLuint buf, + GLenum mode); +bool ValidateBlendFuncSeparateiOES(const Context *context, + angle::EntryPoint entryPoint, + GLuint buf, + GLenum srcRGB, + GLenum dstRGB, + GLenum srcAlpha, + GLenum dstAlpha); +bool ValidateBlendFunciOES(const Context *context, + angle::EntryPoint entryPoint, + GLuint buf, + GLenum src, + GLenum dst); +bool ValidateColorMaskiOES(const Context *context, + angle::EntryPoint entryPoint, + GLuint index, + GLboolean r, + GLboolean g, + GLboolean b, + GLboolean a); +bool ValidateDisableiOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index); +bool ValidateEnableiOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index); +bool ValidateIsEnablediOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLuint index); + +// GL_OES_draw_elements_base_vertex +bool ValidateDrawElementsBaseVertexOES(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLint basevertex); +bool ValidateDrawElementsInstancedBaseVertexOES(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLsizei instancecount, + GLint basevertex); +bool ValidateDrawRangeElementsBaseVertexOES(const Context *context, + angle::EntryPoint entryPoint, + PrimitiveMode modePacked, + GLuint start, + GLuint end, + GLsizei count, + DrawElementsType typePacked, + const void *indices, + GLint basevertex); + +// GL_OES_draw_texture +bool ValidateDrawTexfOES(const Context *context, + angle::EntryPoint entryPoint, + GLfloat x, + GLfloat y, + GLfloat z, + GLfloat width, + GLfloat height); +bool ValidateDrawTexfvOES(const Context *context, + angle::EntryPoint entryPoint, + const GLfloat *coords); +bool ValidateDrawTexiOES(const Context *context, + angle::EntryPoint entryPoint, + GLint x, + GLint y, + GLint z, + GLint width, + GLint height); +bool ValidateDrawTexivOES(const Context *context, + angle::EntryPoint entryPoint, + const GLint *coords); +bool ValidateDrawTexsOES(const Context *context, + angle::EntryPoint entryPoint, + GLshort x, + GLshort y, + GLshort z, + GLshort width, + GLshort height); +bool ValidateDrawTexsvOES(const Context *context, + angle::EntryPoint entryPoint, + const GLshort *coords); +bool ValidateDrawTexxOES(const Context *context, + angle::EntryPoint entryPoint, + GLfixed x, + GLfixed y, + GLfixed z, + GLfixed width, + GLfixed height); +bool ValidateDrawTexxvOES(const Context *context, + angle::EntryPoint entryPoint, + const GLfixed *coords); + +// GL_OES_element_index_uint + +// GL_OES_fbo_render_mipmap + +// GL_OES_framebuffer_object +bool ValidateBindFramebufferOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + FramebufferID framebufferPacked); +bool ValidateBindRenderbufferOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + RenderbufferID renderbufferPacked); +bool ValidateCheckFramebufferStatusOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target); +bool ValidateDeleteFramebuffersOES(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const FramebufferID *framebuffersPacked); +bool ValidateDeleteRenderbuffersOES(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const RenderbufferID *renderbuffersPacked); +bool ValidateFramebufferRenderbufferOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum attachment, + GLenum renderbuffertarget, + RenderbufferID renderbufferPacked); +bool ValidateFramebufferTexture2DOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum attachment, + TextureTarget textargetPacked, + TextureID texturePacked, + GLint level); +bool ValidateGenFramebuffersOES(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const FramebufferID *framebuffersPacked); +bool ValidateGenRenderbuffersOES(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const RenderbufferID *renderbuffersPacked); +bool ValidateGenerateMipmapOES(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked); +bool ValidateGetFramebufferAttachmentParameterivOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum attachment, + GLenum pname, + const GLint *params); +bool ValidateGetRenderbufferParameterivOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum pname, + const GLint *params); +bool ValidateIsFramebufferOES(const Context *context, + angle::EntryPoint entryPoint, + FramebufferID framebufferPacked); +bool ValidateIsRenderbufferOES(const Context *context, + angle::EntryPoint entryPoint, + RenderbufferID renderbufferPacked); +bool ValidateRenderbufferStorageOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum internalformat, + GLsizei width, + GLsizei height); + +// GL_OES_geometry_shader +bool ValidateFramebufferTextureOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum attachment, + TextureID texturePacked, + GLint level); + +// GL_OES_get_program_binary +bool ValidateGetProgramBinaryOES(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + GLsizei bufSize, + const GLsizei *length, + const GLenum *binaryFormat, + const void *binary); +bool ValidateProgramBinaryOES(const Context *context, + angle::EntryPoint entryPoint, + ShaderProgramID programPacked, + GLenum binaryFormat, + const void *binary, + GLint length); + +// GL_OES_mapbuffer +bool ValidateGetBufferPointervOES(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked, + GLenum pname, + void *const *params); +bool ValidateMapBufferOES(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked, + GLenum access); +bool ValidateUnmapBufferOES(const Context *context, + angle::EntryPoint entryPoint, + BufferBinding targetPacked); + +// GL_OES_matrix_palette +bool ValidateCurrentPaletteMatrixOES(const Context *context, + angle::EntryPoint entryPoint, + GLuint matrixpaletteindex); +bool ValidateLoadPaletteFromModelViewMatrixOES(const Context *context, + angle::EntryPoint entryPoint); +bool ValidateMatrixIndexPointerOES(const Context *context, + angle::EntryPoint entryPoint, + GLint size, + GLenum type, + GLsizei stride, + const void *pointer); +bool ValidateWeightPointerOES(const Context *context, + angle::EntryPoint entryPoint, + GLint size, + GLenum type, + GLsizei stride, + const void *pointer); + +// GL_OES_packed_depth_stencil + +// GL_OES_point_size_array +bool ValidatePointSizePointerOES(const Context *context, + angle::EntryPoint entryPoint, + VertexAttribType typePacked, + GLsizei stride, + const void *pointer); + +// GL_OES_point_sprite + +// GL_OES_primitive_bounding_box +bool ValidatePrimitiveBoundingBoxOES(const Context *context, + angle::EntryPoint entryPoint, + GLfloat minX, + GLfloat minY, + GLfloat minZ, + GLfloat minW, + GLfloat maxX, + GLfloat maxY, + GLfloat maxZ, + GLfloat maxW); + +// GL_OES_query_matrix +bool ValidateQueryMatrixxOES(const Context *context, + angle::EntryPoint entryPoint, + const GLfixed *mantissa, + const GLint *exponent); + +// GL_OES_rgb8_rgba8 + +// GL_OES_sample_shading +bool ValidateMinSampleShadingOES(const Context *context, + angle::EntryPoint entryPoint, + GLfloat value); + +// GL_OES_sample_variables + +// GL_OES_shader_image_atomic + +// GL_OES_shader_io_blocks + +// GL_OES_shader_multisample_interpolation + +// GL_OES_standard_derivatives + +// GL_OES_surfaceless_context + +// GL_OES_texture_3D +bool ValidateCompressedTexImage3DOES(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLenum internalformat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLint border, + GLsizei imageSize, + const void *data); +bool ValidateCompressedTexSubImage3DOES(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLint xoffset, + GLint yoffset, + GLint zoffset, + GLsizei width, + GLsizei height, + GLsizei depth, + GLenum format, + GLsizei imageSize, + const void *data); +bool ValidateCopyTexSubImage3DOES(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLint xoffset, + GLint yoffset, + GLint zoffset, + GLint x, + GLint y, + GLsizei width, + GLsizei height); +bool ValidateFramebufferTexture3DOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum attachment, + TextureTarget textargetPacked, + TextureID texturePacked, + GLint level, + GLint zoffset); +bool ValidateTexImage3DOES(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + GLint level, + GLenum internalformat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLint border, + GLenum format, + GLenum type, + const void *pixels); +bool ValidateTexSubImage3DOES(const Context *context, + angle::EntryPoint entryPoint, + TextureTarget targetPacked, + 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 +bool ValidateGetSamplerParameterIivOES(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + const GLint *params); +bool ValidateGetSamplerParameterIuivOES(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + const GLuint *params); +bool ValidateGetTexParameterIivOES(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + const GLint *params); +bool ValidateGetTexParameterIuivOES(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + const GLuint *params); +bool ValidateSamplerParameterIivOES(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + const GLint *param); +bool ValidateSamplerParameterIuivOES(const Context *context, + angle::EntryPoint entryPoint, + SamplerID samplerPacked, + GLenum pname, + const GLuint *param); +bool ValidateTexParameterIivOES(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + const GLint *params); +bool ValidateTexParameterIuivOES(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum pname, + const GLuint *params); + +// GL_OES_texture_buffer +bool ValidateTexBufferOES(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum internalformat, + BufferID bufferPacked); +bool ValidateTexBufferRangeOES(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLenum internalformat, + BufferID bufferPacked, + GLintptr offset, + GLsizeiptr size); + +// GL_OES_texture_compression_astc + +// GL_OES_texture_cube_map +bool ValidateGetTexGenfvOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum coord, + GLenum pname, + const GLfloat *params); +bool ValidateGetTexGenivOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum coord, + GLenum pname, + const GLint *params); +bool ValidateGetTexGenxvOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum coord, + GLenum pname, + const GLfixed *params); +bool ValidateTexGenfOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum coord, + GLenum pname, + GLfloat param); +bool ValidateTexGenfvOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum coord, + GLenum pname, + const GLfloat *params); +bool ValidateTexGeniOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum coord, + GLenum pname, + GLint param); +bool ValidateTexGenivOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum coord, + GLenum pname, + const GLint *params); +bool ValidateTexGenxOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum coord, + GLenum pname, + GLfixed param); +bool ValidateTexGenxvOES(const Context *context, + angle::EntryPoint entryPoint, + GLenum coord, + GLenum pname, + const GLfixed *params); + +// GL_OES_texture_cube_map_array + +// GL_OES_texture_float + +// GL_OES_texture_float_linear + +// GL_OES_texture_half_float + +// GL_OES_texture_half_float_linear + +// GL_OES_texture_npot + +// GL_OES_texture_stencil8 + +// GL_OES_texture_storage_multisample_2d_array +bool ValidateTexStorage3DMultisampleOES(const Context *context, + angle::EntryPoint entryPoint, + TextureType targetPacked, + GLsizei samples, + GLenum internalformat, + GLsizei width, + GLsizei height, + GLsizei depth, + GLboolean fixedsamplelocations); + +// GL_OES_vertex_array_object +bool ValidateBindVertexArrayOES(const Context *context, + angle::EntryPoint entryPoint, + VertexArrayID arrayPacked); +bool ValidateDeleteVertexArraysOES(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const VertexArrayID *arraysPacked); +bool ValidateGenVertexArraysOES(const Context *context, + angle::EntryPoint entryPoint, + GLsizei n, + const VertexArrayID *arraysPacked); +bool ValidateIsVertexArrayOES(const Context *context, + angle::EntryPoint entryPoint, + VertexArrayID arrayPacked); + +// GL_OES_vertex_half_float + +// GL_OES_vertex_type_10_10_10_2 + +// GL_OVR_multiview +bool ValidateFramebufferTextureMultiviewOVR(const Context *context, + angle::EntryPoint entryPoint, + GLenum target, + GLenum attachment, + TextureID texturePacked, + GLint level, + GLint baseViewIndex, + GLsizei numViews); + +// GL_OVR_multiview2 + +// GL_QCOM_shading_rate +bool ValidateShadingRateQCOM(const Context *context, angle::EntryPoint entryPoint, GLenum rate); +} // namespace gl + +#endif // LIBANGLE_VALIDATION_ESEXT_AUTOGEN_H_ |