st/mesa: cache tgsi opcode info in the instruction
[mesa.git] / src / mesa / program / prog_parameter.c
index 896c6052b84f49648622d635e7f9e71f3e39d1cc..53e9813e6fdaf23cb57030e78584842c71d4f58f 100644 (file)
@@ -120,7 +120,7 @@ _mesa_add_parameter(struct gl_program_parameter_list *paramList,
       paramList->Size = paramList->Size + 4 * sz4;
 
       /* realloc arrays */
-      paramList->Parameters = (struct gl_program_parameter *)
+      paramList->Parameters =
          realloc(paramList->Parameters,
                  paramList->Size * sizeof(struct gl_program_parameter));
 
@@ -148,7 +148,7 @@ _mesa_add_parameter(struct gl_program_parameter_list *paramList,
 
       for (i = 0; i < sz4; i++) {
          struct gl_program_parameter *p = paramList->Parameters + oldNum + i;
-         p->Name = name ? _mesa_strdup(name) : NULL;
+         p->Name = name ? strdup(name) : NULL;
          p->Type = type;
          p->Size = size;
          p->DataType = datatype;
@@ -189,40 +189,6 @@ _mesa_add_parameter(struct gl_program_parameter_list *paramList,
 }
 
 
-/**
- * Add a new named constant to the parameter list.
- * This will be used when the program contains something like this:
- *    PARAM myVals = { 0, 1, 2, 3 };
- *
- * \param paramList  the parameter list
- * \param name  the name for the constant
- * \param values  four float values
- * \return index/position of the new parameter in the parameter list
- */
-GLint
-_mesa_add_named_constant(struct gl_program_parameter_list *paramList,
-                         const char *name, const gl_constant_value values[4],
-                         GLuint size)
-{
-   /* first check if this is a duplicate constant */
-   GLint pos;
-   for (pos = 0; pos < (GLint)paramList->NumParameters; pos++) {
-      const gl_constant_value *pvals = paramList->ParameterValues[pos];
-      if (pvals[0].u == values[0].u &&
-          pvals[1].u == values[1].u &&
-          pvals[2].u == values[2].u &&
-          pvals[3].u == values[3].u &&
-          strcmp(paramList->Parameters[pos].Name, name) == 0) {
-         /* Same name and value is already in the param list - reuse it */
-         return pos;
-      }
-   }
-   /* not found, add new parameter */
-   return _mesa_add_parameter(paramList, PROGRAM_CONSTANT, name,
-                              size, GL_NONE, values, NULL);
-}
-
-
 /**
  * Add a new unnamed constant to the parameter list.  This will be used
  * when a fragment/vertex program contains something like this:
@@ -241,8 +207,8 @@ _mesa_add_typed_unnamed_constant(struct gl_program_parameter_list *paramList,
                            GLenum datatype, GLuint *swizzleOut)
 {
    GLint pos;
-   ASSERT(size >= 1);
-   ASSERT(size <= 4);
+   assert(size >= 1);
+   assert(size <= 4);
 
    if (swizzleOut &&
        _mesa_lookup_parameter_constant(paramList, values,
@@ -303,28 +269,6 @@ _mesa_add_unnamed_constant(struct gl_program_parameter_list *paramList,
                                            swizzleOut);
 }
 
-#if 0 /* not used yet */
-/**
- * Returns the number of 4-component registers needed to store a piece
- * of GL state.  For matrices this may be as many as 4 registers,
- * everything else needs
- * just 1 register.
- */
-static GLuint
-sizeof_state_reference(const GLint *stateTokens)
-{
-   if (stateTokens[0] == STATE_MATRIX) {
-      GLuint rows = stateTokens[4] - stateTokens[3] + 1;
-      assert(rows >= 1);
-      assert(rows <= 4);
-      return rows;
-   }
-   else {
-      return 1;
-   }
-}
-#endif
-
 
 /**
  * Add a new state reference to the parameter list.
@@ -364,22 +308,6 @@ _mesa_add_state_reference(struct gl_program_parameter_list *paramList,
 }
 
 
-/**
- * Lookup a parameter value by name in the given parameter list.
- * \return pointer to the float[4] values.
- */
-gl_constant_value *
-_mesa_lookup_parameter_value(const struct gl_program_parameter_list *paramList,
-                             GLsizei nameLen, const char *name)
-{
-   GLint i = _mesa_lookup_parameter_index(paramList, nameLen, name);
-   if (i < 0)
-      return NULL;
-   else
-      return paramList->ParameterValues[i];
-}
-
-
 /**
  * Given a program parameter name, find its position in the list of parameters.
  * \param paramList  the parameter list to search
@@ -528,7 +456,7 @@ _mesa_clone_parameter_list(const struct gl_program_parameter_list *list)
       GLuint size = MIN2(p->Size, 4);
       GLint j = _mesa_add_parameter(clone, p->Type, p->Name, size, p->DataType,
                                     list->ParameterValues[i], NULL);
-      ASSERT(j >= 0);
+      assert(j >= 0);
       pCopy = clone->Parameters + j;
       /* copy state indexes */
       if (p->Type == PROGRAM_STATE_VAR) {