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