diff options
author | Alexander Graf <agraf@suse.de> | 2013-03-06 03:01:09 +0100 |
---|---|---|
committer | John Rigby <john.rigby@linaro.org> | 2013-05-15 11:49:08 -0600 |
commit | 27e557c5bb8512ce5ee2a798631ce2bd7a3ed02a (patch) | |
tree | bc534c213790bb523429513f0220b5ca1f3ad53a | |
parent | 913b4b6bf39c97bc503a629b43c66d3270b5f3f5 (diff) |
ARM: Extract the disas struct to a header file
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 <agraf@suse.de>
Signed-off-by: John Rigby <john.rigby@linaro.org>
-rw-r--r-- | target-arm/translate.c | 24 | ||||
-rw-r--r-- | target-arm/translate.h | 27 |
2 files changed, 28 insertions, 23 deletions
diff --git a/target-arm/translate.c b/target-arm/translate.c index a1b7b8c1a..675773a43 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 000000000..e727bc66f --- /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 */ |