Marcin Slusarz
2011-Feb-22 17:53 UTC
[Nouveau] [PATCH] nouveau/gallium: use OUT_RINGp instead of several OUT_RINGs
It improves Warsow FPS by ~1.5%
---
src/gallium/drivers/nv50/nv50_push.c | 18 +++---------------
1 files changed, 3 insertions(+), 15 deletions(-)
diff --git a/src/gallium/drivers/nv50/nv50_push.c
b/src/gallium/drivers/nv50/nv50_push.c
index 380f694..bb429f2 100644
--- a/src/gallium/drivers/nv50/nv50_push.c
+++ b/src/gallium/drivers/nv50/nv50_push.c
@@ -40,31 +40,19 @@ emit_b32_1(struct nouveau_channel *chan, void *data)
static void
emit_b32_2(struct nouveau_channel *chan, void *data)
{
- uint32_t *v = data;
-
- OUT_RING(chan, v[0]);
- OUT_RING(chan, v[1]);
+ OUT_RINGp(chan, data, 2);
}
static void
emit_b32_3(struct nouveau_channel *chan, void *data)
{
- uint32_t *v = data;
-
- OUT_RING(chan, v[0]);
- OUT_RING(chan, v[1]);
- OUT_RING(chan, v[2]);
+ OUT_RINGp(chan, data, 3);
}
static void
emit_b32_4(struct nouveau_channel *chan, void *data)
{
- uint32_t *v = data;
-
- OUT_RING(chan, v[0]);
- OUT_RING(chan, v[1]);
- OUT_RING(chan, v[2]);
- OUT_RING(chan, v[3]);
+ OUT_RINGp(chan, data, 4);
}
static void
--
1.7.4.rc3