Commit Graph

1310 Commits

Author SHA1 Message Date
msaitoh
8ce1f4fff2 fix typos 2007-04-29 20:23:34 +00:00
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
scw
5764a76889 Remove support for NetBSD/{,evb}sh5. 2007-04-08 09:35:21 +00:00
ad
3cac6dbb47 If I686_LIBC is defined, make syscalls using the 'sysenter' instruction. 2007-03-09 14:30:45 +00:00
ad
a99fcd719d Remove an obsolete comment. 2007-03-08 13:46:31 +00:00
mhitch
d417d9f5d4 From Christos: gdtoa fixes for m68k. M68k ports should build now, but
printing extended precision is a little off.
2007-02-17 17:50:52 +00:00
christos
12287894d6 ext_int bit is no more. 2007-02-02 23:18:57 +00:00
christos
0449ecc079 since the int bit is merged, do the explicit math. 2007-02-02 23:14:09 +00:00
hubertf
55ac93d329 Remove more duplicate #includes, and a few spurious whitespaces at EOL
From Slava Semushin <slava.semushin@gmail.com>
2007-01-17 23:24:22 +00:00
martin
1c4ebce529 Provide a full frame stack space in the clone'd child. 2006-12-28 17:46:03 +00:00
martin
55a9a999dd Use CCFSZ instead of 96 for standard save operations. 2006-12-28 10:02:43 +00:00
martin
f666b179b1 After discussing this further with uwe, rearange stack usage slightly and
replace a comment with words suggested by him.
2006-12-27 13:40:56 +00:00
martin
520e5c8f6a When setting up the __clone()'s userland stack, make sure to allocate
an initial frame. Fixes PR 33075.
2006-12-25 21:44:37 +00:00
martin
2ed5a47025 Pull over rev. 1.5 of the i386 version (../../i386/resumecontext.S),
quoting Matthias Drochner:

> -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.

This fixes regress/lib/libc/context for m68k.

Thanks to Steve Woodford for optimization hints.
2006-12-13 10:48:02 +00:00
martin
e56cdf1dd0 Sync all resumecontext.c versions with the changes originally made
by Matthias Drochner to i386 and alpha:

-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-12-08 16:09:02 +00:00
martin
2cb7656bf1 Pull over rev. 1.5 of the i386 version (../../i386/resumecontext.S),
quoting Matthias Drochner:

> -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.

This also fixes regress/lib/libc/context for sparc64.
2006-12-08 15:51:45 +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
cherry
1ad9454efb Towards ia64 libc. Round #2 2006-09-23 17:39:34 +00:00
cherry
64f11261d1 ia64 libc MD stuff #1. Pushing in everything before my harddisk pops. 2006-09-22 17:59:47 +00:00
cherry
768b7d52a9 add ia64 libc MI bits. 2006-09-22 12:09:24 +00:00
cherry
503611ba29 libc stubs added 2006-09-10 21:22:33 +00:00
simonb
0f58c090bc Rename these functions to the __<name>14 names.
XXX: still need to be converted to use sigprocmask().
2006-09-04 01:08:11 +00:00
jld
e8ef331ffa Fix PR 34112, where a program could mysteriously exit on return from a
signal handler, by deriving the context pointer from the stack pointer
instead of trying to read it from where the sigaction function may have
overwritten it with arbitrary bits.

Fix provided by Matthias Drochner in the PR.
2006-08-02 04:18:48 +00:00
ross
60ce5dccc9 Add missing ppc64 elements 2006-07-07 21:07:35 +00:00
cherry
c41313666f checkin libc asm stubs, #1 2006-07-07 07:49:19 +00:00
ross
549728f08a build __sigaction14_sigtramp.c 2006-07-07 06:56:34 +00:00
ross
fefc484d05 rcsid & white space 2006-07-07 06:53:42 +00:00
ross
db64036e6c fix @toc reference macro 2006-07-07 06:50:06 +00:00
ross
7108da6a37 Add missing sigaction() 2006-07-07 06:40:45 +00:00
ross
7008de4c81 bzero() and memset() for ppc64. 2006-07-07 04:54:52 +00:00
ross
4669390119 rewrite for ppc elf64 reloc 2006-07-06 17:05:04 +00:00
ross
5844b0794f we need the current vfork 2006-07-06 17:04:22 +00:00
ross
3fbcafa1c9 convert remaining ppc32 code to ppc64 2006-07-05 18:28:43 +00:00
ross
0584742537 convert PIC linkage 2006-07-05 18:27:08 +00:00
ross
50500ff1b2 revise for ppc64 2006-07-05 18:12:54 +00:00
ross
a9ea5c11ba Adjust types and casts for LP64 compilation.
Split "long *sp;" into "__greg_t sp, *spp;", which reduces the cast
density and could be used to clean up the ppc32 version as well.
2006-07-05 18:10:36 +00:00
ross
a87ca7ecec fix typo 2006-07-05 18:07:22 +00:00
ross
dfb9c8767b Finish ppc64 conversion 2006-07-05 18:06:47 +00:00
ross
9ed70a7fa2 adjust casts for LP64 2006-07-05 18:05:45 +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
drochner
5ea27734ec build frexp_ieee754 and ldexp_ieee754 in the "compat" subtree
(There is an assembler version of modf which needs to be checked.)
2006-07-03 13:06:12 +00:00
drochner
2a270967fb This is a new port - don't ever start with frexp/ldexp/modf in libc, we
have it in libm already.
2006-07-03 13:03:49 +00:00
drochner
451c99c7a2 build frexp_ieee754 and ldexp_ieee754 in the "compat" subtree
(There is an assembler version of modf which needs to be checked.)
2006-07-03 13:00:54 +00:00
drochner
4cbc875060 build frexp_ieee754 in the "compat" subtree
(There are assembler versions of ldexp and modf which need to be checked.
I'm in doubt they are metter than those in libm.)
2006-07-03 12:58:55 +00:00
drochner
c48c54fd05 build frexp_ieee754 in the "compat" subtree
(The Makefile logics for ldexp and modf is too involved for me to deal
with this now.)
2006-07-03 12:54:34 +00:00
ross
d48f14661d ppc64 build framework first pass 2006-07-01 16:37:20 +00:00
drochner
fa073991b3 build frexp/ldexp/modf in the "compat" part (code is identical)
(These are the easy cases where no assembler implementations exist.)
2006-06-28 14:46:32 +00:00
drochner
0ed7304bd6 build frexp/ldexp/modf in the "compat" part
(code is identical)
2006-06-28 14:22:15 +00:00