[WINED3D 7/7] Fix lookup for LOOP register
Jason Green
jave27 at gmail.com
Fri Jun 16 15:13:01 CDT 2006
forgot the file. :-)
On 6/16/06, Jason Green <jave27 at gmail.com> wrote:
> - The LOOP register is an extended register and wasn't being checked
> for in the current code. This moves the check up a level and checks
> against the instruction code which is more efficient anyway.
>
-------------- next part --------------
From nobody Mon Sep 17 00:00:00 2001
From: Jason <jason at jave02.(none)>
Date: Fri, 16 Jun 2006 16:00:50 -0400
Subject: [PATCH 7/7] Fix lookup for LOOP register
- The LOOP register is an extended register and wasn't being checked for in the current code. This moves the check up a level and checks against the instruction code which is more efficient anyway.
---
dlls/wined3d/baseshader.c | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
7f25c248f7aee0af810d232b471dd8c6bf8fddf0
diff --git a/dlls/wined3d/baseshader.c b/dlls/wined3d/baseshader.c
index e50eb35..004a0ef 100644
--- a/dlls/wined3d/baseshader.c
+++ b/dlls/wined3d/baseshader.c
@@ -363,6 +363,11 @@ void shader_get_registers_used(
} else if (D3DSIO_DEF == curOpcode->opcode) {
pToken += curOpcode->num_params;
+ /* If there's a loop in the shader */
+ } else if (D3DSIO_LOOP == curOpcode->opcode) {
+ reg_maps->loop = 1;
+ pToken += curOpcode->num_params;
+
/* Set texture, address, temporary registers */
} else {
int i, limit;
@@ -411,9 +416,6 @@ void shader_get_registers_used(
else if (D3DSPR_INPUT == regtype && !pshader)
reg_maps->attributes[reg] = 1;
-
- else if (D3DSPR_LOOP == regtype)
- reg_maps->loop = 1;
}
}
}
--
1.3.3
More information about the wine-patches
mailing list