ad
b0f548e27b
oops
2008-03-07 02:18:34 +00:00
ad
bb9b5eb92c
In libc, use the MI atomic_cas(). The assembly version is faster, but I
...
think there are PIC issues with it and I don't have a way to fix and test.
2008-03-07 01:18:54 +00:00
phx
e6d6e05cb1
Including assym.h is not needed and will break the build, because it does not
...
exist that early. Deleted it.
Approved by garbled.
2008-03-06 21:17:17 +00:00
cube
5b25d80ca0
Actually implement prop_dictionary_make_immutable. OK'd by thorpej@.
2008-03-05 07:47:09 +00:00
lukem
8346a6360d
Use mkstemp() + fchmod() instead of mktemp(), since the latter
...
results in linker warnings.
2008-02-23 01:26:01 +00:00
garbled
2ba84f0f9e
Add tuned powerpc assembler written by IBM and released under a 3-clause
...
BSD Lisc as part of the perflib project.
http://sourceforge.net/projects/ppcperflib/
Tested the new functions with microbenchmarks on a number of different
CPU types, and found that most cpus either benefited greatly, or were
unaffected. Primarily G4 CPU's were unaffected, and all others showed
speedups. My 7044 (POWER3) went from a 70.6 to a 73.2 (thats good) in
bytebench with a complete release built with these. Also passed
regression tests.
2008-02-21 17:35:47 +00:00
apb
267197ec1e
For all files under src/common, as well as related man pages under
...
src/lib/libc, or related headers under src/sys/sys: change u_intNN_t to
uintNN_t.
2008-02-16 17:37:13 +00:00
apb
cf01a0f8c8
C99 is no longer "very recent". Adjust a comment accordingly, and
...
start using uintNN_t instead of u_intNN_t in the definitions of
sha2_{byte,word32,word64}.
2008-02-16 17:15:32 +00:00
dogcow
26a84bff72
add missing %. (hi matt!)
2008-02-13 03:55:54 +00:00
ad
2d0314d313
Always enable memory barriers in userspace, otherwise libpthread won't
...
work correctly on MP systems.
2008-02-12 18:40:28 +00:00
ad
b86eac67c4
Correct a dodgy alias.
2008-02-12 18:35:38 +00:00
matt
360e0475e3
Use %rN as all new code is supposed to.
2008-02-12 07:58:01 +00:00
matt
131790b421
Fix pthread problem. (export membar* to userland)
2008-02-12 07:35:04 +00:00
ad
eff625dc0e
Put back a __predict_false removed during testing and fix atomic_cas_mp().
2008-02-11 23:48:23 +00:00
ad
a3fb849dfc
Clarify what membar_enter/membar_exit provide.
2008-02-11 15:12:07 +00:00
ad
1b2aff1f03
Note many of the restrictions, and clarify the section on global
...
visibility.
2008-02-11 15:01:24 +00:00
ad
b3193dc791
Only build atomic ops for libkern/libc.
2008-02-11 14:21:11 +00:00
ad
b5b3e9fb51
Enable the atomic ops in userspace.
2008-02-10 18:45:40 +00:00
ad
12190eee54
Fix name of the init function.
2008-02-10 13:41:02 +00:00
ad
646fc3baa9
Add atomic_cas_foo_ni().
2008-02-10 13:40:31 +00:00
ad
cc655ebd16
Add atomic_cas_foo_ni().
2008-02-10 13:25:46 +00:00
ad
a180c2a1f7
membar_enter was doing the wrong thing. For x86 we can alias:
...
membar_enter -> membar_consumer
membar_exit -> membar_producer
2008-02-09 13:42:21 +00:00
ad
d418b9fe8b
Some glue for atomic ops in userspace.
2008-02-09 13:30:54 +00:00
matt
350555cd1f
Add the .C versions for the atomic ops.
2008-02-03 07:46:38 +00:00
nakayama
da1555e6a7
Search files in arch/sparc64/atomic before arch/sparc/atomic in case of
...
sparc64 32-bit kernel.
Make sparc64 32-bit kernel works again.
2008-01-22 12:34:58 +00:00
nakayama
b4ed00a22d
Use __arch64__ instead of __sparc64__, since -D__sparc64__ is appended
...
to build option of sparc64 32-bit kernel.
2008-01-22 12:32:07 +00:00
christos
428727f47f
PR/37838: Stathis Kamperis: proplib documentation enhancements
2008-01-21 22:15:03 +00:00
ad
607fd8ae21
atomic_and/atomic_or don't operate on pointers, so don't copy the return
...
to a0. From thorpej@.
2008-01-12 17:29:03 +00:00
ad
f6c08490ef
Don't put membar in the delay slot. thorpej@ says it may be problematic.
2008-01-12 17:27:28 +00:00
simonb
d8de5b102b
Remove support for NetBSD/pc532.
2008-01-09 11:25:58 +00:00
martin
ececdb7913
When passing char (or unsigned char) arguments as int, assign them to a
...
temporary char (resp. unsigned char) before comparing, to force truncation
to the proper domain. This makes the coresponding regression tests succeed.
2008-01-08 21:57:06 +00:00
ad
9324487752
Include sys/simplelock.h in prop_object_impl.h.
2008-01-05 01:15:02 +00:00
mjf
83535b7f11
Nuke prop_dictionary_capacity, there was no implementation for it.
...
No objections on tech-kern.
2008-01-05 00:23:46 +00:00
xtraeme
0f546319ca
sys/simplelock.h is required now.
2008-01-04 21:33:17 +00:00
mrg
97e461c633
- provide 32 bit versions of the sparc v9 atomic ops.
...
- use them on sparc64 32 bit kernels.
fixes issues on 32 bit sparc64 kernels that were using sparc v8 ops.
tested by rjs@.
2007-12-22 23:19:40 +00:00
joerg
45f2572a92
Add virtual i8254 for x86emu.
2007-12-21 17:45:50 +00:00
ad
e16a661bf3
- Make __cpu_simple_lock and similar real functions and patch at runtime.
...
- Remove old x86 atomic ops.
- Drop text alignment back to 16 on i386 (really, this time).
- Minor cleanup.
2007-12-20 23:46:10 +00:00
ad
163e94a67e
64-bit atomic ops for i386.
2007-12-20 01:27:24 +00:00
joerg
823959a6b2
Refactor interrupt dispatching.
2007-12-13 16:41:59 +00:00
ad
9e9c09c30a
Fix _atomic_cas_64. Noted by bouyer@.
2007-12-10 14:13:12 +00:00
ad
164992f1a5
Add missing strong aliases.
2007-12-09 17:38:51 +00:00
ad
6260baac6e
Add missing strong aliases; sure I did this before?
2007-12-09 17:33:56 +00:00
ad
1206a8cb5c
Add some goo to make this work in userspace.
2007-12-08 22:53:33 +00:00
ad
96f5ce86b9
objdump -d to the rescue. I think this should work now.
2007-12-08 22:42:46 +00:00
joerg
e982f87297
Expect that src/common/include is in include path and use x86emu/* for
...
the includes.
2007-12-04 17:32:22 +00:00
he
1e962f25f7
Correct what must obviously be a cut+paste-induced set of typos.
2007-12-04 01:13:38 +00:00
wiz
7b371a343f
Typo fixes.
2007-12-02 18:57:56 +00:00
joerg
00487473b9
Move x86emu's include files to src/common/include/x86emu.
2007-12-01 20:14:09 +00:00
ad
234aa6237e
Memory barriers for MIPS.
2007-11-30 22:50:44 +00:00
joerg
22ac6fc0fb
Add x86emu for in-kernel use. This is a 386 real mode emulator that can
...
be used to run ROM code inside the kernel without having to setup vm86
and without having a x86 CPU at hand.
This code was originally written by SciTech and released under MIT/X11
license for XFree86. It has been refactored be less than half of the
original size, the compiled code being around a third of the former
size. The interface was changed to be a real library, e.g. no global
variables are used.
2007-11-30 20:02:49 +00:00