From 769589fb4f72edf46c16a396de6777d8e2fbb9bf Mon Sep 17 00:00:00 2001 From: xleroy Date: Tue, 29 Jul 2014 13:42:11 +0000 Subject: configure: distinguish between ABI and processor model. ARM: various tweaks, incl. support for SDIV and UDIV insns when available. test/regression/funptr2.c: Thumb does weird things with +1. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2555 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e --- runtime/arm/sysdeps.h | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'runtime/arm/sysdeps.h') diff --git a/runtime/arm/sysdeps.h b/runtime/arm/sysdeps.h index b72af0fc..85404cf7 100644 --- a/runtime/arm/sysdeps.h +++ b/runtime/arm/sysdeps.h @@ -34,6 +34,13 @@ // System dependencies +#if defined(MODEL_armv7r) +// Thumb2-only +#define THUMB +#else +#undef THUMB +#endif + #ifdef THUMB #define FUNCTION(f) \ .text; \ @@ -76,9 +83,15 @@ f: #define SUB THUMB_S(sub) .syntax unified -#ifdef THUMB - .arch armv7 +#if defined(MODEL_armv6) + .arch armv6 +#elif defined(MODEL_armv7a) + .arch armv7-a +#elif defined(MODEL_armv7r) + .arch armv7-r +#elif defined(MODEL_armv7m) + .arch armv7-m #else - .arch armv6 + .arch armv7 #endif .fpu vfpv2 -- cgit