[Mesa-dev] [PATCH] i965: Remove unused param conversion code.

Eric Anholt eric at anholt.net
Mon Jul 23 10:55:00 PDT 2012


Ever since ctx->NativeIntegers was set, the conversion flag has been
PARAM_NO_CONVERT.
---
 src/mesa/drivers/dri/i965/brw_context.h          |   41 ----------------------
 src/mesa/drivers/dri/i965/brw_curbe.c            |    3 +-
 src/mesa/drivers/dri/i965/brw_fs.cpp             |   27 --------------
 src/mesa/drivers/dri/i965/brw_fs_visitor.cpp     |    5 ---
 src/mesa/drivers/dri/i965/brw_wm_pass0.c         |    1 -
 src/mesa/drivers/dri/i965/brw_wm_surface_state.c |    3 +-
 src/mesa/drivers/dri/i965/gen6_wm_state.c        |    3 +-
 7 files changed, 3 insertions(+), 80 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h
index 87f7a12..125ed12 100644
--- a/src/mesa/drivers/dri/i965/brw_context.h
+++ b/src/mesa/drivers/dri/i965/brw_context.h
@@ -283,14 +283,6 @@ struct brw_shader_program {
    struct gl_shader_program base;
 };
 
-enum param_conversion {
-   PARAM_NO_CONVERT,
-   PARAM_CONVERT_F2I,
-   PARAM_CONVERT_F2U,
-   PARAM_CONVERT_F2B,
-   PARAM_CONVERT_ZERO,
-};
-
 /* Data about a particular attempt to compile a program.  Note that
  * there can be many of these, each in a different GL state
  * corresponding to a different brw_wm_prog_key struct, with different
@@ -323,9 +315,7 @@ struct brw_wm_prog_data {
     * _mesa_load_state_parameters has been called at runtime).
     */
    const float *param[MAX_UNIFORMS * 4]; /* should be: BRW_MAX_CURBE */
-   enum param_conversion param_convert[MAX_UNIFORMS * 4];
    const float *pull_param[MAX_UNIFORMS * 4];
-   enum param_conversion pull_param_convert[MAX_UNIFORMS * 4];
 };
 
 /**
@@ -1231,37 +1221,6 @@ brw_fragment_program_const(const struct gl_fragment_program *p)
    return (const struct brw_fragment_program *) p;
 }
 
-static inline
-float convert_param(enum param_conversion conversion, const float *param)
-{
-   union {
-      float f;
-      uint32_t u;
-      int32_t i;
-   } fi;
-
-   switch (conversion) {
-   case PARAM_NO_CONVERT:
-      return *param;
-   case PARAM_CONVERT_F2I:
-      fi.i = *param;
-      return fi.f;
-   case PARAM_CONVERT_F2U:
-      fi.u = *param;
-      return fi.f;
-   case PARAM_CONVERT_F2B:
-      if (*param != 0.0)
-	 fi.i = 1;
-      else
-	 fi.i = 0;
-      return fi.f;
-   case PARAM_CONVERT_ZERO:
-      return 0.0;
-   default:
-      return *param;
-   }
-}
-
 /**
  * Pre-gen6, the register file of the EUs was shared between threads,
  * and each thread used some subset allocated on a 16-register block
diff --git a/src/mesa/drivers/dri/i965/brw_curbe.c b/src/mesa/drivers/dri/i965/brw_curbe.c
index 93ee709..35980bb 100644
--- a/src/mesa/drivers/dri/i965/brw_curbe.c
+++ b/src/mesa/drivers/dri/i965/brw_curbe.c
@@ -205,8 +205,7 @@ brw_upload_constant_buffer(struct brw_context *brw)
 
       /* copy float constants */
       for (i = 0; i < brw->wm.prog_data->nr_params; i++) {
-	 buf[offset + i] = convert_param(brw->wm.prog_data->param_convert[i],
-					 brw->wm.prog_data->param[i]);
+	 buf[offset + i] = *brw->wm.prog_data->param[i];
       }
    }
 
diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
index 3a4cb03..90dddce 100644
--- a/src/mesa/drivers/dri/i965/brw_fs.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
@@ -530,28 +530,6 @@ fs_visitor::setup_uniform_values(int loc, const glsl_type *type)
 
 	 assert(param < ARRAY_SIZE(c->prog_data.param));
 
-	 if (ctx->Const.NativeIntegers) {
-	    c->prog_data.param_convert[param] = PARAM_NO_CONVERT;
-	 } else {
-	    switch (type->base_type) {
-	    case GLSL_TYPE_FLOAT:
-	       c->prog_data.param_convert[param] = PARAM_NO_CONVERT;
-	       break;
-	    case GLSL_TYPE_UINT:
-	       c->prog_data.param_convert[param] = PARAM_CONVERT_F2U;
-	       break;
-	    case GLSL_TYPE_INT:
-	       c->prog_data.param_convert[param] = PARAM_CONVERT_F2I;
-	       break;
-	    case GLSL_TYPE_BOOL:
-	       c->prog_data.param_convert[param] = PARAM_CONVERT_F2B;
-	       break;
-	    default:
-	       assert(!"not reached");
-	       c->prog_data.param_convert[param] = PARAM_NO_CONVERT;
-	       break;
-	    }
-	 }
 	 this->param_index[param] = loc;
 	 this->param_offset[param] = i;
       }
@@ -609,8 +587,6 @@ fs_visitor::setup_builtin_uniform_values(ir_variable *ir)
 	    break;
 	 last_swiz = swiz;
 
-	 c->prog_data.param_convert[c->prog_data.nr_params] =
-	    PARAM_NO_CONVERT;
 	 this->param_index[c->prog_data.nr_params] = index;
 	 this->param_offset[c->prog_data.nr_params] = swiz;
 	 c->prog_data.nr_params++;
@@ -1170,7 +1146,6 @@ fs_visitor::remove_dead_constants()
 	  * about param_index and param_offset.
 	  */
 	 c->prog_data.param[remapped] = c->prog_data.param[i];
-	 c->prog_data.param_convert[remapped] = c->prog_data.param_convert[i];
       }
 
       c->prog_data.nr_params = new_nr_params;
@@ -1260,8 +1235,6 @@ fs_visitor::setup_pull_constants()
 
    for (int i = 0; i < pull_uniform_count; i++) {
       c->prog_data.pull_param[i] = c->prog_data.param[pull_uniform_base + i];
-      c->prog_data.pull_param_convert[i] =
-	 c->prog_data.param_convert[pull_uniform_base + i];
    }
    c->prog_data.nr_params -= pull_uniform_count;
    c->prog_data.nr_pull_params = pull_uniform_count;
diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
index 910fe92..21400ed 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
@@ -1256,11 +1256,6 @@ fs_visitor::visit(ir_texture *ir)
 	 return;
       }
 
-      c->prog_data.param_convert[c->prog_data.nr_params] =
-	 PARAM_NO_CONVERT;
-      c->prog_data.param_convert[c->prog_data.nr_params + 1] =
-	 PARAM_NO_CONVERT;
-
       scale_x = fs_reg(UNIFORM, c->prog_data.nr_params);
       scale_y = fs_reg(UNIFORM, c->prog_data.nr_params + 1);
 
diff --git a/src/mesa/drivers/dri/i965/brw_wm_pass0.c b/src/mesa/drivers/dri/i965/brw_wm_pass0.c
index 5a9eb0a..423e6ed 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_pass0.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_pass0.c
@@ -113,7 +113,6 @@ static const struct brw_wm_ref *get_param_ref( struct brw_wm_compile *c,
       struct brw_wm_ref *ref = get_ref(c);
 
       c->prog_data.param[i] = param_ptr;
-      c->prog_data.param_convert[i] = PARAM_NO_CONVERT;
       c->nr_creg = (i+16)/16;
 
       /* Push the offsets into hw_reg.  These will be added to the
diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
index 27cee87..f25721b 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
@@ -938,8 +938,7 @@ brw_upload_wm_pull_constants(struct brw_context *brw)
    drm_intel_gem_bo_map_gtt(brw->wm.const_bo);
    constants = brw->wm.const_bo->virtual;
    for (i = 0; i < brw->wm.prog_data->nr_pull_params; i++) {
-      constants[i] = convert_param(brw->wm.prog_data->pull_param_convert[i],
-				   brw->wm.prog_data->pull_param[i]);
+      constants[i] = *brw->wm.prog_data->pull_param[i];
    }
    drm_intel_gem_bo_unmap_gtt(brw->wm.const_bo);
 
diff --git a/src/mesa/drivers/dri/i965/gen6_wm_state.c b/src/mesa/drivers/dri/i965/gen6_wm_state.c
index fa83ece..6cec95b 100644
--- a/src/mesa/drivers/dri/i965/gen6_wm_state.c
+++ b/src/mesa/drivers/dri/i965/gen6_wm_state.c
@@ -60,8 +60,7 @@ gen6_upload_wm_push_constants(struct brw_context *brw)
 				  32, &brw->wm.push_const_offset);
 
       for (i = 0; i < brw->wm.prog_data->nr_params; i++) {
-	 constants[i] = convert_param(brw->wm.prog_data->param_convert[i],
-				      brw->wm.prog_data->param[i]);
+	 constants[i] = *brw->wm.prog_data->param[i];
       }
 
       if (0) {
-- 
1.7.10.4



More information about the mesa-dev mailing list