From patchwork Wed Mar 6 02:01:09 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Graf X-Patchwork-Id: 225247 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 1D3682C0369 for ; Wed, 6 Mar 2013 13:04:56 +1100 (EST) Received: from localhost ([::1]:51707 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UD3iw-0005rn-8m for incoming@patchwork.ozlabs.org; Tue, 05 Mar 2013 21:04:54 -0500 Received: from eggs.gnu.org ([208.118.235.92]:35642) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UD3fc-0008Ut-WC for qemu-devel@nongnu.org; Tue, 05 Mar 2013 21:01:32 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UD3fW-000644-EX for qemu-devel@nongnu.org; Tue, 05 Mar 2013 21:01:28 -0500 Received: from cantor2.suse.de ([195.135.220.15]:43308 helo=mx2.suse.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UD3fW-00062t-5w for qemu-devel@nongnu.org; Tue, 05 Mar 2013 21:01:22 -0500 Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 16F06A5203; Wed, 6 Mar 2013 03:01:21 +0100 (CET) From: Alexander Graf To: qemu-devel qemu-devel Date: Wed, 6 Mar 2013 03:01:09 +0100 Message-Id: <1362535280-5068-2-git-send-email-agraf@suse.de> X-Mailer: git-send-email 1.6.0.2 In-Reply-To: <1362535280-5068-1-git-send-email-agraf@suse.de> References: <1362535280-5068-1-git-send-email-agraf@suse.de> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x X-Received-From: 195.135.220.15 Cc: Peter Maydell , Riku Voipio Subject: [Qemu-devel] [PATCH 01/12] ARM: Extract the disas struct to a header file X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org We will need to share the disassembly status struct between AArch32 and AArch64 modes. So put it into a header file that both sides can use. Signed-off-by: Alexander Graf --- target-arm/translate.c | 24 +----------------------- target-arm/translate.h | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 23 deletions(-) create mode 100644 target-arm/translate.h diff --git a/target-arm/translate.c b/target-arm/translate.c index 35a21be..7dbf781 100644 --- a/target-arm/translate.c +++ b/target-arm/translate.c @@ -45,29 +45,7 @@ #define ARCH(x) do { if (!ENABLE_ARCH_##x) goto illegal_op; } while(0) -/* internal defines */ -typedef struct DisasContext { - target_ulong pc; - int is_jmp; - /* Nonzero if this instruction has been conditionally skipped. */ - int condjmp; - /* The label that will be jumped to when the instruction is skipped. */ - int condlabel; - /* Thumb-2 conditional execution bits. */ - int condexec_mask; - int condexec_cond; - struct TranslationBlock *tb; - int singlestep_enabled; - int thumb; - int bswap_code; -#if !defined(CONFIG_USER_ONLY) - int user; -#endif - int vfp_enabled; - int vec_len; - int vec_stride; -} DisasContext; - +#include "translate.h" static uint32_t gen_opc_condexec_bits[OPC_BUF_SIZE]; #if defined(CONFIG_USER_ONLY) diff --git a/target-arm/translate.h b/target-arm/translate.h new file mode 100644 index 0000000..e727bc6 --- /dev/null +++ b/target-arm/translate.h @@ -0,0 +1,27 @@ +#ifndef TARGET_ARM_TRANSLATE_H +#define TARGET_ARM_TRANSLATE_H + +/* internal defines */ +typedef struct DisasContext { + target_ulong pc; + int is_jmp; + /* Nonzero if this instruction has been conditionally skipped. */ + int condjmp; + /* The label that will be jumped to when the instruction is skipped. */ + int condlabel; + /* Thumb-2 conditional execution bits. */ + int condexec_mask; + int condexec_cond; + struct TranslationBlock *tb; + int singlestep_enabled; + int thumb; + int bswap_code; +#if !defined(CONFIG_USER_ONLY) + int user; +#endif + int vfp_enabled; + int vec_len; + int vec_stride; +} DisasContext; + +#endif /* TARGET_ARM_TRANSLATE_H */