From 780f601cf3bfd2eb141c2ea32b673b5bd0956a33 Mon Sep 17 00:00:00 2001 From: Tamar Christina Date: Mon, 8 Oct 2018 13:33:42 +0100 Subject: [PATCH] AArch64: Replace C initializers with memset Clang doesn't accept {0} as a valid C struct initializer under their implementation of -Wmissing-field-initializers. This makes using C initializers a bit tricky. Instead I'm changing the code to use memset instead, which at least GCC inlines and generates the same code for. This also seems to be the idiom used in binutils for most targets. opcodes/ * aarch64-opc.c (verify_constraints): Use memset instead of {0}. --- opcodes/ChangeLog | 4 ++++ opcodes/aarch64-opc.c | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 27ca2da7df..64070471c4 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2018-10-08 Tamar Christina + + * aarch64-opc.c (verify_constraints): Use memset instead of {0}. + 2018-10-05 H.J. Lu * i386-dis.c (rm_table): Add enclv. diff --git a/opcodes/aarch64-opc.c b/opcodes/aarch64-opc.c index 3f62e2a9fc..ed75a9a77e 100644 --- a/opcodes/aarch64-opc.c +++ b/opcodes/aarch64-opc.c @@ -4671,7 +4671,9 @@ verify_constraints (const struct aarch64_inst *inst, /* Next check for usage of the predicate register. */ aarch64_opnd_info blk_dest = insn_sequence->instr->operands[0]; - aarch64_opnd_info blk_pred = {0}, inst_pred = {0}; + aarch64_opnd_info blk_pred, inst_pred; + memset (&blk_pred, 0, sizeof (aarch64_opnd_info)); + memset (&inst_pred, 0, sizeof (aarch64_opnd_info)); bfd_boolean predicated = FALSE; assert (blk_dest.type == AARCH64_OPND_SVE_Zd); -- 2.34.1