diff options
author | Jay Freeman <saurik@saurik.com> | 2008-09-07 13:05:33 +0000 |
---|---|---|
committer | Jay Freeman <saurik@saurik.com> | 2008-09-07 13:05:33 +0000 |
commit | 89b7ec41c7ada32b083186cf64c33643c1057818 (patch) | |
tree | 72441b7a1c15b24038c461e1145d1d85653c277d | |
parent | 685666c6e02822966f20e79ee4d0070cc07c870c (diff) |
Welcome to the world of little-known ARM #defines.
git-svn-id: http://svn.telesphoreo.org/trunk@463 514c082c-b64e-11dc-b46d-3d985efe055d
-rw-r--r-- | data/libffi/vfpfp.diff | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/data/libffi/vfpfp.diff b/data/libffi/vfpfp.diff new file mode 100644 index 000000000..4713be660 --- /dev/null +++ b/data/libffi/vfpfp.diff @@ -0,0 +1,61 @@ +diff -ru gcc/libffi/src/arm/sysv.S gcc+iPhone/libffi/src/arm/sysv.S +--- gcc/libffi/src/arm/sysv.S 2007-09-04 17:52:45.000000000 +0000 ++++ gcc+iPhone/libffi/src/arm/sysv.S 2008-09-07 12:59:53.000000000 +0000 +@@ -188,7 +188,7 @@ + + @ return INT + cmp r3, #FFI_TYPE_INT +-#ifdef __SOFTFP__ ++#if defined(__SOFTFP__) || defined(__VFP_FP__) + cmpne r3, #FFI_TYPE_FLOAT + #endif + streq r0, [r2] +@@ -196,12 +196,12 @@ + + @ return INT64 + cmp r3, #FFI_TYPE_SINT64 +-#ifdef __SOFTFP__ ++#if defined(__SOFTFP__) || defined(__VFP_FP__) + cmpne r3, #FFI_TYPE_DOUBLE + #endif + stmeqia r2, {r0, r1} + +-#ifndef __SOFTFP__ ++#if !defined(__SOFTFP__) && !defined(__VFP_FP__) + beq LSYM(Lepilogue) + + @ return FLOAT +@@ -244,21 +244,21 @@ + beq .Lretint + + cmp r0, #FFI_TYPE_FLOAT +-#ifdef __SOFTFP__ ++#if defined(__SOFTFP__) || defined(__VFP_FP__) + beq .Lretint + #else + beq .Lretfloat + #endif + + cmp r0, #FFI_TYPE_DOUBLE +-#ifdef __SOFTFP__ ++#if defined(__SOFTFP__) || defined(__VFP_FP__) + beq .Lretlonglong + #else + beq .Lretdouble + #endif + + cmp r0, #FFI_TYPE_LONGDOUBLE +-#ifdef __SOFTFP__ ++#if defined(__SOFTFP__) || defined(__VFP_FP__) + beq .Lretlonglong + #else + beq .Lretlongdouble +@@ -277,7 +277,7 @@ + ldr r1, [sp, #4] + b .Lclosure_epilogue + +-#ifndef __SOFTFP__ ++#if !defined(__SOFTFP__) && !defined(__VFP_FP__) + .Lretfloat: + ldfs f0, [sp] + b .Lclosure_epilogue |