From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46440) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bz70c-0005qW-Eu for qemu-devel@nongnu.org; Tue, 25 Oct 2016 15:03:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bz70Z-0007lw-B4 for qemu-devel@nongnu.org; Tue, 25 Oct 2016 15:03:38 -0400 Received: from mout.kundenserver.de ([217.72.192.75]:49531) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1bz70Z-0007le-2I for qemu-devel@nongnu.org; Tue, 25 Oct 2016 15:03:35 -0400 From: Laurent Vivier Date: Tue, 25 Oct 2016 21:02:58 +0200 Message-Id: <1477422199-11208-3-git-send-email-laurent@vivier.eu> In-Reply-To: <1477422199-11208-1-git-send-email-laurent@vivier.eu> References: <1477422199-11208-1-git-send-email-laurent@vivier.eu> Subject: [Qemu-devel] [PULL 02/23] target-m68k: Build the opcode table only once to avoid multithreading issues List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: schwab@linux-m68k.org, agraf@suse.de, Richard Henderson , gerg@uclinux.org, John Paul Adrian Glaubitz , Laurent Vivier From: John Paul Adrian Glaubitz Signed-off-by: John Paul Adrian Glaubitz Signed-off-by: Laurent Vivier Reviewed-by: Richard Henderson --- target-m68k/translate.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/target-m68k/translate.c b/target-m68k/translate.c index deb5a58..eecb32b 100644 --- a/target-m68k/translate.c +++ b/target-m68k/translate.c @@ -2841,6 +2841,11 @@ register_opcode (disas_proc proc, uint16_t opcode, uint16_t mask) Later insn override earlier ones. */ void register_m68k_insns (CPUM68KState *env) { + /* Build the opcode table only once to avoid + multithreading issues. */ + if (opcode_table[0] != NULL) { + return; + } #define INSN(name, opcode, mask, feature) do { \ if (m68k_feature(env, M68K_FEATURE_##feature)) \ register_opcode(disas_##name, 0x##opcode, 0x##mask); \ -- 2.7.4