[Mesa-dev] [PATCH 09/14] intel/compiler: Use shuffle_from_32bit_read at VS load_input

Jason Ekstrand jason at jlekstrand.net
Thu Jun 14 01:36:12 UTC 2018


On Sat, Jun 9, 2018 at 4:13 AM, Jose Maria Casanova Crespo <
jmcasanova at igalia.com> wrote:

> shuffle_from_32bit_read manages 32-bit reads to 32-bit destination
> in the same way that the previous loop so now we just call the new
> function for all bitsizes, simplifying also the 64-bit load_input.
> ---
>  src/intel/compiler/brw_fs_nir.cpp | 12 ++----------
>  1 file changed, 2 insertions(+), 10 deletions(-)
>
> diff --git a/src/intel/compiler/brw_fs_nir.cpp
> b/src/intel/compiler/brw_fs_nir.cpp
> index 6abc7c0174d..fedf3bf5a83 100644
> --- a/src/intel/compiler/brw_fs_nir.cpp
> +++ b/src/intel/compiler/brw_fs_nir.cpp
> @@ -2483,16 +2483,8 @@ fs_visitor::nir_emit_vs_intrinsic(const fs_builder
> &bld,
>        if (type_sz(dest.type) == 8)
>           first_component /= 2;
>
> -      for (unsigned j = 0; j < num_components; j++) {
> -         bld.MOV(offset(dest, bld, j), offset(src, bld, j +
> first_component));
> -      }
> -
> -      if (type_sz(dest.type) == 8) {
> -         shuffle_32bit_load_result_to_64bit_data(bld,
> -                                                 dest,
> -                                                 retype(dest,
> BRW_REGISTER_TYPE_F),
> -                                                 instr->num_components);
> -      }
> +      shuffle_from_32bit_read(bld, dest, retype(src, BRW_REGISTER_TYPE_D),
> +                              first_component, num_components);
>

I think this is ok.  It makes me a bit nervous to use
shuffle_from_32bit_read on the address register file.  However, since we're
only doing it when type_sz(dst.type) >= 4, it should be ok.  If we want
16-bit attributes (Yeah, I know, I need to review that...) then we may need
to first copy from the ATTR file into a temp.  Maybe drop a comment to that
effect?

Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>


>        break;
>     }
>
> --
> 2.17.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180613/da725e53/attachment.html>


More information about the mesa-dev mailing list