Mercurial > hg > icedtea6
changeset 3172:d6a1b5eb846b
Merge
author | Andrew John Hughes <gnu.andrew@redhat.com> |
---|---|
date | Wed, 24 Dec 2014 18:48:30 +0000 |
parents | 3f63f5568e7f (current diff) 199332d3ed53 (diff) |
children | ccfb83ff9e78 |
files | ChangeLog Makefile.am |
diffstat | 4 files changed, 99 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Fri Oct 24 02:53:21 2014 +0100 +++ b/ChangeLog Wed Dec 24 18:48:30 2014 +0000 @@ -1,3 +1,11 @@ +2014-11-12 Andrew John Hughes <gnu.andrew@redhat.com> + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * NEWS: Updated. + * patches/pr2083-aarch64_zero.patch: + Add HotSpot support for building Zero on AArch64. + 2014-10-24 Andrew John Hughes <gnu.andrew@redhat.com> * Makefile.am:
--- a/Makefile.am Fri Oct 24 02:53:21 2014 +0100 +++ b/Makefile.am Wed Dec 24 18:48:30 2014 +0000 @@ -627,7 +627,8 @@ patches/openjdk/8017173-xml_cipher_rsa_oaep_cant_be_instantiated.patch \ patches/openjdk/7122142-annotation_race_condition.patch \ patches/openjdk/7161796-wrong_fetch_in_fetch_static_field.patch \ - patches/openjdk/8000897-use_corresponding_digest_length.patch + patches/openjdk/8000897-use_corresponding_digest_length.patch \ + patches/pr2083-aarch64_zero.patch if WITH_RHINO ICEDTEA_PATCHES += \
--- a/NEWS Fri Oct 24 02:53:21 2014 +0100 +++ b/NEWS Wed Dec 24 18:48:30 2014 +0000 @@ -28,6 +28,7 @@ * Bug fixes - PR1886: IcedTea does not checksum supplied tarballs - PR2033: patches/ecj/jaxws-getdtdtype.patch no longer applies since removal of JAXWS drop + - PR2083: Add support for building Zero on AArch64 New in release 1.13.5 (2014-10-14):
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/pr2083-aarch64_zero.patch Wed Dec 24 18:48:30 2014 +0000 @@ -0,0 +1,88 @@ +diff -Nru openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp openjdk/hotspot/src/os/linux/vm/os_linux.cpp +--- openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp 2014-11-12 22:34:55.098161588 +0000 ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2014-11-12 22:52:15.524181428 +0000 +@@ -387,7 +387,7 @@ + * ... + * 7: The default directories, normally /lib and /usr/lib. + */ +-#if defined(AMD64) || defined(_LP64) && (defined(SPARC) || defined(PPC) || defined(S390)) ++#if defined(AMD64) || defined(_LP64) && (defined(SPARC) || defined(PPC) || defined(S390) || defined(AARCH64)) + #define DEFAULT_LIBPATH "/usr/lib64:/lib64:/lib:/usr/lib" + #else + #define DEFAULT_LIBPATH "/lib:/usr/lib" +@@ -1441,8 +1441,8 @@ + + #ifndef SYS_clock_getres + +-#if defined(IA32) || defined(AMD64) +-#define SYS_clock_getres IA32_ONLY(266) AMD64_ONLY(229) ++#if defined(IA32) || defined(AMD64) || defined(AARCH64) ++#define SYS_clock_getres IA32_ONLY(266) AMD64_ONLY(229) AARCH64_ONLY(114) + #define sys_clock_getres(x,y) ::syscall(SYS_clock_getres, x, y) + #else + #warning "SYS_clock_getres not defined for this platform, disabling fast_thread_cpu_time" +@@ -1930,7 +1930,7 @@ + static Elf32_Half running_arch_code=EM_AARCH64; + #else + #error Method os::dll_load requires that one of following is defined:\ +- IA32, AMD64, IA64, __sparc, __powerpc__, ARM, S390, ALPHA, MIPS, MIPSEL, PARISC, M68K, SH ++ IA32, AMD64, IA64, __sparc, __powerpc__, ARM, S390, ALPHA, MIPS, MIPSEL, PARISC, M68K, SH, AARCH64 + #endif + + // Identify compatability class for VM's architecture and library's architecture +@@ -2725,9 +2725,9 @@ + unsigned int cpu; + int retval = -1; + +-#if defined(IA32) ++#if defined(IA32) || defined(AARCH64) + # ifndef SYS_getcpu +-# define SYS_getcpu 318 ++# define SYS_getcpu AARCH64_ONLY(168) NOT_AARCH64(318); + # endif + retval = syscall(SYS_getcpu, &cpu, NULL, NULL); + #elif defined(AMD64) +@@ -5484,11 +5484,11 @@ + extern char** environ; + + #ifndef __NR_fork +-#define __NR_fork IA32_ONLY(2) IA64_ONLY(not defined) AMD64_ONLY(57) ++#define __NR_fork IA32_ONLY(2) IA64_ONLY(not defined) AMD64_ONLY(57) AARCH64_ONLY(1079) + #endif + + #ifndef __NR_execve +-#define __NR_execve IA32_ONLY(11) IA64_ONLY(1033) AMD64_ONLY(59) ++#define __NR_execve IA32_ONLY(11) IA64_ONLY(1033) AMD64_ONLY(59) AARCH64_ONLY(221) + #endif + + // Run the specified command in a separate process. Return its exit value, +diff -Nru openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp openjdk/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp +--- openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp 2014-11-12 22:34:52.830131030 +0000 ++++ openjdk/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp 2014-11-12 22:53:39.365312680 +0000 +@@ -35,7 +35,7 @@ + #ifdef __powerpc64__ + define_pd_global(intx, ThreadStackSize, 2048); + #else +-define_pd_global(intx, ThreadStackSize, 1536); ++define_pd_global(intx, ThreadStackSize, AARCH64_ONLY(1664) NOT_AARCH64(1536)); + #endif + #ifdef _LP64 + define_pd_global(intx, VMThreadStackSize, 1024); +diff -Nru openjdk.orig/hotspot/src/share/vm/utilities/macros.hpp openjdk/hotspot/src/share/vm/utilities/macros.hpp +--- openjdk.orig/hotspot/src/share/vm/utilities/macros.hpp 2014-11-12 22:34:54.810157708 +0000 ++++ openjdk/hotspot/src/share/vm/utilities/macros.hpp 2014-11-12 22:49:51.182233142 +0000 +@@ -260,6 +260,14 @@ + #define NOT_ARM(code) code + #endif + ++#ifdef AARCH64 ++#define AARCH64_ONLY(code) code ++#define NOT_AARCH64(code) ++#else ++#define AARCH64_ONLY(code) ++#define NOT_AARCH64(code) code ++#endif ++ + #ifdef JAVASE_EMBEDDED + #define EMBEDDED_ONLY(code) code + #define NOT_EMBEDDED(code)