diff options
Diffstat (limited to 'lib/libpthread/arch')
-rw-r--r-- | lib/libpthread/arch/i386/i386/thr_switch.S | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/libpthread/arch/i386/i386/thr_switch.S b/lib/libpthread/arch/i386/i386/thr_switch.S index 4438b90..f8da6b6 100644 --- a/lib/libpthread/arch/i386/i386/thr_switch.S +++ b/lib/libpthread/arch/i386/i386/thr_switch.S @@ -103,9 +103,11 @@ ENTRY(_thread_switch) * all registers are now moved out of mailbox, * it's safe to set current thread pointer */ + cmpl $0, %ecx + je 8f movl %ebx,(%ecx) - popl %ecx /* %ecx off stack */ +8: popl %ecx /* %ecx off stack */ popl %ebx /* %ebx off stack */ popfl /* flags off stack */ -5: ret /* %eip off stack */ +9: ret /* %eip off stack */ |