Commit Graph

13 Commits

Author SHA1 Message Date
cperciva
d2e2105c36 style cleanup: Remove duplicate $FreeBSD$ tags.
These files had tags after teh copyright notice,
inside the comment block (incorrect, removed),
and outside the comment block (correct).

Approved by:	rwatson (mentor)
2004-02-10 20:45:28 +00:00
ru
db3c5cfcd0 Make libc/${MACHINE_ARCH} include directory not required by Alpha.
Submitted by:	bde
Tested by:	beast
2003-07-02 13:27:54 +00:00
peter
6aaf7bcc91 Update for amd64 after repocopy from i386/ 2003-06-02 22:30:59 +00:00
tmm
c11b6a659c Add an implementation of _atomic_lock for sparc64. This was submitted by
des; I tweaked it slightly by extending the membar and making it match
the style of the rest of the sparc64 assembler code.
2003-01-05 22:23:11 +00:00
marcel
179f4e7818 Implement the lock with a cmpxchg instruction instead of a xchg.
Both are atomic, but the cmpxchg has memory ordering hints. We
give this acquire semantics.

NOTE: The unlock in libc_r is implemented by a "normal" assign
statement. This is not correct on ia64 due to the memory ordering
characteristics of the architecture. We need release semantics
for an unlock.
2002-11-16 17:05:06 +00:00
peter
19662f7322 Add an ia64 atomic lock primitive for libc_r. This is mostly for
completeness and doesn't get us a working libc_r there because libc_r
uses setjmp() and setjmp() cannot be used for context switches on ia64
as-is (or sparc64).  Rather than making setjmp/longjmp behave like
the *context() calls, it would be far better to make libc_r use *context()
directly which is what they are for.

Obtained from:  marcel
2002-07-20 19:22:10 +00:00
peter
45416fb0ae Change #include "DEFS.h" to <machine/asm.h>. 2001-10-25 01:30:54 +00:00
ru
325db7b385 Removed duplicate VCS ID tags, as per style(9). 2001-08-13 14:06:34 +00:00
peter
e226894fa0 $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
dfr
96e7b502ec Change to a code sequence which is more likely to work on SMP systems.
Now all I need is an alpha SMP box to port FreeBSD to :-)
1998-09-16 09:27:05 +00:00
jb
c2f213c811 Delete the atomic unlock function since it is no longer required.
Simplify the atomic lock to just write a value of 1 to the lock instead
of taking the value passed by the caller (which just confused things).
1998-06-09 08:25:41 +00:00
jb
969445866b Atomic lock asm code for the alpha version of libc_r. 1998-06-09 08:21:55 +00:00
jb
acbe1e4c91 Atomic lock source. 1998-04-29 09:36:03 +00:00