On Sunday, 2017-02-19 18:33:16 -0500, Ilia Mirkin wrote: > Why are patches 1-3 necessary?
They allow patch #4, which makes use of a macro to simplify the list, (requires a 1:1 mapping of entrypoint to function) which also allows for the simple sorting test script in patch #7. I could do without, but honestly I just thought this looked cleaner. Also, I think the debug extension would print the wrong function names before these patches? Not tested though, maybe it somehow worked. > > On Sun, Feb 19, 2017 at 6:23 PM, Eric Engestrom <e...@engestrom.ch> wrote: > > Signed-off-by: Eric Engestrom <e...@engestrom.ch> > > --- > > src/egl/main/eglapi.c | 31 ++++++++++++++++++++++++------- > > 1 file changed, 24 insertions(+), 7 deletions(-) > > > > diff --git a/src/egl/main/eglapi.c b/src/egl/main/eglapi.c > > index e149c0f8d1..e44375a106 100644 > > --- a/src/egl/main/eglapi.c > > +++ b/src/egl/main/eglapi.c > > @@ -1762,16 +1762,13 @@ eglDestroySyncKHR(EGLDisplay dpy, EGLSync sync) > > } > > > > > > -EGLint EGLAPIENTRY > > -eglClientWaitSync(EGLDisplay dpy, EGLSync sync, EGLint flags, EGLTime > > timeout) > > +static EGLint > > +_eglClientWaitSyncCommon(_EGLDisplay *disp, EGLDisplay dpy, > > + _EGLSync *s, EGLint flags, EGLTime timeout) > > { > > - _EGLDisplay *disp = _eglLockDisplay(dpy); > > - _EGLSync *s = _eglLookupSync(sync, disp); > > _EGLDriver *drv; > > EGLint ret; > > > > - _EGL_FUNC_START(disp, EGL_OBJECT_SYNC_KHR, s, EGL_FALSE); > > - > > _EGL_CHECK_SYNC(disp, s, EGL_FALSE, drv); > > assert(disp->Extensions.KHR_reusable_sync || > > disp->Extensions.KHR_fence_sync || > > @@ -1800,6 +1797,26 @@ eglClientWaitSync(EGLDisplay dpy, EGLSync sync, > > EGLint flags, EGLTime timeout) > > RETURN_EGL_EVAL(disp, ret); > > } > > > > +EGLint EGLAPIENTRY > > +eglClientWaitSync(EGLDisplay dpy, EGLSync sync, > > + EGLint flags, EGLTime timeout) > > +{ > > + _EGLDisplay *disp = _eglLockDisplay(dpy); > > + _EGLSync *s = _eglLookupSync(sync, disp); > > + _EGL_FUNC_START(disp, EGL_OBJECT_SYNC_KHR, s, EGL_FALSE); > > + return _eglClientWaitSyncCommon(disp, dpy, s, flags, timeout); > > +} > > + > > +static EGLint EGLAPIENTRY > > +eglClientWaitSyncKHR(EGLDisplay dpy, EGLSync sync, > > + EGLint flags, EGLTime timeout) > > +{ > > + _EGLDisplay *disp = _eglLockDisplay(dpy); > > + _EGLSync *s = _eglLookupSync(sync, disp); > > + _EGL_FUNC_START(disp, EGL_OBJECT_SYNC_KHR, s, EGL_FALSE); > > + return _eglClientWaitSyncCommon(disp, dpy, s, flags, timeout); > > +} > > + > > > > static EGLint > > _eglWaitSyncCommon(_EGLDisplay *disp, _EGLSync *s, EGLint flags) > > @@ -2393,7 +2410,7 @@ eglGetProcAddress(const char *procname) > > { "eglCreateSyncKHR", (_EGLProc) eglCreateSyncKHR }, > > { "eglCreateSync64KHR", (_EGLProc) eglCreateSync64KHR }, > > { "eglDestroySyncKHR", (_EGLProc) eglDestroySyncKHR }, > > - { "eglClientWaitSyncKHR", (_EGLProc) eglClientWaitSync }, > > + { "eglClientWaitSyncKHR", (_EGLProc) eglClientWaitSyncKHR }, > > { "eglWaitSyncKHR", (_EGLProc) eglWaitSyncKHR }, > > { "eglSignalSyncKHR", (_EGLProc) eglSignalSyncKHR }, > > { "eglGetSyncAttribKHR", (_EGLProc) eglGetSyncAttribKHR }, > > -- > > Cheers, > > Eric > > > > _______________________________________________ > > mesa-dev mailing list > > mesa-dev@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev