// 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_enum_autogen.h:
//   Defines the GL/GLES entry points enumeration.

#ifndef LIBANGLE_ENTRYPOINTSENUM_AUTOGEN_H_
#define LIBANGLE_ENTRYPOINTSENUM_AUTOGEN_H_

namespace gl
{
enum class EntryPoint
{
    Accum,
    ActiveShaderProgram,
    ActiveTexture,
    AlphaFunc,
    AlphaFuncx,
    AreTexturesResident,
    ArrayElement,
    AttachShader,
    Begin,
    BeginConditionalRender,
    BeginQuery,
    BeginQueryEXT,
    BeginQueryIndexed,
    BeginTransformFeedback,
    BindAttribLocation,
    BindBuffer,
    BindBufferBase,
    BindBufferRange,
    BindBuffersBase,
    BindBuffersRange,
    BindFragDataLocation,
    BindFragDataLocationEXT,
    BindFragDataLocationIndexed,
    BindFragDataLocationIndexedEXT,
    BindFragmentInputLocationCHROMIUM,
    BindFramebuffer,
    BindFramebufferOES,
    BindImageTexture,
    BindImageTextures,
    BindProgramPipeline,
    BindRenderbuffer,
    BindRenderbufferOES,
    BindSampler,
    BindSamplers,
    BindTexture,
    BindTextureUnit,
    BindTextures,
    BindTransformFeedback,
    BindUniformLocationCHROMIUM,
    BindVertexArray,
    BindVertexArrayOES,
    BindVertexBuffer,
    BindVertexBuffers,
    Bitmap,
    BlendBarrier,
    BlendColor,
    BlendEquation,
    BlendEquationSeparate,
    BlendEquationSeparatei,
    BlendEquationi,
    BlendFunc,
    BlendFuncSeparate,
    BlendFuncSeparatei,
    BlendFunci,
    BlitFramebuffer,
    BlitFramebufferANGLE,
    BlitNamedFramebuffer,
    BufferData,
    BufferStorage,
    BufferStorageMemEXT,
    BufferSubData,
    CallList,
    CallLists,
    CheckFramebufferStatus,
    CheckFramebufferStatusOES,
    CheckNamedFramebufferStatus,
    ClampColor,
    Clear,
    ClearAccum,
    ClearBufferData,
    ClearBufferSubData,
    ClearBufferfi,
    ClearBufferfv,
    ClearBufferiv,
    ClearBufferuiv,
    ClearColor,
    ClearColorx,
    ClearDepth,
    ClearDepthf,
    ClearDepthx,
    ClearIndex,
    ClearNamedBufferData,
    ClearNamedBufferSubData,
    ClearNamedFramebufferfi,
    ClearNamedFramebufferfv,
    ClearNamedFramebufferiv,
    ClearNamedFramebufferuiv,
    ClearStencil,
    ClearTexImage,
    ClearTexSubImage,
    ClientActiveTexture,
    ClientWaitSync,
    ClipControl,
    ClipPlane,
    ClipPlanef,
    ClipPlanex,
    Color3b,
    Color3bv,
    Color3d,
    Color3dv,
    Color3f,
    Color3fv,
    Color3i,
    Color3iv,
    Color3s,
    Color3sv,
    Color3ub,
    Color3ubv,
    Color3ui,
    Color3uiv,
    Color3us,
    Color3usv,
    Color4b,
    Color4bv,
    Color4d,
    Color4dv,
    Color4f,
    Color4fv,
    Color4i,
    Color4iv,
    Color4s,
    Color4sv,
    Color4ub,
    Color4ubv,
    Color4ui,
    Color4uiv,
    Color4us,
    Color4usv,
    Color4x,
    ColorMask,
    ColorMaski,
    ColorMaterial,
    ColorP3ui,
    ColorP3uiv,
    ColorP4ui,
    ColorP4uiv,
    ColorPointer,
    CompileShader,
    CompressedCopyTextureCHROMIUM,
    CompressedTexImage1D,
    CompressedTexImage2D,
    CompressedTexImage2DRobustANGLE,
    CompressedTexImage3D,
    CompressedTexImage3DOES,
    CompressedTexImage3DRobustANGLE,
    CompressedTexSubImage1D,
    CompressedTexSubImage2D,
    CompressedTexSubImage2DRobustANGLE,
    CompressedTexSubImage3D,
    CompressedTexSubImage3DOES,
    CompressedTexSubImage3DRobustANGLE,
    CompressedTextureSubImage1D,
    CompressedTextureSubImage2D,
    CompressedTextureSubImage3D,
    CopyBufferSubData,
    CopyImageSubData,
    CopyNamedBufferSubData,
    CopyPixels,
    CopySubTexture3DANGLE,
    CopySubTextureCHROMIUM,
    CopyTexImage1D,
    CopyTexImage2D,
    CopyTexSubImage1D,
    CopyTexSubImage2D,
    CopyTexSubImage3D,
    CopyTexSubImage3DOES,
    CopyTexture3DANGLE,
    CopyTextureCHROMIUM,
    CopyTextureSubImage1D,
    CopyTextureSubImage2D,
    CopyTextureSubImage3D,
    CoverFillPathCHROMIUM,
    CoverFillPathInstancedCHROMIUM,
    CoverStrokePathCHROMIUM,
    CoverStrokePathInstancedCHROMIUM,
    CoverageModulationCHROMIUM,
    CreateBuffers,
    CreateFramebuffers,
    CreateMemoryObjectsEXT,
    CreateProgram,
    CreateProgramPipelines,
    CreateQueries,
    CreateRenderbuffers,
    CreateSamplers,
    CreateShader,
    CreateShaderProgramv,
    CreateTextures,
    CreateTransformFeedbacks,
    CreateVertexArrays,
    CullFace,
    CurrentPaletteMatrixOES,
    DebugMessageCallback,
    DebugMessageCallbackKHR,
    DebugMessageControl,
    DebugMessageControlKHR,
    DebugMessageInsert,
    DebugMessageInsertKHR,
    DeleteBuffers,
    DeleteFencesNV,
    DeleteFramebuffers,
    DeleteFramebuffersOES,
    DeleteLists,
    DeleteMemoryObjectsEXT,
    DeletePathsCHROMIUM,
    DeleteProgram,
    DeleteProgramPipelines,
    DeleteQueries,
    DeleteQueriesEXT,
    DeleteRenderbuffers,
    DeleteRenderbuffersOES,
    DeleteSamplers,
    DeleteSemaphoresEXT,
    DeleteShader,
    DeleteSync,
    DeleteTextures,
    DeleteTransformFeedbacks,
    DeleteVertexArrays,
    DeleteVertexArraysOES,
    DepthFunc,
    DepthMask,
    DepthRange,
    DepthRangeArrayv,
    DepthRangeIndexed,
    DepthRangef,
    DepthRangex,
    DetachShader,
    Disable,
    DisableClientState,
    DisableExtensionANGLE,
    DisableVertexArrayAttrib,
    DisableVertexAttribArray,
    Disablei,
    DiscardFramebufferEXT,
    DispatchCompute,
    DispatchComputeIndirect,
    DrawArrays,
    DrawArraysIndirect,
    DrawArraysInstanced,
    DrawArraysInstancedANGLE,
    DrawArraysInstancedBaseInstance,
    DrawArraysInstancedBaseInstanceANGLE,
    DrawArraysInstancedEXT,
    DrawBuffer,
    DrawBuffers,
    DrawBuffersEXT,
    DrawElements,
    DrawElementsBaseVertex,
    DrawElementsIndirect,
    DrawElementsInstanced,
    DrawElementsInstancedANGLE,
    DrawElementsInstancedBaseInstance,
    DrawElementsInstancedBaseVertex,
    DrawElementsInstancedBaseVertexBaseInstance,
    DrawElementsInstancedBaseVertexBaseInstanceANGLE,
    DrawElementsInstancedEXT,
    DrawPixels,
    DrawRangeElements,
    DrawRangeElementsBaseVertex,
    DrawTexfOES,
    DrawTexfvOES,
    DrawTexiOES,
    DrawTexivOES,
    DrawTexsOES,
    DrawTexsvOES,
    DrawTexxOES,
    DrawTexxvOES,
    DrawTransformFeedback,
    DrawTransformFeedbackInstanced,
    DrawTransformFeedbackStream,
    DrawTransformFeedbackStreamInstanced,
    EGLImageTargetRenderbufferStorageOES,
    EGLImageTargetTexture2DOES,
    EdgeFlag,
    EdgeFlagPointer,
    EdgeFlagv,
    Enable,
    EnableClientState,
    EnableVertexArrayAttrib,
    EnableVertexAttribArray,
    Enablei,
    End,
    EndConditionalRender,
    EndList,
    EndQuery,
    EndQueryEXT,
    EndQueryIndexed,
    EndTransformFeedback,
    EvalCoord1d,
    EvalCoord1dv,
    EvalCoord1f,
    EvalCoord1fv,
    EvalCoord2d,
    EvalCoord2dv,
    EvalCoord2f,
    EvalCoord2fv,
    EvalMesh1,
    EvalMesh2,
    EvalPoint1,
    EvalPoint2,
    FeedbackBuffer,
    FenceSync,
    Finish,
    FinishFenceNV,
    Flush,
    FlushMappedBufferRange,
    FlushMappedBufferRangeEXT,
    FlushMappedNamedBufferRange,
    FogCoordPointer,
    FogCoordd,
    FogCoorddv,
    FogCoordf,
    FogCoordfv,
    Fogf,
    Fogfv,
    Fogi,
    Fogiv,
    Fogx,
    Fogxv,
    FramebufferParameteri,
    FramebufferRenderbuffer,
    FramebufferRenderbufferOES,
    FramebufferTexture,
    FramebufferTexture1D,
    FramebufferTexture2D,
    FramebufferTexture2DMultisampleEXT,
    FramebufferTexture2DOES,
    FramebufferTexture3D,
    FramebufferTexture3DOES,
    FramebufferTextureEXT,
    FramebufferTextureLayer,
    FramebufferTextureMultiviewOVR,
    FrontFace,
    Frustum,
    Frustumf,
    Frustumx,
    GenBuffers,
    GenFencesNV,
    GenFramebuffers,
    GenFramebuffersOES,
    GenLists,
    GenPathsCHROMIUM,
    GenProgramPipelines,
    GenQueries,
    GenQueriesEXT,
    GenRenderbuffers,
    GenRenderbuffersOES,
    GenSamplers,
    GenSemaphoresEXT,
    GenTextures,
    GenTransformFeedbacks,
    GenVertexArrays,
    GenVertexArraysOES,
    GenerateMipmap,
    GenerateMipmapOES,
    GenerateTextureMipmap,
    GetActiveAtomicCounterBufferiv,
    GetActiveAttrib,
    GetActiveSubroutineName,
    GetActiveSubroutineUniformName,
    GetActiveSubroutineUniformiv,
    GetActiveUniform,
    GetActiveUniformBlockName,
    GetActiveUniformBlockiv,
    GetActiveUniformBlockivRobustANGLE,
    GetActiveUniformName,
    GetActiveUniformsiv,
    GetAttachedShaders,
    GetAttribLocation,
    GetBooleani_v,
    GetBooleani_vRobustANGLE,
    GetBooleanv,
    GetBooleanvRobustANGLE,
    GetBufferParameteri64v,
    GetBufferParameteri64vRobustANGLE,
    GetBufferParameteriv,
    GetBufferParameterivRobustANGLE,
    GetBufferPointerv,
    GetBufferPointervOES,
    GetBufferPointervRobustANGLE,
    GetBufferSubData,
    GetClipPlane,
    GetClipPlanef,
    GetClipPlanex,
    GetCompressedTexImage,
    GetCompressedTextureImage,
    GetCompressedTextureSubImage,
    GetDebugMessageLog,
    GetDebugMessageLogKHR,
    GetDoublei_v,
    GetDoublev,
    GetError,
    GetFenceivNV,
    GetFixedv,
    GetFloati_v,
    GetFloatv,
    GetFloatvRobustANGLE,
    GetFragDataIndex,
    GetFragDataIndexEXT,
    GetFragDataLocation,
    GetFramebufferAttachmentParameteriv,
    GetFramebufferAttachmentParameterivOES,
    GetFramebufferAttachmentParameterivRobustANGLE,
    GetFramebufferParameteriv,
    GetFramebufferParameterivRobustANGLE,
    GetGraphicsResetStatus,
    GetGraphicsResetStatusEXT,
    GetInteger64i_v,
    GetInteger64i_vRobustANGLE,
    GetInteger64v,
    GetInteger64vRobustANGLE,
    GetIntegeri_v,
    GetIntegeri_vRobustANGLE,
    GetIntegerv,
    GetIntegervRobustANGLE,
    GetInternalformati64v,
    GetInternalformativ,
    GetInternalformativRobustANGLE,
    GetLightfv,
    GetLightiv,
    GetLightxv,
    GetMapdv,
    GetMapfv,
    GetMapiv,
    GetMaterialfv,
    GetMaterialiv,
    GetMaterialxv,
    GetMemoryObjectParameterivEXT,
    GetMultisamplefv,
    GetMultisamplefvANGLE,
    GetMultisamplefvRobustANGLE,
    GetNamedBufferParameteri64v,
    GetNamedBufferParameteriv,
    GetNamedBufferPointerv,
    GetNamedBufferSubData,
    GetNamedFramebufferAttachmentParameteriv,
    GetNamedFramebufferParameteriv,
    GetNamedRenderbufferParameteriv,
    GetObjectLabel,
    GetObjectLabelKHR,
    GetObjectPtrLabel,
    GetObjectPtrLabelKHR,
    GetPathParameterfvCHROMIUM,
    GetPathParameterivCHROMIUM,
    GetPixelMapfv,
    GetPixelMapuiv,
    GetPixelMapusv,
    GetPointerv,
    GetPointervKHR,
    GetPointervRobustANGLERobustANGLE,
    GetPolygonStipple,
    GetProgramBinary,
    GetProgramBinaryOES,
    GetProgramInfoLog,
    GetProgramInterfaceiv,
    GetProgramInterfaceivRobustANGLE,
    GetProgramPipelineInfoLog,
    GetProgramPipelineiv,
    GetProgramResourceIndex,
    GetProgramResourceLocation,
    GetProgramResourceLocationIndex,
    GetProgramResourceLocationIndexEXT,
    GetProgramResourceName,
    GetProgramResourceiv,
    GetProgramStageiv,
    GetProgramiv,
    GetProgramivRobustANGLE,
    GetQueryBufferObjecti64v,
    GetQueryBufferObjectiv,
    GetQueryBufferObjectui64v,
    GetQueryBufferObjectuiv,
    GetQueryIndexediv,
    GetQueryObjecti64v,
    GetQueryObjecti64vEXT,
    GetQueryObjecti64vRobustANGLE,
    GetQueryObjectiv,
    GetQueryObjectivEXT,
    GetQueryObjectivRobustANGLE,
    GetQueryObjectui64v,
    GetQueryObjectui64vEXT,
    GetQueryObjectui64vRobustANGLE,
    GetQueryObjectuiv,
    GetQueryObjectuivEXT,
    GetQueryObjectuivRobustANGLE,
    GetQueryiv,
    GetQueryivEXT,
    GetQueryivRobustANGLE,
    GetRenderbufferImageANGLE,
    GetRenderbufferParameteriv,
    GetRenderbufferParameterivOES,
    GetRenderbufferParameterivRobustANGLE,
    GetSamplerParameterIiv,
    GetSamplerParameterIivOES,
    GetSamplerParameterIivRobustANGLE,
    GetSamplerParameterIuiv,
    GetSamplerParameterIuivOES,
    GetSamplerParameterIuivRobustANGLE,
    GetSamplerParameterfv,
    GetSamplerParameterfvRobustANGLE,
    GetSamplerParameteriv,
    GetSamplerParameterivRobustANGLE,
    GetSemaphoreParameterui64vEXT,
    GetShaderInfoLog,
    GetShaderPrecisionFormat,
    GetShaderSource,
    GetShaderiv,
    GetShaderivRobustANGLE,
    GetString,
    GetStringi,
    GetSubroutineIndex,
    GetSubroutineUniformLocation,
    GetSynciv,
    GetTexEnvfv,
    GetTexEnviv,
    GetTexEnvxv,
    GetTexGendv,
    GetTexGenfv,
    GetTexGenfvOES,
    GetTexGeniv,
    GetTexGenivOES,
    GetTexGenxvOES,
    GetTexImage,
    GetTexImageANGLE,
    GetTexLevelParameterfv,
    GetTexLevelParameterfvANGLE,
    GetTexLevelParameterfvRobustANGLE,
    GetTexLevelParameteriv,
    GetTexLevelParameterivANGLE,
    GetTexLevelParameterivRobustANGLE,
    GetTexParameterIiv,
    GetTexParameterIivOES,
    GetTexParameterIivRobustANGLE,
    GetTexParameterIuiv,
    GetTexParameterIuivOES,
    GetTexParameterIuivRobustANGLE,
    GetTexParameterfv,
    GetTexParameterfvRobustANGLE,
    GetTexParameteriv,
    GetTexParameterivRobustANGLE,
    GetTexParameterxv,
    GetTextureImage,
    GetTextureLevelParameterfv,
    GetTextureLevelParameteriv,
    GetTextureParameterIiv,
    GetTextureParameterIuiv,
    GetTextureParameterfv,
    GetTextureParameteriv,
    GetTextureSubImage,
    GetTransformFeedbackVarying,
    GetTransformFeedbacki64_v,
    GetTransformFeedbacki_v,
    GetTransformFeedbackiv,
    GetTranslatedShaderSourceANGLE,
    GetUniformBlockIndex,
    GetUniformIndices,
    GetUniformLocation,
    GetUniformSubroutineuiv,
    GetUniformdv,
    GetUniformfv,
    GetUniformfvRobustANGLE,
    GetUniformiv,
    GetUniformivRobustANGLE,
    GetUniformuiv,
    GetUniformuivRobustANGLE,
    GetUnsignedBytei_vEXT,
    GetUnsignedBytevEXT,
    GetVertexArrayIndexed64iv,
    GetVertexArrayIndexediv,
    GetVertexArrayiv,
    GetVertexAttribIiv,
    GetVertexAttribIivRobustANGLE,
    GetVertexAttribIuiv,
    GetVertexAttribIuivRobustANGLE,
    GetVertexAttribLdv,
    GetVertexAttribPointerv,
    GetVertexAttribPointervRobustANGLE,
    GetVertexAttribdv,
    GetVertexAttribfv,
    GetVertexAttribfvRobustANGLE,
    GetVertexAttribiv,
    GetVertexAttribivRobustANGLE,
    GetnColorTable,
    GetnCompressedTexImage,
    GetnConvolutionFilter,
    GetnHistogram,
    GetnMapdv,
    GetnMapfv,
    GetnMapiv,
    GetnMinmax,
    GetnPixelMapfv,
    GetnPixelMapuiv,
    GetnPixelMapusv,
    GetnPolygonStipple,
    GetnSeparableFilter,
    GetnTexImage,
    GetnUniformdv,
    GetnUniformfv,
    GetnUniformfvEXT,
    GetnUniformfvRobustANGLE,
    GetnUniformiv,
    GetnUniformivEXT,
    GetnUniformivRobustANGLE,
    GetnUniformuiv,
    GetnUniformuivRobustANGLE,
    Hint,
    ImportMemoryFdEXT,
    ImportSemaphoreFdEXT,
    IndexMask,
    IndexPointer,
    Indexd,
    Indexdv,
    Indexf,
    Indexfv,
    Indexi,
    Indexiv,
    Indexs,
    Indexsv,
    Indexub,
    Indexubv,
    InitNames,
    InsertEventMarkerEXT,
    InterleavedArrays,
    Invalid,
    InvalidateBufferData,
    InvalidateBufferSubData,
    InvalidateFramebuffer,
    InvalidateNamedFramebufferData,
    InvalidateNamedFramebufferSubData,
    InvalidateSubFramebuffer,
    InvalidateTexImage,
    InvalidateTexSubImage,
    InvalidateTextureANGLE,
    IsBuffer,
    IsEnabled,
    IsEnabledi,
    IsFenceNV,
    IsFramebuffer,
    IsFramebufferOES,
    IsList,
    IsMemoryObjectEXT,
    IsPathCHROMIUM,
    IsProgram,
    IsProgramPipeline,
    IsQuery,
    IsQueryEXT,
    IsRenderbuffer,
    IsRenderbufferOES,
    IsSampler,
    IsSemaphoreEXT,
    IsShader,
    IsSync,
    IsTexture,
    IsTransformFeedback,
    IsVertexArray,
    IsVertexArrayOES,
    LightModelf,
    LightModelfv,
    LightModeli,
    LightModeliv,
    LightModelx,
    LightModelxv,
    Lightf,
    Lightfv,
    Lighti,
    Lightiv,
    Lightx,
    Lightxv,
    LineStipple,
    LineWidth,
    LineWidthx,
    LinkProgram,
    ListBase,
    LoadIdentity,
    LoadMatrixd,
    LoadMatrixf,
    LoadMatrixx,
    LoadName,
    LoadPaletteFromModelViewMatrixOES,
    LoadTransposeMatrixd,
    LoadTransposeMatrixf,
    LogicOp,
    LoseContextCHROMIUM,
    Map1d,
    Map1f,
    Map2d,
    Map2f,
    MapBuffer,
    MapBufferOES,
    MapBufferRange,
    MapBufferRangeEXT,
    MapGrid1d,
    MapGrid1f,
    MapGrid2d,
    MapGrid2f,
    MapNamedBuffer,
    MapNamedBufferRange,
    Materialf,
    Materialfv,
    Materiali,
    Materialiv,
    Materialx,
    Materialxv,
    MatrixIndexPointerOES,
    MatrixLoadIdentityCHROMIUM,
    MatrixLoadfCHROMIUM,
    MatrixMode,
    MaxShaderCompilerThreadsKHR,
    MemoryBarrier,
    MemoryBarrierByRegion,
    MemoryObjectParameterivEXT,
    MinSampleShading,
    MultMatrixd,
    MultMatrixf,
    MultMatrixx,
    MultTransposeMatrixd,
    MultTransposeMatrixf,
    MultiDrawArrays,
    MultiDrawArraysANGLE,
    MultiDrawArraysIndirect,
    MultiDrawArraysIndirectCount,
    MultiDrawArraysInstancedANGLE,
    MultiDrawArraysInstancedBaseInstanceANGLE,
    MultiDrawElements,
    MultiDrawElementsANGLE,
    MultiDrawElementsBaseVertex,
    MultiDrawElementsIndirect,
    MultiDrawElementsIndirectCount,
    MultiDrawElementsInstancedANGLE,
    MultiDrawElementsInstancedBaseVertexBaseInstanceANGLE,
    MultiTexCoord1d,
    MultiTexCoord1dv,
    MultiTexCoord1f,
    MultiTexCoord1fv,
    MultiTexCoord1i,
    MultiTexCoord1iv,
    MultiTexCoord1s,
    MultiTexCoord1sv,
    MultiTexCoord2d,
    MultiTexCoord2dv,
    MultiTexCoord2f,
    MultiTexCoord2fv,
    MultiTexCoord2i,
    MultiTexCoord2iv,
    MultiTexCoord2s,
    MultiTexCoord2sv,
    MultiTexCoord3d,
    MultiTexCoord3dv,
    MultiTexCoord3f,
    MultiTexCoord3fv,
    MultiTexCoord3i,
    MultiTexCoord3iv,
    MultiTexCoord3s,
    MultiTexCoord3sv,
    MultiTexCoord4d,
    MultiTexCoord4dv,
    MultiTexCoord4f,
    MultiTexCoord4fv,
    MultiTexCoord4i,
    MultiTexCoord4iv,
    MultiTexCoord4s,
    MultiTexCoord4sv,
    MultiTexCoord4x,
    MultiTexCoordP1ui,
    MultiTexCoordP1uiv,
    MultiTexCoordP2ui,
    MultiTexCoordP2uiv,
    MultiTexCoordP3ui,
    MultiTexCoordP3uiv,
    MultiTexCoordP4ui,
    MultiTexCoordP4uiv,
    NamedBufferData,
    NamedBufferStorage,
    NamedBufferSubData,
    NamedFramebufferDrawBuffer,
    NamedFramebufferDrawBuffers,
    NamedFramebufferParameteri,
    NamedFramebufferReadBuffer,
    NamedFramebufferRenderbuffer,
    NamedFramebufferTexture,
    NamedFramebufferTextureLayer,
    NamedRenderbufferStorage,
    NamedRenderbufferStorageMultisample,
    NewList,
    Normal3b,
    Normal3bv,
    Normal3d,
    Normal3dv,
    Normal3f,
    Normal3fv,
    Normal3i,
    Normal3iv,
    Normal3s,
    Normal3sv,
    Normal3x,
    NormalP3ui,
    NormalP3uiv,
    NormalPointer,
    ObjectLabel,
    ObjectLabelKHR,
    ObjectPtrLabel,
    ObjectPtrLabelKHR,
    Ortho,
    Orthof,
    Orthox,
    PassThrough,
    PatchParameterfv,
    PatchParameteri,
    PathCommandsCHROMIUM,
    PathParameterfCHROMIUM,
    PathParameteriCHROMIUM,
    PathStencilFuncCHROMIUM,
    PauseTransformFeedback,
    PixelMapfv,
    PixelMapuiv,
    PixelMapusv,
    PixelStoref,
    PixelStorei,
    PixelTransferf,
    PixelTransferi,
    PixelZoom,
    PointParameterf,
    PointParameterfv,
    PointParameteri,
    PointParameteriv,
    PointParameterx,
    PointParameterxv,
    PointSize,
    PointSizePointerOES,
    PointSizex,
    PolygonMode,
    PolygonOffset,
    PolygonOffsetClamp,
    PolygonOffsetx,
    PolygonStipple,
    PopAttrib,
    PopClientAttrib,
    PopDebugGroup,
    PopDebugGroupKHR,
    PopGroupMarkerEXT,
    PopMatrix,
    PopName,
    PrimitiveBoundingBox,
    PrimitiveRestartIndex,
    PrioritizeTextures,
    ProgramBinary,
    ProgramBinaryOES,
    ProgramParameteri,
    ProgramPathFragmentInputGenCHROMIUM,
    ProgramUniform1d,
    ProgramUniform1dv,
    ProgramUniform1f,
    ProgramUniform1fv,
    ProgramUniform1i,
    ProgramUniform1iv,
    ProgramUniform1ui,
    ProgramUniform1uiv,
    ProgramUniform2d,
    ProgramUniform2dv,
    ProgramUniform2f,
    ProgramUniform2fv,
    ProgramUniform2i,
    ProgramUniform2iv,
    ProgramUniform2ui,
    ProgramUniform2uiv,
    ProgramUniform3d,
    ProgramUniform3dv,
    ProgramUniform3f,
    ProgramUniform3fv,
    ProgramUniform3i,
    ProgramUniform3iv,
    ProgramUniform3ui,
    ProgramUniform3uiv,
    ProgramUniform4d,
    ProgramUniform4dv,
    ProgramUniform4f,
    ProgramUniform4fv,
    ProgramUniform4i,
    ProgramUniform4iv,
    ProgramUniform4ui,
    ProgramUniform4uiv,
    ProgramUniformMatrix2dv,
    ProgramUniformMatrix2fv,
    ProgramUniformMatrix2x3dv,
    ProgramUniformMatrix2x3fv,
    ProgramUniformMatrix2x4dv,
    ProgramUniformMatrix2x4fv,
    ProgramUniformMatrix3dv,
    ProgramUniformMatrix3fv,
    ProgramUniformMatrix3x2dv,
    ProgramUniformMatrix3x2fv,
    ProgramUniformMatrix3x4dv,
    ProgramUniformMatrix3x4fv,
    ProgramUniformMatrix4dv,
    ProgramUniformMatrix4fv,
    ProgramUniformMatrix4x2dv,
    ProgramUniformMatrix4x2fv,
    ProgramUniformMatrix4x3dv,
    ProgramUniformMatrix4x3fv,
    ProvokingVertex,
    ProvokingVertexANGLE,
    PushAttrib,
    PushClientAttrib,
    PushDebugGroup,
    PushDebugGroupKHR,
    PushGroupMarkerEXT,
    PushMatrix,
    PushName,
    QueryCounter,
    QueryCounterEXT,
    QueryMatrixxOES,
    RasterPos2d,
    RasterPos2dv,
    RasterPos2f,
    RasterPos2fv,
    RasterPos2i,
    RasterPos2iv,
    RasterPos2s,
    RasterPos2sv,
    RasterPos3d,
    RasterPos3dv,
    RasterPos3f,
    RasterPos3fv,
    RasterPos3i,
    RasterPos3iv,
    RasterPos3s,
    RasterPos3sv,
    RasterPos4d,
    RasterPos4dv,
    RasterPos4f,
    RasterPos4fv,
    RasterPos4i,
    RasterPos4iv,
    RasterPos4s,
    RasterPos4sv,
    ReadBuffer,
    ReadPixels,
    ReadPixelsRobustANGLE,
    ReadnPixels,
    ReadnPixelsEXT,
    ReadnPixelsRobustANGLE,
    Rectd,
    Rectdv,
    Rectf,
    Rectfv,
    Recti,
    Rectiv,
    Rects,
    Rectsv,
    ReleaseShaderCompiler,
    RenderMode,
    RenderbufferStorage,
    RenderbufferStorageMultisample,
    RenderbufferStorageMultisampleANGLE,
    RenderbufferStorageMultisampleEXT,
    RenderbufferStorageOES,
    RequestExtensionANGLE,
    ResumeTransformFeedback,
    Rotated,
    Rotatef,
    Rotatex,
    SampleCoverage,
    SampleCoveragex,
    SampleMaski,
    SampleMaskiANGLE,
    SamplerParameterIiv,
    SamplerParameterIivOES,
    SamplerParameterIivRobustANGLE,
    SamplerParameterIuiv,
    SamplerParameterIuivOES,
    SamplerParameterIuivRobustANGLE,
    SamplerParameterf,
    SamplerParameterfv,
    SamplerParameterfvRobustANGLE,
    SamplerParameteri,
    SamplerParameteriv,
    SamplerParameterivRobustANGLE,
    Scaled,
    Scalef,
    Scalex,
    Scissor,
    ScissorArrayv,
    ScissorIndexed,
    ScissorIndexedv,
    SecondaryColor3b,
    SecondaryColor3bv,
    SecondaryColor3d,
    SecondaryColor3dv,
    SecondaryColor3f,
    SecondaryColor3fv,
    SecondaryColor3i,
    SecondaryColor3iv,
    SecondaryColor3s,
    SecondaryColor3sv,
    SecondaryColor3ub,
    SecondaryColor3ubv,
    SecondaryColor3ui,
    SecondaryColor3uiv,
    SecondaryColor3us,
    SecondaryColor3usv,
    SecondaryColorP3ui,
    SecondaryColorP3uiv,
    SecondaryColorPointer,
    SelectBuffer,
    SemaphoreParameterui64vEXT,
    SetFenceNV,
    ShadeModel,
    ShaderBinary,
    ShaderSource,
    ShaderStorageBlockBinding,
    SignalSemaphoreEXT,
    SpecializeShader,
    StencilFillPathCHROMIUM,
    StencilFillPathInstancedCHROMIUM,
    StencilFunc,
    StencilFuncSeparate,
    StencilMask,
    StencilMaskSeparate,
    StencilOp,
    StencilOpSeparate,
    StencilStrokePathCHROMIUM,
    StencilStrokePathInstancedCHROMIUM,
    StencilThenCoverFillPathCHROMIUM,
    StencilThenCoverFillPathInstancedCHROMIUM,
    StencilThenCoverStrokePathCHROMIUM,
    StencilThenCoverStrokePathInstancedCHROMIUM,
    TestFenceNV,
    TexBuffer,
    TexBufferRange,
    TexCoord1d,
    TexCoord1dv,
    TexCoord1f,
    TexCoord1fv,
    TexCoord1i,
    TexCoord1iv,
    TexCoord1s,
    TexCoord1sv,
    TexCoord2d,
    TexCoord2dv,
    TexCoord2f,
    TexCoord2fv,
    TexCoord2i,
    TexCoord2iv,
    TexCoord2s,
    TexCoord2sv,
    TexCoord3d,
    TexCoord3dv,
    TexCoord3f,
    TexCoord3fv,
    TexCoord3i,
    TexCoord3iv,
    TexCoord3s,
    TexCoord3sv,
    TexCoord4d,
    TexCoord4dv,
    TexCoord4f,
    TexCoord4fv,
    TexCoord4i,
    TexCoord4iv,
    TexCoord4s,
    TexCoord4sv,
    TexCoordP1ui,
    TexCoordP1uiv,
    TexCoordP2ui,
    TexCoordP2uiv,
    TexCoordP3ui,
    TexCoordP3uiv,
    TexCoordP4ui,
    TexCoordP4uiv,
    TexCoordPointer,
    TexEnvf,
    TexEnvfv,
    TexEnvi,
    TexEnviv,
    TexEnvx,
    TexEnvxv,
    TexGend,
    TexGendv,
    TexGenf,
    TexGenfOES,
    TexGenfv,
    TexGenfvOES,
    TexGeni,
    TexGeniOES,
    TexGeniv,
    TexGenivOES,
    TexGenxOES,
    TexGenxvOES,
    TexImage1D,
    TexImage2D,
    TexImage2DExternalANGLE,
    TexImage2DMultisample,
    TexImage2DRobustANGLE,
    TexImage3D,
    TexImage3DMultisample,
    TexImage3DOES,
    TexImage3DRobustANGLE,
    TexParameterIiv,
    TexParameterIivOES,
    TexParameterIivRobustANGLE,
    TexParameterIuiv,
    TexParameterIuivOES,
    TexParameterIuivRobustANGLE,
    TexParameterf,
    TexParameterfv,
    TexParameterfvRobustANGLE,
    TexParameteri,
    TexParameteriv,
    TexParameterivRobustANGLE,
    TexParameterx,
    TexParameterxv,
    TexStorage1D,
    TexStorage1DEXT,
    TexStorage2D,
    TexStorage2DEXT,
    TexStorage2DMultisample,
    TexStorage2DMultisampleANGLE,
    TexStorage3D,
    TexStorage3DEXT,
    TexStorage3DMultisample,
    TexStorage3DMultisampleOES,
    TexStorageMem2DEXT,
    TexStorageMem2DMultisampleEXT,
    TexStorageMem3DEXT,
    TexStorageMem3DMultisampleEXT,
    TexSubImage1D,
    TexSubImage2D,
    TexSubImage2DRobustANGLE,
    TexSubImage3D,
    TexSubImage3DOES,
    TexSubImage3DRobustANGLE,
    TextureBarrier,
    TextureBuffer,
    TextureBufferRange,
    TextureParameterIiv,
    TextureParameterIuiv,
    TextureParameterf,
    TextureParameterfv,
    TextureParameteri,
    TextureParameteriv,
    TextureStorage1D,
    TextureStorage2D,
    TextureStorage2DMultisample,
    TextureStorage3D,
    TextureStorage3DMultisample,
    TextureSubImage1D,
    TextureSubImage2D,
    TextureSubImage3D,
    TextureView,
    TransformFeedbackBufferBase,
    TransformFeedbackBufferRange,
    TransformFeedbackVaryings,
    Translated,
    Translatef,
    Translatex,
    Uniform1d,
    Uniform1dv,
    Uniform1f,
    Uniform1fv,
    Uniform1i,
    Uniform1iv,
    Uniform1ui,
    Uniform1uiv,
    Uniform2d,
    Uniform2dv,
    Uniform2f,
    Uniform2fv,
    Uniform2i,
    Uniform2iv,
    Uniform2ui,
    Uniform2uiv,
    Uniform3d,
    Uniform3dv,
    Uniform3f,
    Uniform3fv,
    Uniform3i,
    Uniform3iv,
    Uniform3ui,
    Uniform3uiv,
    Uniform4d,
    Uniform4dv,
    Uniform4f,
    Uniform4fv,
    Uniform4i,
    Uniform4iv,
    Uniform4ui,
    Uniform4uiv,
    UniformBlockBinding,
    UniformMatrix2dv,
    UniformMatrix2fv,
    UniformMatrix2x3dv,
    UniformMatrix2x3fv,
    UniformMatrix2x4dv,
    UniformMatrix2x4fv,
    UniformMatrix3dv,
    UniformMatrix3fv,
    UniformMatrix3x2dv,
    UniformMatrix3x2fv,
    UniformMatrix3x4dv,
    UniformMatrix3x4fv,
    UniformMatrix4dv,
    UniformMatrix4fv,
    UniformMatrix4x2dv,
    UniformMatrix4x2fv,
    UniformMatrix4x3dv,
    UniformMatrix4x3fv,
    UniformSubroutinesuiv,
    UnmapBuffer,
    UnmapBufferOES,
    UnmapNamedBuffer,
    UseProgram,
    UseProgramStages,
    ValidateProgram,
    ValidateProgramPipeline,
    Vertex2d,
    Vertex2dv,
    Vertex2f,
    Vertex2fv,
    Vertex2i,
    Vertex2iv,
    Vertex2s,
    Vertex2sv,
    Vertex3d,
    Vertex3dv,
    Vertex3f,
    Vertex3fv,
    Vertex3i,
    Vertex3iv,
    Vertex3s,
    Vertex3sv,
    Vertex4d,
    Vertex4dv,
    Vertex4f,
    Vertex4fv,
    Vertex4i,
    Vertex4iv,
    Vertex4s,
    Vertex4sv,
    VertexArrayAttribBinding,
    VertexArrayAttribFormat,
    VertexArrayAttribIFormat,
    VertexArrayAttribLFormat,
    VertexArrayBindingDivisor,
    VertexArrayElementBuffer,
    VertexArrayVertexBuffer,
    VertexArrayVertexBuffers,
    VertexAttrib1d,
    VertexAttrib1dv,
    VertexAttrib1f,
    VertexAttrib1fv,
    VertexAttrib1s,
    VertexAttrib1sv,
    VertexAttrib2d,
    VertexAttrib2dv,
    VertexAttrib2f,
    VertexAttrib2fv,
    VertexAttrib2s,
    VertexAttrib2sv,
    VertexAttrib3d,
    VertexAttrib3dv,
    VertexAttrib3f,
    VertexAttrib3fv,
    VertexAttrib3s,
    VertexAttrib3sv,
    VertexAttrib4Nbv,
    VertexAttrib4Niv,
    VertexAttrib4Nsv,
    VertexAttrib4Nub,
    VertexAttrib4Nubv,
    VertexAttrib4Nuiv,
    VertexAttrib4Nusv,
    VertexAttrib4bv,
    VertexAttrib4d,
    VertexAttrib4dv,
    VertexAttrib4f,
    VertexAttrib4fv,
    VertexAttrib4iv,
    VertexAttrib4s,
    VertexAttrib4sv,
    VertexAttrib4ubv,
    VertexAttrib4uiv,
    VertexAttrib4usv,
    VertexAttribBinding,
    VertexAttribDivisor,
    VertexAttribDivisorANGLE,
    VertexAttribDivisorEXT,
    VertexAttribFormat,
    VertexAttribI1i,
    VertexAttribI1iv,
    VertexAttribI1ui,
    VertexAttribI1uiv,
    VertexAttribI2i,
    VertexAttribI2iv,
    VertexAttribI2ui,
    VertexAttribI2uiv,
    VertexAttribI3i,
    VertexAttribI3iv,
    VertexAttribI3ui,
    VertexAttribI3uiv,
    VertexAttribI4bv,
    VertexAttribI4i,
    VertexAttribI4iv,
    VertexAttribI4sv,
    VertexAttribI4ubv,
    VertexAttribI4ui,
    VertexAttribI4uiv,
    VertexAttribI4usv,
    VertexAttribIFormat,
    VertexAttribIPointer,
    VertexAttribL1d,
    VertexAttribL1dv,
    VertexAttribL2d,
    VertexAttribL2dv,
    VertexAttribL3d,
    VertexAttribL3dv,
    VertexAttribL4d,
    VertexAttribL4dv,
    VertexAttribLFormat,
    VertexAttribLPointer,
    VertexAttribP1ui,
    VertexAttribP1uiv,
    VertexAttribP2ui,
    VertexAttribP2uiv,
    VertexAttribP3ui,
    VertexAttribP3uiv,
    VertexAttribP4ui,
    VertexAttribP4uiv,
    VertexAttribPointer,
    VertexBindingDivisor,
    VertexP2ui,
    VertexP2uiv,
    VertexP3ui,
    VertexP3uiv,
    VertexP4ui,
    VertexP4uiv,
    VertexPointer,
    Viewport,
    ViewportArrayv,
    ViewportIndexedf,
    ViewportIndexedfv,
    WaitSemaphoreEXT,
    WaitSync,
    WeightPointerOES,
    WindowPos2d,
    WindowPos2dv,
    WindowPos2f,
    WindowPos2fv,
    WindowPos2i,
    WindowPos2iv,
    WindowPos2s,
    WindowPos2sv,
    WindowPos3d,
    WindowPos3dv,
    WindowPos3f,
    WindowPos3fv,
    WindowPos3i,
    WindowPos3iv,
    WindowPos3s,
    WindowPos3sv
};

const char *GetEntryPointName(EntryPoint ep);
}  // namespace gl
#endif  // LIBANGLE_ENTRY_POINTS_ENUM_AUTOGEN_H_
