[Mesa-dev] [PATCH] nir: fix generated nir_intrinsics.c for MSVC

Roland Scheidegger sroland at vmware.com
Tue Mar 27 19:02:32 UTC 2018


This looks alright to me, though I'm not sure why msvc seemingly didn't
like the empty braces in the first place.

Acked-by: Roland Scheidegger <sroland at vmware.com>


Am 27.03.2018 um 20:59 schrieb Rob Clark:
> Apparently it is not happy about things like: .foo = {}
> 
> So skip over initializers for empty lists.
> 
> Fixes: 76dfed8ae2d5c6c509eb2661389be3c6a25077df
> Reported-by: Roland Scheidegger <sroland at vmware.com>
> Signed-off-by: Rob Clark <robdclark at gmail.com>
> ---
>  src/compiler/nir/nir_intrinsics_c.py | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/src/compiler/nir/nir_intrinsics_c.py b/src/compiler/nir/nir_intrinsics_c.py
> index 556db785c2b..339214ac53e 100644
> --- a/src/compiler/nir/nir_intrinsics_c.py
> +++ b/src/compiler/nir/nir_intrinsics_c.py
> @@ -29,18 +29,22 @@ const nir_intrinsic_info nir_intrinsic_infos[nir_num_intrinsics] = {
>  {
>     .name = "${name}",
>     .num_srcs = ${opcode.num_srcs},
> +% if opcode.src_components:
>     .src_components = {
>        ${", ".join(str(comp) for comp in opcode.src_components)}
>     },
> +% endif
>     .has_dest = ${"true" if opcode.has_dest else "false"},
>     .dest_components = ${opcode.dest_components},
>     .num_variables = ${opcode.num_variables},
>     .num_indices = ${opcode.num_indices},
> +% if opcode.indices:
>     .index_map = {
>  % for i in range(len(opcode.indices)):
>        [${opcode.indices[i]}] = ${i + 1},
>  % endfor
>      },
> +% endif
>     .flags = ${"0" if len(opcode.flags) == 0 else " | ".join(opcode.flags)},
>  },
>  % endfor
> 



More information about the mesa-dev mailing list