[Mesa-dev] [PATCH 2/3] glx/glvnd: Fix dispatch function names and indices
Ian Romanick
idr at freedesktop.org
Wed Oct 19 18:06:44 UTC 2016
On 09/14/2016 11:06 AM, Adam Jackson wrote:
> As this array was not actually sorted, FindGLXFunction's binary search
> would only sometimes work.
Ugh... could these tables be generated by something that would sort them
automatically? Alternately, could we have a 'make check' test that
verifies the sorting? Without that, history has taught us every change
will break the sorting.
> Signed-off-by: Adam Jackson <ajax at redhat.com>
> ---
> src/glx/g_glxglvnddispatchfuncs.c | 254 ++++++++++++++++++------------------
> src/glx/g_glxglvnddispatchindices.h | 36 ++---
> 2 files changed, 144 insertions(+), 146 deletions(-)
>
> diff --git a/src/glx/g_glxglvnddispatchfuncs.c b/src/glx/g_glxglvnddispatchfuncs.c
> index e6b9c0b..b5e3398 100644
> --- a/src/glx/g_glxglvnddispatchfuncs.c
> +++ b/src/glx/g_glxglvnddispatchfuncs.c
> @@ -17,16 +17,19 @@ const char * const __glXDispatchTableStrings[DI_LAST_INDEX] = {
> #define __ATTRIB(field) \
> [DI_##field] = "glX"#field
>
> + __ATTRIB(BindSwapBarrierSGIX),
> __ATTRIB(BindTexImageEXT),
> // glXChooseFBConfig implemented by libglvnd
> __ATTRIB(ChooseFBConfigSGIX),
> // glXChooseVisual implemented by libglvnd
> // glXCopyContext implemented by libglvnd
> + __ATTRIB(CopySubBufferMESA),
> // glXCreateContext implemented by libglvnd
> __ATTRIB(CreateContextAttribsARB),
> __ATTRIB(CreateContextWithConfigSGIX),
> __ATTRIB(CreateGLXPbufferSGIX),
> // glXCreateGLXPixmap implemented by libglvnd
> + __ATTRIB(CreateGLXPixmapMESA),
> __ATTRIB(CreateGLXPixmapWithConfigSGIX),
> // glXCreateNewContext implemented by libglvnd
> // glXCreatePbuffer implemented by libglvnd
> @@ -51,54 +54,50 @@ const char * const __glXDispatchTableStrings[DI_LAST_INDEX] = {
> __ATTRIB(GetFBConfigAttribSGIX),
> __ATTRIB(GetFBConfigFromVisualSGIX),
> // glXGetFBConfigs implemented by libglvnd
> + __ATTRIB(GetMscRateOML),
> // glXGetProcAddress implemented by libglvnd
> // glXGetProcAddressARB implemented by libglvnd
> + __ATTRIB(GetScreenDriver),
> // glXGetSelectedEvent implemented by libglvnd
> __ATTRIB(GetSelectedEventSGIX),
> + __ATTRIB(GetSwapIntervalMESA),
> + __ATTRIB(GetSyncValuesOML),
> __ATTRIB(GetVideoSyncSGI),
> // glXGetVisualFromFBConfig implemented by libglvnd
> __ATTRIB(GetVisualFromFBConfigSGIX),
> // glXImportContextEXT implemented by libglvnd
> // glXIsDirect implemented by libglvnd
> + __ATTRIB(JoinSwapGroupSGIX),
> // glXMakeContextCurrent implemented by libglvnd
> // glXMakeCurrent implemented by libglvnd
> // glXQueryContext implemented by libglvnd
> __ATTRIB(QueryContextInfoEXT),
> + __ATTRIB(QueryCurrentRendererIntegerMESA),
> + __ATTRIB(QueryCurrentRendererStringMESA),
> // glXQueryDrawable implemented by libglvnd
> // glXQueryExtension implemented by libglvnd
> // glXQueryExtensionsString implemented by libglvnd
> __ATTRIB(QueryGLXPbufferSGIX),
> + __ATTRIB(QueryMaxSwapBarriersSGIX),
> + __ATTRIB(QueryRendererIntegerMESA),
> + __ATTRIB(QueryRendererStringMESA),
> // glXQueryServerString implemented by libglvnd
> // glXQueryVersion implemented by libglvnd
> + __ATTRIB(ReleaseBuffersMESA),
> __ATTRIB(ReleaseTexImageEXT),
> // glXSelectEvent implemented by libglvnd
> __ATTRIB(SelectEventSGIX),
> // glXSwapBuffers implemented by libglvnd
> + __ATTRIB(SwapBuffersMscOML),
> + __ATTRIB(SwapIntervalMESA),
> __ATTRIB(SwapIntervalSGI),
> // glXUseXFont implemented by libglvnd
> + __ATTRIB(WaitForMscOML),
> + __ATTRIB(WaitForSbcOML),
> // glXWaitGL implemented by libglvnd
> __ATTRIB(WaitVideoSyncSGI),
> // glXWaitX implemented by libglvnd
>
> - __ATTRIB(glXBindSwapBarrierSGIX),
> - __ATTRIB(glXCopySubBufferMESA),
> - __ATTRIB(glXCreateGLXPixmapMESA),
> - __ATTRIB(glXGetMscRateOML),
> - __ATTRIB(glXGetScreenDriver),
> - __ATTRIB(glXGetSwapIntervalMESA),
> - __ATTRIB(glXGetSyncValuesOML),
> - __ATTRIB(glXJoinSwapGroupSGIX),
> - __ATTRIB(glXQueryCurrentRendererIntegerMESA),
> - __ATTRIB(glXQueryCurrentRendererStringMESA),
> - __ATTRIB(glXQueryMaxSwapBarriersSGIX),
> - __ATTRIB(glXQueryRendererIntegerMESA),
> - __ATTRIB(glXQueryRendererStringMESA),
> - __ATTRIB(glXReleaseBuffersMESA),
> - __ATTRIB(glXSwapBuffersMscOML),
> - __ATTRIB(glXSwapIntervalMESA),
> - __ATTRIB(glXWaitForMscOML),
> - __ATTRIB(glXWaitForSbcOML),
> -
> #undef __ATTRIB
> };
>
> @@ -557,49 +556,49 @@ static int dispatch_WaitVideoSyncSGI(int divisor, int remainder,
>
>
>
> -static void dispatch_glXBindSwapBarrierSGIX(Display *dpy, GLXDrawable drawable,
> +static void dispatch_BindSwapBarrierSGIX(Display *dpy, GLXDrawable drawable,
> int barrier)
> {
> - PFNGLXBINDSWAPBARRIERSGIXPROC pglXBindSwapBarrierSGIX;
> + PFNGLXBINDSWAPBARRIERSGIXPROC pBindSwapBarrierSGIX;
> __GLXvendorInfo *dd;
>
> dd = GetDispatchFromDrawable(dpy, drawable);
> if (dd == NULL)
> return;
>
> - __FETCH_FUNCTION_PTR(glXBindSwapBarrierSGIX);
> - if (pglXBindSwapBarrierSGIX == NULL)
> + __FETCH_FUNCTION_PTR(BindSwapBarrierSGIX);
> + if (pBindSwapBarrierSGIX == NULL)
> return;
>
> - (*pglXBindSwapBarrierSGIX)(dpy, drawable, barrier);
> + (*pBindSwapBarrierSGIX)(dpy, drawable, barrier);
> }
>
>
>
> -static void dispatch_glXCopySubBufferMESA(Display *dpy, GLXDrawable drawable,
> +static void dispatch_CopySubBufferMESA(Display *dpy, GLXDrawable drawable,
> int x, int y, int width, int height)
> {
> - PFNGLXCOPYSUBBUFFERMESAPROC pglXCopySubBufferMESA;
> + PFNGLXCOPYSUBBUFFERMESAPROC pCopySubBufferMESA;
> __GLXvendorInfo *dd;
>
> dd = GetDispatchFromDrawable(dpy, drawable);
> if (dd == NULL)
> return;
>
> - __FETCH_FUNCTION_PTR(glXCopySubBufferMESA);
> - if (pglXCopySubBufferMESA == NULL)
> + __FETCH_FUNCTION_PTR(CopySubBufferMESA);
> + if (pCopySubBufferMESA == NULL)
> return;
>
> - (*pglXCopySubBufferMESA)(dpy, drawable, x, y, width, height);
> + (*pCopySubBufferMESA)(dpy, drawable, x, y, width, height);
> }
>
>
>
> -static GLXPixmap dispatch_glXCreateGLXPixmapMESA(Display *dpy,
> +static GLXPixmap dispatch_CreateGLXPixmapMESA(Display *dpy,
> XVisualInfo *visinfo,
> Pixmap pixmap, Colormap cmap)
> {
> - PFNGLXCREATEGLXPIXMAPMESAPROC pglXCreateGLXPixmapMESA;
> + PFNGLXCREATEGLXPIXMAPMESAPROC pCreateGLXPixmapMESA;
> __GLXvendorInfo *dd;
> GLXPixmap ret;
>
> @@ -607,11 +606,11 @@ static GLXPixmap dispatch_glXCreateGLXPixmapMESA(Display *dpy,
> if (dd == NULL)
> return None;
>
> - __FETCH_FUNCTION_PTR(glXCreateGLXPixmapMESA);
> - if (pglXCreateGLXPixmapMESA == NULL)
> + __FETCH_FUNCTION_PTR(CreateGLXPixmapMESA);
> + if (pCreateGLXPixmapMESA == NULL)
> return None;
>
> - ret = (*pglXCreateGLXPixmapMESA)(dpy, visinfo, pixmap, cmap);
> + ret = (*pCreateGLXPixmapMESA)(dpy, visinfo, pixmap, cmap);
> if (AddDrawableMapping(dpy, ret, dd)) {
> /* XXX: Call glXDestroyGLXPixmap which lives in libglvnd. If we're not
> * allowed to call it from here, should we extend __glXDispatchTableIndices ?
> @@ -624,47 +623,47 @@ static GLXPixmap dispatch_glXCreateGLXPixmapMESA(Display *dpy,
>
>
>
> -static GLboolean dispatch_glXGetMscRateOML(Display *dpy, GLXDrawable drawable,
> +static GLboolean dispatch_GetMscRateOML(Display *dpy, GLXDrawable drawable,
> int32_t *numerator, int32_t *denominator)
> {
> - PFNGLXGETMSCRATEOMLPROC pglXGetMscRateOML;
> + PFNGLXGETMSCRATEOMLPROC pGetMscRateOML;
> __GLXvendorInfo *dd;
>
> dd = GetDispatchFromDrawable(dpy, drawable);
> if (dd == NULL)
> return GL_FALSE;
>
> - __FETCH_FUNCTION_PTR(glXGetMscRateOML);
> - if (pglXGetMscRateOML == NULL)
> + __FETCH_FUNCTION_PTR(GetMscRateOML);
> + if (pGetMscRateOML == NULL)
> return GL_FALSE;
>
> - return (*pglXGetMscRateOML)(dpy, drawable, numerator, denominator);
> + return (*pGetMscRateOML)(dpy, drawable, numerator, denominator);
> }
>
>
>
> -static const char *dispatch_glXGetScreenDriver(Display *dpy, int scrNum)
> +static const char *dispatch_GetScreenDriver(Display *dpy, int scrNum)
> {
> typedef const char *(*fn_glXGetScreenDriver_ptr)(Display *dpy, int scrNum);
> - fn_glXGetScreenDriver_ptr pglXGetScreenDriver;
> + fn_glXGetScreenDriver_ptr pGetScreenDriver;
> __GLXvendorInfo *dd;
>
> dd = __VND->getDynDispatch(dpy, scrNum);
> if (dd == NULL)
> return NULL;
>
> - __FETCH_FUNCTION_PTR(glXGetScreenDriver);
> - if (pglXGetScreenDriver == NULL)
> + __FETCH_FUNCTION_PTR(GetScreenDriver);
> + if (pGetScreenDriver == NULL)
> return NULL;
>
> - return (*pglXGetScreenDriver)(dpy, scrNum);
> + return (*pGetScreenDriver)(dpy, scrNum);
> }
>
>
>
> -static int dispatch_glXGetSwapIntervalMESA(void)
> +static int dispatch_GetSwapIntervalMESA(void)
> {
> - PFNGLXGETSWAPINTERVALMESAPROC pglXGetSwapIntervalMESA;
> + PFNGLXGETSWAPINTERVALMESAPROC pGetSwapIntervalMESA;
> __GLXvendorInfo *dd;
>
> if (!__VND->getCurrentContext())
> @@ -674,57 +673,57 @@ static int dispatch_glXGetSwapIntervalMESA(void)
> if (dd == NULL)
> return 0;
>
> - __FETCH_FUNCTION_PTR(glXGetSwapIntervalMESA);
> - if (pglXGetSwapIntervalMESA == NULL)
> + __FETCH_FUNCTION_PTR(GetSwapIntervalMESA);
> + if (pGetSwapIntervalMESA == NULL)
> return 0;
>
> - return (*pglXGetSwapIntervalMESA)();
> + return (*pGetSwapIntervalMESA)();
> }
>
>
>
> -static Bool dispatch_glXGetSyncValuesOML(Display *dpy, GLXDrawable drawable,
> +static Bool dispatch_GetSyncValuesOML(Display *dpy, GLXDrawable drawable,
> int64_t *ust, int64_t *msc, int64_t *sbc)
> {
> - PFNGLXGETSYNCVALUESOMLPROC pglXGetSyncValuesOML;
> + PFNGLXGETSYNCVALUESOMLPROC pGetSyncValuesOML;
> __GLXvendorInfo *dd;
>
> dd = GetDispatchFromDrawable(dpy, drawable);
> if (dd == NULL)
> return False;
>
> - __FETCH_FUNCTION_PTR(glXGetSyncValuesOML);
> - if (pglXGetSyncValuesOML == NULL)
> + __FETCH_FUNCTION_PTR(GetSyncValuesOML);
> + if (pGetSyncValuesOML == NULL)
> return False;
>
> - return (*pglXGetSyncValuesOML)(dpy, drawable, ust, msc, sbc);
> + return (*pGetSyncValuesOML)(dpy, drawable, ust, msc, sbc);
> }
>
>
>
> -static void dispatch_glXJoinSwapGroupSGIX(Display *dpy, GLXDrawable drawable,
> +static void dispatch_JoinSwapGroupSGIX(Display *dpy, GLXDrawable drawable,
> GLXDrawable member)
> {
> - PFNGLXJOINSWAPGROUPSGIXPROC pglXJoinSwapGroupSGIX;
> + PFNGLXJOINSWAPGROUPSGIXPROC pJoinSwapGroupSGIX;
> __GLXvendorInfo *dd;
>
> dd = GetDispatchFromDrawable(dpy, drawable);
> if (dd == NULL)
> return;
>
> - __FETCH_FUNCTION_PTR(glXJoinSwapGroupSGIX);
> - if (pglXJoinSwapGroupSGIX == NULL)
> + __FETCH_FUNCTION_PTR(JoinSwapGroupSGIX);
> + if (pJoinSwapGroupSGIX == NULL)
> return;
>
> - (*pglXJoinSwapGroupSGIX)(dpy, drawable, member);
> + (*pJoinSwapGroupSGIX)(dpy, drawable, member);
> }
>
>
>
> -static Bool dispatch_glXQueryCurrentRendererIntegerMESA(int attribute,
> +static Bool dispatch_QueryCurrentRendererIntegerMESA(int attribute,
> unsigned int *value)
> {
> - PFNGLXQUERYCURRENTRENDERERINTEGERMESAPROC pglXQueryCurrentRendererIntegerMESA;
> + PFNGLXQUERYCURRENTRENDERERINTEGERMESAPROC pQueryCurrentRendererIntegerMESA;
> __GLXvendorInfo *dd;
>
> if (!__VND->getCurrentContext())
> @@ -734,18 +733,18 @@ static Bool dispatch_glXQueryCurrentRendererIntegerMESA(int attribute,
> if (dd == NULL)
> return False;
>
> - __FETCH_FUNCTION_PTR(glXQueryCurrentRendererIntegerMESA);
> - if (pglXQueryCurrentRendererIntegerMESA == NULL)
> + __FETCH_FUNCTION_PTR(QueryCurrentRendererIntegerMESA);
> + if (pQueryCurrentRendererIntegerMESA == NULL)
> return False;
>
> - return (*pglXQueryCurrentRendererIntegerMESA)(attribute, value);
> + return (*pQueryCurrentRendererIntegerMESA)(attribute, value);
> }
>
>
>
> -static const char *dispatch_glXQueryCurrentRendererStringMESA(int attribute)
> +static const char *dispatch_QueryCurrentRendererStringMESA(int attribute)
> {
> - PFNGLXQUERYCURRENTRENDERERSTRINGMESAPROC pglXQueryCurrentRendererStringMESA;
> + PFNGLXQUERYCURRENTRENDERERSTRINGMESAPROC pQueryCurrentRendererStringMESA;
> __GLXvendorInfo *dd;
>
> if (!__VND->getCurrentContext())
> @@ -755,114 +754,114 @@ static const char *dispatch_glXQueryCurrentRendererStringMESA(int attribute)
> if (dd == NULL)
> return NULL;
>
> - __FETCH_FUNCTION_PTR(glXQueryCurrentRendererStringMESA);
> - if (pglXQueryCurrentRendererStringMESA == NULL)
> + __FETCH_FUNCTION_PTR(QueryCurrentRendererStringMESA);
> + if (pQueryCurrentRendererStringMESA == NULL)
> return NULL;
>
> - return (*pglXQueryCurrentRendererStringMESA)(attribute);
> + return (*pQueryCurrentRendererStringMESA)(attribute);
> }
>
>
>
> -static Bool dispatch_glXQueryMaxSwapBarriersSGIX(Display *dpy, int screen,
> +static Bool dispatch_QueryMaxSwapBarriersSGIX(Display *dpy, int screen,
> int *max)
> {
> - PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC pglXQueryMaxSwapBarriersSGIX;
> + PFNGLXQUERYMAXSWAPBARRIERSSGIXPROC pQueryMaxSwapBarriersSGIX;
> __GLXvendorInfo *dd;
>
> dd = __VND->getDynDispatch(dpy, screen);
> if (dd == NULL)
> return False;
>
> - __FETCH_FUNCTION_PTR(glXQueryMaxSwapBarriersSGIX);
> - if (pglXQueryMaxSwapBarriersSGIX == NULL)
> + __FETCH_FUNCTION_PTR(QueryMaxSwapBarriersSGIX);
> + if (pQueryMaxSwapBarriersSGIX == NULL)
> return False;
>
> - return (*pglXQueryMaxSwapBarriersSGIX)(dpy, screen, max);
> + return (*pQueryMaxSwapBarriersSGIX)(dpy, screen, max);
> }
>
>
>
> -static Bool dispatch_glXQueryRendererIntegerMESA(Display *dpy, int screen,
> +static Bool dispatch_QueryRendererIntegerMESA(Display *dpy, int screen,
> int renderer, int attribute,
> unsigned int *value)
> {
> - PFNGLXQUERYRENDERERINTEGERMESAPROC pglXQueryRendererIntegerMESA;
> + PFNGLXQUERYRENDERERINTEGERMESAPROC pQueryRendererIntegerMESA;
> __GLXvendorInfo *dd;
>
> dd = __VND->getDynDispatch(dpy, screen);
> if (dd == NULL)
> return False;
>
> - __FETCH_FUNCTION_PTR(glXQueryRendererIntegerMESA);
> - if (pglXQueryRendererIntegerMESA == NULL)
> + __FETCH_FUNCTION_PTR(QueryRendererIntegerMESA);
> + if (pQueryRendererIntegerMESA == NULL)
> return False;
>
> - return (*pglXQueryRendererIntegerMESA)(dpy, screen, renderer, attribute, value);
> + return (*pQueryRendererIntegerMESA)(dpy, screen, renderer, attribute, value);
> }
>
>
>
> -static const char *dispatch_glXQueryRendererStringMESA(Display *dpy, int screen,
> +static const char *dispatch_QueryRendererStringMESA(Display *dpy, int screen,
> int renderer, int attribute)
> {
> - PFNGLXQUERYRENDERERSTRINGMESAPROC pglXQueryRendererStringMESA;
> + PFNGLXQUERYRENDERERSTRINGMESAPROC pQueryRendererStringMESA;
> __GLXvendorInfo *dd = NULL;
>
> dd = __VND->getDynDispatch(dpy, screen);
> if (dd == NULL)
> return NULL;
>
> - __FETCH_FUNCTION_PTR(glXQueryRendererStringMESA);
> - if (pglXQueryRendererStringMESA == NULL)
> + __FETCH_FUNCTION_PTR(QueryRendererStringMESA);
> + if (pQueryRendererStringMESA == NULL)
> return NULL;
>
> - return (*pglXQueryRendererStringMESA)(dpy, screen, renderer, attribute);
> + return (*pQueryRendererStringMESA)(dpy, screen, renderer, attribute);
> }
>
>
>
> -static Bool dispatch_glXReleaseBuffersMESA(Display *dpy, GLXDrawable d)
> +static Bool dispatch_ReleaseBuffersMESA(Display *dpy, GLXDrawable d)
> {
> - PFNGLXRELEASEBUFFERSMESAPROC pglXReleaseBuffersMESA;
> + PFNGLXRELEASEBUFFERSMESAPROC pReleaseBuffersMESA;
> __GLXvendorInfo *dd;
>
> dd = GetDispatchFromDrawable(dpy, d);
> if (dd == NULL)
> return False;
>
> - __FETCH_FUNCTION_PTR(glXReleaseBuffersMESA);
> - if (pglXReleaseBuffersMESA == NULL)
> + __FETCH_FUNCTION_PTR(ReleaseBuffersMESA);
> + if (pReleaseBuffersMESA == NULL)
> return False;
>
> - return (*pglXReleaseBuffersMESA)(dpy, d);
> + return (*pReleaseBuffersMESA)(dpy, d);
> }
>
>
>
> -static int64_t dispatch_glXSwapBuffersMscOML(Display *dpy, GLXDrawable drawable,
> +static int64_t dispatch_SwapBuffersMscOML(Display *dpy, GLXDrawable drawable,
> int64_t target_msc, int64_t divisor,
> int64_t remainder)
> {
> - PFNGLXSWAPBUFFERSMSCOMLPROC pglXSwapBuffersMscOML;
> + PFNGLXSWAPBUFFERSMSCOMLPROC pSwapBuffersMscOML;
> __GLXvendorInfo *dd;
>
> dd = GetDispatchFromDrawable(dpy, drawable);
> if (dd == NULL)
> return 0;
>
> - __FETCH_FUNCTION_PTR(glXSwapBuffersMscOML);
> - if (pglXSwapBuffersMscOML == NULL)
> + __FETCH_FUNCTION_PTR(SwapBuffersMscOML);
> + if (pSwapBuffersMscOML == NULL)
> return 0;
>
> - return (*pglXSwapBuffersMscOML)(dpy, drawable, target_msc, divisor, remainder);
> + return (*pSwapBuffersMscOML)(dpy, drawable, target_msc, divisor, remainder);
> }
>
>
>
> -static int dispatch_glXSwapIntervalMESA(unsigned int interval)
> +static int dispatch_SwapIntervalMESA(unsigned int interval)
> {
> - PFNGLXSWAPINTERVALMESAPROC pglXSwapIntervalMESA;
> + PFNGLXSWAPINTERVALMESAPROC pSwapIntervalMESA;
> __GLXvendorInfo *dd;
>
> if (!__VND->getCurrentContext())
> @@ -872,52 +871,52 @@ static int dispatch_glXSwapIntervalMESA(unsigned int interval)
> if (dd == NULL)
> return 0;
>
> - __FETCH_FUNCTION_PTR(glXSwapIntervalMESA);
> - if (pglXSwapIntervalMESA == NULL)
> + __FETCH_FUNCTION_PTR(SwapIntervalMESA);
> + if (pSwapIntervalMESA == NULL)
> return 0;
>
> - return (*pglXSwapIntervalMESA)(interval);
> + return (*pSwapIntervalMESA)(interval);
> }
>
>
>
> -static Bool dispatch_glXWaitForMscOML(Display *dpy, GLXDrawable drawable,
> +static Bool dispatch_WaitForMscOML(Display *dpy, GLXDrawable drawable,
> int64_t target_msc, int64_t divisor,
> int64_t remainder, int64_t *ust,
> int64_t *msc, int64_t *sbc)
> {
> - PFNGLXWAITFORMSCOMLPROC pglXWaitForMscOML;
> + PFNGLXWAITFORMSCOMLPROC pWaitForMscOML;
> __GLXvendorInfo *dd;
>
> dd = GetDispatchFromDrawable(dpy, drawable);
> if (dd == NULL)
> return False;
>
> - __FETCH_FUNCTION_PTR(glXWaitForMscOML);
> - if (pglXWaitForMscOML == NULL)
> + __FETCH_FUNCTION_PTR(WaitForMscOML);
> + if (pWaitForMscOML == NULL)
> return False;
>
> - return (*pglXWaitForMscOML)(dpy, drawable, target_msc, divisor, remainder, ust, msc, sbc);
> + return (*pWaitForMscOML)(dpy, drawable, target_msc, divisor, remainder, ust, msc, sbc);
> }
>
>
>
> -static Bool dispatch_glXWaitForSbcOML(Display *dpy, GLXDrawable drawable,
> +static Bool dispatch_WaitForSbcOML(Display *dpy, GLXDrawable drawable,
> int64_t target_sbc, int64_t *ust,
> int64_t *msc, int64_t *sbc)
> {
> - PFNGLXWAITFORSBCOMLPROC pglXWaitForSbcOML;
> + PFNGLXWAITFORSBCOMLPROC pWaitForSbcOML;
> __GLXvendorInfo *dd;
>
> dd = GetDispatchFromDrawable(dpy, drawable);
> if (dd == NULL)
> return False;
>
> - __FETCH_FUNCTION_PTR(glXWaitForSbcOML);
> - if (pglXWaitForSbcOML == NULL)
> + __FETCH_FUNCTION_PTR(WaitForSbcOML);
> + if (pWaitForSbcOML == NULL)
> return False;
>
> - return (*pglXWaitForSbcOML)(dpy, drawable, target_sbc, ust, msc, sbc);
> + return (*pWaitForSbcOML)(dpy, drawable, target_sbc, ust, msc, sbc);
> }
>
> #undef __FETCH_FUNCTION_PTR
> @@ -928,45 +927,44 @@ const void * const __glXDispatchFunctions[DI_LAST_INDEX + 1] = {
> #define __ATTRIB(field) \
> [DI_##field] = (void *)dispatch_##field
>
> - __ATTRIB(BindTexImageEXT),
> + __ATTRIB(BindSwapBarrierSGIX),
> __ATTRIB(BindTexImageEXT),
> __ATTRIB(ChooseFBConfigSGIX),
> + __ATTRIB(CopySubBufferMESA),
> __ATTRIB(CreateContextAttribsARB),
> __ATTRIB(CreateContextWithConfigSGIX),
> __ATTRIB(CreateGLXPbufferSGIX),
> + __ATTRIB(CreateGLXPixmapMESA),
> __ATTRIB(CreateGLXPixmapWithConfigSGIX),
> __ATTRIB(DestroyGLXPbufferSGIX),
> __ATTRIB(GetContextIDEXT),
> __ATTRIB(GetCurrentDisplayEXT),
> __ATTRIB(GetFBConfigAttribSGIX),
> __ATTRIB(GetFBConfigFromVisualSGIX),
> + __ATTRIB(GetMscRateOML),
> + __ATTRIB(GetScreenDriver),
> __ATTRIB(GetSelectedEventSGIX),
> + __ATTRIB(GetSwapIntervalMESA),
> + __ATTRIB(GetSyncValuesOML),
> __ATTRIB(GetVideoSyncSGI),
> __ATTRIB(GetVisualFromFBConfigSGIX),
> + __ATTRIB(JoinSwapGroupSGIX),
> __ATTRIB(QueryContextInfoEXT),
> + __ATTRIB(QueryCurrentRendererIntegerMESA),
> + __ATTRIB(QueryCurrentRendererStringMESA),
> __ATTRIB(QueryGLXPbufferSGIX),
> + __ATTRIB(QueryMaxSwapBarriersSGIX),
> + __ATTRIB(QueryRendererIntegerMESA),
> + __ATTRIB(QueryRendererStringMESA),
> + __ATTRIB(ReleaseBuffersMESA),
> __ATTRIB(ReleaseTexImageEXT),
> __ATTRIB(SelectEventSGIX),
> + __ATTRIB(SwapBuffersMscOML),
> + __ATTRIB(SwapIntervalMESA),
> __ATTRIB(SwapIntervalSGI),
> + __ATTRIB(WaitForMscOML),
> + __ATTRIB(WaitForSbcOML),
> __ATTRIB(WaitVideoSyncSGI),
> - __ATTRIB(glXBindSwapBarrierSGIX),
> - __ATTRIB(glXCopySubBufferMESA),
> - __ATTRIB(glXCreateGLXPixmapMESA),
> - __ATTRIB(glXGetMscRateOML),
> - __ATTRIB(glXGetScreenDriver),
> - __ATTRIB(glXGetSwapIntervalMESA),
> - __ATTRIB(glXGetSyncValuesOML),
> - __ATTRIB(glXJoinSwapGroupSGIX),
> - __ATTRIB(glXQueryCurrentRendererIntegerMESA),
> - __ATTRIB(glXQueryCurrentRendererStringMESA),
> - __ATTRIB(glXQueryMaxSwapBarriersSGIX),
> - __ATTRIB(glXQueryRendererIntegerMESA),
> - __ATTRIB(glXQueryRendererStringMESA),
> - __ATTRIB(glXReleaseBuffersMESA),
> - __ATTRIB(glXSwapBuffersMscOML),
> - __ATTRIB(glXSwapIntervalMESA),
> - __ATTRIB(glXWaitForMscOML),
> - __ATTRIB(glXWaitForSbcOML),
>
> [DI_LAST_INDEX] = NULL,
> #undef __ATTRIB
> diff --git a/src/glx/g_glxglvnddispatchindices.h b/src/glx/g_glxglvnddispatchindices.h
> index fd2156e..0891654 100644
> --- a/src/glx/g_glxglvnddispatchindices.h
> +++ b/src/glx/g_glxglvnddispatchindices.h
> @@ -6,16 +6,19 @@
> #define __glxlibglvnd_dispatchindex_h__
>
> typedef enum __GLXdispatchIndex {
> + DI_BindSwapBarrierSGIX,
> DI_BindTexImageEXT,
> // ChooseFBConfig implemented by libglvnd
> DI_ChooseFBConfigSGIX,
> // ChooseVisual implemented by libglvnd
> // CopyContext implemented by libglvnd
> + DI_CopySubBufferMESA,
> // CreateContext implemented by libglvnd
> DI_CreateContextAttribsARB,
> DI_CreateContextWithConfigSGIX,
> DI_CreateGLXPbufferSGIX,
> // CreateGLXPixmap implemented by libglvnd
> + DI_CreateGLXPixmapMESA,
> DI_CreateGLXPixmapWithConfigSGIX,
> // CreateNewContext implemented by libglvnd
> // CreatePbuffer implemented by libglvnd
> @@ -40,6 +43,7 @@ typedef enum __GLXdispatchIndex {
> DI_GetFBConfigAttribSGIX,
> DI_GetFBConfigFromVisualSGIX,
> // GetFBConfigs implemented by libglvnd
> + DI_GetMscRateOML,
> // GetProcAddress implemented by libglvnd
> // GetProcAddressARB implemented by libglvnd
> // GetSelectedEvent implemented by libglvnd
> @@ -47,45 +51,41 @@ typedef enum __GLXdispatchIndex {
> DI_GetVideoSyncSGI,
> // GetVisualFromFBConfig implemented by libglvnd
> DI_GetVisualFromFBConfigSGIX,
> + DI_GetScreenDriver,
> + DI_GetSwapIntervalMESA,
> + DI_GetSyncValuesOML,
> // ImportContextEXT implemented by libglvnd
> // IsDirect implemented by libglvnd
> + DI_JoinSwapGroupSGIX,
> // MakeContextCurrent implemented by libglvnd
> // MakeCurrent implemented by libglvnd
> // QueryContext implemented by libglvnd
> DI_QueryContextInfoEXT,
> + DI_QueryCurrentRendererIntegerMESA,
> + DI_QueryCurrentRendererStringMESA,
> // QueryDrawable implemented by libglvnd
> // QueryExtension implemented by libglvnd
> // QueryExtensionsString implemented by libglvnd
> DI_QueryGLXPbufferSGIX,
> + DI_QueryMaxSwapBarriersSGIX,
> + DI_QueryRendererIntegerMESA,
> + DI_QueryRendererStringMESA,
> // QueryServerString implemented by libglvnd
> // QueryVersion implemented by libglvnd
> + DI_ReleaseBuffersMESA,
> DI_ReleaseTexImageEXT,
> // SelectEvent implemented by libglvnd
> DI_SelectEventSGIX,
> // SwapBuffers implemented by libglvnd
> + DI_SwapBuffersMscOML,
> + DI_SwapIntervalMESA,
> DI_SwapIntervalSGI,
> // UseXFont implemented by libglvnd
> // WaitGL implemented by libglvnd
> + DI_WaitForMscOML,
> + DI_WaitForSbcOML,
> DI_WaitVideoSyncSGI,
> // WaitX implemented by libglvnd
> - DI_glXBindSwapBarrierSGIX,
> - DI_glXCopySubBufferMESA,
> - DI_glXCreateGLXPixmapMESA,
> - DI_glXGetMscRateOML,
> - DI_glXGetScreenDriver,
> - DI_glXGetSwapIntervalMESA,
> - DI_glXGetSyncValuesOML,
> - DI_glXJoinSwapGroupSGIX,
> - DI_glXQueryCurrentRendererIntegerMESA,
> - DI_glXQueryCurrentRendererStringMESA,
> - DI_glXQueryMaxSwapBarriersSGIX,
> - DI_glXQueryRendererIntegerMESA,
> - DI_glXQueryRendererStringMESA,
> - DI_glXReleaseBuffersMESA,
> - DI_glXSwapBuffersMscOML,
> - DI_glXSwapIntervalMESA,
> - DI_glXWaitForMscOML,
> - DI_glXWaitForSbcOML,
> DI_LAST_INDEX
> } __GLXdispatchIndex;
>
>
More information about the mesa-dev
mailing list