aboutsummaryrefslogtreecommitdiffstats
path: root/extras/mini-os/include/sched.h
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2007-11-23 16:23:28 +0000
committerKeir Fraser <keir.fraser@citrix.com>2007-11-23 16:23:28 +0000
commitfd2f80c255acc5edf0cea58053c81f392042bf51 (patch)
treec15b47372749e83f1e36d0cbc3674d66c60777d8 /extras/mini-os/include/sched.h
parenta222af2ef1f49e5c232466ab162fd606732a9d05 (diff)
downloadxen-fd2f80c255acc5edf0cea58053c81f392042bf51.tar.gz
xen-fd2f80c255acc5edf0cea58053c81f392042bf51.tar.bz2
xen-fd2f80c255acc5edf0cea58053c81f392042bf51.zip
[Mini-OS] Fix x86 arch_switch_thread
Fix x86 arch_switch_thread by making it pure assembly. There were missing general register clobbers for x86_64, and BP should theorically be clobbered too, but gcc does not believe that, so the only simple safe solution is to use pure assembly. Signed-off-by: Samuel Thibault <samuel.thibault@citrix.com>
Diffstat (limited to 'extras/mini-os/include/sched.h')
-rw-r--r--extras/mini-os/include/sched.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/extras/mini-os/include/sched.h b/extras/mini-os/include/sched.h
index 1425d0943c..9f209f195d 100644
--- a/extras/mini-os/include/sched.h
+++ b/extras/mini-os/include/sched.h
@@ -10,6 +10,7 @@ struct thread
char *name;
char *stack;
#if !defined(__ia64__)
+ /* keep in that order */
unsigned long sp; /* Stack pointer */
unsigned long ip; /* Instruction pointer */
#else /* !defined(__ia64__) */