diff options
Diffstat (limited to 'ports/sysdeps/arm')
-rw-r--r-- | ports/sysdeps/arm/__longjmp.S | 2 | ||||
-rw-r--r-- | ports/sysdeps/arm/crti.S | 2 | ||||
-rw-r--r-- | ports/sysdeps/arm/crtn.S | 2 | ||||
-rw-r--r-- | ports/sysdeps/arm/dl-trampoline.S | 2 | ||||
-rw-r--r-- | ports/sysdeps/arm/memcpy.S | 2 | ||||
-rw-r--r-- | ports/sysdeps/arm/memmove.S | 2 | ||||
-rw-r--r-- | ports/sysdeps/arm/memset.S | 2 | ||||
-rw-r--r-- | ports/sysdeps/arm/setjmp.S | 2 | ||||
-rw-r--r-- | ports/sysdeps/arm/strlen.S | 2 |
9 files changed, 18 insertions, 0 deletions
diff --git a/ports/sysdeps/arm/__longjmp.S b/ports/sysdeps/arm/__longjmp.S index 3d6e114c88..a3a2a8aecb 100644 --- a/ports/sysdeps/arm/__longjmp.S +++ b/ports/sysdeps/arm/__longjmp.S @@ -16,6 +16,8 @@ License along with the GNU C Library. If not, see <http://www.gnu.org/licenses/>. */ +/* ??? Needs more rearrangement for the LDM to handle thumb mode. */ +#define NO_THUMB #include <sysdep.h> #define _SETJMP_H #define _ASM diff --git a/ports/sysdeps/arm/crti.S b/ports/sysdeps/arm/crti.S index 44e20f0c11..1d55ae27ad 100644 --- a/ports/sysdeps/arm/crti.S +++ b/ports/sysdeps/arm/crti.S @@ -38,6 +38,8 @@ they can be called as functions. The symbols _init and _fini are magic and cause the linker to emit DT_INIT and DT_FINI. */ +/* Always build .init and .fini sections in ARM mode. */ +#define NO_THUMB #include <libc-symbols.h> #include <sysdep.h> diff --git a/ports/sysdeps/arm/crtn.S b/ports/sysdeps/arm/crtn.S index 5ff3661f18..a01eb01397 100644 --- a/ports/sysdeps/arm/crtn.S +++ b/ports/sysdeps/arm/crtn.S @@ -33,6 +33,8 @@ License along with the GNU C Library. If not, see <http://www.gnu.org/licenses/>. */ +/* Always build .init and .fini sections in ARM mode. */ +#define NO_THUMB #include <sysdep.h> /* crtn.S puts function epilogues in the .init and .fini sections diff --git a/ports/sysdeps/arm/dl-trampoline.S b/ports/sysdeps/arm/dl-trampoline.S index 6d41ebd88f..561d8ae6fd 100644 --- a/ports/sysdeps/arm/dl-trampoline.S +++ b/ports/sysdeps/arm/dl-trampoline.S @@ -16,6 +16,8 @@ License along with the GNU C Library. If not, see <http://www.gnu.org/licenses/>. */ +/* ??? Needs more rearrangement for the LDM to handle thumb mode. */ +#define NO_THUMB #include <sysdep.h> #include <libc-symbols.h> diff --git a/ports/sysdeps/arm/memcpy.S b/ports/sysdeps/arm/memcpy.S index d8164b4d70..98b9b47e39 100644 --- a/ports/sysdeps/arm/memcpy.S +++ b/ports/sysdeps/arm/memcpy.S @@ -17,6 +17,8 @@ License along with the GNU C Library. If not, see <http://www.gnu.org/licenses/>. */ +/* Thumb requires excessive IT insns here. */ +#define NO_THUMB #include <sysdep.h> /* diff --git a/ports/sysdeps/arm/memmove.S b/ports/sysdeps/arm/memmove.S index d33c1cef84..059ca7ac31 100644 --- a/ports/sysdeps/arm/memmove.S +++ b/ports/sysdeps/arm/memmove.S @@ -17,6 +17,8 @@ License along with the GNU C Library. If not, see <http://www.gnu.org/licenses/>. */ +/* Thumb requires excessive IT insns here. */ +#define NO_THUMB #include <sysdep.h> /* diff --git a/ports/sysdeps/arm/memset.S b/ports/sysdeps/arm/memset.S index 3152a84e80..9924cb9115 100644 --- a/ports/sysdeps/arm/memset.S +++ b/ports/sysdeps/arm/memset.S @@ -16,6 +16,8 @@ License along with the GNU C Library. If not, see <http://www.gnu.org/licenses/>. */ +/* Thumb requires excessive IT insns here. */ +#define NO_THUMB #include <sysdep.h> /* void *memset (dstpp, c, len) */ diff --git a/ports/sysdeps/arm/setjmp.S b/ports/sysdeps/arm/setjmp.S index baa02be39d..6776cab384 100644 --- a/ports/sysdeps/arm/setjmp.S +++ b/ports/sysdeps/arm/setjmp.S @@ -16,6 +16,8 @@ License along with the GNU C Library. If not, see <http://www.gnu.org/licenses/>. */ +/* ??? Needs more rearrangement for the STM to handle thumb mode. */ +#define NO_THUMB #include <sysdep.h> #define _SETJMP_H #define _ASM diff --git a/ports/sysdeps/arm/strlen.S b/ports/sysdeps/arm/strlen.S index 15e922118a..2b947e240e 100644 --- a/ports/sysdeps/arm/strlen.S +++ b/ports/sysdeps/arm/strlen.S @@ -16,6 +16,8 @@ License along with the GNU C Library. If not, see <http://www.gnu.org/licenses/>. */ +/* Thumb requires excessive IT insns here. */ +#define NO_THUMB #include <sysdep.h> /* size_t strlen(const char *S) |