xf86-video-intel: Branch 'modesetting' - src/i830_exa.c
Eric Anholt
anholt at kemper.freedesktop.org
Fri Jan 12 20:07:25 EET 2007
src/i830_exa.c | 15 +++------------
1 files changed, 3 insertions(+), 12 deletions(-)
New commits:
diff-tree 45696aa29124e2852f94880642e70bb2e0cee827 (from 6874a6f25ac87783d3770f77b9192e2d36d083a3)
Author: Eric Anholt <eric at anholt.net>
Date: Thu Jan 4 12:34:47 2007 -0800
EXA: Use PRIM3D_RECTLIST instead of TRIFAN so we don't get diagonal tearing.
A side effect is the reduction in vertex dispatch, which is nice.
diff --git a/src/i830_exa.c b/src/i830_exa.c
index f11424f..f1cd1e3 100644
--- a/src/i830_exa.c
+++ b/src/i830_exa.c
@@ -345,9 +345,9 @@ IntelEXAComposite(PixmapPtr pDst, int sr
int vertex_count;
if (pMask)
- vertex_count = 4*6;
+ vertex_count = 3*6;
else
- vertex_count = 4*4;
+ vertex_count = 3*4;
BEGIN_LP_RING(6+vertex_count);
@@ -357,7 +357,7 @@ IntelEXAComposite(PixmapPtr pDst, int sr
OUT_RING(MI_NOOP);
OUT_RING(MI_NOOP);
- OUT_RING(PRIM3D_INLINE | PRIM3D_TRIFAN | (vertex_count-1));
+ OUT_RING(PRIM3D_INLINE | PRIM3D_RECTLIST | (vertex_count-1));
OUT_RING_F(dstX);
OUT_RING_F(dstY);
@@ -385,15 +385,6 @@ IntelEXAComposite(PixmapPtr pDst, int sr
OUT_RING_F(maskXend / pI830->scale_units[1][0]);
OUT_RING_F(maskYend / pI830->scale_units[1][1]);
}
-
- OUT_RING_F(dstX + w);
- OUT_RING_F(dstY);
- OUT_RING_F(srcXend / pI830->scale_units[0][0]);
- OUT_RING_F(srcY / pI830->scale_units[0][1]);
- if (pMask) {
- OUT_RING_F(maskXend / pI830->scale_units[1][0]);
- OUT_RING_F(maskY / pI830->scale_units[1][1]);
- }
ADVANCE_LP_RING();
}
}
More information about the xorg-commit
mailing list