summaryrefslogtreecommitdiffstats
path: root/lib/libc/arch (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Add an implementation of IRIX-compatible cacheflush() routine to mips ports,miod2009-09-272-1/+39
| | | | | | | needed for gcc -ftrampoline operation as well as by some third-party software. Although the implementation uses the sysarch() sysctl, the wrapper is added to libc as it was a direct system call (which it is on IRIX).
* Load symbol address with dla, not la; good thing userland is still limitedmiod2009-07-131-2/+2
| | | | to 2GB of vm space.
* fix rcs ids. ok sthen@martynas2009-06-211-1/+1
|
* Fix signed vs unsigned issue with memcmp/strncmp where the size parameterdrahn2009-05-032-10/+16
| | | | was incorrectly being treated as signed. ok miod@
* junk spacederaadt2009-04-291-1/+1
|
* remove from gen so that lint doesn't check gen if assembly versionsmartynas2009-04-2112-26/+27
| | | | are available. spotted by theo
* - ldexp implementation has issues. switch to the one from libmmartynas2009-04-1928-3111/+23
| | | | | | - remove frexp in hppa64, cloned from hppa - move generic ieee754 implementations of modf and ldexp to gen ok kettenis@, "looks good" millert@
* this is not a write-only register. might have caused to optimizemartynas2009-04-051-2/+2
| | | | it away. ok miod@
* __isinff and __isnanfmartynas2008-12-122-4/+4
|
* do the same as was done in mi version: do not include math.h, since isinf,martynas2008-12-122-4/+2
| | | | and isnan would expand to macros and compatibility aliases won't work
* no spaces allowed in the macro arguments. completely insanity!deraadt2008-12-102-4/+4
|
* use sys/cdefs.h; pointed out by theomartynas2008-12-1014-28/+28
|
* use sys/cdefs.hderaadt2008-12-102-4/+3
|
* these were not neededmartynas2008-12-096-12/+6
|
* ditto frexpl and ldexplmartynas2008-12-0914-15/+45
|
* alias fabsl to fabs on these archsmartynas2008-12-097-7/+23
|
* remove unusedmartynas2008-12-096-201/+0
|
* - add long double signbitmartynas2008-12-0952-55/+348
| | | | | | | | | | | | | - make long double versions weak aliases to double versions, on archs where long doubles are 64 bits - no need to have two finites. finite() and finitef() are non-standard 3BSD obsolete versions of isfinite. remove from libm. make them weak_alias in libc to __isfinite and __isfinitef instead. similarly make 3BSD obsolete versions of isinf, isinff, isnan, isnanf weak_aliases to C99's __isinf, __isinff, __isnan, __isnanf - bump major ok millert@
* Use large pic asm for access to errno (needed for pie). Originally fromkurt2008-09-291-2/+4
| | | | | drahn@ but tweaked to use same scratch reg as PIC_PROLOGUE. okay miod@ drahn@
* - replace dtoa w/ David's gdtoa, version 2008-03-15martynas2008-09-07101-11/+2160
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - provide proper dtoa locks - use the real strtof implementation - add strtold, __hdtoa, __hldtoa - add %a/%A support - don't lose precision in printf, don't round to double anymore - implement extended-precision versions of libc functions: fpclassify, isnan, isinf, signbit, isnormal, isfinite, now that the ieee.h is fixed - separate vax versions of strtof, and __hdtoa - add complex math support. added functions: cacos, casin, catan, ccos, csin, ctan, cacosh, casinh, catanh, ccosh, csinh, ctanh, cexp, clog, cabs, cpow, csqrt, carg, cimag, conj, cproj, creal, cacosf, casinf, catanf, ccosf, csinf, ctanf, cacoshf, casinhf, catanhf, ccoshf, csinhf, ctanhf, cexpf, clogf, cabsf, cpowf, csqrtf, cargf, cimagf, conjf, cprojf, crealf - add fdim, fmax, fmin - add log2. (adapted implementation e_log.c. could be more acruate & faster, but it's good enough for now) - remove wrappers & cruft in libm, supposed to work-around mistakes in SVID, etc.; use ieee versions. fixes issues in python 2.6 for djm@ - make _digittoint static - proper definitions for i386, and amd64 in ieee.h - sh, powerpc don't really have extended-precision - add missing definitions for mips64 (quad), m{6,8}k (96-bit) float.h for LDBL_* - merge lead to frac for m{6,8}k, for gdtoa to work properly - add FRAC*BITS & EXT_TO_ARRAY32 definitions in ieee.h, for hdtoa&ldtoa to use - add EXT_IMPLICIT_NBIT definition, which indicates implicit normalization bit - add regression tests for libc: fpclassify and printf - arith.h & gd_qnan.h definitions - update ieee.h: hppa doesn't have quad-precision, hppa64 does - add missing prototypes to gdtoaimp - on 64-bit platforms make sure gdtoa doesn't use a long when it really wants an int - etc., what i may have forgotten... - bump libm major, due to removed&changed symbols - no libc bump, since this is riding on djm's libc major crank from a day ago discussed with / requested by / testing theo, sthen@, djm@, jsg@, merdely@, jsing@, tedu@, brad@, jakemsr@, and others. looks good to millert@ parts of the diff ok kettenis@ this commit does not include: - man page changes
* fix apps that use isinff, isnanf; use ieee 754 mi code, as allmartynas2008-07-253-119/+2
| | | | other ieee fp archs do; pointed out by theo. tested by theo
* - move isinf, isnan dups to gen, since most is ieee 754martynas2008-07-2458-1168/+376
| | | | | | | | | | | | | | | | - is{inf,nan} should be macros for real-floating, so rename to __is{inf,nan}, per C99 - implement C99 __fpclassify(), __fpclassifyf(), __isfinite(), __isfinitef(), __isnormal(), __isnormalf(), __signbit(), __signbitf() - long functions added, but not yet enabled, till ieee.h is fixed - implement vax equivalents of the functions - reimplement isinff, isnanf in a better way, and move to libc - add qnan bytes for all archs - bump major man pages will follow ok millert@. arm bits looked over by drahn@ discussed w/ theo, who showed the right direction, to put these functions in libc
* clear sign bit, instead of comparing to zero and setting x=-x.martynas2008-07-232-41/+34
| | | | | | | fixes special cases, such as neg. zero, and makes C99 conformant ok miod@, millert@ since there's nothing else in arm's fabs.c, replace 4-clause license w/ the one at /usr/share/misc/license.template
* First pass at removing clauses 3 and 4 from NetBSD licenses.ray2008-06-2623-184/+23
| | | | | | | | | 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@
* Use _C_LABEL when appropriate.miod2008-05-2112-38/+40
|
* Use _PROF_PROLOGUE insteaf of rolling our own.miod2008-05-211-4/+6
|
* Repair FLT_ROUNDS operation. ok kettenis@miod2007-10-272-6/+6
|
* Change the syscall invocation sequences to no longer fetch the last fewmiod2007-10-242-8/+2
| | | | | | | | | | arguments from the stack, since the kernel will now copyin() them when necessary. This makes all system calls (but mmap()) slightly faster. WARNING! After this commit, your binaries must run against a kernel featuring m88k/m88k/trap.c r1.34 or better - i.e. a 4.1 or later kernel.
* "boundries" -> "boundaries" in various comments. Started by Diego Casati.krw2007-05-252-4/+4
|
* LSRCS should refer to the C source version of asm files 'put it in' deraadt@drahn2007-05-172-4/+4
|
* Unbreak libc on arm. -mojmaja2007-05-171-2/+2
|
* fix some lint 'xxx used, but not defined' warnings by properly addingotto2007-05-156-7/+19
| | | | stuff to LSRCS
* Move landisk to hardware floating point. At the moment the FPU context ismiod2007-03-029-136/+265
| | | | | | | | | | | | | | | always saved upon context switches, as FPU registers are heavily used for long long computations (don't ask). Gcc default to -m4. Credits to drahn@ otto@ and deraadt@ for feedback and help testing. Upgrade procedure if you don't want to use the damn snapshots: - build and install new kernel, reboot off it - build new gcc, do not install it yet - make includes - install new gcc - build and install lib/csu and lib/libc - make build
* from FreeBSD via Jung (moorang at gmail), fix obvious typo in __fpu_ftox()jason2007-02-121-9/+9
| | | | which caused all negative numbers returned to be == -1.
* please gccderaadt2006-12-231-1/+2
|
* Do not use fpu in the softfloat case. Fixes lib/libc/ieeefp/roundotto2006-11-141-1/+5
| | | | regress test; ok miod@
* missing ;otto2006-11-131-2/+2
|
* fix infinity, taking into account endianess. ok drahn@ miod@otto2006-11-121-2/+6
|
* Load the syscall number into the scratch register (r12) so that we dontdrahn2006-11-071-1/+3
| | | | need the copyin.
* Build the correct arch softfloat code.drahn2006-11-071-2/+2
|
* forgot to commit the new files for sh softfloat support.drahn2006-11-073-0/+147
|
* Move (back) to softfloat on sh for now.drahn2006-11-063-6/+19
|
* Dont double fork, and since the assembles the same, use -1, instead of 0xffdrahn2006-11-031-6/+2
| | | | to subtract one.
* and I forgot ldexp.cdrahn2006-10-111-2/+2
|
* build modf.cdrahn2006-10-111-2/+2
|
* Preliminary userland bits for OpenBSD/landisk, many things coming frommiod2006-10-1043-0/+2882
| | | | NetBSD.
* The int (32bit) argument must be sign extended on the 64 bit amd64 beforedrahn2006-05-091-3/+5
| | | | the add. ok miod@, toby@. olrite mickey@
* Properly terminate ENTRY with a semicolon, required for asm profiling.drahn2006-04-241-3/+3
| | | | ok miod, espie
* Gently cast to make lint happy.drahn2006-03-311-2/+2
|
* Be kind to lint, and specify the correct width on these constants.drahn2006-03-313-6/+6
|