From 35c746043ffc1e0fd8ce05c28d52a466e80c9e27 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Sun, 7 Apr 2019 21:01:07 +0200 Subject: [PATCH] ARM: Mes C Library: Compile fixes. * lib/arm-mes-mescc/setjmp.c (setjmp): Do not use x86 registers. * lib/arm-mes/arm.M1 (uxtb__%r1,%r1): New macro. --- lib/arm-mes-mescc/setjmp.c | 6 +++--- lib/arm-mes/arm.M1 | 1 + lib/linux/arm-mes-gcc/mini.c | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/arm-mes-mescc/setjmp.c b/lib/arm-mes-mescc/setjmp.c index 3b7127a8..fe54a956 100644 --- a/lib/arm-mes-mescc/setjmp.c +++ b/lib/arm-mes-mescc/setjmp.c @@ -39,8 +39,8 @@ int setjmp (__jmp_buf *env) { long *p = (long*)&env; - env[0].__bp = p[-2]; - env[0].__pc = p[-1]; - env[0].__sp = (long)&env; + //env[0].__sp = p[-2]; + //env[0].__r1 = p[-1]; + env[0].__r13 = (long)&env; return 0; } diff --git a/lib/arm-mes/arm.M1 b/lib/arm-mes/arm.M1 index c65f43a1..2e78be3e 100644 --- a/lib/arm-mes/arm.M1 +++ b/lib/arm-mes/arm.M1 @@ -250,6 +250,7 @@ DEFINE sxth__%r0,%r0 7000bfe6 DEFINE uxtb__%r0,%r0 7000efe6 DEFINE uxtb__%r1,%r1 7110efe6 DEFINE uxth__%r0,%r0 7000ffe6 +DEFINE uxth__%r1,%r1 7110ffe6 # deprecated, remove after 0.18 #DEFINE sub____%r13,$i32 ec81 diff --git a/lib/linux/arm-mes-gcc/mini.c b/lib/linux/arm-mes-gcc/mini.c index c39ecf86..e524cc7e 100644 --- a/lib/linux/arm-mes-gcc/mini.c +++ b/lib/linux/arm-mes-gcc/mini.c @@ -52,7 +52,7 @@ _write (int filedes, void const *buffer, size_t size) "mov %0, r0\n\t" : "=r" (r) : "r" (filedes), "r" (buffer), "r" (size) - : "r0", "r1", "r2"//, "r7" + : "r0", "r1", "r2", "r7" ); return r; }