summaryrefslogtreecommitdiffstats
path: root/lib/libpthread/arch/amd64
Commit message (Collapse)AuthorAgeFilesLines
* Cosmetic tweaks to reduce diffs to the i386 counterpart.peter2004-11-061-2/+3
|
* gcc -O2 cleanup. tested for a long time.davidxu2004-08-251-2/+2
| | | | Reviewed by: deischen
* 1. Add macro DTV_OFFSET to calculate dtv offset in tcb.davidxu2004-08-161-0/+2
| | | | 2. Export symbols needed by debugger.
* Add TLS support for i386 and amd64.dfr2004-08-152-8/+18
|
* Save context in kernel fashion, so it can be restored bydavidxu2004-07-311-2/+5
| | | | kse_switchin syscall.
* Remove unused field.davidxu2004-07-311-1/+0
|
* Macro optimize, this increases context switch speed about 2% on mydavidxu2004-07-311-2/+2
| | | | athlon64 machine.
* Call kse_switchin to switch context when being debugged.davidxu2004-07-131-8/+22
|
* Avoid clobbering the red zone when running on the new context's stack intjr2004-06-071-0/+5
| | | | _amd64_restore_context().
* Apply a second fix for stack alignment with libkse. This time, enter thepeter2003-12-051-2/+2
| | | | | | | | | | | UTS with the stack correctly aligned. Also, while here, use an indirect jump rather than the pushq/ret hack. This fixes threaded apps that use floating point for me, although it hasn't solved all the problems. It is an improvement though. Preservation of the 128 byte red zone hasn't been resolved yet. Approved by: re (scottl)
* Use amd64_set_fsbase() instead of calling sysarch() directly.peter2003-10-231-6/+1
|
* Update context code for my last ABI breakage of mcontext. I'm worriedpeter2003-10-171-7/+8
| | | | | | | about the fpu code here. It should be using fxsave/fxrstor instead of saving/restoring the control word. The SSE registers are used a lot in gcc generated code on amd64. I'm not sure how this all fits together though.
* Make KSE_STACKSIZE machine dependent by moving it from thr_kern.c tomarcel2003-09-191-1/+2
| | | | | | pthread_md.h. This commit only moves the definition; it does not change it for any of the platforms. This more easily allows 64-bit architectures (in particular) to pick a slightly larger stack size.
* Remove a comment that questioned why the size of the FPUdeischen2003-09-161-10/+1
| | | | | | | | | | | state for amd64 was twice as large as necessary. Peter recently fixed this, so the comment no longer applies. Also, since the size of struct mcontext changed, adjust the threads library version of get&set context to match. FYI, any change layout/size change to any arch's struct mcontext will likely need some minor changes in libpthread.
* Don't assume sizeof(long) = sizeof(int) on x86; use intdeischen2003-09-031-3/+11
| | | | | | | | | | | | instead of long types for low-level locks. Add prototypes for some internal libc functions that are wrapped by the library as cancellation points. Add memory barriers to alpha atomic swap functions (submitted by davidxu). Requested by: bde
* Don't forget to set kcb_self.davidxu2003-08-121-0/+1
|
* Rethink the MD interfaces for libpthread to account fordeischen2003-08-054-167/+280
| | | | | | | | | archs that can (or are required to) have per-thread registers. Tested on i386, amd64; marcel is testing on ia64 and will have some follow-up commits. Reviewed by: davidxu
* -15 is incorrect to be used to align stack to 16 bytes, use ~15 instead.davidxu2003-08-021-1/+1
|
* Use FSBase to map kse, GCC generates code which uses %fs to access TLS data.davidxu2003-07-311-4/+4
| | | | Reminded by: marcel
* Set GSBASE for kse. Finally make libkse work on AMD64.davidxu2003-07-311-6/+3
|
* Fix some typos, correctly jump into UTS.davidxu2003-07-311-2/+2
|
* Fix typo.davidxu2003-07-261-5/+5
|
* Add missing arguments to _amd64_restore_context() when called fromdeischen2003-07-201-2/+4
| | | | THR_SETCONTEXT().
* Add some very beta amd64 bits. These will also need some tweaking.deischen2003-07-196-0/+528
OpenPOWER on IntegriCloud