[Mesa-dev] [PATCH 02/10] i965/fs: Do not mark used direct surfaces in UNIFORM_PULL_CONSTANT_LOAD
Francisco Jerez
currojerez at riseup.net
Fri Oct 30 06:33:44 PDT 2015
Iago Toral Quiroga <itoral at igalia.com> writes:
> Right now the generator marks direct surfaces as used but leaves marking of
> indirect surfaces to the caller. Just make the callers handle marking in both
> cases for consistency.
> ---
> src/mesa/drivers/dri/i965/brw_fs.cpp | 2 +-
> src/mesa/drivers/dri/i965/brw_fs_generator.cpp | 10 ----------
> 2 files changed, 1 insertion(+), 11 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
> index e55417d..88a8612 100644
> --- a/src/mesa/drivers/dri/i965/brw_fs.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
> @@ -1921,7 +1921,6 @@ fs_visitor::demote_pull_constants()
> pull_index);
> inst->src[i].reladdr = NULL;
> inst->src[i].stride = 1;
> - brw_mark_surface_used(prog_data, index);
> } else {
> const fs_builder ubld = ibld.exec_all().group(8, 0);
> fs_reg offset = fs_reg((unsigned)(pull_index * 4) & ~15);
> @@ -1929,6 +1928,7 @@ fs_visitor::demote_pull_constants()
> dst, surf_index, offset);
> inst->src[i].set_smear(pull_index & 3);
> }
> + brw_mark_surface_used(prog_data, index);
>
> /* Rewrite the instruction to use the temporary VGRF. */
> inst->src[i].file = GRF;
> diff --git a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
> index 5e877e1..740003c 100644
> --- a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp
> @@ -1175,8 +1175,6 @@ fs_generator::generate_uniform_pull_constant_load(fs_inst *inst,
>
> brw_oword_block_read(p, dst, brw_message_reg(inst->base_mrf),
> read_offset, surf_index);
> -
> - brw_mark_surface_used(prog_data, surf_index);
> }
>
> void
> @@ -1237,9 +1235,6 @@ fs_generator::generate_uniform_pull_constant_load_gen7(fs_inst *inst,
> header_present,
> BRW_SAMPLER_SIMD_MODE_SIMD4X2,
> 0);
> -
> - brw_mark_surface_used(prog_data, surf_index);
> -
> } else {
>
> struct brw_reg addr = vec1(retype(brw_address_reg(0), BRW_REGISTER_TYPE_UD));
> @@ -1269,11 +1264,6 @@ fs_generator::generate_uniform_pull_constant_load_gen7(fs_inst *inst,
> 0);
>
> brw_pop_insn_state(p);
> -
> - /* visitor knows more than we do about the surface limit required,
> - * so has already done marking.
> - */
> -
> }
> }
>
Reviewed-by: Francisco Jerez <currojerez at riseup.net>
> --
> 1.9.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 212 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20151030/2c219aab/attachment.sig>
More information about the mesa-dev
mailing list