get rid of STATE_USER_ATTRIB/STATE_AUTO_ATTRIB

This commit is contained in:
Brian 2007-01-09 19:26:22 -07:00
parent b7978af693
commit 01a91eb657
4 changed files with 8 additions and 10 deletions

View file

@ -289,16 +289,14 @@ _mesa_add_attribute(struct gl_program_parameter_list *paramList,
GLint i = _mesa_lookup_parameter_index(paramList, -1, name);
if (i >= 0) {
/* replace */
ASSERT(paramList->Parameters[i].StateIndexes[0] == STATE_USER_ATTRIB);
if (attrib < 0)
attrib = i;
paramList->Parameters[i].StateIndexes[1] = attrib;
paramList->Parameters[i].StateIndexes[0] = attrib;
}
else {
/* add */
gl_state_index state[STATE_LENGTH];
state[0] = STATE_USER_ATTRIB;
state[1] = attrib;
state[0] = attrib;
i = _mesa_add_parameter(paramList, PROGRAM_INPUT, name,
size, NULL, state);
}

View file

@ -103,8 +103,6 @@ typedef enum gl_state_index_ {
STATE_NORMAL_SCALE,
STATE_TEXRECT_SCALE,
STATE_POSITION_NORMALIZED, /* normalized light position */
STATE_USER_ATTRIB, /** shader vertex attrib: user-specified */
STATE_AUTO_ATTRIB, /** shader vertex attrib: linker-specified */
STATE_INTERNAL_DRIVER /* first available state index for drivers (must be last) */
} gl_state_index;

View file

@ -554,7 +554,7 @@ _mesa_get_attrib_location(GLcontext *ctx, GLuint program,
if (shProg->Attributes) {
GLint i = _mesa_lookup_parameter_index(shProg->Attributes, -1, name);
if (i >= 0) {
return shProg->Attributes->Parameters[i].StateIndexes[1];
return shProg->Attributes->Parameters[i].StateIndexes[0];
}
}
return -1;

View file

@ -332,7 +332,7 @@ _slang_resolve_attributes(struct gl_shader_program *shProg,
*/
usedAttributes = 0x0;
for (i = 0; i < shProg->Attributes->NumParameters; i++) {
GLint attr = shProg->Attributes->Parameters[i].StateIndexes[1];
GLint attr = shProg->Attributes->Parameters[i].StateIndexes[0];
usedAttributes |= attr;
}
@ -358,7 +358,7 @@ _slang_resolve_attributes(struct gl_shader_program *shProg,
GLint attr;
if (index >= 0) {
/* found, user must have specified a binding */
attr = shProg->Attributes->Parameters[index].StateIndexes[1];
attr = shProg->Attributes->Parameters[index].StateIndexes[0];
}
else {
/* not found, choose our own attribute number */
@ -568,7 +568,9 @@ _slang_link2(GLcontext *ctx,
_slang_resolve_samplers(shProg, &shProg->VertexProgram->Base);
_slang_resolve_samplers(shProg, &shProg->FragmentProgram->Base);
_slang_resolve_attributes(shProg, &shProg->VertexProgram->Base);
if (!_slang_resolve_attributes(shProg, &shProg->VertexProgram->Base)) {
/*goto cleanup;*/
}
_slang_update_inputs_outputs(&shProg->VertexProgram->Base);
_slang_update_inputs_outputs(&shProg->FragmentProgram->Base);