Commit 14534b56 by Nicolas Capens Committed by Nicolas Capens

Export type-info symbols.

Sanitizer tools require type information to catch undefined behavior and other issues. This wasn't available accross libraries due to the version script giving them hidden visibility, leading to false positives. Bug chromium:737384 Change-Id: Iab3e25f4da3672f694e32c1c89278a3fe677d51a Reviewed-on: https://swiftshader-review.googlesource.com/10728Tested-by: 's avatarNicolas Capens <nicolascapens@google.com> Reviewed-by: 's avatarCorentin Wallez <cwallez@google.com> Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com>
parent 5de90b24
{ {
global: global:
# EGL core functions
eglBindAPI; eglBindAPI;
eglBindTexImage; eglBindTexImage;
eglChooseConfig; eglChooseConfig;
...@@ -46,9 +47,13 @@ global: ...@@ -46,9 +47,13 @@ global:
eglClientWaitSyncKHR; eglClientWaitSyncKHR;
eglGetSyncAttribKHR; eglGetSyncAttribKHR;
# Table of function pointers to disambiguate between libraries
libEGL_swiftshader; libEGL_swiftshader;
# Type-strings and type-infos required by sanitizers
_ZTS*;
_ZTI*;
local: local:
*; *;
}; };
{ {
global: global:
glActiveTexture; # OpenGL ES 2.0 core functions
glAttachShader; glActiveTexture;
glBindAttribLocation; glAttachShader;
glBindBuffer; glBindAttribLocation;
glBindFramebuffer; glBindBuffer;
glBindRenderbuffer; glBindFramebuffer;
glBindTexture; glBindRenderbuffer;
glBlendColor; glBindTexture;
glBlendEquation; glBlendColor;
glBlendEquationSeparate; glBlendEquation;
glBlendFunc; glBlendEquationSeparate;
glBlendFuncSeparate; glBlendFunc;
glBufferData; glBlendFuncSeparate;
glBufferSubData; glBufferData;
glCheckFramebufferStatus; glBufferSubData;
glClear; glCheckFramebufferStatus;
glClearColor; glClear;
glClearDepthf; glClearColor;
glClearStencil; glClearDepthf;
glColorMask; glClearStencil;
glCompileShader; glColorMask;
glCompressedTexImage2D; glCompileShader;
glCompressedTexSubImage2D; glCompressedTexImage2D;
glCopyTexImage2D; glCompressedTexSubImage2D;
glCopyTexSubImage2D; glCopyTexImage2D;
glCreateProgram; glCopyTexSubImage2D;
glCreateShader; glCreateProgram;
glCullFace; glCreateShader;
glDeleteBuffers; glCullFace;
glDeleteFramebuffers; glDeleteBuffers;
glDeleteProgram; glDeleteFramebuffers;
glDeleteRenderbuffers; glDeleteProgram;
glDeleteShader; glDeleteRenderbuffers;
glDeleteTextures; glDeleteShader;
glDepthFunc; glDeleteTextures;
glDepthMask; glDepthFunc;
glDepthRangef; glDepthMask;
glDetachShader; glDepthRangef;
glDisable; glDetachShader;
glDisableVertexAttribArray; glDisable;
glDrawArrays; glDisableVertexAttribArray;
glDrawElements; glDrawArrays;
glEnable; glDrawElements;
glEnableVertexAttribArray; glEnable;
glFinish; glEnableVertexAttribArray;
glFlush; glFinish;
glFramebufferRenderbuffer; glFlush;
glFramebufferTexture2D; glFramebufferRenderbuffer;
glFrontFace; glFramebufferTexture2D;
glGenBuffers; glFrontFace;
glGenFramebuffers; glGenBuffers;
glGenRenderbuffers; glGenFramebuffers;
glGenTextures; glGenRenderbuffers;
glGenerateMipmap; glGenTextures;
glGetActiveAttrib; glGenerateMipmap;
glGetActiveUniform; glGetActiveAttrib;
glGetAttachedShaders; glGetActiveUniform;
glGetAttribLocation; glGetAttachedShaders;
glGetBooleanv; glGetAttribLocation;
glGetBufferParameteriv; glGetBooleanv;
glGetError; glGetBufferParameteriv;
glGetFloatv; glGetError;
glGetFramebufferAttachmentParameteriv; glGetFloatv;
glGetIntegerv; glGetFramebufferAttachmentParameteriv;
glGetProgramInfoLog; glGetIntegerv;
glGetProgramiv; glGetProgramInfoLog;
glGetRenderbufferParameteriv; glGetProgramiv;
glGetShaderInfoLog; glGetRenderbufferParameteriv;
glGetShaderPrecisionFormat; glGetShaderInfoLog;
glGetShaderSource; glGetShaderPrecisionFormat;
glGetShaderiv; glGetShaderSource;
glGetString; glGetShaderiv;
glGetTexParameterfv; glGetString;
glGetTexParameteriv; glGetTexParameterfv;
glGetUniformLocation; glGetTexParameteriv;
glGetUniformfv; glGetUniformLocation;
glGetUniformiv; glGetUniformfv;
glGetVertexAttribPointerv; glGetUniformiv;
glGetVertexAttribfv; glGetVertexAttribPointerv;
glGetVertexAttribiv; glGetVertexAttribfv;
glHint; glGetVertexAttribiv;
glIsBuffer; glHint;
glIsEnabled; glIsBuffer;
glIsFramebuffer; glIsEnabled;
glIsProgram; glIsFramebuffer;
glIsRenderbuffer; glIsProgram;
glIsShader; glIsRenderbuffer;
glIsTexture; glIsShader;
glLineWidth; glIsTexture;
glLinkProgram; glLineWidth;
glPixelStorei; glLinkProgram;
glPolygonOffset; glPixelStorei;
glReadPixels; glPolygonOffset;
glReleaseShaderCompiler; glReadPixels;
glRenderbufferStorage; glReleaseShaderCompiler;
glSampleCoverage; glRenderbufferStorage;
glScissor; glSampleCoverage;
glShaderBinary; glScissor;
glShaderSource; glShaderBinary;
glStencilFunc; glShaderSource;
glStencilFuncSeparate; glStencilFunc;
glStencilMask; glStencilFuncSeparate;
glStencilMaskSeparate; glStencilMask;
glStencilOp; glStencilMaskSeparate;
glStencilOpSeparate; glStencilOp;
glTexImage2D; glStencilOpSeparate;
glTexParameterf; glTexImage2D;
glTexParameterfv; glTexParameterf;
glTexParameteri; glTexParameterfv;
glTexParameteriv; glTexParameteri;
glTexSubImage2D; glTexParameteriv;
glUniform1f; glTexSubImage2D;
glUniform1fv; glUniform1f;
glUniform1i; glUniform1fv;
glUniform1iv; glUniform1i;
glUniform2f; glUniform1iv;
glUniform2fv; glUniform2f;
glUniform2i; glUniform2fv;
glUniform2iv; glUniform2i;
glUniform3f; glUniform2iv;
glUniform3fv; glUniform3f;
glUniform3i; glUniform3fv;
glUniform3iv; glUniform3i;
glUniform4f; glUniform3iv;
glUniform4fv; glUniform4f;
glUniform4i; glUniform4fv;
glUniform4iv; glUniform4i;
glUniformMatrix2fv; glUniform4iv;
glUniformMatrix3fv; glUniformMatrix2fv;
glUniformMatrix4fv; glUniformMatrix3fv;
glUseProgram; glUniformMatrix4fv;
glValidateProgram; glUseProgram;
glVertexAttrib1f; glValidateProgram;
glVertexAttrib1fv; glVertexAttrib1f;
glVertexAttrib2f; glVertexAttrib1fv;
glVertexAttrib2fv; glVertexAttrib2f;
glVertexAttrib3f; glVertexAttrib2fv;
glVertexAttrib3fv; glVertexAttrib3f;
glVertexAttrib4f; glVertexAttrib3fv;
glVertexAttrib4fv; glVertexAttrib4f;
glVertexAttribPointer; glVertexAttrib4fv;
glViewport; glVertexAttribPointer;
glViewport;
# Extensions # OpenGL ES 3.0 core functions
glTexImage3DOES; glReadBuffer;
glBlitFramebufferANGLE; glDrawRangeElements;
glRenderbufferStorageMultisampleANGLE; glTexImage3D;
glDeleteFencesNV; glTexSubImage3D;
glFinishFenceNV; glCopyTexSubImage3D;
glGenFencesNV; glCompressedTexImage3D;
glGetFenceivNV; glCompressedTexSubImage3D;
glIsFenceNV; glGenQueries;
glSetFenceNV; glDeleteQueries;
glTestFenceNV; glIsQuery;
glGetGraphicsResetStatusEXT; glBeginQuery;
glReadnPixelsEXT; glEndQuery;
glGetnUniformfvEXT; glGetQueryiv;
glGetnUniformivEXT; glGetQueryObjectuiv;
glGenQueriesEXT; glUnmapBuffer;
glDeleteQueriesEXT; glGetBufferPointerv;
glIsQueryEXT; glDrawBuffers;
glBeginQueryEXT; glUniformMatrix2x3fv;
glEndQueryEXT; glUniformMatrix3x2fv;
glGetQueryivEXT; glUniformMatrix2x4fv;
glGetQueryObjectuivEXT; glUniformMatrix4x2fv;
glEGLImageTargetTexture2DOES; glUniformMatrix3x4fv;
glEGLImageTargetRenderbufferStorageOES; glUniformMatrix4x3fv;
glBlitFramebuffer;
glRenderbufferStorageMultisample;
glFramebufferTextureLayer;
glMapBufferRange;
glFlushMappedBufferRange;
glBindVertexArray;
glDeleteVertexArrays;
glGenVertexArrays;
glIsVertexArray;
glGetIntegeri_v;
glBeginTransformFeedback;
glEndTransformFeedback;
glBindBufferRange;
glBindBufferBase;
glTransformFeedbackVaryings;
glGetTransformFeedbackVarying;
glVertexAttribIPointer;
glGetVertexAttribIiv;
glGetVertexAttribIuiv;
glVertexAttribI4i;
glVertexAttribI4ui;
glVertexAttribI4iv;
glVertexAttribI4uiv;
glGetUniformuiv;
glGetFragDataLocation;
glUniform1ui;
glUniform2ui;
glUniform3ui;
glUniform4ui;
glUniform1uiv;
glUniform2uiv;
glUniform3uiv;
glUniform4uiv;
glClearBufferiv;
glClearBufferuiv;
glClearBufferfv;
glClearBufferfi;
glGetStringi;
glCopyBufferSubData;
glGetUniformIndices;
glGetActiveUniformsiv;
glGetUniformBlockIndex;
glGetActiveUniformBlockiv;
glGetActiveUniformBlockName;
glUniformBlockBinding;
glDrawArraysInstanced;
glDrawElementsInstanced;
glFenceSync;
glIsSync;
glDeleteSync;
glClientWaitSync;
glWaitSync;
glGetInteger64v;
glGetSynciv;
glGetInteger64i_v;
glGetBufferParameteri64v;
glGenSamplers;
glDeleteSamplers;
glIsSampler;
glBindSampler;
glSamplerParameteri;
glSamplerParameteriv;
glSamplerParameterf;
glSamplerParameterfv;
glGetSamplerParameteriv;
glGetSamplerParameterfv;
glVertexAttribDivisor;
glBindTransformFeedback;
glDeleteTransformFeedbacks;
glGenTransformFeedbacks;
glIsTransformFeedback;
glPauseTransformFeedback;
glResumeTransformFeedback;
glGetProgramBinary;
glProgramBinary;
glProgramParameteri;
glInvalidateFramebuffer;
glInvalidateSubFramebuffer;
glTexStorage2D;
glTexStorage3D;
glGetInternalformativ;
# Extensions
glTexImage3DOES;
glBlitFramebufferANGLE;
glRenderbufferStorageMultisampleANGLE;
glDeleteFencesNV;
glFinishFenceNV;
glGenFencesNV;
glGetFenceivNV;
glIsFenceNV;
glSetFenceNV;
glTestFenceNV;
glGetGraphicsResetStatusEXT;
glReadnPixelsEXT;
glGetnUniformfvEXT;
glGetnUniformivEXT;
glGenQueriesEXT;
glDeleteQueriesEXT;
glIsQueryEXT;
glBeginQueryEXT;
glEndQueryEXT;
glGetQueryivEXT;
glGetQueryObjectuivEXT;
glEGLImageTargetTexture2DOES;
glEGLImageTargetRenderbufferStorageOES;
glIsRenderbufferOES; glIsRenderbufferOES;
glBindRenderbufferOES; glBindRenderbufferOES;
glDeleteRenderbuffersOES; glDeleteRenderbuffersOES;
...@@ -184,117 +291,15 @@ global: ...@@ -184,117 +291,15 @@ global:
glGenerateMipmapOES; glGenerateMipmapOES;
glDrawBuffersEXT; glDrawBuffersEXT;
# GLES 3.0 Functions # Table of function pointers to disambiguate between libraries
glReadBuffer; libGLESv2_swiftshader;
glDrawRangeElements;
glTexImage3D;
glTexSubImage3D;
glCopyTexSubImage3D;
glCompressedTexImage3D;
glCompressedTexSubImage3D;
glGenQueries;
glDeleteQueries;
glIsQuery;
glBeginQuery;
glEndQuery;
glGetQueryiv;
glGetQueryObjectuiv;
glUnmapBuffer;
glGetBufferPointerv;
glDrawBuffers;
glUniformMatrix2x3fv;
glUniformMatrix3x2fv;
glUniformMatrix2x4fv;
glUniformMatrix4x2fv;
glUniformMatrix3x4fv;
glUniformMatrix4x3fv;
glBlitFramebuffer;
glRenderbufferStorageMultisample;
glFramebufferTextureLayer;
glMapBufferRange;
glFlushMappedBufferRange;
glBindVertexArray;
glDeleteVertexArrays;
glGenVertexArrays;
glIsVertexArray;
glGetIntegeri_v;
glBeginTransformFeedback;
glEndTransformFeedback;
glBindBufferRange;
glBindBufferBase;
glTransformFeedbackVaryings;
glGetTransformFeedbackVarying;
glVertexAttribIPointer;
glGetVertexAttribIiv;
glGetVertexAttribIuiv;
glVertexAttribI4i;
glVertexAttribI4ui;
glVertexAttribI4iv;
glVertexAttribI4uiv;
glGetUniformuiv;
glGetFragDataLocation;
glUniform1ui;
glUniform2ui;
glUniform3ui;
glUniform4ui;
glUniform1uiv;
glUniform2uiv;
glUniform3uiv;
glUniform4uiv;
glClearBufferiv;
glClearBufferuiv;
glClearBufferfv;
glClearBufferfi;
glGetStringi;
glCopyBufferSubData;
glGetUniformIndices;
glGetActiveUniformsiv;
glGetUniformBlockIndex;
glGetActiveUniformBlockiv;
glGetActiveUniformBlockName;
glUniformBlockBinding;
glDrawArraysInstanced;
glDrawElementsInstanced;
glFenceSync;
glIsSync;
glDeleteSync;
glClientWaitSync;
glWaitSync;
glGetInteger64v;
glGetSynciv;
glGetInteger64i_v;
glGetBufferParameteri64v;
glGenSamplers;
glDeleteSamplers;
glIsSampler;
glBindSampler;
glSamplerParameteri;
glSamplerParameteriv;
glSamplerParameterf;
glSamplerParameterfv;
glGetSamplerParameteriv;
glGetSamplerParameterfv;
glVertexAttribDivisor;
glBindTransformFeedback;
glDeleteTransformFeedbacks;
glGenTransformFeedbacks;
glIsTransformFeedback;
glPauseTransformFeedback;
glResumeTransformFeedback;
glGetProgramBinary;
glProgramBinary;
glProgramParameteri;
glInvalidateFramebuffer;
glInvalidateSubFramebuffer;
glTexStorage2D;
glTexStorage3D;
glGetInternalformativ;
libGLESv2_swiftshader; # Type-strings and type-infos required by sanitizers
_ZTS*;
_ZTI*;
Register; Register;
local: local:
*; *;
}; };
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment