diff options
author | Henning Heinold <heinold@inf.fu-berlin.de> | 2011-11-12 20:58:34 +0100 |
---|---|---|
committer | Henning Heinold <heinold@inf.fu-berlin.de> | 2011-11-26 23:41:44 +0100 |
commit | 57e069cde6617f00ca8834a82c6f360af43d5067 (patch) | |
tree | 48cbe15e96d217c45acfa64b0c13aad8c6424980 /recipes-core/openjdk/openjdk-6/cacao-vfp-compat.patch | |
download | meta-java-57e069cde6617f00ca8834a82c6f360af43d5067.tar.gz |
meta-java: initial commit
* taken over mostly stuff from oe classic
* cleaned up recipes
* added license checksums
* bump icedtea6-native to 1.8.11
* use jamvm from git as native
Diffstat (limited to 'recipes-core/openjdk/openjdk-6/cacao-vfp-compat.patch')
-rw-r--r-- | recipes-core/openjdk/openjdk-6/cacao-vfp-compat.patch | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/recipes-core/openjdk/openjdk-6/cacao-vfp-compat.patch b/recipes-core/openjdk/openjdk-6/cacao-vfp-compat.patch new file mode 100644 index 0000000..09ba984 --- /dev/null +++ b/recipes-core/openjdk/openjdk-6/cacao-vfp-compat.patch | |||
@@ -0,0 +1,37 @@ | |||
1 | Index: cacao/cacao/src/vm/jit/arm/codegen.c | ||
2 | =================================================================== | ||
3 | --- cacao/cacao/src/vm/jit/arm/codegen.c 2008-10-01 16:23:21.439856241 +0200 | ||
4 | +++ cacao/cacao/src/vm/jit/arm/codegen.c 2008-10-01 16:41:24.278841537 +0200 | ||
5 | @@ -2353,10 +2353,12 @@ | ||
6 | |||
7 | d = md->returntype.type; | ||
8 | |||
9 | -#if !defined(__SOFTFP__) | ||
10 | +#if !defined(__SOFTFP__) && !defined(__VFP_FP__) | ||
11 | /* TODO: this is only a hack, since we use R0/R1 for float | ||
12 | return! this depends on gcc; it is independent from | ||
13 | - our ENABLE_SOFTFLOAT define */ | ||
14 | + our ENABLE_SOFTFLOAT define | ||
15 | + It is only needed for -mfpu=fpa -mfloat-abi=hard! | ||
16 | + */ | ||
17 | if (iptr->opc == ICMD_BUILTIN && d != TYPE_VOID && IS_FLT_DBL_TYPE(d)) { | ||
18 | #if 0 && !defined(NDEBUG) | ||
19 | dolog("BUILTIN that returns float or double (%s.%s)", m->clazz->name->text, m->name->text); | ||
20 | @@ -3019,7 +3021,7 @@ | ||
21 | s1 = (s4) (cd->mcodeptr - cd->mcodebase); | ||
22 | M_RECOMPUTE_PV(s1); | ||
23 | |||
24 | -#if !defined(__SOFTFP__) | ||
25 | +#if !defined(__SOFTFP__) && !defined(__VFP_FP__) | ||
26 | /* TODO: this is only a hack, since we use R0/R1 for float return! */ | ||
27 | /* this depends on gcc; it is independent from our ENABLE_SOFTFLOAT define */ | ||
28 | if (md->returntype.type != TYPE_VOID && IS_FLT_DBL_TYPE(md->returntype.type)) { | ||
29 | @@ -3030,7 +3032,7 @@ | ||
30 | /* M_CAST_FLT_TO_INT_TYPED(md->returntype.type, REG_FRESULT, REG_RESULT_TYPED(md->returntype.type)); */ | ||
31 | if (IS_2_WORD_TYPE(md->returntype.type)) { | ||
32 | DCD(0xed2d8102); /* stfd f0, [sp, #-8]! */ | ||
33 | - M_LDRD_UPDATE(REG_RESULT_PACKED, REG_SP, 8); | ||
34 | + M_LDRD_UPDATE(REG_RESULT_PACKED, REG_SP, 8); | ||
35 | } else { | ||
36 | DCD(0xed2d0101); /* stfs f0, [sp, #-4]!*/ | ||
37 | M_LDR_UPDATE(REG_RESULT, REG_SP, 4); | ||