Commit Graph

1340 Commits

Author SHA1 Message Date
matt
cac8e44915 Add C99 functions imaxabs and imaxdiv. 2008-08-04 21:29:27 +00:00
matt
01b36ae8ad Use WEAK_ALIAS 2008-08-04 20:26:38 +00:00
matt
e796a34c9c Use WEAK_ALIAS.
Add imaxabs weak alias.
2008-08-04 20:21:26 +00:00
rmind
7781a976a7 Avoid calling a syscall when argument to sbrk(2) is zero.
OK by <ad>.
2008-07-02 20:07:43 +00:00
martin
5d1469bd77 Backout previous: the license sweep touched these files in error, so
restore the old license.
2008-05-10 15:31:03 +00:00
martin
f1a537e1d9 Fix nested comment and move to 2 clause license 2008-05-02 18:34:17 +00:00
martin
ce099b4099 Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
dogcow
690e5f1c0b add matching END(). found via -Wa,--fatal-warnings 2008-04-22 04:47:44 +00:00
garbled
6f4524c1a6 Fix a stupid typo in a comment. Pointed out by Juergen Hannken-Illjes. 2008-04-18 08:05:05 +00:00
garbled
1ad3697abd Back out the ppc assembler changes for memcpy/memmove/memcmp on evbppc.
It breaks the explora because the cpu (403) cannot deal with unaligned
accesses.  Reported by Juergen Hannken-Illjes.
2008-04-18 05:34:04 +00:00
chris
c82cfbf571 Use SYSTRAP macro, rather than inlining the swi instruction.
This makes sure the SWI will be in the NetBSD assigned range of swi
numbers.
2008-03-30 21:22:05 +00:00
he
0db6a6b023 When compiling for _STANDALONE, omit a bunch of headers which aren't really
needed and which trigger build problems.

(These two files should probably be unified and put under common/...)
2008-03-18 20:11:43 +00:00
he
71ca0c37fa As mrg@ informs me, delay slots are indented 1 and not 2 spaces. 2008-03-10 18:31:08 +00:00
he
bbed82985f Fix the problem that CURBRK can't be referenced directly via R_SPARC_GOT13
here anymore (apparently libc grew too big).  Use sethi and %hi/%lo instead.
2008-03-10 18:28:43 +00:00
garbled
f908c50890 Make use of ppc tuned assembler. 2008-02-21 17:37:00 +00:00
mrg
d638eaddc1 m68k/Makefile.inc:
- add __mmap.S to SRCS.
- add _lwp_getprivate.S mremap.S to ASM.
sys/Makefile.inc:
- look for __glue.S as well as glue.S.
- introduce a new ASM_MD and set it to "_lwp_getprivate.S mremap.S".
  this is used for assembler files that may have non-default
  implementations.

now m68k and m68000 mostly build again.
2008-02-09 02:41:06 +00:00
martin
8f4340d1d4 Modify the high part of the fraction so that we recognize our __infinityl
value.
XXX - seems like we could share this with LE archs
2008-01-10 00:34:27 +00:00
simonb
d8de5b102b Remove support for NetBSD/pc532. 2008-01-09 11:25:58 +00:00
martin
e094ff6106 Add missing stubs for syscalls returning addresses.
We can now run on a kernel that does not copy the syscall return value
to register A0.
As discussed in PR port-m68k/37631.
2007-12-31 07:39:19 +00:00
skrll
24ced765a1 Add a comment explaining stack layout and register contents. 2007-12-22 14:10:03 +00:00
skrll
fd903b1729 Implement ptrace. 2007-12-02 15:48:47 +00:00
skrll
819071140e Fix include files and change use LEAF_ENTRY_NOPROFILE function to fix
the unwind entry.
2007-12-02 14:04:19 +00:00
dsl
3ba44b945b Reorder the code for i386 and amd64 syscall stubs so that the 'jc' on error
is a forwards jump instead of a backwards jump that a P4 will mispredect (and
probably immediatly get a cache-line miss due to the way the code gets
aligned).
2007-11-23 07:36:05 +00:00
skrll
4f3467d61e Remove unused include.
Fix unwind info with S/ENTRY/LEAF_&/
2007-11-18 14:11:25 +00:00
skrll
8ed2bd6ec6 Generate correct unwind info for syscall stubs by using LEAF_ENTRY instead
of ENTRY(foo,0) so that gdb can backtrace through the stubs.
2007-11-18 13:25:39 +00:00
ad
51a2159851 Don't unconditionally clear the direction flag. The ABI says it must always
be clear when making a function call, and 'cld' takes about 50 clock cyles
on the P4.
2007-11-12 18:41:59 +00:00
martin
5265977a9e When converting long double values to integer types, explicitly use the
"round to zero" variants of the softfloat conversion functions.
Add a variant to convert long double to unsigned long - the "to long"
variant checked for overflows that do not apply to unsigned results.
This fixes the regress/lib/libc/convfp tests for sparc64.
2007-11-08 15:50:19 +00:00
dsl
bd8185f2eb syscall() has to be implemented in the kernel - so is a normal system call here.This has always been broken, so I suspect everything is using __syscall(). 2007-11-05 20:30:07 +00:00
skrll
f1273d89a6 Set up the tail of the instruction address queue so that
we don't have to rely on luck for swapcontext(3) to work.

This fixes a problem pointed out to me by Chuck Silvers.
2007-10-28 09:38:06 +00:00
uwe
a34b3f871d In handwritten asm use -fPIC code instead of -fpic, our libc has grown
large enough for GOT to be larger than 8k.

While here kill redundant PIC ifdefs in setjmp.S - sparc "call"
instruction is piccy by itself.

Tested by martin@
2007-10-08 13:06:00 +00:00
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