mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-09 10:30:13 +01:00
bump up MAX_INSTRUCTIONS and add an assertion to catch emitting too many instructions
This commit is contained in:
parent
e90dd4bf8f
commit
2a8e9bb00f
1 changed files with 7 additions and 4 deletions
|
|
@ -35,10 +35,11 @@
|
|||
#include "texenvprogram.h"
|
||||
|
||||
/**
|
||||
* According to Glean's texCombine test, no more than 21 instructions
|
||||
* are needed. Allow a few extra just in case.
|
||||
* This MAX is probably a bit generous, but that's OK. There can be
|
||||
* up to four instructions per texture unit (TEX + 3 for combine),
|
||||
* then there's fog and specular add.
|
||||
*/
|
||||
#define MAX_INSTRUCTIONS ((MAX_TEXTURE_UNITS * 6) + 10) /* see bug 9829 */
|
||||
#define MAX_INSTRUCTIONS ((MAX_TEXTURE_UNITS * 4) + 12)
|
||||
|
||||
#define DISASSEM (MESA_VERBOSE & VERBOSE_DISASSEM)
|
||||
|
||||
|
|
@ -476,7 +477,9 @@ emit_op(struct texenv_fragment_program *p,
|
|||
{
|
||||
GLuint nr = p->program->Base.NumInstructions++;
|
||||
struct prog_instruction *inst = &p->program->Base.Instructions[nr];
|
||||
|
||||
|
||||
assert(nr < MAX_INSTRUCTIONS);
|
||||
|
||||
_mesa_init_instructions(inst, 1);
|
||||
inst->Opcode = op;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue