i965: Re-enable fast color clears for GEN11.
[mesa.git] / src / mesa / drivers / dri / i915 / i830_texblend.c
index 236be59e23964dca8119c6a8f67b56b25e0508d6..390a54f917fc71438aad4ea6460718aa3d83e56d 100644 (file)
@@ -28,9 +28,7 @@
 #include "main/glheader.h"
 #include "main/macros.h"
 #include "main/mtypes.h"
-#include "main/simple_list.h"
 #include "main/enums.h"
-#include "main/mm.h"
 
 #include "intel_screen.h"
 #include "intel_tex.h"
@@ -93,7 +91,7 @@ emit_factor(GLuint blendUnit, GLuint * state, GLuint count,
 }
 
 
-static INLINE GLuint
+static inline GLuint
 GetTexelOp(GLint unit)
 {
    switch (unit) {
@@ -136,7 +134,7 @@ i830SetTexEnvCombine(struct i830_context * i830,
                      GLuint texel_op, GLuint * state, const GLfloat * factor)
 {
    const GLuint numColorArgs = combine->_NumArgsRGB;
-   const GLuint numAlphaArgs = combine->_NumArgsA;
+   GLuint numAlphaArgs = combine->_NumArgsA;
 
    GLuint blendop;
    GLuint ablendop;
@@ -159,7 +157,7 @@ i830SetTexEnvCombine(struct i830_context * i830,
    };
 
    if (INTEL_DEBUG & DEBUG_TEXTURE)
-      fprintf(stderr, "%s\n", __FUNCTION__);
+      fprintf(stderr, "%s\n", __func__);
 
 
    /* The EXT version of the DOT3 extension does not support the
@@ -209,7 +207,7 @@ i830SetTexEnvCombine(struct i830_context * i830,
       break;
    case GL_DOT3_RGBA_EXT:
    case GL_DOT3_RGBA:
-      blendop = TEXBLENDOP_DOT3;
+      blendop = TEXBLENDOP_DOT4;
       break;
    default:
       return pass_through(state, blendUnit);
@@ -273,6 +271,7 @@ i830SetTexEnvCombine(struct i830_context * i830,
    if (combine->ModeRGB == GL_DOT3_RGBA_EXT ||
        combine->ModeRGB == GL_DOT3_RGBA) {
       ablendop = TEXBLENDOP_DOT4;
+      numAlphaArgs = 2;
       args_A[0] = TEXBLENDARG_FACTOR;   /* the global factor */
       args_A[1] = TEXBLENDARG_FACTOR;
       args_A[2] = TEXBLENDARG_FACTOR;
@@ -389,12 +388,13 @@ static void
 emit_texblend(struct i830_context *i830, GLuint unit, GLuint blendUnit,
               bool last_stage)
 {
-   struct gl_texture_unit *texUnit = &i830->intel.ctx.Texture.Unit[unit];
+   struct gl_fixedfunc_texture_unit *texUnit =
+      &i830->intel.ctx.Texture.FixedFuncUnit[unit];
    GLuint tmp[I830_TEXBLEND_SIZE], tmp_sz;
 
 
    if (0)
-      fprintf(stderr, "%s unit %d\n", __FUNCTION__, unit);
+      fprintf(stderr, "%s unit %d\n", __func__, unit);
 
    /* Update i830->state.TexBlend
     */