target-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> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1378235544-22290-4-git-send-email-peter.maydell@linaro.org Message-id: 1368505980-17151-2-git-send-email-john.rigby@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
08307563ff
commit
f570c61e69
@ -47,29 +47,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)
|
||||
|
27
target-arm/translate.h
Normal file
27
target-arm/translate.h
Normal file
@ -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 */
|
Loading…
Reference in New Issue
Block a user