diff options
author | davidxu <davidxu@FreeBSD.org> | 2002-11-23 04:39:52 +0000 |
---|---|---|
committer | davidxu <davidxu@FreeBSD.org> | 2002-11-23 04:39:52 +0000 |
commit | dee681e4f388d3885f209446417bf5ac430ac640 (patch) | |
tree | 447c8df543bc6dafb514c86a4cc80347392a9c6a /lib/libpthread | |
parent | 2918fada1083f5c5bd633b163eca1df73c7a97da (diff) | |
download | FreeBSD-src-dee681e4f388d3885f209446417bf5ac430ac640.zip FreeBSD-src-dee681e4f388d3885f209446417bf5ac430ac640.tar.gz |
Directly load %edx from mailbox
Diffstat (limited to 'lib/libpthread')
-rw-r--r-- | lib/libpthread/arch/i386/i386/thr_switch.S | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/libpthread/arch/i386/i386/thr_switch.S b/lib/libpthread/arch/i386/i386/thr_switch.S index 51dcc2c..db32e55 100644 --- a/lib/libpthread/arch/i386/i386/thr_switch.S +++ b/lib/libpthread/arch/i386/i386/thr_switch.S @@ -82,13 +82,12 @@ ENTRY(_thread_switch) pushl 68(%edx) /* flags on stack */ pushl 36(%edx) /* %ebx on stack */ pushl 44(%edx) /* %ecx on stack */ - pushl 40(%edx) /* %edx on stack */ + movl 40(%edx), %edx /* %edx */ /* - * all registers are now moved out of mailbox - * it's now safe to set current thread pointer + * all registers are now moved out of mailbox, + * it's safe to set current thread pointer */ movl %ebx,(%ecx) - popl %edx /* %edx off stack */ popl %ecx /* %ecx off stack */ popl %ebx /* %ebx off stack */ popf /* flags off stack */ |