draw: fix assertion failure in draw_emit_vertex_attr
This is a regression since b3921e1f53
.
The array stores VS outputs, not FS inputs.
Now llvmpipe can do 32 varyings too.
NOTE: This is a candidate for the stable branches.
Reviewed-by: Brian Paul <brianp@vmware.com>
This commit is contained in:
parent
91107a3522
commit
183e122bdf
|
@ -42,6 +42,7 @@
|
|||
#include "pipe/p_compiler.h"
|
||||
#include "pipe/p_state.h"
|
||||
#include "util/u_debug.h"
|
||||
#include "util/u_memory.h"
|
||||
|
||||
|
||||
/**
|
||||
|
@ -87,7 +88,7 @@ struct vertex_info
|
|||
unsigned interp_mode:4; /**< INTERP_x */
|
||||
unsigned emit:4; /**< EMIT_x */
|
||||
unsigned src_index:8; /**< map to post-xform attribs */
|
||||
} attrib[PIPE_MAX_SHADER_INPUTS];
|
||||
} attrib[PIPE_MAX_SHADER_OUTPUTS];
|
||||
};
|
||||
|
||||
static INLINE size_t
|
||||
|
@ -127,7 +128,7 @@ draw_emit_vertex_attr(struct vertex_info *vinfo,
|
|||
uint src_index)
|
||||
{
|
||||
const uint n = vinfo->num_attribs;
|
||||
assert(n < PIPE_MAX_SHADER_INPUTS);
|
||||
assert(n < Elements(vinfo->attrib));
|
||||
vinfo->attrib[n].emit = emit;
|
||||
vinfo->attrib[n].interp_mode = interp;
|
||||
vinfo->attrib[n].src_index = src_index;
|
||||
|
|
Loading…
Reference in New Issue