summaryrefslogtreecommitdiffstats
path: root/lib/libc/arch/vax (follow)
Commit message (Collapse)AuthorAgeFilesLines
* __tfork() needs to set the stack address of the new thread in the kernel,guenther2012-06-211-9/+7
| | | | | | | | | so that it can't get a signal while still running on the parent thread's stack. Also, pass in sizeof(struct __tfork) to provide forward compat when more members are added. This is an ABI change, so switch syscall numbers and bump lib majors this time. ok deraadt@ matthew@
* rely on the compiler giving us a built-in alloca. any new architecturederaadt2012-04-192-47/+3
| | | | | or compiler we use will. ok millert
* alloca.c cannot be usedderaadt2012-04-121-2/+1
|
* remove rfork(); ok guenther miodderaadt2012-04-121-37/+0
|
* Move __tfork_thread() from rthreads (libpthread) to libc so thatguenther2012-03-221-0/+69
| | | | | | it can be used for not-strictly-threading purposes ok matthew@ kurt@
* sigstack() is long dead, and the compat sigaltstack syscall is gone too.guenther2011-11-221-2/+2
| | | | | | Correct the namespace protections for sigreturn(), sigwait(), and psignal() ok millert@
* Revert (leaving the complex math part alone). Some stuff is dependingmartynas2011-07-084-2/+166
| | | | | on this historical behavior; so we're stuck in this stupid situation. No cookie for me.
* Move fabs(3), frexp(3), and modf(3) to libm--nothing has been usingmartynas2011-07-084-166/+2
| | | | them in libc for a very long time. OK guenther@.
* Trick lint into recording the right prototypes in the llib-lc.lnmartynas2011-07-027-29/+56
| | | | database on the vax, similarly like has been done in gen.
* - The 0x1p514 was wrong on VAX, but remove FP_SUBNORMAL, FP_INFINITE,martynas2011-06-082-20/+6
| | | | | | | | and FP_NAN cases altogether, since they are not supported, and fpclassify() will never return that. (Leftovers when this was cloned.) - Kill unused INFSTR, NANSTR, LDBL_ADJ. - Teach hdtoa() that rv_alloc can fail. - Move STRTOG_NoMemory above STRTOG_Infinite (fallthru).
* On the a.out architectures, WEAK_ALIAS does an implicit _C_LABEL()deraadt2011-04-091-2/+2
| | | | ok miod
* Move __cerror to ___cerror with a weak alias so that rthreads can override it.guenther2011-04-041-2/+4
| | | | | | On mips64, also correct the name called from plain cerror to __cerror. "looks correct" miod@
* more rcsid/sccs cleanupderaadt2009-10-286-32/+2
|
* teach gdtoa & its subroutines that malloc can fail; in which casemartynas2009-10-161-0/+4
| | | | | | ecvt, fcvt, gcvt, *printf, strtof, strtod, strtold act per ieee 1003.1. after these massive changes, remove unused files which would not work now. reported by Maksymilian Arciemowicz; ok theo
* remove from gen so that lint doesn't check gen if assembly versionsmartynas2009-04-211-3/+3
| | | | are available. spotted by theo
* __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-107-14/+14
|
* ditto frexpl and ldexplmartynas2008-12-092-2/+10
|
* alias fabsl to fabs on these archsmartynas2008-12-091-1/+2
|
* - add long double signbitmartynas2008-12-098-9/+79
| | | | | | | | | | | | | - 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@
* - replace dtoa w/ David's gdtoa, version 2008-03-15martynas2008-09-075-0/+296
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* - move isinf, isnan dups to gen, since most is ieee 754martynas2008-07-247-7/+176
| | | | | | | | | | | | | | | | - 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
* Use _C_LABEL when appropriate.miod2008-05-2112-38/+40
|
* Use _PROF_PROLOGUE insteaf of rolling our own.miod2008-05-211-4/+6
|
* LSRCS should refer to the C source version of asm files 'put it in' deraadt@drahn2007-05-171-2/+2
|
* fix some lint 'xxx used, but not defined' warnings by properly addingotto2007-05-151-1/+4
| | | | stuff to LSRCS
* if we pull in a .S file, we must fake out the lint with a .c filederaadt2005-11-291-2/+5
| | | | | for this first cut, we will do this for alloca() using alloca.c by adding it to LSRCS
* zap rcsid.espie2005-08-0734-168/+34
| | | | okay deraadt@ (tested them all)
* Replace broken frexp() with a working one from FreeBSD. There'smillert2005-02-011-2/+2
| | | | | | no need to have a copy for each platform with ieee floating point, only vax needs a special version (which probably has similar bugs). OK and with help from otto@
* Use an unsigned comparison against minbrk.miod2003-12-251-6/+3
| | | | ok deraadt@
* Remove the advertising clause in the UCB license which Berkeleymillert2003-06-0240-243/+83
| | | | rescinded 22 July 1999. Proofed by myself and Theo.
* insque and remque are VAX instructions, no need for C functions; From 4.4BSDmillert2003-05-092-0/+98
|
* duplicate words and spelling fixes in commentsdavid2003-03-101-2/+2
| | | | ok miod@
* From NetBSD; Use _C_LABEL, not SYSNAME to call sigaltstack, sigblock,millert2002-11-061-5/+5
| | | | | | sigreturn. sigblock has not been a syscall since 4.3BSD and using SYSCALL directly seems like a bad idea in general. Fixes a build problem on vax. OK miod@
* thread safe libc -- 2nd try. OK miod@, millert@marc2002-11-051-19/+19
| | | | Thanks to miod@ for m68k and vax fixes
* Rename cerror to __cerror and curbrk to __curbrk, to avoid namespacemiod2002-11-058-25/+25
| | | | pollution. Conforming to art@'s evil plans.
* back out previous patch.. there are still some vax/m68k issuesmarc2002-11-031-1/+14
|
* libc changes for thread safety. Tested on:marc2002-11-031-14/+1
| | | | | | | alpha (millert@), i386 (marc@), m68k (millert@ and miod@), powerpc (drahn@ and dhartmei@), sparc (millert@ and marc@), sparc64 (marc@), and vax (millert@ and miod@). Thanks to millert@, miod@, and mickey@ for fixes along the way.
* Stub to help libc_r buildsmiod2002-11-011-0/+4
|
* We need to keep K&R compat macros for some ports where the assemnbler ismillert2002-02-191-1/+7
| | | | still using -traditional-cpp.
* We live in an ANSI C world. Remove lots of gratuitous #ifdef __STDC__ cruft.millert2002-02-191-7/+1
|
* rfork() needs a fork.S-like stub as well; ok artderaadt2002-02-171-0/+45
|
* Add PSEUDO_NOERROR similar to that used by NetBSD.millert2001-09-201-11/+18
| | | | | | | | | | | Some ports were setting errno in PSEUDO and some were not. Now errno is set for all in PSEUDO and PSEUDO_NOERROR is provided for the non-errno case (only used by _exit). Needs testing on vax and m88k. XXX - hppa and powerpc still lack a real PSEUDO_NOERROR implementation. Currently PSEUDO_NOERROR and PSEUDO are the same (so builds don't break on those platforms).
* Use the LBL isnan() and isinf() on all platforms with ieee floating point.millert2001-09-101-1/+3
|
* Fix the syscall wrappers name generation in, so that libc_r gets themiod2001-08-237-46/+54
| | | | | | correct entry points and programs can link to it. I would have commited this later, but fgs@ insisted.
* #(endif|else) foo is incorrect, make it #endif /* foo */heko2001-08-121-2/+2
| | | | deraadt@ ok
* Most of the systems we run on require an emulated EMODD, so avoid usinghugh2001-04-181-2/+8
| | | | | | | it if a CVTDL would do instead. This path is 80x faster on such systems, and falling back to EMODD if necessary hurts little. Helps programs like nawk, a heavy modf user.
* Fix lots of register masks.bjc2001-03-1812-26/+26
|