summaryrefslogtreecommitdiff
path: root/i386
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2011-04-19 02:27:45 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2011-04-19 03:04:27 +0200
commita44f51203c43bb4306a225506075740cdacaccfa (patch)
treee10e654f3312a7cf853753bf9c51cba040036147 /i386
parentf1f7313e73ae48157f2cba731f7f81d8af461b40 (diff)
Close call stack on continuation
* i386/i386/locore.S (call_continuation): Push dummy return address instead of letting the callee get a random one.
Diffstat (limited to 'i386')
-rw-r--r--i386/i386/locore.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/i386/i386/locore.S b/i386/i386/locore.S
index 8571611..379b219 100644
--- a/i386/i386/locore.S
+++ b/i386/i386/locore.S
@@ -599,6 +599,7 @@ ENTRY(call_continuation)
addl $(-3-IKS_SIZE),%ecx
movl %ecx,%esp /* pop the stack */
xorl %ebp,%ebp /* zero frame pointer */
+ pushl $0 /* Dummy return address */
jmp *%eax /* goto continuation */