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
Darius Rad
0639850a38
gcc: Fix 64 bit multiply on RV32.
Use define_expand instead of define_insn_and_split for 64-bit
multiply on RV32. With define_insn_and_split, gcc would occasionally
overwrite a source register in the first instruction of a mulhu/mul
pair.
12 years ago
Darius Rad
f124ceb520
gcc, glibc, binutils: Complete missing configuration for building tools for RV32.
12 years ago
Andrew Waterman
7d382f9917
gcc: minor improvements to cost model
11 years ago
Colin Schmidt
2e325497c6
binutils: update insert_bits to work for wider instructions
11 years ago
Andrew Waterman
795c04ea67
binutils: set text start addresses more sensibly
Position-dependent executables are now linked at base address 0x800000.
Shared libraries and PIEs are now linked at base address 0.
11 years ago