diff options
author | Kenneth Graunke <kenneth@whitecape.org> | 2014-11-24 23:30:51 -0800 |
---|---|---|
committer | Kenneth Graunke <kenneth@whitecape.org> | 2014-12-02 17:00:26 -0800 |
commit | ce44b2061cf59264b4f22271e8d70cdc826af6de (patch) | |
tree | 9dade4ef4bede55eab23459281b0652e42ae4328 /src/mesa/drivers/dri/i965/brw_vs_surface_state.c | |
parent | 2a4f5728ad27bd1605b3604908caa9ad4983e256 (diff) | |
download | external_mesa3d-ce44b2061cf59264b4f22271e8d70cdc826af6de.zip external_mesa3d-ce44b2061cf59264b4f22271e8d70cdc826af6de.tar.gz external_mesa3d-ce44b2061cf59264b4f22271e8d70cdc826af6de.tar.bz2 |
i965: Rename CACHE_NEW_*_PROG to BRW_NEW_*_PROG_DATA.
Now that we've moved a bunch of CACHE_NEW_* bits to BRW_NEW_*, the only
ones that are left are legitimately related to the program cache. Yet,
it seems a bit wasteful to have an entire bitfield for only 7 bits.
State upload is one of the hottest paths in the driver. For each atom
in the list, we call check_state() to see if it needs to be emitted.
Currently, this involves comparing three separate bitfields (mesa, brw,
and cache). Consolidating the brw and cache bitfields would save a
small amount of CPU overhead per atom. Broadwell, for example, has
57 state atoms, so this small savings can add up.
CACHE_NEW_*_PROG covers the brw_*_prog_data structures, as well as the
offset into the program cache BO (prog_offset). Since most uses refer
to brw_*_prog_data, I decided to use BRW_NEW_*_PROG_DATA as the name.
Removing "cache" completely is a bit painful, so I decided to do it in
several patches for easier review, and to separate mechanical changes
from manual ones. This one simply renames things, and was made via:
$ for file in *.[ch]; do
sed -i -e 's/CACHE_NEW_\([A-Z_\*]*\)_PROG/BRW_NEW_\1_PROG_DATA/g' \
-e 's/BRW_NEW_WM_PROG_DATA/BRW_NEW_FS_PROG_DATA/g' $file
done
Note that BRW_NEW_*_PROG_DATA is still in .cache, not .brw!
The next patch will remedy this flaw. It will also fix the
alphabetization issues.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Acked-by: Matt Turner <mattst88@gmail.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vs_surface_state.c')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_vs_surface_state.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vs_surface_state.c b/src/mesa/drivers/dri/i965/brw_vs_surface_state.c index 36653be..263f391 100644 --- a/src/mesa/drivers/dri/i965/brw_vs_surface_state.c +++ b/src/mesa/drivers/dri/i965/brw_vs_surface_state.c @@ -72,7 +72,7 @@ brw_upload_pull_constants(struct brw_context *brw, */ _mesa_load_state_parameters(&brw->ctx, prog->Parameters); - /* CACHE_NEW_*_PROG | _NEW_PROGRAM_CONSTANTS */ + /* BRW_NEW_*_PROG_DATA | _NEW_PROGRAM_CONSTANTS */ uint32_t size = prog_data->nr_pull_params * 4; drm_intel_bo *const_bo = NULL; uint32_t const_offset; @@ -117,7 +117,7 @@ brw_upload_vs_pull_constants(struct brw_context *brw) struct brw_vertex_program *vp = (struct brw_vertex_program *) brw->vertex_program; - /* CACHE_NEW_VS_PROG */ + /* BRW_NEW_VS_PROG_DATA */ const struct brw_stage_prog_data *prog_data = &brw->vs.prog_data->base.base; /* _NEW_PROGRAM_CONSTANTS */ @@ -130,7 +130,7 @@ const struct brw_tracked_state brw_vs_pull_constants = { .mesa = _NEW_PROGRAM_CONSTANTS, .brw = BRW_NEW_BATCH | BRW_NEW_VERTEX_PROGRAM, - .cache = CACHE_NEW_VS_PROG, + .cache = BRW_NEW_VS_PROG_DATA, }, .emit = brw_upload_vs_pull_constants, }; @@ -146,7 +146,7 @@ brw_upload_vs_ubo_surfaces(struct brw_context *brw) if (!prog) return; - /* CACHE_NEW_VS_PROG */ + /* BRW_NEW_VS_PROG_DATA */ brw_upload_ubo_surfaces(brw, prog->_LinkedShaders[MESA_SHADER_VERTEX], &brw->vs.base, &brw->vs.prog_data->base.base); } @@ -156,7 +156,7 @@ const struct brw_tracked_state brw_vs_ubo_surfaces = { .mesa = _NEW_PROGRAM, .brw = BRW_NEW_BATCH | BRW_NEW_UNIFORM_BUFFER, - .cache = CACHE_NEW_VS_PROG, + .cache = BRW_NEW_VS_PROG_DATA, }, .emit = brw_upload_vs_ubo_surfaces, }; @@ -170,7 +170,7 @@ brw_upload_vs_abo_surfaces(struct brw_context *brw) ctx->_Shader->CurrentProgram[MESA_SHADER_VERTEX]; if (prog) { - /* CACHE_NEW_VS_PROG */ + /* BRW_NEW_VS_PROG_DATA */ brw_upload_abo_surfaces(brw, prog, &brw->vs.base, &brw->vs.prog_data->base.base); } @@ -181,7 +181,7 @@ const struct brw_tracked_state brw_vs_abo_surfaces = { .mesa = _NEW_PROGRAM, .brw = BRW_NEW_ATOMIC_BUFFER | BRW_NEW_BATCH, - .cache = CACHE_NEW_VS_PROG, + .cache = BRW_NEW_VS_PROG_DATA, }, .emit = brw_upload_vs_abo_surfaces, }; |