Mesa (mesa_7_7_branch): mesa: fix instruction indexing bugs

Brian Paul brianp at kemper.freedesktop.org
Fri Apr 9 16:12:19 UTC 2010


Module: Mesa
Branch: mesa_7_7_branch
Commit: 08b98fac6243ff2f0c26dedc374d7cefff51fd38
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=08b98fac6243ff2f0c26dedc374d7cefff51fd38

Author: Brian Paul <brianp at vmware.com>
Date:   Fri Apr  9 10:12:02 2010 -0600

mesa: fix instruction indexing bugs

We were looping over instructions but only looking at the 0th instruction's
opcode.

Fixes fd.o bug 27566.
(cherry picked from commit b22a00bff4aadd390dd8af6b5b05bd2833ec7f85)

---

 src/mesa/shader/program.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/mesa/shader/program.c b/src/mesa/shader/program.c
index ef0c276..89cb441 100644
--- a/src/mesa/shader/program.c
+++ b/src/mesa/shader/program.c
@@ -623,7 +623,7 @@ replace_registers(struct prog_instruction *inst, GLuint numInst,
    GLuint i, j;
    for (i = 0; i < numInst; i++) {
       /* src regs */
-      for (j = 0; j < _mesa_num_inst_src_regs(inst->Opcode); j++) {
+      for (j = 0; j < _mesa_num_inst_src_regs(inst[i].Opcode); j++) {
          if (inst[i].SrcReg[j].File == oldFile &&
              inst[i].SrcReg[j].Index == oldIndex) {
             inst[i].SrcReg[j].File = newFile;
@@ -650,7 +650,7 @@ adjust_param_indexes(struct prog_instruction *inst, GLuint numInst,
 {
    GLuint i, j;
    for (i = 0; i < numInst; i++) {
-      for (j = 0; j < _mesa_num_inst_src_regs(inst->Opcode); j++) {
+      for (j = 0; j < _mesa_num_inst_src_regs(inst[i].Opcode); j++) {
          GLuint f = inst[i].SrcReg[j].File;
          if (f == PROGRAM_CONSTANT ||
              f == PROGRAM_UNIFORM ||




More information about the mesa-commit mailing list