[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 42/42] linux-user: Add ARM get_tls syscall support
From: |
Laurent Vivier |
Subject: |
[Qemu-devel] [PULL 42/42] linux-user: Add ARM get_tls syscall support |
Date: |
Mon, 30 Apr 2018 11:10:37 +0200 |
From: Christophe Lyon <address@hidden>
Co-Authored-By: Mickaël Guêné <address@hidden>
Signed-off-by: Christophe Lyon <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Message-Id: <address@hidden>
[lv: moved the change to linux-user/arm/cpu_loop.c]
Signed-off-by: Laurent Vivier <address@hidden>
---
linux-user/arm/cpu_loop.c | 3 +++
linux-user/arm/target_syscall.h | 1 +
2 files changed, 4 insertions(+)
diff --git a/linux-user/arm/cpu_loop.c b/linux-user/arm/cpu_loop.c
index d911929bf6..26928fbbb2 100644
--- a/linux-user/arm/cpu_loop.c
+++ b/linux-user/arm/cpu_loop.c
@@ -347,6 +347,9 @@ void cpu_loop(CPUARMState *env)
case ARM_NR_breakpoint:
env->regs[15] -= env->thumb ? 2 : 4;
goto excp_debug;
+ case ARM_NR_get_tls:
+ env->regs[0] = cpu_get_tls(env);
+ break;
default:
gemu_log("qemu: Unsupported ARM syscall: 0x%x\n",
n);
diff --git a/linux-user/arm/target_syscall.h b/linux-user/arm/target_syscall.h
index 94e2a42cb2..afc0772e19 100644
--- a/linux-user/arm/target_syscall.h
+++ b/linux-user/arm/target_syscall.h
@@ -16,6 +16,7 @@ struct target_pt_regs {
#define ARM_NR_breakpoint (ARM_NR_BASE + 1)
#define ARM_NR_cacheflush (ARM_NR_BASE + 2)
#define ARM_NR_set_tls (ARM_NR_BASE + 5)
+#define ARM_NR_get_tls (ARM_NR_BASE + 6)
#define ARM_NR_semihosting 0x123456
#define ARM_NR_thumb_semihosting 0xAB
--
2.14.3
- [Qemu-devel] [PULL 04/42] linux-user: move aarch64 signal.c parts to aarch64 directory, (continued)
- [Qemu-devel] [PULL 04/42] linux-user: move aarch64 signal.c parts to aarch64 directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 05/42] linux-user: move arm signal.c parts to arm directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 17/42] linux-user: move xtensa signal.c parts to xtensa directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 22/42] linux-user: define TARGET_ARCH_HAS_SETUP_FRAME, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 10/42] linux-user: move openrisc signal.c parts to openrisc directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 13/42] linux-user: move alpha signal.c parts to alpha directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 11/42] linux-user: move s390x signal.c parts to s390x directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 16/42] linux-user: move hppa signal.c parts to hppa directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 36/42] linux-user: move alpha cpu loop to alpha directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 20/42] linux-user: move mips/mips64 signal.c parts to mips directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 42/42] linux-user: Add ARM get_tls syscall support,
Laurent Vivier <=
- [Qemu-devel] [PULL 33/42] linux-user: move cris cpu loop to cris directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 30/42] linux-user: move nios2 cpu loop to nios2 directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 24/42] linux-user: move i386/x86_64 cpu loop to i386 directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 25/42] linux-user: move aarch64 cpu loop to aarch64 directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 34/42] linux-user: move microblaze cpu loop to microblaze directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 15/42] linux-user: move riscv signal.c parts to riscv directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 32/42] linux-user: move sh4 cpu loop to sh4 directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 14/42] linux-user: move tilegx signal.c parts to tilegx directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 35/42] linux-user: move m68k cpu loop to m68k directory, Laurent Vivier, 2018/04/30
- [Qemu-devel] [PULL 31/42] linux-user: move openrisc cpu loop to openrisc directory, Laurent Vivier, 2018/04/30