|
Boost-Commit : |
From: gpderetta_at_[hidden]
Date: 2008-03-13 18:44:58
Author: giovanni.deretta
Date: 2008-03-13 18:44:57 EDT (Thu, 13 Mar 2008)
New Revision: 43597
URL: http://svn.boost.org/trac/boost/changeset/43597
Log:
updated comment, also cheching if credentials still work
Text files modified:
sandbox/SOC/2006/coroutine/trunk/libs/coroutine/src/swapcontext32.cpp | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
Modified: sandbox/SOC/2006/coroutine/trunk/libs/coroutine/src/swapcontext32.cpp
==============================================================================
--- sandbox/SOC/2006/coroutine/trunk/libs/coroutine/src/swapcontext32.cpp (original)
+++ sandbox/SOC/2006/coroutine/trunk/libs/coroutine/src/swapcontext32.cpp 2008-03-13 18:44:57 EDT (Thu, 13 Mar 2008)
@@ -62,8 +62,12 @@
'add $4, %esp'
'jmp *%ecx'
really kills performance.
+
NOTE: popl is slightly better than mov+add to pop registers
so is pushl rather than mov+sub.
+
+ According to Agner Fog, an always taken indirect branch should preferably
+ be followed by an undefined opcode instruction (the ud2).
*/
#define BOOST_COROUTINE_swapcontext(name) \
asm volatile ( \
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk