diff options
author | Eric Anholt <[email protected]> | 2019-03-19 11:29:02 -0700 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2019-03-21 14:20:50 -0700 |
commit | c36d2793ec79a8cee75953acbc87b621fbd25e49 (patch) | |
tree | 94bc7cb46dcf79eccb5337189c04bac6bc199951 /src | |
parent | b30aad552cde507a70c6bf3bc2ce40ed69e0ecf2 (diff) |
v3d: Rename v3d_tmu_config_data to v3d_unit_data.
I want to reuse this for encoding small constant UBO/SSBO offsets into the
uniform stream to reduce the extra uniform loads and adds for the small
constant offsets.
Diffstat (limited to 'src')
-rw-r--r-- | src/broadcom/compiler/v3d_compiler.h | 6 | ||||
-rw-r--r-- | src/broadcom/compiler/vir_dump.c | 12 | ||||
-rw-r--r-- | src/gallium/drivers/v3d/v3d_uniforms.c | 8 |
3 files changed, 13 insertions, 13 deletions
diff --git a/src/broadcom/compiler/v3d_compiler.h b/src/broadcom/compiler/v3d_compiler.h index 1f908648f3e..81307e0996f 100644 --- a/src/broadcom/compiler/v3d_compiler.h +++ b/src/broadcom/compiler/v3d_compiler.h @@ -281,17 +281,17 @@ enum quniform_contents { QUNIFORM_SHARED_OFFSET, }; -static inline uint32_t v3d_tmu_config_data_create(uint32_t unit, uint32_t value) +static inline uint32_t v3d_unit_data_create(uint32_t unit, uint32_t value) { return unit << 24 | value; } -static inline uint32_t v3d_tmu_config_data_get_unit(uint32_t data) +static inline uint32_t v3d_unit_data_get_unit(uint32_t data) { return data >> 24; } -static inline uint32_t v3d_tmu_config_data_get_value(uint32_t data) +static inline uint32_t v3d_unit_data_get_offset(uint32_t data) { return data & 0xffffff; } diff --git a/src/broadcom/compiler/vir_dump.c b/src/broadcom/compiler/vir_dump.c index 8fd32931c1b..be98539b0be 100644 --- a/src/broadcom/compiler/vir_dump.c +++ b/src/broadcom/compiler/vir_dump.c @@ -53,20 +53,20 @@ vir_dump_uniform(enum quniform_contents contents, case QUNIFORM_TMU_CONFIG_P0: fprintf(stderr, "tex[%d].p0 | 0x%x", - v3d_tmu_config_data_get_unit(data), - v3d_tmu_config_data_get_value(data)); + v3d_unit_data_get_unit(data), + v3d_unit_data_get_offset(data)); break; case QUNIFORM_TMU_CONFIG_P1: fprintf(stderr, "tex[%d].p1 | 0x%x", - v3d_tmu_config_data_get_unit(data), - v3d_tmu_config_data_get_value(data)); + v3d_unit_data_get_unit(data), + v3d_unit_data_get_offset(data)); break; case QUNIFORM_IMAGE_TMU_CONFIG_P0: fprintf(stderr, "img[%d].p0 | 0x%x", - v3d_tmu_config_data_get_unit(data), - v3d_tmu_config_data_get_value(data)); + v3d_unit_data_get_unit(data), + v3d_unit_data_get_offset(data)); break; case QUNIFORM_TEXTURE_WIDTH: diff --git a/src/gallium/drivers/v3d/v3d_uniforms.c b/src/gallium/drivers/v3d/v3d_uniforms.c index 307ccaafa3d..371568b31e6 100644 --- a/src/gallium/drivers/v3d/v3d_uniforms.c +++ b/src/gallium/drivers/v3d/v3d_uniforms.c @@ -172,13 +172,13 @@ write_tmu_p0(struct v3d_job *job, struct v3d_texture_stateobj *texstate, uint32_t data) { - int unit = v3d_tmu_config_data_get_unit(data); + int unit = v3d_unit_data_get_unit(data); struct pipe_sampler_view *psview = texstate->textures[unit]; struct v3d_sampler_view *sview = v3d_sampler_view(psview); struct v3d_resource *rsc = v3d_resource(sview->texture); cl_aligned_reloc(&job->indirect, uniforms, sview->bo, - v3d_tmu_config_data_get_value(data)); + v3d_unit_data_get_offset(data)); v3d_job_add_bo(job, rsc->bo); } @@ -210,7 +210,7 @@ write_tmu_p1(struct v3d_job *job, struct v3d_texture_stateobj *texstate, uint32_t data) { - uint32_t unit = v3d_tmu_config_data_get_unit(data); + uint32_t unit = v3d_unit_data_get_unit(data); struct pipe_sampler_state *psampler = texstate->samplers[unit]; struct v3d_sampler_state *sampler = v3d_sampler_state(psampler); struct pipe_sampler_view *psview = texstate->textures[unit]; @@ -223,7 +223,7 @@ write_tmu_p1(struct v3d_job *job, cl_aligned_reloc(&job->indirect, uniforms, v3d_resource(sampler->sampler_state)->bo, sampler->sampler_state_offset[variant] | - v3d_tmu_config_data_get_value(data)); + v3d_unit_data_get_offset(data)); } struct v3d_cl_reloc |