~ubuntu-branches/ubuntu/trusty/qemu/trusty

« back to all changes in this revision

Viewing changes to .pc/arm64/0031-target-arm-A64-add-support-for-B-and-BL-insns.patch/target-arm/translate.h

  • Committer: Package Import Robot
  • Author(s): Serge Hallyn
  • Date: 2014-02-04 12:13:08 UTC
  • mfrom: (10.1.45 sid)
  • Revision ID: package-import@ubuntu.com-20140204121308-1xq92lrfs75agw2g
Tags: 1.7.0+dfsg-3ubuntu1~ppa1
* Merge 1.7.0+dfsg-3 from debian.  Remaining changes:
  - debian/patches/ubuntu:
    * expose-vmx_qemu64cpu.patch
    * linaro (omap3) and arm64 patches
    * ubuntu/target-ppc-add-stubs-for-kvm-breakpoints: fix FTBFS
      on ppc
    * ubuntu/CVE-2013-4377.patch: fix denial of service via virtio
  - debian/qemu-system-x86.modprobe: set kvm_intel nested=1 options
  - debian/control:
    * add arm64 to Architectures
    * add qemu-common and qemu-system-aarch64 packages
  - debian/qemu-system-common.install: add debian/tmp/usr/lib
  - debian/qemu-system-common.preinst: add kvm group
  - debian/qemu-system-common.postinst: remove acl placed by udev,
    and add udevadm trigger.
  - qemu-system-x86.links: add eepro100.rom, remove pxe-virtio,
    pxe-e1000 and pxe-rtl8139.
  - add qemu-system-x86.qemu-kvm.upstart and .default
  - qemu-user-static.postinst-in: remove arm64 binfmt
  - debian/rules:
    * allow parallel build
    * add aarch64 to system_targets and sys_systems
    * add qemu-kvm-spice links
    * install qemu-system-x86.modprobe
  - add debian/qemu-system-common.links for OVMF.fd link
* Remove kvm-img, kvm-nbd, kvm-ifup and kvm-ifdown symlinks.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef TARGET_ARM_TRANSLATE_H
2
 
#define TARGET_ARM_TRANSLATE_H
3
 
 
4
 
/* internal defines */
5
 
typedef struct DisasContext {
6
 
    target_ulong pc;
7
 
    uint32_t insn;
8
 
    int is_jmp;
9
 
    /* Nonzero if this instruction has been conditionally skipped.  */
10
 
    int condjmp;
11
 
    /* The label that will be jumped to when the instruction is skipped.  */
12
 
    int condlabel;
13
 
    /* Thumb-2 conditional execution bits.  */
14
 
    int condexec_mask;
15
 
    int condexec_cond;
16
 
    struct TranslationBlock *tb;
17
 
    int singlestep_enabled;
18
 
    int thumb;
19
 
    int bswap_code;
20
 
#if !defined(CONFIG_USER_ONLY)
21
 
    int user;
22
 
#endif
23
 
    int vfp_enabled;
24
 
    int vec_len;
25
 
    int vec_stride;
26
 
    int aarch64;
27
 
} DisasContext;
28
 
 
29
 
extern TCGv_ptr cpu_env;
30
 
 
31
 
/* target-specific extra values for is_jmp */
32
 
/* These instructions trap after executing, so the A32/T32 decoder must
33
 
 * defer them until after the conditional execution state has been updated.
34
 
 * WFI also needs special handling when single-stepping.
35
 
 */
36
 
#define DISAS_WFI 4
37
 
#define DISAS_SWI 5
38
 
/* For instructions which unconditionally cause an exception we can skip
39
 
 * emitting unreachable code at the end of the TB in the A64 decoder
40
 
 */
41
 
#define DISAS_EXC 6
42
 
 
43
 
#ifdef TARGET_AARCH64
44
 
void a64_translate_init(void);
45
 
void gen_intermediate_code_internal_a64(ARMCPU *cpu,
46
 
                                        TranslationBlock *tb,
47
 
                                        bool search_pc);
48
 
void gen_a64_set_pc_im(uint64_t val);
49
 
#else
50
 
static inline void a64_translate_init(void)
51
 
{
52
 
}
53
 
 
54
 
static inline void gen_intermediate_code_internal_a64(ARMCPU *cpu,
55
 
                                                      TranslationBlock *tb,
56
 
                                                      bool search_pc)
57
 
{
58
 
}
59
 
 
60
 
static inline void gen_a64_set_pc_im(uint64_t val)
61
 
{
62
 
}
63
 
#endif
64
 
 
65
 
#endif /* TARGET_ARM_TRANSLATE_H */