- add patch to fix building of go (swi in thumb ignores imm)
OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=72
This commit is contained in:
parent
ff9e7a806a
commit
7f3a22af4c
30
0019-linux-user-ARM-Ignore-immediate-val.patch
Normal file
30
0019-linux-user-ARM-Ignore-immediate-val.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
From af0dbc540b4acc54ec9f4d1064402f75edb5a7ca Mon Sep 17 00:00:00 2001
|
||||||
|
From: Alexander Graf <agraf@suse.de>
|
||||||
|
Date: Tue, 29 May 2012 17:28:07 +0200
|
||||||
|
Subject: [PATCH] linux-user: ARM: Ignore immediate value for svc in thumb mode
|
||||||
|
|
||||||
|
When running in thumb mode, Linux doesn't evaluate the immediate value
|
||||||
|
of the svc instruction, but instead just always assumes the syscall number
|
||||||
|
to be in r7.
|
||||||
|
|
||||||
|
This fixes executing go_bootstrap while building go for me.
|
||||||
|
|
||||||
|
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||||
|
---
|
||||||
|
linux-user/main.c | 3 +--
|
||||||
|
1 files changed, 1 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/linux-user/main.c b/linux-user/main.c
|
||||||
|
index 503ecfa..ed48276 100644
|
||||||
|
--- a/linux-user/main.c
|
||||||
|
+++ b/linux-user/main.c
|
||||||
|
@@ -823,8 +823,7 @@ void cpu_loop(CPUARMState *env)
|
||||||
|
} else if (n == ARM_NR_semihosting
|
||||||
|
|| n == ARM_NR_thumb_semihosting) {
|
||||||
|
env->regs[0] = do_arm_semihosting (env);
|
||||||
|
- } else if (n == 0 || n >= ARM_SYSCALL_BASE
|
||||||
|
- || (env->thumb && n == ARM_THUMB_SYSCALL)) {
|
||||||
|
+ } else if (n == 0 || n >= ARM_SYSCALL_BASE || env->thumb) {
|
||||||
|
/* linux syscall */
|
||||||
|
if (env->thumb || n == 0) {
|
||||||
|
n = env->regs[7];
|
@ -1,3 +1,8 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 29 15:34:55 UTC 2012 - agraf@suse.com
|
||||||
|
|
||||||
|
- add patch to fix building of go (swi in thumb ignores imm)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue May 22 16:39:24 UTC 2012 - afaerber@suse.de
|
Tue May 22 16:39:24 UTC 2012 - afaerber@suse.de
|
||||||
|
|
||||||
|
@ -42,6 +42,7 @@ Patch0015: 0015-linux-user-be-silent-about-capget-f.patch
|
|||||||
Patch0016: 0016-PPC-KVM-Disable-mmu-notifier-check..patch
|
Patch0016: 0016-PPC-KVM-Disable-mmu-notifier-check..patch
|
||||||
Patch0017: 0017-linux-user-fix-segfault-deadlock.pa.patch
|
Patch0017: 0017-linux-user-fix-segfault-deadlock.pa.patch
|
||||||
Patch0018: 0018-linux-user-binfmt-support-host-bina.patch
|
Patch0018: 0018-linux-user-binfmt-support-host-bina.patch
|
||||||
|
Patch0019: 0019-linux-user-ARM-Ignore-immediate-val.patch
|
||||||
# this is to make lint happy
|
# this is to make lint happy
|
||||||
Source300: rpmlintrc
|
Source300: rpmlintrc
|
||||||
Source400: update_git.sh
|
Source400: update_git.sh
|
||||||
@ -130,6 +131,7 @@ run cross architectures builds
|
|||||||
%patch0016 -p1
|
%patch0016 -p1
|
||||||
%patch0017 -p1
|
%patch0017 -p1
|
||||||
%patch0018 -p1
|
%patch0018 -p1
|
||||||
|
%patch0019 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# build QEMU
|
# build QEMU
|
||||||
|
Loading…
Reference in New Issue
Block a user