Mesa (gallium-0.2): g3dvl: Mark all buffers for incoming frame data as discardable.

Younes Manton ymanton at kemper.freedesktop.org
Mon Jan 19 02:48:32 UTC 2009


Module: Mesa
Branch: gallium-0.2
Commit: 3933d338f7fd1a7709d7971036671920f65fcd86
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=3933d338f7fd1a7709d7971036671920f65fcd86

Author: Younes Manton <younes.m at gmail.com>
Date:   Wed Jan 14 00:28:58 2009 -0500

g3dvl: Mark all buffers for incoming frame data as discardable.

---

 src/gallium/state_trackers/g3dvl/vl_basic_csc.c    |    4 ++--
 .../state_trackers/g3dvl/vl_r16snorm_mc_buf.c      |   16 ++++++++--------
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/src/gallium/state_trackers/g3dvl/vl_basic_csc.c b/src/gallium/state_trackers/g3dvl/vl_basic_csc.c
index 3ce93cf..c685bc9 100644
--- a/src/gallium/state_trackers/g3dvl/vl_basic_csc.c
+++ b/src/gallium/state_trackers/g3dvl/vl_basic_csc.c
@@ -157,7 +157,7 @@ static int vlPutPictureCSC
 	(
 		pipe->winsys,
 		basic_csc->vs_const_buf.buffer,
-		PIPE_BUFFER_USAGE_CPU_WRITE
+		PIPE_BUFFER_USAGE_CPU_WRITE | PIPE_BUFFER_USAGE_DISCARD
 	);
 
 	vs_consts->dst_scale.x = destw / (float)basic_csc->framebuffer.cbufs[0]->width;
@@ -602,7 +602,7 @@ static int vlCreateDataBufs
 	(
 		pipe->winsys,
 		1,
-		PIPE_BUFFER_USAGE_CONSTANT,
+		PIPE_BUFFER_USAGE_CONSTANT | PIPE_BUFFER_USAGE_DISCARD,
 		csc->vs_const_buf.size
 	);
 
diff --git a/src/gallium/state_trackers/g3dvl/vl_r16snorm_mc_buf.c b/src/gallium/state_trackers/g3dvl/vl_r16snorm_mc_buf.c
index c5a73b2..2e790bb 100644
--- a/src/gallium/state_trackers/g3dvl/vl_r16snorm_mc_buf.c
+++ b/src/gallium/state_trackers/g3dvl/vl_r16snorm_mc_buf.c
@@ -603,7 +603,7 @@ static int vlFlush
 		(
 			mc->pipe->winsys,
 			mc->vertex_bufs.ycbcr.buffer,
-			PIPE_BUFFER_USAGE_CPU_WRITE
+			PIPE_BUFFER_USAGE_CPU_WRITE | PIPE_BUFFER_USAGE_DISCARD
 		);
 
 		for (i = 0; i < 2; ++i)
@@ -611,7 +611,7 @@ static int vlFlush
 			(
 				mc->pipe->winsys,
 				mc->vertex_bufs.ref[i].buffer,
-				PIPE_BUFFER_USAGE_CPU_WRITE
+				PIPE_BUFFER_USAGE_CPU_WRITE | PIPE_BUFFER_USAGE_DISCARD
 			);
 
 		for (i = 0; i < mc->num_macroblocks; ++i)
@@ -647,7 +647,7 @@ static int vlFlush
 	(
 		pipe->winsys,
 		mc->vs_const_buf.buffer,
-		PIPE_BUFFER_USAGE_CPU_WRITE
+		PIPE_BUFFER_USAGE_CPU_WRITE | PIPE_BUFFER_USAGE_DISCARD
 	);
 
 	vs_consts->denorm.x = mc->buffered_surface->texture->width[0];
@@ -808,10 +808,10 @@ static int vlRenderMacroBlocksMpeg2R16SnormBuffered
 			(
 				mc->pipe->screen,
 				mc->textures.all[i],
-				0, 0, 0, PIPE_BUFFER_USAGE_CPU_WRITE
+				0, 0, 0, PIPE_BUFFER_USAGE_CPU_WRITE | PIPE_BUFFER_USAGE_DISCARD
 			);
 
-			mc->texels[i] = pipe_surface_map(mc->tex_surface[i], PIPE_BUFFER_USAGE_CPU_WRITE);
+			mc->texels[i] = pipe_surface_map(mc->tex_surface[i], PIPE_BUFFER_USAGE_CPU_WRITE | PIPE_BUFFER_USAGE_DISCARD);
 		}
 	}
 
@@ -913,7 +913,7 @@ static int vlCreateDataBufs
 	(
 		pipe->winsys,
 		DEFAULT_BUF_ALIGNMENT,
-		PIPE_BUFFER_USAGE_VERTEX,
+		PIPE_BUFFER_USAGE_VERTEX | PIPE_BUFFER_USAGE_DISCARD,
 		sizeof(struct vlVertex2f) * 4 * 24 * mc->macroblocks_per_picture
 	);
 
@@ -926,7 +926,7 @@ static int vlCreateDataBufs
 		(
 			pipe->winsys,
 			DEFAULT_BUF_ALIGNMENT,
-			PIPE_BUFFER_USAGE_VERTEX,
+			PIPE_BUFFER_USAGE_VERTEX | PIPE_BUFFER_USAGE_DISCARD,
 			sizeof(struct vlVertex2f) * 2 * 24 * mc->macroblocks_per_picture
 		);
 	}
@@ -985,7 +985,7 @@ static int vlCreateDataBufs
 	(
 		pipe->winsys,
 		DEFAULT_BUF_ALIGNMENT,
-		PIPE_BUFFER_USAGE_CONSTANT,
+		PIPE_BUFFER_USAGE_CONSTANT | PIPE_BUFFER_USAGE_DISCARD,
 		mc->vs_const_buf.size
 	);
 




More information about the mesa-commit mailing list