Age | Commit message (Collapse) | Author |
|
* fix a problem with Thumb PIE binaries,
where the GOT was located incorrectly because of an offset 8
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
This patch fixes position-independent executables (PIEs) for Thumb-2. In
Thumb assembly, instructions reading pc give a value 4 greater than the
address of the instruction, rather than 8 greater as in ARM mode, so the
offset to the GOT needs to have the right offset. (The Thumb-1 code
already gets this right; it's the code shared by ARM and Thumb-2 that
needs fixing.)
|
|
The attached patch adds support for compiling arm uClibc as pure Thumb code.
This is needed because some recent ARM codes do not implement traditional ARM
mode. Specifically:
* Cortex-M1 - An extremely minimal FPGA based core that only implements
Thumb-1 (aka ARMv6-M).
* Cortex-M3 - A Thumb-2 only ARMv7-M core.
Most of uClibc already builds in Thumb mode, all that is left are a handful of
assembly bits.
Tested on arm-uclinuxeabi.
|
|
The patch below tweaks the ARM nommu startup code so that doubleword stack
alignment is preserved. This is required on EABI targets.
|
|
|
|
|
|
|
|
|
|
|
|
__PIC__. Add these weaks to mips/crt1.S as well.
|
|
|
|
|
|
|
|
|
|
properly with the new ABI
|
|
|
|
|
|
has a chance of perhaps working...
|