From 846bb247f42677e86bc366cd5142f22d405eb7fb Mon Sep 17 00:00:00 2001 From: twinaphex Date: Tue, 7 Jun 2016 02:19:24 +0200 Subject: [PATCH] Update GLSM --- core/libretro-common/glsm/glsm.c | 26 +++++++++++++++++++++ core/libretro-common/include/glsm/glsmsym.h | 4 ++++ 2 files changed, 30 insertions(+) diff --git a/core/libretro-common/glsm/glsm.c b/core/libretro-common/glsm/glsm.c index 2239e161..80c9df41 100644 --- a/core/libretro-common/glsm/glsm.c +++ b/core/libretro-common/glsm/glsm.c @@ -1803,6 +1803,32 @@ void rglDeleteVertexArrays(GLsizei n, const GLuint *arrays) #endif } +/* + * + * Core in: + * OpenGL : 3.2 + * OpenGLES : 3.0 + */ +void *rglFenceSync(GLenum condition, GLbitfield flags) +{ +#if defined(HAVE_OPENGL) || defined(HAVE_OPENGLES) && defined(HAVE_OPENGLES3) + return (GLsync)glFenceSync(condition, flags); +#endif +} + +/* + * + * Core in: + * OpenGL : 3.2 + * OpenGLES : 3.0 + */ +void rglWaitSync(void *sync, GLbitfield flags, GLuint64 timeout) +{ +#if defined(HAVE_OPENGL) || defined(HAVE_OPENGLES) && defined(HAVE_OPENGLES3) + glWaitSync((GLsync)sync, flags, timeout); +#endif +} + /* GLSM-side */ static void glsm_state_setup(void) diff --git a/core/libretro-common/include/glsm/glsmsym.h b/core/libretro-common/include/glsm/glsmsym.h index 7c98daca..f2615707 100644 --- a/core/libretro-common/include/glsm/glsmsym.h +++ b/core/libretro-common/include/glsm/glsmsym.h @@ -158,6 +158,8 @@ RETRO_BEGIN_DECLS #define glTexBuffer rglTexBuffer #define glClearBufferfv rglClearBufferfv #define glClearBufferfi rglClearBufferfi +#define glWaitSync rglWaitSync +#define glFenceSync rglFenceSync const GLubyte* rglGetStringi(GLenum name, GLuint index); void rglTexBuffer(GLenum target, GLenum internalFormat, GLuint buffer); @@ -391,6 +393,8 @@ void rglTexSubImage2D( GLenum target, GLenum type, const GLvoid * pixels); void rglDeleteVertexArrays(GLsizei n, const GLuint *arrays); +void *rglFenceSync(GLenum condition, GLbitfield flags); +void rglWaitSync(void *data, GLbitfield flags, GLuint64 timeout); RETRO_END_DECLS