Commit 2697ff2a authored by Matthias Klose's avatar Matthias Klose

- Issue #6980: Fix ctypes build failure on armel-linux-gnueabi with

  -mfloat-abi=softfp.
parent 751c2038
...@@ -281,6 +281,9 @@ Extension Modules ...@@ -281,6 +281,9 @@ Extension Modules
Build Build
----- -----
- Issue #6980: Fix ctypes build failure on armel-linux-gnueabi with
-mfloat-abi=softfp.
- Issue #6802: Fix build issues on MacOSX 10.6 - Issue #6802: Fix build issues on MacOSX 10.6
- Issue 5390: Add uninstall icon independent of whether file - Issue 5390: Add uninstall icon independent of whether file
......
...@@ -67,11 +67,18 @@ ...@@ -67,11 +67,18 @@
#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) \ #if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) \
|| defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) \ || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) \
|| defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__) \
|| defined(__ARM_ARCH_6M__)
# undef __ARM_ARCH__ # undef __ARM_ARCH__
# define __ARM_ARCH__ 6 # define __ARM_ARCH__ 6
#endif #endif
#if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) \
|| defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__)
# undef __ARM_ARCH__
# define __ARM_ARCH__ 7
#endif
#if __ARM_ARCH__ >= 5 #if __ARM_ARCH__ >= 5
# define call_reg(x) blx x # define call_reg(x) blx x
#elif defined (__ARM_ARCH_4T__) #elif defined (__ARM_ARCH_4T__)
...@@ -189,7 +196,7 @@ ARM_FUNC_START ffi_call_SYSV ...@@ -189,7 +196,7 @@ ARM_FUNC_START ffi_call_SYSV
@ return INT @ return INT
cmp r3, #FFI_TYPE_INT cmp r3, #FFI_TYPE_INT
#ifdef __SOFTFP__ #if defined(__SOFTFP__) || defined(__ARM_EABI__)
cmpne r3, #FFI_TYPE_FLOAT cmpne r3, #FFI_TYPE_FLOAT
#endif #endif
streq r0, [r2] streq r0, [r2]
...@@ -197,12 +204,12 @@ ARM_FUNC_START ffi_call_SYSV ...@@ -197,12 +204,12 @@ ARM_FUNC_START ffi_call_SYSV
@ return INT64 @ return INT64
cmp r3, #FFI_TYPE_SINT64 cmp r3, #FFI_TYPE_SINT64
#ifdef __SOFTFP__ #if defined(__SOFTFP__) || defined(__ARM_EABI__)
cmpne r3, #FFI_TYPE_DOUBLE cmpne r3, #FFI_TYPE_DOUBLE
#endif #endif
stmeqia r2, {r0, r1} stmeqia r2, {r0, r1}
#ifndef __SOFTFP__ #if !defined(__SOFTFP__) && !defined(__ARM_EABI__)
beq LSYM(Lepilogue) beq LSYM(Lepilogue)
@ return FLOAT @ return FLOAT
...@@ -245,21 +252,21 @@ ARM_FUNC_START ffi_closure_SYSV ...@@ -245,21 +252,21 @@ ARM_FUNC_START ffi_closure_SYSV
beq .Lretint beq .Lretint
cmp r0, #FFI_TYPE_FLOAT cmp r0, #FFI_TYPE_FLOAT
#ifdef __SOFTFP__ #if defined(__SOFTFP__) || defined(__ARM_EABI__)
beq .Lretint beq .Lretint
#else #else
beq .Lretfloat beq .Lretfloat
#endif #endif
cmp r0, #FFI_TYPE_DOUBLE cmp r0, #FFI_TYPE_DOUBLE
#ifdef __SOFTFP__ #if defined(__SOFTFP__) || defined(__ARM_EABI__)
beq .Lretlonglong beq .Lretlonglong
#else #else
beq .Lretdouble beq .Lretdouble
#endif #endif
cmp r0, #FFI_TYPE_LONGDOUBLE cmp r0, #FFI_TYPE_LONGDOUBLE
#ifdef __SOFTFP__ #if defined(__SOFTFP__) || defined(__ARM_EABI__)
beq .Lretlonglong beq .Lretlonglong
#else #else
beq .Lretlongdouble beq .Lretlongdouble
...@@ -278,7 +285,7 @@ ARM_FUNC_START ffi_closure_SYSV ...@@ -278,7 +285,7 @@ ARM_FUNC_START ffi_closure_SYSV
ldr r1, [sp, #4] ldr r1, [sp, #4]
b .Lclosure_epilogue b .Lclosure_epilogue
#ifndef __SOFTFP__ #if !defined(__SOFTFP__) && !defined(__ARM_EABI__)
.Lretfloat: .Lretfloat:
ldfs f0, [sp] ldfs f0, [sp]
b .Lclosure_epilogue b .Lclosure_epilogue
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment