Commit Graph

842 Commits

Author SHA1 Message Date
matt
6569f93208 Eliminate use of C++ keywords and don't nest struct definitions. 2014-09-05 05:19:24 +00:00
matt
27620987b8 New files for OR1K support 2014-09-03 19:34:25 +00:00
matt
8f455a577d Add __sync_val_compare_and_swap_{1,2} aliases for _atomic_cas_{8,16} 2014-09-03 19:30:47 +00:00
matt
903c030159 Remove enclosing parens on return. 2014-08-22 17:19:48 +00:00
riastradh
b4d2027a4b Fix failure case in rb_tree_find_node_leq/geq.
Return NULL, not `NULL - offset'.

XXX pullup to netbsd-5, netbsd-6, netbsd-7
2014-08-22 17:17:02 +00:00
matt
11614bb2b2 MKCOMPAT fixes for when compat MACHINE_CPU != normal MACHINE_CPU 2014-08-10 23:25:49 +00:00
matt
beb9c6d1b5 Preliminary files for AARCH64 (64-bit ARM) support.
Enough for a distribution build.
2014-08-10 05:47:35 +00:00
joerg
677b0f4807 Fix decoding of near CALL when address-size prefix (67h) is present.
From Wolf Ramovsky via FreeBSD.
2014-08-04 21:41:44 +00:00
joerg
5dfafbb265 Fix decoding of LEA when address-size prefix (67h) is present.
From Wolf Ramovsky via FreeBSD, loosly based on Xorg changeset f57bc0e
by Christian Zander.
2014-08-04 21:40:11 +00:00
joerg
2501b6362f Fix decoding of MOVSX. From Wolf Ramovsky via FreeBSD. 2014-08-04 19:19:02 +00:00
ryo
d82036afdc fix lack of '>' pointed out in PR/48517 2014-08-02 11:19:01 +00:00
lneto
4ab4902eb2 lua: updated from 5.1 to 5.3 work3
* lua(1):
  - changed lua_Integer to intmax_t
  - updated distrib/sets/lists and etc/mtree
  - updated bsd.lua.mk
  - fixed bozohttpd (lua-bozo.c)
  - compatibilized bindings: gpio, sqlite
* lua(4):
  - removed floating-point and libc dependencies using '#ifndef _KERNEL'
  - fixed division by zero and exponentiation
  - libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
  - acpica: removed isprint() from acnetbsd.h
  - libc: moved strcspn.c, strpbrk.c and strspn.c to common
  - removed stub headers
  - compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
2014-07-19 18:38:33 +00:00
joerg
aa565dfb01 Add unused memory model argument to make GCC happy. 2014-07-06 01:19:45 +00:00
joerg
3ba4836216 Provide a basic implementation of __atomic_load_* and __atomic_store_*,
used by GCC and LLVM as backing for C11/C++11 atomics, if the hardware
is not known to have corresponding features. Include it on ARM as LLVM
and libc++ hit it when compiled for ARMv4.
2014-07-05 20:44:46 +00:00
joerg
bd7dee058c Add aliases for the C11/C++11 spelling of the CAS primitives. 2014-06-28 20:18:55 +00:00
drochner
1970d452ef add a public domain notice 2014-06-24 16:39:39 +00:00
joerg
504e8e687f Add aliases for the builtins used to implement C11/C++11 atomics. 2014-06-23 21:53:45 +00:00
christos
f16aa4743c update for the new function signatures of initstate/srandom 2014-06-12 20:59:46 +00:00
shm
a3f6a15448 PR/48517 do not add extra '>' to string-converted value when nothing matches 2014-06-06 07:08:37 +00:00
uebayasi
19ef5b5b0b Put missing END() markers to set ELF symbol size. 2014-05-23 03:17:31 +00:00
pooka
b1a03c8e0b fix build for _KERNEL 2014-05-22 16:47:31 +00:00
uebayasi
502c621104 Put missing END() markers to set ELF symbol size. 2014-05-22 15:21:13 +00:00
joerg
353aedd819 Make EHABI optional. 2014-05-06 16:02:10 +00:00
christos
57561cf1db The kernel uses 64 bit atomic ops. 2014-04-22 19:27:17 +00:00
joerg
e3dae42754 Undef possible macro versions of memcpy and friends for kernel builds
too. libkern sometimes defines them to the builtins.
2014-04-16 20:39:55 +00:00
joerg
a33c368664 Using bcopy/memcpy with NULL arguments is valid as long as the size is
also 0.
2014-04-14 18:18:58 +00:00
skrll
39ac7250f3 Ensure SBZ register is zero 2014-03-28 21:32:41 +00:00
christos
a6e338b0d6 kill sprintf 2014-03-26 18:12:46 +00:00
jakllsch
2c56941e16 For all i386 string assembly functions that don't overlap use END() so
that symbol size information is available.
2014-03-22 19:38:46 +00:00
jakllsch
6ac3c1f4d7 For all x86_64 string assembly functions that don't overlap (i.e. every
one except memset and bzero) use END() so that symbol size information
is available.
2014-03-22 19:16:34 +00:00
riastradh
6cb10275d0 Merge riastradh-drm2 to HEAD. 2014-03-18 18:20:35 +00:00
riastradh
0766111859 Fix subword atomic_cas.
- Don't loop forever on failure.
- Don't shift away the result and return zero on success.

Evidently we lack automatic tests for these!
2014-03-09 16:19:14 +00:00
martin
b6407fab71 Fix return value (typo, noticed by Nick Hudson) 2014-03-07 08:42:58 +00:00
matt
3b018d607e Use the sources in ../../arch/powerpc instead 2014-03-07 07:20:56 +00:00
matt
c9642ed49c Now the sources in ../../arch/powerpc 2014-03-07 07:20:24 +00:00
matt
6dd4b41fd3 Reduce duplication.
Use beqlr to quicken returns
2014-03-07 07:17:54 +00:00
matt
e70564d7d6 apcs-gnu only passes one register on the stack.
ldrd always loads little endian (low address, low register).
2014-03-05 17:20:48 +00:00
macallan
1890dda80c on 601 CPUs skip to normal memcpy if both source and destination are 32bit
aligned
2014-03-04 17:05:14 +00:00
matt
ab7ecd2ca6 Don't export __sync* if _KERNEL || _STANDALONE are defined.
(except if _RUMPKERNEL is defined)
2014-03-04 16:15:28 +00:00
matt
4fa1971b77 Fix #if/#endif nesting 2014-03-04 07:01:26 +00:00
matt
f2d0e50b73 fix typo. 2014-03-04 06:36:41 +00:00
matt
2e6bec6f0d Make this work with coldfire. 2014-03-04 06:15:33 +00:00
matt
ab9be61dac Make this coldfire compatible 2014-03-04 04:03:49 +00:00
matt
37c6d125b7 Fix non-EABI loading of argument. Deal with endian issues.
Fixes PR/48635
2014-03-04 03:50:37 +00:00
matt
674350cab3 Add atomic_sub_64.S 2014-03-04 03:49:07 +00:00
matt
308d85879d Load new value from correct stack location in _atomic_cas_64_up 2014-03-04 03:36:24 +00:00
matt
be9a2e2448 Fetch value from correct stack location. Push an even number of registers
so ldrd won't fail.
2014-03-04 03:34:22 +00:00
matt
f3eefe6cf1 Use _KERNEL_OPT around #include "opt_ppcarch.h" 2014-03-03 18:55:02 +00:00
macallan
a00f9ab046 on ppc601 do byte-wise copies when in _KERNEL
from scole_mail, ok matt@
2014-03-03 15:30:31 +00:00
matt
d9d3fe3d18 Add atomic_cas_64 support for ARM EABI on V5TE and V5TEJ cpus.
(strd is atomic).
2014-02-27 09:39:00 +00:00