cvs commit: src/lib/libc/ia64/sys Makefile.inc getcontext.S
swapcontext.S
Marcel Moolenaar
marcel at FreeBSD.org
Fri Aug 1 17:49:38 PDT 2003
marcel 2003/08/01 17:49:36 PDT
FreeBSD src repository
Modified files:
lib/libc/ia64/sys Makefile.inc
Added files:
lib/libc/ia64/sys getcontext.S swapcontext.S
Log:
Override the default stubs for getcontext(2) and swapcontext(2) so
that we can flush the register stack prior to entering the kernel.
This avoids having dirty registers and saves us from having to
manually write them to the backing store from within the kernel.
In that respect, flushing the RSE is both functionally required as
well as performance optimal.
On average we had 18 dirty registers when getcontext(2) was called
from libthr. Since libthr does not switch back to a context created
by getcontext(2), not having dealt with the dirty registers was
harmless.
Revision Changes Path
1.7 +2 -2 src/lib/libc/ia64/sys/Makefile.inc
1.1 +39 -0 src/lib/libc/ia64/sys/getcontext.S (new)
1.1 +39 -0 src/lib/libc/ia64/sys/swapcontext.S (new)
More information about the cvs-src
mailing list