Despite the name, this field wasn't being set to the dispatch width at
all; it was always 8. The only place it was used was that the
constant buffer read length was aligned to it, and as far as I can
tell from the docs, there is no need to align this value to the
dispatch width; aligning it to a multiple of 8 is sufficient. So I've
just replaced it with a hardcoded 8.
v2: In gen6_wm_state, use brw->wm.base.push_const_size for consistency
with VS and GS state upload.
Reviewed-by: Eric Anholt <eric@anholt.net>
GLuint nr_params; /**< number of float params/constants */
GLuint nr_pull_params;
bool dual_src_blend;
- int dispatch_width;
uint32_t prog_offset_16;
/**
}
}
- c->prog_data.dispatch_width = 8;
-
fs_generator g(brw, c, prog, fp, v.dual_src_output.file != BAD_FILE);
const unsigned *generated = g.generate_assembly(&v.instructions,
simd16_instructions,
printf("\n");
}
- brw->wm.base.push_const_size =
- ALIGN(prog_data->nr_params, prog_data->dispatch_width) / 8;
+ brw->wm.base.push_const_size = ALIGN(prog_data->nr_params, 8) / 8;
}
}
* state flags from gen6_upload_wm_push_constants.
*/
OUT_BATCH(brw->wm.base.push_const_offset +
- ALIGN(brw->wm.prog_data->nr_params,
- brw->wm.prog_data->dispatch_width) / 8 - 1);
+ brw->wm.base.push_const_size - 1);
OUT_BATCH(0);
OUT_BATCH(0);
OUT_BATCH(0);