pooka
65ec9d356d
Don't clobber callee save registers r12 & r13 in swapcontext. They
...
were saved in the stack, but the subsequent swapcontext would return
to the earlier stack frame and never restore them. Fixes puffs
with default compiler flags on amd64.
Thanks to Mihai Chelaru for providing access to an amd64 machine
for debugging this problem.
2007-04-12 12:33:26 +00:00
ad
a99fcd719d
Remove an obsolete comment.
2007-03-08 13:46:31 +00:00
christos
12287894d6
ext_int bit is no more.
2007-02-02 23:18:57 +00:00
drochner
58bd20f660
if setcontext(2) returns, _exit(2) with a return code of -1 instead
...
of relying on a sensible return value
2006-11-08 21:16:40 +00:00
drochner
ac9d7f2faf
-check for a NULL uc_link before calling setcontext(2); do a real exit(3)
...
instead with exit handlers and all that
-If setcontext(2) returns (which it shouldn't), do an _exit(-1) rather
than relying on a sensible return value to use as exit code. Makes
it less likely that an ucontext corruption goes unnoticed.
2006-11-08 20:28:03 +00:00
drochner
3379c1c805
replaced by code in libc/compat/gen
2006-07-03 13:20:19 +00:00
drochner
46b4d67318
build {frexp,ldexp,modf} in the "compat" subtree
...
(Drop the modf assembler version. We have the same code in libm.)
(Drop the ldexp inline-assembler version. The same code is in libm as
scalbn; the ldexp there is just a wrapper providing error handling.)
2006-07-03 13:13:53 +00:00
uwe
46daac62de
G/c KMSRCS and KMINCLUDES now that we have common/lib/libc
2006-06-17 18:04:23 +00:00
drochner
f81322cf18
build erand48_ieee754.c on everything but vax
2006-03-22 22:03:58 +00:00
kleink
bc89c06cbf
Add strtof(3) and strtold(3); welcome libc 12.137.
2006-03-15 17:35:17 +00:00
christos
edc071d5b4
remove files moved to the new compat layout.
2006-03-11 19:02:16 +00:00
christos
b1732b7a63
make these consistent.
2006-02-19 05:06:02 +00:00
kleink
804e6c96a2
Add machine-dependent definitions for gdtoa.
2006-01-25 15:33:28 +00:00
christos
e5548b402a
Use reach-over sources from common/lib/libc
2005-12-20 19:31:47 +00:00
rpaulo
afc37a8433
Fix another typo in comments found by Ricardo Nabinger Sanchez
...
on the freebsd-arch mailing list.
2005-08-03 22:59:50 +00:00
rpaulo
270bc85b33
Fix typos found by Giorgos Keramid and Steve Kargl on freebsd-arch mailing
...
list.
2005-08-02 14:20:49 +00:00
lukem
88c3eadbfa
Add missing __RCSID()
2005-06-12 05:21:25 +00:00
kleink
b2cb7fcd8a
Push back the descriptions of NaN formats, and descriptions of the
...
distinction between signalling NaNs and quiet NaNs back into the
machine-dependent headers; treat the implementation of __nanf in the
same spirit.
IEEE 754 leaves the distinction between signalling NaNs and quiet NANs
to the implementation, and unlike our headers used to suggest they're
not identical in the interpretation of the fraction's MSb; in due
course, make those of hppa, mips, sh3, and sh5 reflect reality.
2005-04-15 22:39:10 +00:00
ws
4aa5370862
Use correct stack offsets after pushing values onto it.
2004-12-01 01:08:18 +00:00
drochner
0ca4ad479d
fix alignment check for source
...
should fix PR port-amd64/26416 by Nicolas Joly
2004-07-26 18:51:21 +00:00
drochner
07d87c5c6e
replace the str*() functions by speed optimized versions, submitted by
...
J.T. Conklin per PR port-amd64/25411
2004-07-19 20:04:41 +00:00
drochner
606b8ac15b
disembowel -- there is no kernel support anyway
2004-03-26 19:26:23 +00:00
drochner
65626c5d91
kill sigcontext passing to signal handlers, we don't have to worry
...
about compatibility
2004-03-25 14:21:29 +00:00
drochner
a8c94ef1d3
simplify: it doesn't need an i387 to kill a sign bit
2004-03-23 17:11:35 +00:00
drochner
3219cdc550
replace the last occurence of an "int 0x80" syscall
2004-03-23 16:33:47 +00:00
drochner
cd85223ee2
save errno while trying to install a !SA_SIGINFO trampoline -- this
...
is expected to fail with !COMPAT_16 kernels, and we shouldn't
overwrite errno in this case
2004-03-23 16:19:40 +00:00
drochner
ca430e5111
Really, there is no need to use the old int0x80 syscall entry just for
...
getcontext(). There are some registers not properly saved with the
new syscall entry, but these are calee-saved, scratch or meaningless.
It's the setcontext() return path what matters.
2004-03-09 20:21:22 +00:00
drochner
294b4fa9f2
we also have to reset bits in the i387 status
...
as required
2004-03-09 17:16:13 +00:00
drochner
b79602af35
-clear status bits in mxcsr as required
...
-return the old accumulated status bits
2004-03-05 16:27:56 +00:00
kleink
8e54f10bf7
* Turn isinf(3) and isnan(3) into C99-style macros.
...
* Make it possible for ports to override these (i.e., VAX).
* Remove isnanl(), which was internal to libc only.
2004-03-04 23:42:38 +00:00
drochner
e9ee155221
Get the stack alignment right: the stack arguments must start
...
at a 16-byte aligned address, the return address is at an
"odd" address.
approved by fvdl
2004-02-28 15:57:21 +00:00
drochner
a839ccc650
alignment trouble: uc_link is at offset 8
2004-02-27 21:23:05 +00:00
drochner
37d3fd292f
the char we fill with shouldn't be sign-extended
...
(the way the length argument is dealt with looks suspicious
too, but this would only have an effect for >=2G fields)
this can probably be optimized...
2004-02-26 20:50:06 +00:00
drochner
3cac582c48
fix copyback from fp stack - we need 64 bits
2004-02-26 19:19:06 +00:00
matt
3d2a90fb95
Make this compile.
2004-01-18 19:33:01 +00:00
kleink
d82e732345
Add C99 fpclassify(), isfinite(), isnormal(), and signbit() macros.
2004-01-15 19:43:44 +00:00
kleink
0a97d0875b
C99 7.12.3.2: add library portions of isfinite, but don't build these just
...
yet.
2003-10-29 20:03:51 +00:00
kleink
75327729a2
C99 7.12.3.1: add IEEE library portions of fpclassify. Don't build these
...
yet as the VAX implementation is still subject to discussion.
2003-10-28 22:05:37 +00:00
matt
a54bd8931a
Fix tpyo. (ieee854 -> ieee754)
2003-10-28 01:24:06 +00:00
kleink
964d6747b5
Err, rename some members added in previous to make them reflect their
...
semantics better.
2003-10-27 01:11:46 +00:00
kleink
5976f8aa56
Retire local union { floating-type; struct ieee_prec; } in favor of those
...
available from <machine/ieee.h>
2003-10-27 00:05:46 +00:00
kleink
9f3dbee22c
Add __infinityf and __infinityl, float respectively long double analogs
...
of __infinity.
2003-10-25 22:31:20 +00:00
kleink
c6126e1095
Sync with i386:
...
Update to account for separate handling of the explicit integer bit;
simplifies a little.
2003-10-25 21:48:34 +00:00
kleink
712c8de209
* Since there is no single portable IEEE 754 format for a long double,
...
keep a common implementation of isinfl() and isnanl() to be used by
platforms where `long double' == `double'; move others into
machine-dependent code.
* In due course, consider __VFP_FP__ on arm.
2003-10-24 00:58:01 +00:00
fvdl
9f7abac970
Use the int 0x80 path for context system calls.
2003-10-18 22:47:37 +00:00
briggs
7931285ae1
Need a couple more headers for the last change.
2003-10-18 20:11:04 +00:00
briggs
6646629469
Sync with the i386 version.
2003-10-18 18:36:35 +00:00
fvdl
2b9ab2aab8
Get ucontext pointer back out of callee-saved register %r15.
2003-10-17 16:23:20 +00:00
fvdl
4da2d7565d
Userland amd64 siginfo support.
2003-10-06 22:57:23 +00:00
fvdl
6f517be9eb
Return the right value for modf(). Fixes PR 22503.
2003-08-16 21:45:50 +00:00