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

« back to all changes in this revision

Viewing changes to debian/patches/arm64/0025-target-arm-A64-add-set_pc-cpu-method.patch

  • 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
 
From 263f8349a22187698e925c369e944e7948b786a3 Mon Sep 17 00:00:00 2001
2
 
From: Alexander Graf <agraf@suse.de>
3
 
Date: Tue, 17 Dec 2013 19:42:31 +0000
4
 
Subject: [PATCH 25/49] target-arm: A64: add set_pc cpu method
5
 
 
6
 
When executing translation blocks we need to be able to recover
7
 
our program counter. Add a method to set it for AArch64 CPUs.
8
 
This covers user-mode, but for system mode emulation we will
9
 
need to check if the CPU is in an AArch32 execution state.
10
 
 
11
 
Signed-off-by: Alexander Graf <agraf@suse.de>
12
 
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
13
 
Reviewed-by: Richard Henderson <rth@twiddle.net>
14
 
---
15
 
 target-arm/cpu64.c | 11 +++++++++++
16
 
 1 file changed, 11 insertions(+)
17
 
 
18
 
diff --git a/target-arm/cpu64.c b/target-arm/cpu64.c
19
 
index 3e99c21..04ce879 100644
20
 
--- a/target-arm/cpu64.c
21
 
+++ b/target-arm/cpu64.c
22
 
@@ -68,11 +68,22 @@ static void aarch64_cpu_finalizefn(Object *obj)
23
 
 {
24
 
 }
25
 
 
26
 
+static void aarch64_cpu_set_pc(CPUState *cs, vaddr value)
27
 
+{
28
 
+    ARMCPU *cpu = ARM_CPU(cs);
29
 
+    /*
30
 
+     * TODO: this will need updating for system emulation,
31
 
+     * when the core may be in AArch32 mode.
32
 
+     */
33
 
+    cpu->env.pc = value;
34
 
+}
35
 
+
36
 
 static void aarch64_cpu_class_init(ObjectClass *oc, void *data)
37
 
 {
38
 
     CPUClass *cc = CPU_CLASS(oc);
39
 
 
40
 
     cc->dump_state = aarch64_cpu_dump_state;
41
 
+    cc->set_pc = aarch64_cpu_set_pc;
42
 
     cc->gdb_read_register = aarch64_cpu_gdb_read_register;
43
 
     cc->gdb_write_register = aarch64_cpu_gdb_write_register;
44
 
     cc->gdb_num_core_regs = 34;
45
 
1.8.5.2
46