Mesa (master): st/xorg: create and destroy shader cache
Zack Rusin
zack at kemper.freedesktop.org
Thu Aug 27 21:35:20 UTC 2009
Module: Mesa
Branch: master
Commit: 3f15ea866fbd82d873943f80b09124a618692a7c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3f15ea866fbd82d873943f80b09124a618692a7c
Author: Zack Rusin <zackr at vmware.com>
Date: Wed Aug 26 18:32:36 2009 -0400
st/xorg: create and destroy shader cache
---
src/gallium/state_trackers/xorg/xorg_exa.c | 6 ++++++
src/gallium/state_trackers/xorg/xorg_exa.h | 2 ++
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/src/gallium/state_trackers/xorg/xorg_exa.c b/src/gallium/state_trackers/xorg/xorg_exa.c
index 4fc8d32..ef6a112 100644
--- a/src/gallium/state_trackers/xorg/xorg_exa.c
+++ b/src/gallium/state_trackers/xorg/xorg_exa.c
@@ -31,6 +31,7 @@
#include "xorg_exa.h"
#include "xorg_tracker.h"
#include "xorg_composite.h"
+#include "xorg_exa_tgsi.h"
#include <xorg-server.h>
#include <xf86.h>
@@ -523,6 +524,10 @@ xorg_exa_close(ScrnInfoPtr pScrn)
modesettingPtr ms = modesettingPTR(pScrn);
struct exa_context *exa = ms->exa;
+ if (exa->shaders) {
+ xorg_shaders_destroy(exa->shaders);
+ }
+
if (exa->cso) {
cso_release_all(exa->cso);
cso_destroy_context(exa->cso);
@@ -594,6 +599,7 @@ xorg_exa_init(ScrnInfoPtr pScrn)
ms->ctx = exa->ctx;
exa->cso = cso_create_context(exa->ctx);
+ exa->shaders = xorg_shaders_create(exa);
return (void *)exa;
diff --git a/src/gallium/state_trackers/xorg/xorg_exa.h b/src/gallium/state_trackers/xorg/xorg_exa.h
index 0189eab..7f5c2bb 100644
--- a/src/gallium/state_trackers/xorg/xorg_exa.h
+++ b/src/gallium/state_trackers/xorg/xorg_exa.h
@@ -4,6 +4,7 @@
#include "xorg_tracker.h"
struct cso_context;
+struct xorg_shaders;
struct exa_context
{
@@ -11,6 +12,7 @@ struct exa_context
struct pipe_context *ctx;
struct pipe_screen *scrn;
struct cso_context *cso;
+ struct xorg_shaders *shaders;
};
More information about the mesa-commit
mailing list