Albert Ou
edd661f68c
linux-headers: Synchronize with UAPI split
This update removes definitions internal to kernel space from asm
headers exported to user space.
11 years ago
Albert Ou
a83b404dbd
glibc: Fix dependence on deprecated syscalls
Explicitly order the Implies subdirectory list such that "generic"
precedes "wordsize-64". Among other issues, the latter still partly
implements getdents(2) with the deprecated syscall of the same name,
despite getdents64 being available.
11 years ago
Andrew Waterman
574ee7d655
gcc: increase cost of FP -> Int moves for rocket
11 years ago
Andrew Waterman
5cf2e81b2f
gcc: fix build on 32-bit host machines
11 years ago
Andrew Waterman
c9daf1cd5d
binutils: use only printable chars in fake labels
Symbols named with name FAKE_LABEL_NAME get emitted when generating DWARF,
so make sure FAKE_LABEL_NAME is printable. It still must be distinct from
any real label name, so I append a space, which other labels can't contain.
11 years ago
Andrew Waterman
645ceafd2b
Merge pull request #17 from ucb-bar/kernel.org-ftp
ftp://mirrors.kernel.org appears to be down
11 years ago
Palmer Dabbelt
616f46c746
ftp://mirrors.kernel.org appears to be down
This just uses the HTTP mirror instead, which isn't down.
11 years ago
Andrew Waterman
b6fb500c8c
gcc: fix libatomic bug
11 years ago
Andrew Waterman
808238dc5a
gcc: fix a couple failing tests
11 years ago
Palmer Dabbelt
e4ec7548b6
Merge pull request #16 from ucb-bar/string-inline
Change a "inline" to "__inline__"
11 years ago
Palmer Dabbelt
28b425c367
Change a "inline" to "__inline__"
So "inline" isn't complient C, which means strict packages won't build
with it. This uses "__inline__" instead, which is ANSI C. This patch
is required to get freetype to build.
11 years ago
Andrew Waterman
6e255d99ed
binutils: make objdump of branches more readable
Although we don't know the branch offsets until linker relaxation, we can
still fill in a tentative value to make objdumps of object code more
readable.
11 years ago
Andrew Waterman
00a0bcbb70
Merge pull request #15 from ucb-bar/dt_debug
glibc: Undefine ELF_MACHINE_DEBUG_SETUP
11 years ago
Albert Ou
165a82b1f6
glibc: Undefine ELF_MACHINE_DEBUG_SETUP
Ensure that ld.so follows the preferred canonical behavior, whereby
dl_main() populates the DT_DEBUG entry in the .dynamic section with the
runtime address of the r_debug struct. GDB relies on r_debug to locate
the link map when reconstructing the shared library list.
This is documented in elf/rtld-debugger-interface.txt in the glibc
source tree.
11 years ago
Andrew Waterman
856956bfde
gcc: fix gp and tp register numbers
Somehow, this bug has so far proven to be benign.
11 years ago
Andrew Waterman
1686ed0c47
Merge pull request #14 from ucb-bar/enable-linux
Add an "--enable-linux" option to ./configure
11 years ago
Andrew Waterman
5507c8e0c4
glibc: work around libpthread static linking problem
This is a kludge, but statically linking against libpthread is useful,
even if not well supported by glibc.
11 years ago
Palmer Dabbelt
a37841fcac
autoreconf 12c1b6d2bf
11 years ago
Palmer Dabbelt
12c1b6d2bf
Add an "--enable-linux" option to ./configure
I keep forgetting that the default option is to build newlib. This
flag changes the default target to Linux, so I don't keep forgetting
to type "make linux".
11 years ago
Andrew Waterman
3cc7938fc8
Update dejagnu board to link against pthreads
11 years ago
Andrew Waterman
2ea924b449
Merge pull request #13 from ucb-bar/shlib-versions
glibc: Use riscv.*- for shlib-versions CPU pattern
11 years ago
Albert Ou
f57151d528
glibc: Use riscv.*- for shlib-versions CPU pattern
This fixes inconsistent symbol versioning with shared libraries when the
target machine is specified as `riscv64' instead of `riscv'.
11 years ago
Andrew Waterman
6d26f1b730
newlib, glibc: fix strcmp regression
I screwed up when porting it to the new calling convention.
11 years ago
Andrew Waterman
dc664851c8
Use --with-sysroot
11 years ago
Andrew Waterman
997310913d
glibc: clean up sysdep.h and friends
11 years ago
Andrew Waterman
dfeb2d60bf
glibc: terminate stack frame after makecontext
This prevents segfaults incident to uncaught C++ exceptions.
11 years ago
Andrew Waterman
b8d2d7e693
glibc: handle negative syscall results properly
Not all are errors; they may just be large values.
Only results in the range [-4095,-1] are errors.
11 years ago
Andrew Waterman
7eb613824f
glibc: use cfi directives in setcontext
11 years ago
Andrew Waterman
87c17aee94
glibc: set swapcontext return code to 0 on success
11 years ago
Andrew Waterman
5bdc510776
binutils: accept FP reg names in .cfi directives
11 years ago
Andrew Waterman
c4923f58a8
glibc, newlib: don't save/restore tp on get/setcontext
Thread-local storage shouldn't be affected by these calls.
11 years ago
Andrew Waterman
64ddcec132
Use more portable incantations to override PATH
11 years ago
Andrew Waterman
9496665717
binutils: obviate warnings while compiling LD
11 years ago
Andrew Waterman
d91f207733
binutils: delete deprecated "b" pseudo-op
"j" should always be used for unconditional jumps.
11 years ago
Andrew Waterman
74b290f685
binutils: upgrade to version 2.25
11 years ago
Andrew Waterman
afba05c2b8
binutils: don't discard eh_frames during ld -r
We don't have enough information to decide whether or not to discard them
until relative addresses are worked out, i.e. at the final link.
11 years ago
Andrew Waterman
7054975424
binutils, gcc: use more standard DWARF settings
11 years ago
Andrew Waterman
8e3e621820
binutils: fix off-by-one error in relaxation code
11 years ago
Andrew Waterman
dec714aeb7
binutils: fill in some dynamic relocs statically
Later bfd passes may assume this has been done.
11 years ago
Andrew Waterman
218fd8a3ce
glibc: fix syscall cancellation wrappers
We were accidentally clobbering the cancellation mask with syscall arg 0.
11 years ago
Andrew Waterman
21509fe717
gcc: specialize atomics when old value not needed
11 years ago
Andrew Waterman
35e92b75ea
gcc: improve cost model
11 years ago
Andrew Waterman
17e2704a78
gcc, glibc: use "A" for inline asm AMO constrants
11 years ago
Andrew Waterman
d85d7a1c45
gcc: remove unused register constraint
11 years ago
Andrew Waterman
54ebdae379
binutils: rework jump pseudoisntruction
"jump" was renamed to "tail" (as in tail call) and may freely clobber a
t-register, as before. A new "jump" was added that requires a second
argument, which is the scratch register it may clobber.
"tail" should be used for tail calls; "jump" should be used for
intraprocedural jumps more than 1 MiB away.
11 years ago
Andrew Waterman
e03c7c96b4
gcc: correct depiction of stack frame
11 years ago
Andrew Waterman
9b1c88aa2e
gcc: simplify and improve cost model
11 years ago
Andrew Waterman
79c69d1f06
gcc: support LRA pass
It's turned off by default but can be enabled with -mlra. There are
surely lingering issues.
11 years ago
Andrew Waterman
09a7f0432d
Merge pull request #10 from darius-bluespec/rv32
Support for building RV32 tools
11 years ago
Darius Rad
e7fc9a4c65
Makefile.in: Allow specification of XLEN when building tools.
This allows building tools for RV64 (default) or RV32.
11 years ago