This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
[PATCH 0/3] arm: Fix link time optimization issues
- From: Pat Pannuto <pat dot pannuto at gmail dot com>
- To: newlib at sourceware dot org
- Cc: Pat Pannuto <pat dot pannuto at gmail dot com>
- Date: Wed, 11 Jan 2017 23:50:16 -0500
- Subject: [PATCH 0/3] arm: Fix link time optimization issues
- Authentication-results: sourceware.org; auth=none
This patch series fixes a few things so that link time optimization will work.
The high-level problem is that LTO can re-order top-level assembly blocks, so
code that previously worked because one asm() block was listed before another
at global scope in a file (in this case via #include) may no longer work.
So far this was only an issue with two macros that were defined in an #include'd
header. With these patches, I have LTO working with newlib on arm.
Pat Pannuto (3):
Remove unneeded references to arm_asm.h
arm: Remove optpld macro
arm: Remove RETURN macro
newlib/libc/machine/arm/Makefile.am | 2 +-
newlib/libc/machine/arm/Makefile.in | 2 +-
newlib/libc/machine/arm/aeabi_memcpy-armv7a.S | 2 +-
newlib/libc/machine/arm/aeabi_memmove-soft.S | 2 --
newlib/libc/machine/arm/aeabi_memset-soft.S | 2 --
newlib/libc/machine/arm/arm_asm.h | 35 ---------------------------
newlib/libc/machine/arm/memchr.S | 1 -
newlib/libc/machine/arm/strcmp-arm-tiny.S | 2 +-
newlib/libc/machine/arm/strcmp-armv4.S | 12 +++++++++
newlib/libc/machine/arm/strcmp-armv7m.S | 6 ++---
newlib/libc/machine/arm/strcmp.S | 1 -
newlib/libc/machine/arm/strcpy.c | 20 +++++++++------
newlib/libc/machine/arm/strlen-armv7.S | 2 +-
newlib/libc/machine/arm/strlen-stub.c | 10 +++++---
14 files changed, 38 insertions(+), 61 deletions(-)
--
2.11.0