Edit

kc3-lang/angle/src/libANGLE/validationES3_autogen.h

Branch :

  • Show log

    Commit

  • Author : Shahbaz Youssefi
    Date : 2023-07-12 14:44:17
    Hash : 74cf6a3a
    Message : Ensure lockless entry point validations only access private data Bug: angleproject:8224 Change-Id: I19e867923b088879f9f37d0a3b4ff8b681470be0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4678352 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>

  • src/libANGLE/validationES3_autogen.h
  • // 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.
    //
    // validationES3_autogen.h:
    //   Validation functions for the OpenGL ES 3.0 entry points.
    
    #ifndef LIBANGLE_VALIDATION_ES3_AUTOGEN_H_
    #define LIBANGLE_VALIDATION_ES3_AUTOGEN_H_
    
    #include "common/PackedEnums.h"
    #include "common/entry_points_enum_autogen.h"
    
    namespace gl
    {
    class Context;
    class PrivateState;
    class ErrorSet;
    
    bool ValidateBeginQuery(const Context *context,
                            angle::EntryPoint entryPoint,
                            QueryType targetPacked,
                            QueryID idPacked);
    bool ValidateBeginTransformFeedback(const Context *context,
                                        angle::EntryPoint entryPoint,
                                        PrimitiveMode primitiveModePacked);
    bool ValidateBindBufferBase(const Context *context,
                                angle::EntryPoint entryPoint,
                                BufferBinding targetPacked,
                                GLuint index,
                                BufferID bufferPacked);
    bool ValidateBindBufferRange(const Context *context,
                                 angle::EntryPoint entryPoint,
                                 BufferBinding targetPacked,
                                 GLuint index,
                                 BufferID bufferPacked,
                                 GLintptr offset,
                                 GLsizeiptr size);
    bool ValidateBindSampler(const Context *context,
                             angle::EntryPoint entryPoint,
                             GLuint unit,
                             SamplerID samplerPacked);
    bool ValidateBindTransformFeedback(const Context *context,
                                       angle::EntryPoint entryPoint,
                                       GLenum target,
                                       TransformFeedbackID idPacked);
    bool ValidateBindVertexArray(const Context *context,
                                 angle::EntryPoint entryPoint,
                                 VertexArrayID arrayPacked);
    bool ValidateBlitFramebuffer(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);
    bool ValidateClearBufferfi(const Context *context,
                               angle::EntryPoint entryPoint,
                               GLenum buffer,
                               GLint drawbuffer,
                               GLfloat depth,
                               GLint stencil);
    bool ValidateClearBufferfv(const Context *context,
                               angle::EntryPoint entryPoint,
                               GLenum buffer,
                               GLint drawbuffer,
                               const GLfloat *value);
    bool ValidateClearBufferiv(const Context *context,
                               angle::EntryPoint entryPoint,
                               GLenum buffer,
                               GLint drawbuffer,
                               const GLint *value);
    bool ValidateClearBufferuiv(const Context *context,
                                angle::EntryPoint entryPoint,
                                GLenum buffer,
                                GLint drawbuffer,
                                const GLuint *value);
    bool ValidateClientWaitSync(const Context *context,
                                angle::EntryPoint entryPoint,
                                SyncID syncPacked,
                                GLbitfield flags,
                                GLuint64 timeout);
    bool ValidateCompressedTexImage3D(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 ValidateCompressedTexSubImage3D(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 ValidateCopyBufferSubData(const Context *context,
                                   angle::EntryPoint entryPoint,
                                   BufferBinding readTargetPacked,
                                   BufferBinding writeTargetPacked,
                                   GLintptr readOffset,
                                   GLintptr writeOffset,
                                   GLsizeiptr size);
    bool ValidateCopyTexSubImage3D(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 ValidateDeleteQueries(const Context *context,
                               angle::EntryPoint entryPoint,
                               GLsizei n,
                               const QueryID *idsPacked);
    bool ValidateDeleteSamplers(const Context *context,
                                angle::EntryPoint entryPoint,
                                GLsizei count,
                                const SamplerID *samplersPacked);
    bool ValidateDeleteSync(const Context *context, angle::EntryPoint entryPoint, SyncID syncPacked);
    bool ValidateDeleteTransformFeedbacks(const Context *context,
                                          angle::EntryPoint entryPoint,
                                          GLsizei n,
                                          const TransformFeedbackID *idsPacked);
    bool ValidateDeleteVertexArrays(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    GLsizei n,
                                    const VertexArrayID *arraysPacked);
    bool ValidateDrawArraysInstanced(const Context *context,
                                     angle::EntryPoint entryPoint,
                                     PrimitiveMode modePacked,
                                     GLint first,
                                     GLsizei count,
                                     GLsizei instancecount);
    bool ValidateDrawBuffers(const Context *context,
                             angle::EntryPoint entryPoint,
                             GLsizei n,
                             const GLenum *bufs);
    bool ValidateDrawElementsInstanced(const Context *context,
                                       angle::EntryPoint entryPoint,
                                       PrimitiveMode modePacked,
                                       GLsizei count,
                                       DrawElementsType typePacked,
                                       const void *indices,
                                       GLsizei instancecount);
    bool ValidateDrawRangeElements(const Context *context,
                                   angle::EntryPoint entryPoint,
                                   PrimitiveMode modePacked,
                                   GLuint start,
                                   GLuint end,
                                   GLsizei count,
                                   DrawElementsType typePacked,
                                   const void *indices);
    bool ValidateEndQuery(const Context *context, angle::EntryPoint entryPoint, QueryType targetPacked);
    bool ValidateEndTransformFeedback(const Context *context, angle::EntryPoint entryPoint);
    bool ValidateFenceSync(const Context *context,
                           angle::EntryPoint entryPoint,
                           GLenum condition,
                           GLbitfield flags);
    bool ValidateFlushMappedBufferRange(const Context *context,
                                        angle::EntryPoint entryPoint,
                                        BufferBinding targetPacked,
                                        GLintptr offset,
                                        GLsizeiptr length);
    bool ValidateFramebufferTextureLayer(const Context *context,
                                         angle::EntryPoint entryPoint,
                                         GLenum target,
                                         GLenum attachment,
                                         TextureID texturePacked,
                                         GLint level,
                                         GLint layer);
    bool ValidateGenQueries(const Context *context,
                            angle::EntryPoint entryPoint,
                            GLsizei n,
                            const QueryID *idsPacked);
    bool ValidateGenSamplers(const Context *context,
                             angle::EntryPoint entryPoint,
                             GLsizei count,
                             const SamplerID *samplersPacked);
    bool ValidateGenTransformFeedbacks(const Context *context,
                                       angle::EntryPoint entryPoint,
                                       GLsizei n,
                                       const TransformFeedbackID *idsPacked);
    bool ValidateGenVertexArrays(const Context *context,
                                 angle::EntryPoint entryPoint,
                                 GLsizei n,
                                 const VertexArrayID *arraysPacked);
    bool ValidateGetActiveUniformBlockName(const Context *context,
                                           angle::EntryPoint entryPoint,
                                           ShaderProgramID programPacked,
                                           UniformBlockIndex uniformBlockIndexPacked,
                                           GLsizei bufSize,
                                           const GLsizei *length,
                                           const GLchar *uniformBlockName);
    bool ValidateGetActiveUniformBlockiv(const Context *context,
                                         angle::EntryPoint entryPoint,
                                         ShaderProgramID programPacked,
                                         UniformBlockIndex uniformBlockIndexPacked,
                                         GLenum pname,
                                         const GLint *params);
    bool ValidateGetActiveUniformsiv(const Context *context,
                                     angle::EntryPoint entryPoint,
                                     ShaderProgramID programPacked,
                                     GLsizei uniformCount,
                                     const GLuint *uniformIndices,
                                     GLenum pname,
                                     const GLint *params);
    bool ValidateGetBufferParameteri64v(const Context *context,
                                        angle::EntryPoint entryPoint,
                                        BufferBinding targetPacked,
                                        GLenum pname,
                                        const GLint64 *params);
    bool ValidateGetBufferPointerv(const Context *context,
                                   angle::EntryPoint entryPoint,
                                   BufferBinding targetPacked,
                                   GLenum pname,
                                   void *const *params);
    bool ValidateGetFragDataLocation(const Context *context,
                                     angle::EntryPoint entryPoint,
                                     ShaderProgramID programPacked,
                                     const GLchar *name);
    bool ValidateGetInteger64i_v(const Context *context,
                                 angle::EntryPoint entryPoint,
                                 GLenum target,
                                 GLuint index,
                                 const GLint64 *data);
    bool ValidateGetInteger64v(const Context *context,
                               angle::EntryPoint entryPoint,
                               GLenum pname,
                               const GLint64 *data);
    bool ValidateGetIntegeri_v(const Context *context,
                               angle::EntryPoint entryPoint,
                               GLenum target,
                               GLuint index,
                               const GLint *data);
    bool ValidateGetInternalformativ(const Context *context,
                                     angle::EntryPoint entryPoint,
                                     GLenum target,
                                     GLenum internalformat,
                                     GLenum pname,
                                     GLsizei count,
                                     const GLint *params);
    bool ValidateGetProgramBinary(const Context *context,
                                  angle::EntryPoint entryPoint,
                                  ShaderProgramID programPacked,
                                  GLsizei bufSize,
                                  const GLsizei *length,
                                  const GLenum *binaryFormat,
                                  const void *binary);
    bool ValidateGetQueryObjectuiv(const Context *context,
                                   angle::EntryPoint entryPoint,
                                   QueryID idPacked,
                                   GLenum pname,
                                   const GLuint *params);
    bool ValidateGetQueryiv(const Context *context,
                            angle::EntryPoint entryPoint,
                            QueryType targetPacked,
                            GLenum pname,
                            const GLint *params);
    bool ValidateGetSamplerParameterfv(const Context *context,
                                       angle::EntryPoint entryPoint,
                                       SamplerID samplerPacked,
                                       GLenum pname,
                                       const GLfloat *params);
    bool ValidateGetSamplerParameteriv(const Context *context,
                                       angle::EntryPoint entryPoint,
                                       SamplerID samplerPacked,
                                       GLenum pname,
                                       const GLint *params);
    bool ValidateGetStringi(const Context *context,
                            angle::EntryPoint entryPoint,
                            GLenum name,
                            GLuint index);
    bool ValidateGetSynciv(const Context *context,
                           angle::EntryPoint entryPoint,
                           SyncID syncPacked,
                           GLenum pname,
                           GLsizei count,
                           const GLsizei *length,
                           const GLint *values);
    bool ValidateGetTransformFeedbackVarying(const Context *context,
                                             angle::EntryPoint entryPoint,
                                             ShaderProgramID programPacked,
                                             GLuint index,
                                             GLsizei bufSize,
                                             const GLsizei *length,
                                             const GLsizei *size,
                                             const GLenum *type,
                                             const GLchar *name);
    bool ValidateGetUniformBlockIndex(const Context *context,
                                      angle::EntryPoint entryPoint,
                                      ShaderProgramID programPacked,
                                      const GLchar *uniformBlockName);
    bool ValidateGetUniformIndices(const Context *context,
                                   angle::EntryPoint entryPoint,
                                   ShaderProgramID programPacked,
                                   GLsizei uniformCount,
                                   const GLchar *const *uniformNames,
                                   const GLuint *uniformIndices);
    bool ValidateGetUniformuiv(const Context *context,
                               angle::EntryPoint entryPoint,
                               ShaderProgramID programPacked,
                               UniformLocation locationPacked,
                               const GLuint *params);
    bool ValidateGetVertexAttribIiv(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    GLuint index,
                                    GLenum pname,
                                    const GLint *params);
    bool ValidateGetVertexAttribIuiv(const Context *context,
                                     angle::EntryPoint entryPoint,
                                     GLuint index,
                                     GLenum pname,
                                     const GLuint *params);
    bool ValidateInvalidateFramebuffer(const Context *context,
                                       angle::EntryPoint entryPoint,
                                       GLenum target,
                                       GLsizei numAttachments,
                                       const GLenum *attachments);
    bool ValidateInvalidateSubFramebuffer(const Context *context,
                                          angle::EntryPoint entryPoint,
                                          GLenum target,
                                          GLsizei numAttachments,
                                          const GLenum *attachments,
                                          GLint x,
                                          GLint y,
                                          GLsizei width,
                                          GLsizei height);
    bool ValidateIsQuery(const Context *context, angle::EntryPoint entryPoint, QueryID idPacked);
    bool ValidateIsSampler(const Context *context,
                           angle::EntryPoint entryPoint,
                           SamplerID samplerPacked);
    bool ValidateIsSync(const Context *context, angle::EntryPoint entryPoint, SyncID syncPacked);
    bool ValidateIsTransformFeedback(const Context *context,
                                     angle::EntryPoint entryPoint,
                                     TransformFeedbackID idPacked);
    bool ValidateIsVertexArray(const Context *context,
                               angle::EntryPoint entryPoint,
                               VertexArrayID arrayPacked);
    bool ValidateMapBufferRange(const Context *context,
                                angle::EntryPoint entryPoint,
                                BufferBinding targetPacked,
                                GLintptr offset,
                                GLsizeiptr length,
                                GLbitfield access);
    bool ValidatePauseTransformFeedback(const Context *context, angle::EntryPoint entryPoint);
    bool ValidateProgramBinary(const Context *context,
                               angle::EntryPoint entryPoint,
                               ShaderProgramID programPacked,
                               GLenum binaryFormat,
                               const void *binary,
                               GLsizei length);
    bool ValidateProgramParameteri(const Context *context,
                                   angle::EntryPoint entryPoint,
                                   ShaderProgramID programPacked,
                                   GLenum pname,
                                   GLint value);
    bool ValidateReadBuffer(const Context *context, angle::EntryPoint entryPoint, GLenum src);
    bool ValidateRenderbufferStorageMultisample(const Context *context,
                                                angle::EntryPoint entryPoint,
                                                GLenum target,
                                                GLsizei samples,
                                                GLenum internalformat,
                                                GLsizei width,
                                                GLsizei height);
    bool ValidateResumeTransformFeedback(const Context *context, angle::EntryPoint entryPoint);
    bool ValidateSamplerParameterf(const Context *context,
                                   angle::EntryPoint entryPoint,
                                   SamplerID samplerPacked,
                                   GLenum pname,
                                   GLfloat param);
    bool ValidateSamplerParameterfv(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    SamplerID samplerPacked,
                                    GLenum pname,
                                    const GLfloat *param);
    bool ValidateSamplerParameteri(const Context *context,
                                   angle::EntryPoint entryPoint,
                                   SamplerID samplerPacked,
                                   GLenum pname,
                                   GLint param);
    bool ValidateSamplerParameteriv(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    SamplerID samplerPacked,
                                    GLenum pname,
                                    const GLint *param);
    bool ValidateTexImage3D(const Context *context,
                            angle::EntryPoint entryPoint,
                            TextureTarget targetPacked,
                            GLint level,
                            GLint internalformat,
                            GLsizei width,
                            GLsizei height,
                            GLsizei depth,
                            GLint border,
                            GLenum format,
                            GLenum type,
                            const void *pixels);
    bool ValidateTexStorage2D(const Context *context,
                              angle::EntryPoint entryPoint,
                              TextureType targetPacked,
                              GLsizei levels,
                              GLenum internalformat,
                              GLsizei width,
                              GLsizei height);
    bool ValidateTexStorage3D(const Context *context,
                              angle::EntryPoint entryPoint,
                              TextureType targetPacked,
                              GLsizei levels,
                              GLenum internalformat,
                              GLsizei width,
                              GLsizei height,
                              GLsizei depth);
    bool ValidateTexSubImage3D(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);
    bool ValidateTransformFeedbackVaryings(const Context *context,
                                           angle::EntryPoint entryPoint,
                                           ShaderProgramID programPacked,
                                           GLsizei count,
                                           const GLchar *const *varyings,
                                           GLenum bufferMode);
    bool ValidateUniform1ui(const Context *context,
                            angle::EntryPoint entryPoint,
                            UniformLocation locationPacked,
                            GLuint v0);
    bool ValidateUniform1uiv(const Context *context,
                             angle::EntryPoint entryPoint,
                             UniformLocation locationPacked,
                             GLsizei count,
                             const GLuint *value);
    bool ValidateUniform2ui(const Context *context,
                            angle::EntryPoint entryPoint,
                            UniformLocation locationPacked,
                            GLuint v0,
                            GLuint v1);
    bool ValidateUniform2uiv(const Context *context,
                             angle::EntryPoint entryPoint,
                             UniformLocation locationPacked,
                             GLsizei count,
                             const GLuint *value);
    bool ValidateUniform3ui(const Context *context,
                            angle::EntryPoint entryPoint,
                            UniformLocation locationPacked,
                            GLuint v0,
                            GLuint v1,
                            GLuint v2);
    bool ValidateUniform3uiv(const Context *context,
                             angle::EntryPoint entryPoint,
                             UniformLocation locationPacked,
                             GLsizei count,
                             const GLuint *value);
    bool ValidateUniform4ui(const Context *context,
                            angle::EntryPoint entryPoint,
                            UniformLocation locationPacked,
                            GLuint v0,
                            GLuint v1,
                            GLuint v2,
                            GLuint v3);
    bool ValidateUniform4uiv(const Context *context,
                             angle::EntryPoint entryPoint,
                             UniformLocation locationPacked,
                             GLsizei count,
                             const GLuint *value);
    bool ValidateUniformBlockBinding(const Context *context,
                                     angle::EntryPoint entryPoint,
                                     ShaderProgramID programPacked,
                                     UniformBlockIndex uniformBlockIndexPacked,
                                     GLuint uniformBlockBinding);
    bool ValidateUniformMatrix2x3fv(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    UniformLocation locationPacked,
                                    GLsizei count,
                                    GLboolean transpose,
                                    const GLfloat *value);
    bool ValidateUniformMatrix2x4fv(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    UniformLocation locationPacked,
                                    GLsizei count,
                                    GLboolean transpose,
                                    const GLfloat *value);
    bool ValidateUniformMatrix3x2fv(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    UniformLocation locationPacked,
                                    GLsizei count,
                                    GLboolean transpose,
                                    const GLfloat *value);
    bool ValidateUniformMatrix3x4fv(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    UniformLocation locationPacked,
                                    GLsizei count,
                                    GLboolean transpose,
                                    const GLfloat *value);
    bool ValidateUniformMatrix4x2fv(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    UniformLocation locationPacked,
                                    GLsizei count,
                                    GLboolean transpose,
                                    const GLfloat *value);
    bool ValidateUniformMatrix4x3fv(const Context *context,
                                    angle::EntryPoint entryPoint,
                                    UniformLocation locationPacked,
                                    GLsizei count,
                                    GLboolean transpose,
                                    const GLfloat *value);
    bool ValidateUnmapBuffer(const Context *context,
                             angle::EntryPoint entryPoint,
                             BufferBinding targetPacked);
    bool ValidateVertexAttribDivisor(const Context *context,
                                     angle::EntryPoint entryPoint,
                                     GLuint index,
                                     GLuint divisor);
    bool ValidateVertexAttribI4i(const PrivateState &state,
                                 ErrorSet *errors,
                                 angle::EntryPoint entryPoint,
                                 GLuint index,
                                 GLint x,
                                 GLint y,
                                 GLint z,
                                 GLint w);
    bool ValidateVertexAttribI4iv(const PrivateState &state,
                                  ErrorSet *errors,
                                  angle::EntryPoint entryPoint,
                                  GLuint index,
                                  const GLint *v);
    bool ValidateVertexAttribI4ui(const PrivateState &state,
                                  ErrorSet *errors,
                                  angle::EntryPoint entryPoint,
                                  GLuint index,
                                  GLuint x,
                                  GLuint y,
                                  GLuint z,
                                  GLuint w);
    bool ValidateVertexAttribI4uiv(const PrivateState &state,
                                   ErrorSet *errors,
                                   angle::EntryPoint entryPoint,
                                   GLuint index,
                                   const GLuint *v);
    bool ValidateVertexAttribIPointer(const Context *context,
                                      angle::EntryPoint entryPoint,
                                      GLuint index,
                                      GLint size,
                                      VertexAttribType typePacked,
                                      GLsizei stride,
                                      const void *pointer);
    bool ValidateWaitSync(const Context *context,
                          angle::EntryPoint entryPoint,
                          SyncID syncPacked,
                          GLbitfield flags,
                          GLuint64 timeout);
    }  // namespace gl
    
    #endif  // LIBANGLE_VALIDATION_ES3_AUTOGEN_H_