summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mesa/shader/prog_execute.c6
-rw-r--r--src/mesa/shader/prog_execute.h2
-rw-r--r--src/mesa/swrast/s_fragprog.c3
-rw-r--r--src/mesa/tnl/t_vb_program.c3
4 files changed, 6 insertions, 8 deletions
diff --git a/src/mesa/shader/prog_execute.c b/src/mesa/shader/prog_execute.c
index 0982e3e322..b3d017bd9b 100644
--- a/src/mesa/shader/prog_execute.c
+++ b/src/mesa/shader/prog_execute.c
@@ -635,14 +635,14 @@ init_machine_deriv(GLcontext * ctx,
* \param ctx - rendering context
* \param program - the fragment program to execute
* \param machine - machine state (register file)
- * \param maxInst - max number of instructions to execute
* \return GL_TRUE if program completed or GL_FALSE if program executed KIL.
*/
GLboolean
_mesa_execute_program(GLcontext * ctx,
- const struct gl_program *program, GLuint maxInst,
+ const struct gl_program *program,
struct gl_program_machine *machine)
{
+ const GLuint numInst = program->NumInstructions;
const GLuint MAX_EXEC = 10000;
GLint pc, total = 0;
@@ -656,7 +656,7 @@ _mesa_execute_program(GLcontext * ctx,
CurrentMachine = machine;
#endif
- for (pc = 0; pc < maxInst; pc++) {
+ for (pc = 0; pc < numInst; pc++) {
const struct prog_instruction *inst = program->Instructions + pc;
#if FEATURE_MESA_program_debug
diff --git a/src/mesa/shader/prog_execute.h b/src/mesa/shader/prog_execute.h
index feda65fe03..2dbd922fb0 100644
--- a/src/mesa/shader/prog_execute.h
+++ b/src/mesa/shader/prog_execute.h
@@ -74,7 +74,7 @@ _mesa_get_program_register(GLcontext *ctx, enum register_file file,
extern GLboolean
_mesa_execute_program(GLcontext *ctx,
- const struct gl_program *program, GLuint maxInst,
+ const struct gl_program *program,
struct gl_program_machine *machine);
diff --git a/src/mesa/swrast/s_fragprog.c b/src/mesa/swrast/s_fragprog.c
index f88714d5c7..4e1c829773 100644
--- a/src/mesa/swrast/s_fragprog.c
+++ b/src/mesa/swrast/s_fragprog.c
@@ -147,8 +147,7 @@ run_program(GLcontext *ctx, SWspan *span, GLuint start, GLuint end)
if (span->array->mask[i]) {
init_machine(ctx, &machine, program, span, i);
- if (_mesa_execute_program(ctx, &program->Base,
- program->Base.NumInstructions, &machine)) {
+ if (_mesa_execute_program(ctx, &program->Base, &machine)) {
/* Store result color */
COPY_4V(span->array->attribs[FRAG_ATTRIB_COL0][i],
machine.Outputs[FRAG_RESULT_COLR]);
diff --git a/src/mesa/tnl/t_vb_program.c b/src/mesa/tnl/t_vb_program.c
index 05b1a4aaab..17eefe7032 100644
--- a/src/mesa/tnl/t_vb_program.c
+++ b/src/mesa/tnl/t_vb_program.c
@@ -257,8 +257,7 @@ run_vp( GLcontext *ctx, struct tnl_pipeline_stage *stage )
}
/* execute the program */
- _mesa_execute_program(ctx, &program->Base, program->Base.NumInstructions,
- &machine);
+ _mesa_execute_program(ctx, &program->Base, &machine);
/* Fixup fog an point size results if needed */
if (ctx->Fog.Enabled &&