mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-28 08:10:09 +01:00
i965: Move SHADER_TIME_STRIDE to brw_compiler.h
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
f85ef11501
commit
5b87c7e0e3
5 changed files with 15 additions and 15 deletions
|
|
@ -374,6 +374,14 @@ struct brw_image_param {
|
|||
*/
|
||||
#define BRW_GEN6_SOL_BINDING_START 0
|
||||
|
||||
/**
|
||||
* Stride in bytes between shader_time entries.
|
||||
*
|
||||
* We separate entries by a cacheline to reduce traffic between EUs writing to
|
||||
* different entries.
|
||||
*/
|
||||
#define BRW_SHADER_TIME_STRIDE 64
|
||||
|
||||
struct brw_stage_prog_data {
|
||||
struct {
|
||||
/** size of our binding table. */
|
||||
|
|
|
|||
|
|
@ -390,14 +390,6 @@ struct brw_ff_gs_prog_data {
|
|||
2 + /* shader time, pull constants */ \
|
||||
1 /* cs num work groups */)
|
||||
|
||||
/**
|
||||
* Stride in bytes between shader_time entries.
|
||||
*
|
||||
* We separate entries by a cacheline to reduce traffic between EUs writing to
|
||||
* different entries.
|
||||
*/
|
||||
#define SHADER_TIME_STRIDE 64
|
||||
|
||||
struct brw_cache {
|
||||
struct brw_context *brw;
|
||||
|
||||
|
|
|
|||
|
|
@ -586,7 +586,7 @@ fs_visitor::SHADER_TIME_ADD(const fs_builder &bld,
|
|||
fs_reg value)
|
||||
{
|
||||
int index = shader_time_index * 3 + shader_time_subindex;
|
||||
struct brw_reg offset = brw_imm_d(index * SHADER_TIME_STRIDE);
|
||||
struct brw_reg offset = brw_imm_d(index * BRW_SHADER_TIME_STRIDE);
|
||||
|
||||
fs_reg payload;
|
||||
if (dispatch_width == 8)
|
||||
|
|
|
|||
|
|
@ -405,7 +405,7 @@ brw_init_shader_time(struct brw_context *brw)
|
|||
const int max_entries = 2048;
|
||||
brw->shader_time.bo =
|
||||
drm_intel_bo_alloc(brw->bufmgr, "shader time",
|
||||
max_entries * SHADER_TIME_STRIDE * 3, 4096);
|
||||
max_entries * BRW_SHADER_TIME_STRIDE * 3, 4096);
|
||||
brw->shader_time.names = rzalloc_array(brw, const char *, max_entries);
|
||||
brw->shader_time.ids = rzalloc_array(brw, int, max_entries);
|
||||
brw->shader_time.types = rzalloc_array(brw, enum shader_time_shader_type,
|
||||
|
|
@ -584,11 +584,11 @@ brw_collect_shader_time(struct brw_context *brw)
|
|||
void *bo_map = brw->shader_time.bo->virtual;
|
||||
|
||||
for (int i = 0; i < brw->shader_time.num_entries; i++) {
|
||||
uint32_t *times = bo_map + i * 3 * SHADER_TIME_STRIDE;
|
||||
uint32_t *times = bo_map + i * 3 * BRW_SHADER_TIME_STRIDE;
|
||||
|
||||
brw->shader_time.cumulative[i].time += times[SHADER_TIME_STRIDE * 0 / 4];
|
||||
brw->shader_time.cumulative[i].written += times[SHADER_TIME_STRIDE * 1 / 4];
|
||||
brw->shader_time.cumulative[i].reset += times[SHADER_TIME_STRIDE * 2 / 4];
|
||||
brw->shader_time.cumulative[i].time += times[BRW_SHADER_TIME_STRIDE * 0 / 4];
|
||||
brw->shader_time.cumulative[i].written += times[BRW_SHADER_TIME_STRIDE * 1 / 4];
|
||||
brw->shader_time.cumulative[i].reset += times[BRW_SHADER_TIME_STRIDE * 2 / 4];
|
||||
}
|
||||
|
||||
/* Zero the BO out to clear it out for our next collection.
|
||||
|
|
|
|||
|
|
@ -1926,7 +1926,7 @@ vec4_visitor::emit_shader_time_write(int shader_time_subindex, src_reg value)
|
|||
|
||||
offset.type = BRW_REGISTER_TYPE_UD;
|
||||
int index = shader_time_index * 3 + shader_time_subindex;
|
||||
emit(MOV(offset, brw_imm_d(index * SHADER_TIME_STRIDE)));
|
||||
emit(MOV(offset, brw_imm_d(index * BRW_SHADER_TIME_STRIDE)));
|
||||
|
||||
time.type = BRW_REGISTER_TYPE_UD;
|
||||
emit(MOV(time, value));
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue