Mesa (master): intel: Use rb->Data and rb-> RowStride to handle spans Y flipping.
Eric Anholt
anholt at kemper.freedesktop.org
Mon Jun 13 22:57:12 UTC 2011
Module: Mesa
Branch: master
Commit: fb60e2061b1f2f58a65e908e864704c234b300b0
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fb60e2061b1f2f58a65e908e864704c234b300b0
Author: Eric Anholt <eric at anholt.net>
Date: Tue May 31 15:33:36 2011 -0700
intel: Use rb->Data and rb->RowStride to handle spans Y flipping.
This is already pointing at 0 or Height - 1 and with an appropriate
pitch, so no need to recompute those values per customization of the
spans code. Cuts 3 out of 21kb of the compiled size.
Reviewed-by: Chad Versace <chad at chad-versace.us>
---
src/mesa/drivers/dri/intel/intel_span.c | 11 ++++-------
1 files changed, 4 insertions(+), 7 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_span.c b/src/mesa/drivers/dri/intel/intel_span.c
index a4a1d6b..aa83b3c 100644
--- a/src/mesa/drivers/dri/intel/intel_span.c
+++ b/src/mesa/drivers/dri/intel/intel_span.c
@@ -55,21 +55,18 @@ intel_set_span_functions(struct intel_context *intel,
#define LOCAL_VARS \
struct intel_renderbuffer *irb = intel_renderbuffer(rb); \
- const GLint yScale = rb->Name ? 1 : -1; \
- const GLint yBias = rb->Name ? 0 : rb->Height - 1; \
int minx = 0, miny = 0; \
int maxx = rb->Width; \
int maxy = rb->Height; \
- int pitch = irb->region->pitch * irb->region->cpp; \
- void *buf = irb->region->buffer->virtual; \
+ int pitch = rb->RowStride * irb->region->cpp; \
+ void *buf = rb->Data; \
GLuint p; \
- (void) p; \
- (void)buf; (void)pitch; /* unused for non-gttmap. */ \
+ (void) p;
#define HW_CLIPLOOP()
#define HW_ENDCLIPLOOP()
-#define Y_FLIP(_y) ((_y) * yScale + yBias)
+#define Y_FLIP(_y) (_y)
#define HW_LOCK()
More information about the mesa-commit
mailing list