summary refs log tree commit diff stats
path: root/linux-user/m68k/target_cpu.h
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2013-07-16 18:44:55 +0100
committerRiku Voipio <riku.voipio@linaro.org>2013-07-22 21:54:20 +0300
commit1ccd9374af22ec4ed5f864d4935a9cfad01f1204 (patch)
treeb59e0ae070d155576af28d10c299650948e4585f /linux-user/m68k/target_cpu.h
parentf5147c93d0e7f91df0215598017a4d9d6a48f0ee (diff)
downloadfocaccia-qemu-1ccd9374af22ec4ed5f864d4935a9cfad01f1204.tar.gz
focaccia-qemu-1ccd9374af22ec4ed5f864d4935a9cfad01f1204.zip
linux-user: Enable NPTL for m68k
For m68k, per-thread data is a purely kernel construct with no
CPU level support. Implement it via a field in the TaskState structure,
used by cpu_set_tls() and the set_thread_area/get_thread_area
syscalls. This allows us to enable compilation with NPTL.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by:  Laurent Vivier <laurent@vivier.eu>
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
Diffstat (limited to 'linux-user/m68k/target_cpu.h')
-rw-r--r--linux-user/m68k/target_cpu.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/linux-user/m68k/target_cpu.h b/linux-user/m68k/target_cpu.h
index 8a2a305a0b..cad9c90dd0 100644
--- a/linux-user/m68k/target_cpu.h
+++ b/linux-user/m68k/target_cpu.h
@@ -29,6 +29,10 @@ static inline void cpu_clone_regs(CPUM68KState *env, target_ulong newsp)
     env->dregs[0] = 0;
 }
 
-/* TODO: need to implement cpu_set_tls() */
+static inline void cpu_set_tls(CPUM68KState *env, target_ulong newtls)
+{
+    TaskState *ts = env->opaque;
+    ts->tp_value = newtls;
+}
 
 #endif