diff options
author | Lingfeng Yang <lfy@google.com> | 2017-01-17 06:04:56 -0800 |
---|---|---|
committer | Greg Hartman <ghartman@google.com> | 2018-08-23 17:30:51 -0700 |
commit | 1efed05b0331491aa22474c45d348e830153d120 (patch) | |
tree | 758c2476255aee4133aa4dbeeb3720afa7fe2636 | |
parent | 60c7e2f2f9b84d24540ee249bca0485745d7e6dd (diff) | |
download | opengl-transport-1efed05b0331491aa22474c45d348e830153d120.tar.gz |
[WIP] glesv31 hostside changes
Change-Id: I2710d1685e19071cdadf0d5eeb1f29fae6f68e9a
-rw-r--r-- | host/libs/virglrenderer/GLESv3_dec/gles3.attrib | 28 | ||||
-rw-r--r-- | host/libs/virglrenderer/GLESv3_dec/gles3.in | 1 | ||||
-rw-r--r-- | host/libs/virglrenderer/OpenGLESDispatch/gles31_only.entries | 2 |
3 files changed, 17 insertions, 14 deletions
diff --git a/host/libs/virglrenderer/GLESv3_dec/gles3.attrib b/host/libs/virglrenderer/GLESv3_dec/gles3.attrib index 1782a6f16..bc657c582 100644 --- a/host/libs/virglrenderer/GLESv3_dec/gles3.attrib +++ b/host/libs/virglrenderer/GLESv3_dec/gles3.attrib @@ -151,9 +151,7 @@ glGetIntegerv #void glGetProgramiv(GLuint program, GLenum pname, GLint *params) glGetProgramiv dir params out - len params sizeof(GLint) -#XXX - might change if extension constants that return more then one value - + len params (glUtilsParamSize(pname) * sizeof(GLint)) #void glGetProgramInfoLog(GLuint program, GLsizei bufsize, GLsizei *length, GLchar *infolog) glGetProgramInfoLog @@ -844,11 +842,12 @@ glIsSyncAEMU glGetSyncivAEMU flag custom_decoder flag not_api + param_check bufSize if(bufSize<0){ ctx->setError(GL_INVALID_VALUE); return; } dir length out len length (sizeof(GLsizei)) + var_flag length nullAllowed dir values out - len values bufSize - param_check bufSize if(bufSize<0){ ctx->setError(GL_INVALID_VALUE); return; } + len values (bufSize * sizeof(GLint)) glGetInternalformativ dir params out @@ -945,6 +944,7 @@ glGetProgramBinary len binary bufSize dir binaryFormat out len binaryFormat (sizeof(GLenum)) + var_flag length nullAllowed dir length out len length (sizeof(GLsizei)) @@ -1042,37 +1042,37 @@ glProgramUniform1fv len value (count * sizeof(GLfloat)) glProgramUniform2fv - len value (count * sizeof(GLfloat)) + len value (count * 2 * sizeof(GLfloat)) glProgramUniform3fv - len value (count * sizeof(GLfloat)) + len value (count * 3 * sizeof(GLfloat)) glProgramUniform4fv - len value (count * sizeof(GLfloat)) + len value (count * 4 * sizeof(GLfloat)) glProgramUniform1iv len value (count * sizeof(GLint)) glProgramUniform2iv - len value (count * sizeof(GLint)) + len value (count * 2 * sizeof(GLint)) glProgramUniform3iv - len value (count * sizeof(GLint)) + len value (count * 3 * sizeof(GLint)) glProgramUniform4iv - len value (count * sizeof(GLint)) + len value (count * 4 * sizeof(GLint)) glProgramUniform1uiv len value (count * sizeof(GLuint)) glProgramUniform2uiv - len value (count * sizeof(GLuint)) + len value (count * 2 * sizeof(GLuint)) glProgramUniform3uiv - len value (count * sizeof(GLuint)) + len value (count * 3 * sizeof(GLuint)) glProgramUniform4uiv - len value (count * sizeof(GLuint)) + len value (count * 4 * sizeof(GLuint)) glProgramUniformMatrix2fv len value (count * 4 * sizeof(GLfloat)) diff --git a/host/libs/virglrenderer/GLESv3_dec/gles3.in b/host/libs/virglrenderer/GLESv3_dec/gles3.in index bd5005534..50d9406a3 100644 --- a/host/libs/virglrenderer/GLESv3_dec/gles3.in +++ b/host/libs/virglrenderer/GLESv3_dec/gles3.in @@ -472,6 +472,7 @@ GL_ENTRY(GLboolean, glIsProgramPipeline, GLuint pipeline); GL_ENTRY(void, glUseProgramStages, GLuint pipeline, GLbitfield stages, GLuint program) # Separable shader programs - may need to change how program objects are represented and shared! +GL_ENTRY(void, glActiveShaderProgram, GLuint pipeline, GLuint program); GL_ENTRY(GLuint, glCreateShaderProgramv, GLenum type, GLsizei count, const char ** strings) GL_ENTRY(GLuint, glCreateShaderProgramvAEMU, GLenum type, GLsizei count, const char *packedStrings, GLuint packedLen) # Uniforms should work easily if any program object representation problems are solved. diff --git a/host/libs/virglrenderer/OpenGLESDispatch/gles31_only.entries b/host/libs/virglrenderer/OpenGLESDispatch/gles31_only.entries index 371017520..d6062f28d 100644 --- a/host/libs/virglrenderer/OpenGLESDispatch/gles31_only.entries +++ b/host/libs/virglrenderer/OpenGLESDispatch/gles31_only.entries @@ -26,6 +26,8 @@ GLboolean glIsProgramPipeline(GLuint pipeline); void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program); ## Separable shader programs +void glActiveShaderProgram(GLuint pipeline, GLuint program); + GLuint glCreateShaderProgramv(GLenum type, GLsizei count, const char **strings); void glProgramUniform1f(GLuint program, GLint location, GLfloat v0); |