summaryrefslogtreecommitdiff
path: root/src/mesa
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/pipe/draw/draw_vertex.h2
-rw-r--r--src/mesa/pipe/i915simple/i915_state_derived.c25
-rw-r--r--src/mesa/pipe/softpipe/sp_prim_setup.c12
-rw-r--r--src/mesa/pipe/softpipe/sp_state_derived.c20
-rw-r--r--src/mesa/pipe/tgsi/exec/tgsi_attribs.h2
-rw-r--r--src/mesa/state_tracker/st_draw.c3
6 files changed, 29 insertions, 35 deletions
diff --git a/src/mesa/pipe/draw/draw_vertex.h b/src/mesa/pipe/draw/draw_vertex.h
index 1d900b3a4e..5874c554b1 100644
--- a/src/mesa/pipe/draw/draw_vertex.h
+++ b/src/mesa/pipe/draw/draw_vertex.h
@@ -87,7 +87,7 @@ struct vertex_info
* \return slot in which the attribute was added
*/
static INLINE uint
-draw_emit_vertex_attr(struct vertex_info *vinfo, uint vfAttr,
+draw_emit_vertex_attr(struct vertex_info *vinfo,
attrib_format format, interp_mode interp)
{
const uint n = vinfo->num_attribs;
diff --git a/src/mesa/pipe/i915simple/i915_state_derived.c b/src/mesa/pipe/i915simple/i915_state_derived.c
index 91d00fb1c2..1485d37a62 100644
--- a/src/mesa/pipe/i915simple/i915_state_derived.c
+++ b/src/mesa/pipe/i915simple/i915_state_derived.c
@@ -55,7 +55,7 @@ static void calculate_vertex_layout( struct i915_context *i915 )
memset(vinfo, 0, sizeof(*vinfo));
/* pos */
- draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_POS, FORMAT_3F, INTERP_LINEAR);
+ draw_emit_vertex_attr(vinfo, FORMAT_3F, INTERP_LINEAR);
/* Note: we'll set the S4_VFMT_XYZ[W] bits below */
for (i = 0; i < fs->num_inputs; i++) {
@@ -63,14 +63,12 @@ static void calculate_vertex_layout( struct i915_context *i915 )
case TGSI_SEMANTIC_POSITION:
break;
case TGSI_SEMANTIC_COLOR0:
- front0 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_COLOR0,
- FORMAT_4UB, colorInterp);
+ front0 = draw_emit_vertex_attr(vinfo, FORMAT_4UB, colorInterp);
vinfo->hwfmt[0] |= S4_VFMT_COLOR;
break;
case TGSI_SEMANTIC_COLOR1:
assert(0); /* untested */
- front1 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_COLOR1,
- FORMAT_4UB, colorInterp);
+ front1 = draw_emit_vertex_attr(vinfo, FORMAT_4UB, colorInterp);
vinfo->hwfmt[0] |= S4_VFMT_SPEC_FOG;
break;
case TGSI_SEMANTIC_TEX0:
@@ -85,8 +83,7 @@ static void calculate_vertex_layout( struct i915_context *i915 )
const uint unit = fs->input_semantics[i] - TGSI_SEMANTIC_TEX0;
uint hwtc;
texCoords[unit] = TRUE;
- draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_TEX0 + i,
- FORMAT_4F, INTERP_PERSPECTIVE);
+ draw_emit_vertex_attr(vinfo, FORMAT_4F, INTERP_PERSPECTIVE);
hwtc = TEXCOORDFMT_4D;
needW = TRUE;
vinfo->hwfmt[1] |= hwtc << (unit * 4);
@@ -109,16 +106,14 @@ static void calculate_vertex_layout( struct i915_context *i915 )
#if 0
/* color0 */
if (inputsRead & (1 << TGSI_ATTRIB_COLOR0)) {
- front0 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_COLOR0,
- FORMAT_4UB, colorInterp);
+ front0 = draw_emit_vertex_attr(vinfo, FORMAT_4UB, colorInterp);
vinfo->hwfmt[0] |= S4_VFMT_COLOR;
}
/* color 1 */
if (inputsRead & (1 << TGSI_ATTRIB_COLOR1)) {
assert(0); /* untested */
- front1 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_COLOR1,
- FORMAT_4UB, colorInterp);
+ front1 = draw_emit_vertex_attr(vinfo, FORMAT_4UB, colorInterp);
vinfo->hwfmt[0] |= S4_VFMT_SPEC_FOG;
}
@@ -130,7 +125,7 @@ static void calculate_vertex_layout( struct i915_context *i915 )
for (i = TGSI_ATTRIB_TEX0; i <= TGSI_ATTRIB_TEX7; i++) {
uint hwtc;
if (inputsRead & (1 << i)) {
- draw_emit_vertex_attr(vinfo, i, FORMAT_4F, INTERP_PERSPECTIVE);
+ draw_emit_vertex_attr(vinfo, FORMAT_4F, INTERP_PERSPECTIVE);
hwtc = TEXCOORDFMT_4D;
needW = TRUE;
}
@@ -158,12 +153,10 @@ static void calculate_vertex_layout( struct i915_context *i915 )
*/
if (i915->rasterizer->light_twoside) {
if (front0) {
- back0 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_BFC0,
- FORMAT_OMIT, colorInterp);
+ back0 = draw_emit_vertex_attr(vinfo, FORMAT_OMIT, colorInterp);
}
if (back0) {
- back1 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_BFC1,
- FORMAT_OMIT, colorInterp);
+ back1 = draw_emit_vertex_attr(vinfo, FORMAT_OMIT, colorInterp);
}
}
diff --git a/src/mesa/pipe/softpipe/sp_prim_setup.c b/src/mesa/pipe/softpipe/sp_prim_setup.c
index 913ae44601..f0f9cf54bd 100644
--- a/src/mesa/pipe/softpipe/sp_prim_setup.c
+++ b/src/mesa/pipe/softpipe/sp_prim_setup.c
@@ -79,7 +79,7 @@ struct setup_stage {
float oneoverarea;
- struct tgsi_interp_coef coef[TGSI_ATTRIB_MAX];
+ struct tgsi_interp_coef coef[PIPE_MAX_SHADER_INPUTS];
struct quad_header quad;
struct {
@@ -366,7 +366,7 @@ static void const_coeff( struct setup_stage *setup,
unsigned slot,
unsigned i )
{
- assert(slot < TGSI_ATTRIB_MAX);
+ assert(slot < PIPE_MAX_SHADER_INPUTS);
assert(i <= 3);
setup->coef[slot].dadx[i] = 0;
@@ -391,7 +391,7 @@ static void tri_linear_coeff( struct setup_stage *setup,
float a = setup->ebot.dy * majda - botda * setup->emaj.dy;
float b = setup->emaj.dx * botda - majda * setup->ebot.dx;
- assert(slot < TGSI_ATTRIB_MAX);
+ assert(slot < PIPE_MAX_SHADER_INPUTS);
assert(i <= 3);
setup->coef[slot].dadx[i] = a * setup->oneoverarea;
@@ -454,7 +454,7 @@ static void tri_persp_coeff( struct setup_stage *setup,
);
*/
- assert(slot < TGSI_ATTRIB_MAX);
+ assert(slot < PIPE_MAX_SHADER_INPUTS);
assert(i <= 3);
setup->coef[slot].dadx[i] = a * setup->oneoverarea;
@@ -910,8 +910,8 @@ setup_point(struct draw_stage *stage, struct prim_header *prim)
= sizeAttr ? (0.5f * v0->data[sizeAttr][0])
: (0.5f * setup->softpipe->rasterizer->point_size);
const boolean round = setup->softpipe->rasterizer->point_smooth;
- const float x = v0->data[TGSI_ATTRIB_POS][0];
- const float y = v0->data[TGSI_ATTRIB_POS][1];
+ const float x = v0->data[0][0]; /* Note: data[0] is always position */
+ const float y = v0->data[0][1];
unsigned slot, j;
assert(sizeAttr >= 0);
diff --git a/src/mesa/pipe/softpipe/sp_state_derived.c b/src/mesa/pipe/softpipe/sp_state_derived.c
index 03b5d7ea3f..3ae207910d 100644
--- a/src/mesa/pipe/softpipe/sp_state_derived.c
+++ b/src/mesa/pipe/softpipe/sp_state_derived.c
@@ -63,7 +63,7 @@ static void calculate_vertex_layout( struct softpipe_context *softpipe )
/* always emit vertex pos */
/* TODO - Figure out if we need to do perspective divide, etc. */
- draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_POS, FORMAT_4F, INTERP_LINEAR);
+ draw_emit_vertex_attr(vinfo, FORMAT_4F, INTERP_LINEAR);
for (i = 0; i < fs->num_inputs; i++) {
switch (fs->input_semantics[i]) {
@@ -75,15 +75,15 @@ static void calculate_vertex_layout( struct softpipe_context *softpipe )
softpipe->need_w = TRUE;
break;
case TGSI_SEMANTIC_COLOR0:
- front0 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_COLOR0,
+ front0 = draw_emit_vertex_attr(vinfo,
FORMAT_4F, colorInterp);
break;
case TGSI_SEMANTIC_COLOR1:
- front1 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_COLOR1,
+ front1 = draw_emit_vertex_attr(vinfo,
FORMAT_4F, colorInterp);
break;
case TGSI_SEMANTIC_FOG:
- draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_FOG,
+ draw_emit_vertex_attr(vinfo,
FORMAT_1F, INTERP_PERSPECTIVE);
break;
#if 0
@@ -91,19 +91,19 @@ static void calculate_vertex_layout( struct softpipe_context *softpipe )
/* XXX only emit if drawing points or front/back polygon mode
* is point mode
*/
- draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_POINTSIZE,
+ draw_emit_vertex_attr(vinfo,
FORMAT_4F, INTERP_CONSTANT);
break;
#endif
softpipe->psize_slot = i;
/*case TGSI_SEMANTIC_TEXCOORD:*/
case TGSI_SEMANTIC_TEX0:
- draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_TEX0,
+ draw_emit_vertex_attr(vinfo,
FORMAT_4F, INTERP_PERSPECTIVE);
softpipe->need_w = TRUE;
break;
case TGSI_SEMANTIC_OTHER:
- draw_emit_vertex_attr(vinfo, i, FORMAT_4F, INTERP_PERSPECTIVE);
+ draw_emit_vertex_attr(vinfo, FORMAT_4F, INTERP_PERSPECTIVE);
softpipe->need_w = TRUE;
break;
@@ -120,12 +120,10 @@ static void calculate_vertex_layout( struct softpipe_context *softpipe )
*/
if (softpipe->rasterizer->light_twoside) {
if (front0) {
- back0 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_BFC0,
- FORMAT_OMIT, colorInterp);
+ back0 = draw_emit_vertex_attr(vinfo, FORMAT_OMIT, colorInterp);
}
if (back0) {
- back1 = draw_emit_vertex_attr(vinfo, TGSI_ATTRIB_BFC1,
- FORMAT_OMIT, colorInterp);
+ back1 = draw_emit_vertex_attr(vinfo, FORMAT_OMIT, colorInterp);
}
}
diff --git a/src/mesa/pipe/tgsi/exec/tgsi_attribs.h b/src/mesa/pipe/tgsi/exec/tgsi_attribs.h
index b8f6ba7da8..fa13da12be 100644
--- a/src/mesa/pipe/tgsi/exec/tgsi_attribs.h
+++ b/src/mesa/pipe/tgsi/exec/tgsi_attribs.h
@@ -5,6 +5,7 @@
/**
* The specific values here are not important (could remove them).
*/
+#if 0
enum {
TGSI_ATTRIB_POS = 0,
TGSI_ATTRIB_WEIGHT = 1,
@@ -41,6 +42,7 @@ enum {
#define TGSI_MAX_TEXTURE 8
#define TGSI_MAX_VARYING 8
+#endif
diff --git a/src/mesa/state_tracker/st_draw.c b/src/mesa/state_tracker/st_draw.c
index 633e4d9470..e6f4175bf8 100644
--- a/src/mesa/state_tracker/st_draw.c
+++ b/src/mesa/state_tracker/st_draw.c
@@ -77,6 +77,7 @@ pipe_vertex_format(GLenum format, GLuint size)
}
+#if 0
/**
* Convert a mesa vertex attribute to a TGSI attribute
*/
@@ -137,7 +138,7 @@ tgsi_attrib_to_mesa_attrib(GLuint attr)
return 0;
}
}
-
+#endif
/**