summaryrefslogtreecommitdiff
path: root/sys/lib/libkern/arch
AgeCommit message (Collapse)Author
2013-01-05Switch m88k ports to ELF.Miod Vallat
2012-12-05Remove excessive sys/cdefs.h inclusionTheo de Raadt
ok guenther millert kettenis
2012-01-17Remove assembly version of strlen from i386 and amd64, where it'sMike Belopuhov
up to 3 times slower than the C code most of the time. This was brought up by DragonflyBSD guys initially. ok deraadt, guenther. miod will not miss it.
2011-11-27Regen.Mark Kettenis
2011-11-27Switch to proper PA-RISC 2.0 mnemonics. Works around a bug in the assemblerMark Kettenis
getting rid of the (hopefully) last bug in this code.
2011-11-27Regen.Mark Kettenis
2011-11-27Fix return value of memcpy.Mark Kettenis
2011-11-27Oops, jsing@ changed spcopy.S without realizing that that file is generatedMark Kettenis
from bcopy.m4. Fix that.
2011-11-27Regen.Mark Kettenis
2011-11-27Replace a few more 32-bit instructions with the proper 64-bit equivalent.Mark Kettenis
Also fix the return value of memcpy. With these changes, this seems to work as advertised now.
2011-09-19Regen.Mark Kettenis
2011-09-19Avoid sign-extension when extracting the low bits of addresses when checkingMark Kettenis
if the addresses are 4-byte aligned. ok jsing@
2011-07-19we need to alias __movstr* as __movmem* for gcc4Jonathan Gray
from NetBSD. ok miod@ drahn@
2011-04-14Regen.Joel Sing
2011-04-14Use 64-bit operations for address manipulation.Joel Sing
2011-04-14Correctly load p_addr and avoid trashing the source address.Joel Sing
2011-03-12syncTheo de Raadt
2011-03-12In the original sparc V7 book (and in the v8 book), the divrem leaf code usedTheo de Raadt
local registers for a few temporaries. This was changed to use two global registers. Maybe to permit use in-kernel without conflicting with the register V7 register window handlers. (Was this done by Chris Torek? Is this related to Gordon Irlam's work? Or was it in NetBSD? Hard to tell because NetBSD removed their original cvs tree.) In V8 the ABI was tightened; more global registers became offlimits in different ways. We started supporting sun4m, and did not consider this. As a result, the global registers chosen are the wrong choice. In particular, %g7 is a poor choice for upcoming TLS work. It looks like it is safer to use %g5 and %g6 since these functions are "system software". All re-entrant parts of the system save it. On sparc64 these functions are in libc per ABI requirement, but are unused. On sparc, they occur in bootblocks (no reentrancy), kernel (reentrancy saves globals; kernel is not ABI compliant), userland libc (signal handlers save globals), and ld.so (symbol binding is not re-entrant on its own). Discussed rather extensively with guenther, kettenis, miod and drahn.
2011-01-27s/DST/DEST/ to avoid warnings when building RAMDISK kernels, which defineMiod Vallat
TIMEZONE and DST...
2010-04-20destintation -> destinationMiod Vallat
2010-04-01Allow for multiple CPUs by moving to an array of cpu_info.Joel Sing
ok kettenis@
2009-12-12Provide a correct version for little endian kernels... sighMiod Vallat
2009-08-19<machine/macros.h> would provide inline version of a few of the functionsMiod Vallat
traditionnaly found in libkern. However, the memcmp() flavour would behave as bcmp() with only two possible return values: zero and positive non-zero. This broke the name cache RB trees which now rely upon proper memcmp() semantics(negative value, zero, or positive value). Just give up on these macros and provide the same code as libc, in libkern. As a side effect, this no longer uses the cmpc3 instruction, which is not implemented and requires (slow) kernel emulation, on the original uVax.
2008-10-10Use the MI random() for all cases; no need for a MD version since itTheo de Raadt
has never been performance sensitive. Running on all platforms, discussed with millert and kettenis, ok toby
2008-06-26First pass at removing clauses 3 and 4 from NetBSD licenses.Ray Lai
Not sure what's more surprising: how long it took for NetBSD to catch up to the rest of the BSDs (including UCB), or the amount of code that NetBSD has claimed for itself without attributing to the actual authors. OK deraadt@
2008-05-14These files are not used (and some of them would not compile anyway).Miod Vallat
2008-04-20Catch up with dismantled libkern.Mark Kettenis
2008-04-20Remove the random() function from locore.s (which used sparcv7 instructions,Mark Kettenis
including mulscc to do multiplications) and switch to the generic random.c code.
2007-11-28place a comment as to why these are otherwise emptyTheo de Raadt
2007-11-27mips64 also needs memcpy.S, otherwise memcpy.c gets built, which conflictsJoel Sing
with bcopy.S ok miod@
2007-11-26mips64 needs at least these to build; spotted by jsingTheo de Raadt
2007-11-25libkern, begone. Move to a new mechanism where config(8)'s "file"Theo de Raadt
directive can select between MI and MD versions of these files. At the same time, adjust the boot programs to pick exactly what they need, instead of the 7 or 8 mechanisms previously used. There will be some fallout from this, but testing it all by myself is a ridiculously slow process; it will be finished in-tree. Various developers were very nice and avoided making fun of me when I was gibbering in the corner..
2007-11-24SCCS junk, bit by bitTheo de Raadt
2007-11-24junk RCSTheo de Raadt
2007-11-24junk SCCSTheo de Raadt
2007-11-24more junk SCCSTheo de Raadt
2007-11-24junk SCCSTheo de Raadt
2007-11-24delete unused junk RCS idsTheo de Raadt
2007-10-13Uncomment rule to build bcopy.S, and use that as our bcopy(9) implementation.Mark Kettenis
2007-10-13Make this actually work by using the right register numbers. In the conversionMark Kettenis
from hppa the fact that t1-t4 actually number down from r22-r19 got somehow lost.
2007-05-25"boundries" -> "boundaries" in various comments. Started by Diego Casati.Kenneth R Westerback
2007-05-14move hppa to __HAVE_CPUINFOMartin Reindl
input from miod@, ok kettenis@
2007-05-04more locc() diesTheo de Raadt
2007-05-04remove strcpy and strcat from the kernel; they are dead and unused code.Reyk Floeter
(OpenBSD does not use strcat/strcpy in the kernel, if people do it in external modules they should update their code) ok deraadt@
2006-11-17Move m88k memory copy and fill functions to libkern. The copy functions willMiod Vallat
no longer share the same code, but will be instead be duplicated from the same source, so that bcopy() and memcpy() do not need to check for overlap, and memcpy() and memmove() are shorter.
2006-11-09typoTheo de Raadt
2006-10-06import supah pieces from netbsdMichael Shalayeff
2006-01-04Switch to the C version of random() on m68k platforms. It is almost as fastMiod Vallat
as the assembly version on 0[234]0, but *fifteen* times faster than it on 68060 systems, since it uses a form of muls.l which has to be emulated. And since we use random() for statclock variance, this means we were gratuitously doing an average of 100 emulation traps per second. ok deraadt@ millert@
2005-08-01I'm Positive these are Type-O.Miod Vallat
2005-07-20not neededTheo de Raadt