From: Rob Clark Date: Tue, 27 Mar 2018 18:52:55 +0000 (-0400) Subject: nir: fix generated nir_intrinsics.c for MSVC X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=16581904b0b325c8b6d9abe81462c33e6b99a644;p=mesa.git nir: fix generated nir_intrinsics.c for MSVC Apparently it is not happy about things like: .foo = {} So skip over initializers for empty lists. Fixes: 76dfed8ae2d5c6c509eb2661389be3c6a25077df Reported-by: Roland Scheidegger Signed-off-by: Rob Clark --- 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