X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmini%2Fmini-arm.h;h=357aa6ab5d755072a89fcb0c866fe58335ba5e88;hb=4445b90fdb3f92aebb73cdff8a1659b8909eb715;hp=ac8c148564baa0a40d68d4d9654e51464e30f951;hpb=8330b53f41084aac9b20a53818194697e76bbb7f;p=mono.git diff --git a/mono/mini/mini-arm.h b/mono/mini/mini-arm.h index ac8c148564b..357aa6ab5d7 100644 --- a/mono/mini/mini-arm.h +++ b/mono/mini/mini-arm.h @@ -4,10 +4,32 @@ #include #include -#if defined(ARM_FPU_NONE) || defined(ARM_FPU_VFP) || defined(__ARM_EABI__) +#if defined(ARM_FPU_NONE) || (defined(__ARM_EABI__) && !defined(ARM_FPU_VFP)) #define MONO_ARCH_SOFT_FLOAT 1 #endif +#if defined(__ARM_EABI__) +#if G_BYTE_ORDER == G_LITTLE_ENDIAN +#define ARM_ARCHITECTURE "armel" +#else +#define ARM_ARCHITECTURE "armeb" +#endif +#else +#define ARM_ARCHITECTURE "arm" +#endif + +#if defined(ARM_FPU_FPA) +#define ARM_FP_MODEL "fpa" +#elif defined(ARM_FPU_VFP) +#define ARM_FP_MODEL "vfp" +#elif defined(ARM_FPU_NONE) +#define ARM_FP_MODEL "soft-float" +#else +#error "At least one of ARM_FPU_NONE or ARM_FPU_FPA or ARM_FPU_VFP must be defined." +#endif + +#define MONO_ARCH_ARCHITECTURE ARM_ARCHITECTURE "," ARM_FP_MODEL + #define MONO_ARCH_CPU_SPEC arm_cpu_desc #if G_BYTE_ORDER == G_LITTLE_ENDIAN @@ -32,7 +54,12 @@ #define MONO_ARCH_CALLEE_REGS ((1<