diff options
Diffstat (limited to 'src/mesa')
| -rw-r--r-- | src/mesa/drivers/x11/xm_api.c | 7 | ||||
| -rw-r--r-- | src/mesa/drivers/x11/xm_dd.c | 15 | ||||
| -rw-r--r-- | src/mesa/drivers/x11/xmesaP.h | 4 | 
3 files changed, 22 insertions, 4 deletions
diff --git a/src/mesa/drivers/x11/xm_api.c b/src/mesa/drivers/x11/xm_api.c index 6ae5b6fd58..1eb31b9d4c 100644 --- a/src/mesa/drivers/x11/xm_api.c +++ b/src/mesa/drivers/x11/xm_api.c @@ -79,6 +79,7 @@  #include "tnl/t_context.h"  #include "tnl/t_pipeline.h"  #include "drivers/common/driverfuncs.h" +#include "drivers/common/meta.h"  /**   * Global X driver lock @@ -1641,6 +1642,9 @@ XMesaContext XMesaCreateContext( XMesaVisual v, XMesaContext share_list )     xmesa_register_swrast_functions( mesaCtx );     _swsetup_Wakeup(mesaCtx); +   if (TEST_META_FUNCS) +      _mesa_meta_init(mesaCtx); +     return c;  } @@ -1655,6 +1659,9 @@ void XMesaDestroyContext( XMesaContext c )     FXdestroyContext( XMESA_BUFFER(mesaCtx->DrawBuffer) );  #endif +   if (TEST_META_FUNCS) +      _mesa_meta_free( mesaCtx ); +     _swsetup_DestroyContext( mesaCtx );     _swrast_DestroyContext( mesaCtx );     _tnl_DestroyContext( mesaCtx ); diff --git a/src/mesa/drivers/x11/xm_dd.c b/src/mesa/drivers/x11/xm_dd.c index 9a01465bdf..7ee88e8058 100644 --- a/src/mesa/drivers/x11/xm_dd.c +++ b/src/mesa/drivers/x11/xm_dd.c @@ -51,6 +51,7 @@  #include "swrast_setup/swrast_setup.h"  #include "tnl/tnl.h"  #include "tnl/t_context.h" +#include "drivers/common/meta.h"  #include "xmesaP.h" @@ -1147,13 +1148,19 @@ xmesa_init_driver_functions( XMesaVisual xmvisual,     driver->IndexMask = index_mask;     driver->ColorMask = color_mask;     driver->Enable = enable; -   driver->Clear = clear_buffers; +   if (TEST_META_FUNCS) +      driver->Clear = _mesa_meta_clear; +   else +      driver->Clear = clear_buffers;     driver->Viewport = xmesa_viewport;  #ifndef XFree86Server     driver->CopyPixels = xmesa_CopyPixels; -   if (xmvisual->undithered_pf == PF_8R8G8B && -       xmvisual->dithered_pf == PF_8R8G8B && -       xmvisual->BitsPerPixel == 32) { +   if (TEST_META_FUNCS) { +      driver->DrawPixels = _mesa_meta_draw_pixels; +   } +   else if (xmvisual->undithered_pf == PF_8R8G8B && +            xmvisual->dithered_pf == PF_8R8G8B && +            xmvisual->BitsPerPixel == 32) {        driver->DrawPixels = xmesa_DrawPixels_8R8G8B;     }     else if (xmvisual->undithered_pf == PF_5R6G5B) { diff --git a/src/mesa/drivers/x11/xmesaP.h b/src/mesa/drivers/x11/xmesaP.h index 65e747d7b9..25db55862e 100644 --- a/src/mesa/drivers/x11/xmesaP.h +++ b/src/mesa/drivers/x11/xmesaP.h @@ -581,4 +581,8 @@ extern void xmesa_register_swrast_functions( GLcontext *ctx );  #define ENABLE_EXT_timer_query 0 /* may not have 64-bit GLuint64EXT */  #endif + +#define TEST_META_FUNCS 0 + +  #endif  | 
