summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/mesa/drivers/dri/i965/brw_wm.c20
1 files changed, 7 insertions, 13 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_wm.c b/src/mesa/drivers/dri/i965/brw_wm.c
index 2c9a6a07fbc..e2d16db51ac 100644
--- a/src/mesa/drivers/dri/i965/brw_wm.c
+++ b/src/mesa/drivers/dri/i965/brw_wm.c
@@ -221,22 +221,16 @@ bool do_wm_prog(struct brw_context *brw,
* prog_data associated with the compiled program, and which will be freed
* by the state cache.
*/
+ int param_count;
if (fs) {
- int param_count = fs->num_uniform_components;
- /* The backend also sometimes adds params for texture size. */
- param_count += 2 * BRW_MAX_TEX_UNIT;
-
- c->prog_data.param = rzalloc_array(NULL, const float *, param_count);
- c->prog_data.pull_param = rzalloc_array(NULL, const float *, param_count);
+ param_count = fs->num_uniform_components;
} else {
- /* brw_wm_pass0.c will also add references to 0.0 and 1.0 which are
- * uploaded as push parameters.
- */
- int param_count = (fp->program.Base.Parameters->NumParameters + 2) * 4;
- c->prog_data.param = rzalloc_array(NULL, const float *, param_count);
- /* The old backend never does pull constants. */
- c->prog_data.pull_param = NULL;
+ param_count = fp->program.Base.Parameters->NumParameters * 4;
}
+ /* The backend also sometimes adds params for texture size. */
+ param_count += 2 * BRW_MAX_TEX_UNIT;
+ c->prog_data.param = rzalloc_array(NULL, const float *, param_count);
+ c->prog_data.pull_param = rzalloc_array(NULL, const float *, param_count);
memcpy(&c->key, key, sizeof(*key));