Commit Graph

1667 Commits

Author SHA1 Message Date
pooka 7db5875437 Don't include sigtramp or foocontext routines in rumprun mode. They won't
work (since a rump kernel does not provide NetBSD _lwp syscalls nor
signals), but they cause unwanted symbols to be pulled in when the
resulting libc is linked.

problem reported by Robert Gifford on rumpkernel-users
2015-07-15 14:27:49 +00:00
pooka db8ece9eea Remove "objects built from C sources" comments. Everyone can see
they're built from C sources because the source files end in .c (???)
2015-07-15 14:23:40 +00:00
matt cee94c5eb0 Add the fpset* routines for tests 2015-07-07 21:40:19 +00:00
matt 45908a5ffd Some test programs require these. 2015-07-05 22:07:09 +00:00
martin 2a5b63aa81 Add set/longjmp and friends (nearly verbatim from FreeBSD).
Add a dummy _lwp_makecontext() function (enough to make autoconfigury
happy and gcc mknative work)
2015-04-17 12:51:05 +00:00
mrg 2603e0673f remove various HAVE_GCC=45 fragments. 2015-04-15 19:13:46 +00:00
uwe c9951c23e1 On swapcontext(3) preserve r12 too. Properly fixes PR port-sh3/49597. 2015-04-06 01:50:46 +00:00
matt d67e7afb11 Use lla instead doing the pcrel relocs ourselves. 2015-03-31 11:59:41 +00:00
matt 35c3446182 Adapt to new assembler. jump->tail[call] auipc/lo12 changes. 2015-03-27 23:23:14 +00:00
matt 4ec25a89b6 Adapt to the jmpbuf changes. 2015-03-27 23:22:20 +00:00
matt 8a3081d220 Switch to new ABI (return values now in a0/a1; v0/v1 are no more) 2015-03-27 06:44:28 +00:00
joerg b9e2400677 Call libc's fpgetround. 2015-03-19 21:22:59 +00:00
uwe 1a997bcd9f Adjust _UC_MACHINE_SP(oucp) to "drop" values we pushed to the stack.
t_swapcontext tests pass now with gcc 4.8.

From Yasushi Oshima in PR port-sh3/49597
2015-01-25 01:32:26 +00:00
dennis 75a496875b Replace the branch to __cerror() in powerpc64 syscall stubs
with inline code which does what __cerror() was doing.  #ifdef
that code (i.e. all code) out of cerror.S; __cerror() is no more.
This seems to be necessary to fix the link of rescue/rescue, and
should have the pleasant side effect of making all other workarounds
done to keep the 'b __cerror' working unnecessary.
2015-01-12 02:48:20 +00:00
christos 625ac095d3 Fix ptrace %rcx corruption when pthread_errno() is used. Small example:
#include <sys/types.h>
    #include <stdio.h>
    #include <sys/ptrace.h>
    int main(void) { ptrace(18, getpid(), NULL, 0xabcd); }
The -lpthread cases pases 0 instead of 0xabcd
2014-11-24 15:33:18 +00:00
matt 6cf6fe02a9 New files for Userland support of UCB RISC-V (both 32-bit and 64-bit) 2014-09-19 17:36:24 +00:00
joerg d131912831 Explicitly set noat around instructions using $at. 2014-09-17 11:02:55 +00:00
joerg aca672a912 Use canonical three operand form of add.d. 2014-09-17 11:01:05 +00:00
matt abb9139a12 The OpenRISC calling standard only passes 6 parameters by register. Any
others are passed on the stack.  NetBSD syscalls use up to 8 parameters
so that could mean two left on the stack for the kernel to access.  It's
easier for the kernel if userland could fetch into registers beforehand.
So we generate sysassym.h which contains the number of arguments for each
syscall and then use that to determine how many arguments need to be fetched
from the stack.
2014-09-05 18:09:37 +00:00
matt 27620987b8 New files for OR1K support 2014-09-03 19:34:25 +00:00
matt a4055c59ef float32_is_signalling_nan needs a prototype if SOFTFLOATM68K_FOR_GCC is
defined.
2014-09-01 07:33:31 +00:00
matt 38dcdc34d9 Minimize differences between powerpc and powerpc64
Fix powerpc64 assembly to use right instructions for 64bit CPUs.
Use hidden for __curbrk and __minbrk to avoid GOT/TOC relocations.
2014-08-23 02:24:22 +00:00
joerg d213e5903a [] -> () 2014-08-13 15:41:21 +00:00
joerg bd7693847a Spell LdAddr consistently 2014-08-13 15:19:22 +00:00
matt beb9c6d1b5 Preliminary files for AARCH64 (64-bit ARM) support.
Enough for a distribution build.
2014-08-10 05:47:35 +00:00
wiz 87561671c1 defintion -> definition 2014-08-03 19:14:24 +00:00
nakayama 63bc5e6959 Include sparc_v8 library into sparc64 32-bit compat libc library. 2014-07-12 19:21:48 +00:00
nakayama 847b247653 Use save instruction to set up a local stack frame.
This fixes a segmentation fault caused by bash 4.3 on sparc64
kernels with 32-bit userland, bash uses _setjmp/_longjmp heavyly
via sigsetjmp/siglongjmp since 4.3.

For 32-bit compat library which is compiled with -mcpu=ultrasparc
option (and define __sparc_v9__), use a similar code to 64-bit
library.
2014-07-12 19:11:57 +00:00
uebayasi d3e9bed41f Fix previous. 2014-05-23 03:05:56 +00:00
uebayasi 0d34bfa26d Put missing END() markers to set ELF symbol size. 2014-05-23 02:34:19 +00:00
uebayasi d6b02e86d1 Put missing END() markers to set ELF symbol size. 2014-05-23 02:17:43 +00:00
uebayasi 92d1d4411b Put missing END() markers to set ELF symbol size. 2014-05-22 15:01:56 +00:00
uebayasi 88c3252136 Put missing END() markers to set ELF symbol size. 2014-05-22 14:38:38 +00:00
uebayasi b178885539 Whitespace. 2014-05-14 06:38:09 +00:00
riastradh 6cb10275d0 Merge riastradh-drm2 to HEAD. 2014-03-18 18:20:35 +00:00
skrll 1b5cff8f1d Move to a flat space register convention. %sr[4-7] are all now the space
number allocated to the process.  gcc produces (slightly) better code
with this convention.

Retain backwards compatiblity.

Welcome to 6.99.36
2014-03-06 19:02:58 +00:00
matt 94c30368e1 The fixuns* come from compiler_rt so softfloat doesn't need to provide them. 2014-03-04 06:30:40 +00:00
skrll 4c855bdfea Provide a genassym.cf in libc for hppa and use it. 2014-02-19 13:01:51 +00:00
martin a7682b765e Fix unsigned 64 bit int to long double conversion for numbers that would not
fit into a signed 64 bit int. Found by latest t_floatunditf test case
failuer, hint from Matt Thomas.
2014-02-02 08:14:39 +00:00
matt 193dbcdaae Since powerpc passes 8 arguments in registers and the syscall number in r0,
shuffle register argument so the kernel won't need to access the stack to
retrieve that last argument.
2014-02-01 20:26:21 +00:00
matt 969b8a91e4 Since N32/N64 pass the first 8 arguments in registers, we can load all
the arguments into those registers before invoking the syscall having
the kernel syscall handler from having to do that.
2014-01-31 18:06:26 +00:00
joerg 171c68668f Use fixunssfsi and fixunsdfsi from compiler-rt. 2014-01-30 15:05:49 +00:00
joerg 720b2586bd Include compiler-rt in libc, libm and libkern. 2014-01-29 23:37:18 +00:00
macallan b2f3ff1f14 no need to duplicate the generic fabs_ieee754.c here 2014-01-28 14:10:39 +00:00
macallan 8a85f2a73f split fabs.c into hardfloat .S and softfloat .c as requested by joerg 2014-01-28 13:47:04 +00:00
christos eb850bda79 Use a constant in the text segment to avoid the .lit8 out of range relocation
error.
2014-01-23 03:08:50 +00:00
joerg 0369ac6673 One vmsr is enough. 2014-01-23 00:00:16 +00:00
joerg 3c3c6b7eef Use fabs_ieee754.c. 2014-01-20 17:14:38 +00:00
joerg 85b46b0fba GC 2014-01-17 22:20:04 +00:00
joerg efed6ce3cb Use generic version of fabs for softfloat. 2014-01-17 22:19:46 +00:00