- Apr 25, 2013
-
-
Quan Nguyen authored
* Negate syscall error return value in sysdep.c. * Change vfork flag constant to correctly pass signal number for SIGCHLD.
-
- Apr 22, 2013
-
-
Quan Nguyen authored
* Seems to correctly place ld.so.1's relocations into .data.rel.ro and not .rodata. * .rodata is no longer marked with the W flag in readelf -S output for ld.so.1. * I don't fully understand this commit.
-
- Apr 20, 2013
-
-
Quan Nguyen authored
* Prevents (or at least so I think) register %4 from being reused. * Fixes problem in which busybox attempts this snippet of code: 1: lr.w v1, 0(a1) bne v1, a2, 1f sc.w a1, v0, 0(a1) bnez a1, 1b 1: If sc.w fails, a1 receives 1, and the lr.w is attempted again. -
Quan Nguyen authored
-
Quan Nguyen authored
* Update linux-headers for changed register usage. * Fixes "can't fork" problems in Busybox.
-
- Apr 19, 2013
-
-
Andrew Waterman authored
This also fixes the erroneous emission of a call instead of a sibcall.
-
Quan Nguyen authored
-
- Apr 18, 2013
-
-
Andrew Waterman authored
-
Andrew Waterman authored
-
Andrew Waterman authored
use JAL instead of AUIPC/LD/JALR
-
Andrew Waterman authored
this way, they can be used in shared libraries
-
Andrew Waterman authored
-
Andrew Waterman authored
constants >32b were emitting SLL instead of SLLI.
-
- Apr 17, 2013
-
-
Andrew Waterman authored
-
Andrew Waterman authored
-
Andrew Waterman authored
-
Quan Nguyen authored
-
Quan Nguyen authored
-
Andrew Waterman authored
ra -> x1 s0-s11 -> x2-x13 sp -> x14 tp -> x15 v0-v1 -> x16-x17 a0-a13 -> x18-x31
-
Andrew Waterman authored
-
Quan Nguyen authored
-
Quan Nguyen authored
* Tweak Makefile parameters and correctly inhibit libc. * Disable bootstrap on both stages' builds of riscv-linux-gcc. * Adjust the #define for ABI_64 from 2 to 3, because glibc assumes that _RISCV_SIM_ABI64 = 3 as per sysdeps/riscv/sgidefs.h. * Comment out the store word instructions in pipe.S, as they're no longer needed. * Fix sysdeps/unix/sysv/linux/riscv/bits/fcntl.h, mman.h, signum.h, and kernel_stat.h to match the ones provided in Linux. * Remove sysdeps/unix/sysv/linux/riscv/xstatconv.c, rv64/fxstatat64.c, and bits/stat.h, to fall back on the ones already provided for all architectures. * Negate the value created from the INTERNAL_SYSCALL_ERRNO macro to convert negative error values from the kernel.
-
- Apr 16, 2013
-
-
Andrew Waterman authored
-
Andrew Waterman authored
-
Andrew Waterman authored
-
- Apr 10, 2013
-
-
Andrew Waterman authored
-
Andrew Waterman authored
-
Andrew Waterman authored
-
Andrew Waterman authored
-
Andrew Waterman authored
-
- Apr 09, 2013
-
-
Andrew Waterman authored
the dynamic linker's such a clusterfuck; it's probably not even worth trying to improve.
-
Andrew Waterman authored
-
- Mar 23, 2013
-
-
Andrew Waterman authored
-
- Mar 22, 2013
-
-
Andrew Waterman authored
-
- Mar 09, 2013
-
-
Andrew Waterman authored
-
Andrew Waterman authored
-
- Mar 07, 2013
-
-
Andrew Waterman authored
riscv-gcc is now capable of making the relevant optimization.
-
Andrew Waterman authored
We now make use of xori (for consts between 0x7ffff800 and 0x7fffffff) and make use of two registers to accelerate the hardest cases (especially for superscalars); the worst case is now 6 insns.
-
Andrew Waterman authored
-
- Feb 28, 2013
-
-
Andrew Waterman authored
the frame pointer will point just above RA and FP.
-