Make more macro checks ARMv8-M baseline proof.

Commit 69f4c40291 improved most
macro checks to be ARMv8-M baseline proof, but missed a few
occurrences which otherwise fail to build when using a CPU setting
such as cortex-m0 or cortex-m23. This patch brings the same
changes as the ones that were committed to libgloss at that time.

	newlib:
	* libc/sys/arm/crt0.S: Use THUMB1_ONLY rather than
	__ARM_ARCH_6M__.
This commit is contained in:
Christophe Lyon 2019-04-01 17:30:53 +00:00
parent 2607639992
commit 630808d2a2
1 changed files with 4 additions and 4 deletions

View File

@ -85,7 +85,7 @@
/* Stack limit is at end of data. */ /* Stack limit is at end of data. */
/* Allow slop for stack overflow handling and small frames. */ /* Allow slop for stack overflow handling and small frames. */
#ifdef __ARM_ARCH_6M__ #ifdef THUMB1_ONLY
ldr r0, .LC2 ldr r0, .LC2
adds r0, #128 adds r0, #128
adds r0, #128 adds r0, #128
@ -137,7 +137,7 @@
beq .LC27 beq .LC27
/* Allow slop for stack overflow handling and small frames. */ /* Allow slop for stack overflow handling and small frames. */
#ifdef __ARM_ARCH_6M__ #ifdef THUMB1_ONLY
adds r2, #128 adds r2, #128
adds r2, #128 adds r2, #128
mov sl, r2 mov sl, r2
@ -164,7 +164,7 @@
#ifdef __thumb2__ #ifdef __thumb2__
it eq it eq
#endif #endif
#ifdef __ARM_ARCH_6M__ #ifdef THUMB1_ONLY
bne .LC28 bne .LC28
ldr r3, .LC0 ldr r3, .LC0
.LC28: .LC28:
@ -219,7 +219,7 @@
this default 64k is enough for the program being executed. this default 64k is enough for the program being executed.
However, it ensures that this simple crt0 world will not However, it ensures that this simple crt0 world will not
immediately cause an overflow event: */ immediately cause an overflow event: */
#ifdef __ARM_ARCH_6M__ #ifdef THUMB1_ONLY
movs r2, #64 movs r2, #64
lsls r2, r2, #10 lsls r2, r2, #10
subs r2, r3, r2 subs r2, r3, r2