Module: Mesa
Branch: master
Commit: 8543902bfbdfc15c39525bd99bee22e2f2126e74
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8543902bfbdfc15c39525bd99bee22e2f2126e74

Author: Marek Olšák <[email protected]>
Date:   Tue Jan  4 21:54:23 2011 +0100

r300/compiler: disable the rename_regs pass for loops

This workaround fixes rendering of kwin thumbnails.

NOTE: This is a candidate for the 7.9 and 7.10 branches.

---

 .../drivers/dri/r300/compiler/radeon_rename_regs.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_rename_regs.c 
b/src/mesa/drivers/dri/r300/compiler/radeon_rename_regs.c
index 88165f7..5bd19c0 100644
--- a/src/mesa/drivers/dri/r300/compiler/radeon_rename_regs.c
+++ b/src/mesa/drivers/dri/r300/compiler/radeon_rename_regs.c
@@ -51,6 +51,14 @@ void rc_rename_regs(struct radeon_compiler *c, void *user)
        struct rc_reader_data reader_data;
        unsigned char * used;
 
+       /* XXX Remove this once the register allocation works with flow 
control. */
+       for(inst = c->Program.Instructions.Next;
+                                       inst != &c->Program.Instructions;
+                                       inst = inst->Next) {
+               if (inst->U.I.Opcode == RC_OPCODE_BGNLOOP)
+                       return;
+       }
+
        used_length = 2 * rc_recompute_ips(c);
        used = memory_pool_malloc(&c->Pool, sizeof(unsigned char) * 
used_length);
        memset(used, 0, sizeof(unsigned char) * used_length);

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to