Skip to content

Commit 4bafc8e

Browse files
committed
Add EV3-specific patches for OpenJDK
1 parent 393a033 commit 4bafc8e

File tree

2 files changed

+55
-0
lines changed

2 files changed

+55
-0
lines changed

build/ev3.patch

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
diff -r a08cbfc0e4ec common/autoconf/flags.m4
2+
--- a/common/autoconf/flags.m4 Thu Aug 03 18:56:56 2017 +0000
3+
+++ b/common/autoconf/flags.m4 Wed Dec 27 00:52:44 2017 +0100
4+
@@ -30,7 +30,7 @@
5+
AC_DEFUN([FLAGS_SETUP_ABI_PROFILE],
6+
[
7+
AC_ARG_WITH(abi-profile, [AS_HELP_STRING([--with-abi-profile],
8+
- [specify ABI profile for ARM builds (arm-vfp-sflt,arm-vfp-hflt,arm-sflt, armv5-vfp-sflt,armv6-vfp-hflt,arm64,aarch64) @<:@toolchain dependent@:>@ ])])
9+
+ [specify ABI profile for ARM builds (arm-vfp-sflt,arm-vfp-hflt,arm-sflt,arm-ev3,armv5-vfp-sflt,armv6-vfp-hflt,arm64,aarch64) @<:@toolchain dependent@:>@ ])])
10+
11+
if test "x$with_abi_profile" != x; then
12+
if test "x$OPENJDK_TARGET_CPU" != xarm && \
13+
@@ -51,6 +51,9 @@
14+
elif test "x$OPENJDK_TARGET_ABI_PROFILE" = xarm-sflt; then
15+
ARM_FLOAT_TYPE=sflt
16+
ARM_ARCH_TYPE_FLAGS='-march=armv5t -marm'
17+
+ elif test "x$OPENJDK_TARGET_ABI_PROFILE" = xarm-ev3; then
18+
+ ARM_FLOAT_TYPE=sflt
19+
+ ARM_ARCH_TYPE_FLAGS='-mcpu=arm926ej-s -marm'
20+
elif test "x$OPENJDK_TARGET_ABI_PROFILE" = xarmv5-vfp-sflt; then
21+
ARM_FLOAT_TYPE=vfp-sflt
22+
ARM_ARCH_TYPE_FLAGS='-march=armv5t -marm'
23+
@@ -1305,6 +1308,8 @@
24+
if test "x$OPENJDK_$1_OS" = xlinux; then
25+
if test "x$OPENJDK_$1_CPU" = xx86; then
26+
$2JVM_ASFLAGS="[$]$2JVM_ASFLAGS -march=i586"
27+
+ elif test "x$OPENJDK_TARGET_ABI_PROFILE" = xarm-ev3; then
28+
+ $2JVM_ASFLAGS="-mcpu=arm926ej-s"
29+
fi
30+
elif test "x$OPENJDK_$1_OS" = xmacosx; then
31+
$2JVM_ASFLAGS="[$]$2JVM_ASFLAGS -x assembler-with-cpp -mno-omit-leaf-frame-pointer -mstack-alignment=16"

build/float.patch

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
diff -r b756e7a2ec33 src/cpu/arm/vm/assembler_arm_32.hpp
2+
--- a/src/cpu/arm/vm/assembler_arm_32.hpp Thu Aug 03 18:56:57 2017 +0000
3+
+++ b/src/cpu/arm/vm/assembler_arm_32.hpp Wed Dec 27 01:08:37 2017 +0100
4+
@@ -1234,10 +1234,17 @@
5+
6+
// Imported code from glibc soft-fp bundle for
7+
// calculation accuracy improvement. See CR 6757269.
8+
-extern double __aeabi_fadd_glibc(float, float);
9+
-extern double __aeabi_fsub_glibc(float, float);
10+
-extern double __aeabi_dadd_glibc(double, double);
11+
-extern double __aeabi_dsub_glibc(double, double);
12+
+
13+
+//extern double __aeabi_fadd_glibc(float, float);
14+
+//extern double __aeabi_fsub_glibc(float, float);
15+
+//extern double __aeabi_dadd_glibc(double, double);
16+
+//extern double __aeabi_dsub_glibc(double, double);
17+
+
18+
+// We don't need very accurate floating point math.
19+
+#define __aeabi_fadd_glibc __aeabi_fadd
20+
+#define __aeabi_fsub_glibc __aeabi_fsub
21+
+#define __aeabi_dadd_glibc __aeabi_dadd
22+
+#define __aeabi_dsub_glibc __aeabi_dsub
23+
};
24+
#endif // __SOFTFP__

0 commit comments

Comments
 (0)