tgsi: Only free temp uregs.
authorJosé Fonseca <jfonseca@vmware.com>
Mon, 24 Aug 2009 10:40:56 +0000 (11:40 +0100)
committerKeith Whitwell <keithw@vmware.com>
Mon, 24 Aug 2009 11:11:24 +0000 (12:11 +0100)
Shorthand.
(cherry picked from commit de911220bbbe74cff0c79b260456ff36122b7b5b)

src/gallium/auxiliary/tgsi/tgsi_ureg.c

index 63ae26776673c4e7dbf32be5eda0665f2b9e9b9d..c0a0627e0b27e23de661f785e880ed6e9ec411bf 100644 (file)
@@ -340,8 +340,9 @@ out:
 void ureg_release_temporary( struct ureg_program *ureg,
                              struct ureg_dst tmp )
 {
-   if (tmp.Index < UREG_MAX_TEMP)
-      ureg->temps_active[tmp.Index/32] &= ~(1 << (tmp.Index % 32));
+   if(tmp.File == TGSI_FILE_TEMPORARY)
+      if (tmp.Index < UREG_MAX_TEMP)
+         ureg->temps_active[tmp.Index/32] &= ~(1 << (tmp.Index % 32));
 }