Mercurial > hg > release > icedtea7-2.4
changeset 2409:1128225eff23
CACAO: Update to latest CACAO revision and remove upstreamed pathes.
2011-03-17 Xerxes Ranby <xerxes@zafena.se>
CACAO: Update to latest CACAO revision and remove upstreamed pathes.
Update contains the following new CACAO improvements:
Fixes build for newer gcc (at least 4.4) on PPC64, breaks older gcc.
CA123: LD_LIBRARY_PATH and java.library.path.
CA143: don't hang with invalid locale.
CA144: aligned patchers on x86_64.
CA148: support for LCMP bytecode.
CA152: Calling Policy.setPolicy with a new Policy object
has no effect on the DefaultSecurityManager.
CA156: uncaughtExceptionHandler doesn't work with OpenJDK 6 b21.
* NEWS: Updated.
* Makefile.am: Remove upstreamed CACAO patches.
(CACAO_VERSION): Updated to latest CACAO revision.
(CACAO_SHA256SUM): Updated.
* patches/cacao/arm-arch-defines.patch: Deleted.
* patches/cacao/arm-memory-barrier.patch: Deleted.
* patches/cacao/ignore-unknown-options.patch: Deleted.
author | Xerxes R?nby <xerxes@zafena.se> |
---|---|
date | Fri, 20 May 2011 00:22:49 +0100 |
parents | 4caadf3a7f13 |
children | 801c26ed308b |
files | ChangeLog Makefile.am NEWS patches/cacao/arm-arch-defines.patch patches/cacao/arm-memory-barrier.patch patches/cacao/ignore-unknown-options.patch |
diffstat | 6 files changed, 38 insertions(+), 103 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Fri May 20 00:19:55 2011 +0100 +++ b/ChangeLog Fri May 20 00:22:49 2011 +0100 @@ -1,3 +1,23 @@ +2011-03-17 Xerxes Ranby <xerxes@zafena.se> + + CACAO: Update to latest CACAO revision and remove upstreamed pathes. + Update contains the following new CACAO improvements: + Fixes build for newer gcc (at least 4.4) on PPC64, breaks older gcc. + CA123: LD_LIBRARY_PATH and java.library.path. + CA143: don't hang with invalid locale. + CA144: aligned patchers on x86_64. + CA148: support for LCMP bytecode. + CA152: Calling Policy.setPolicy with a new Policy object + has no effect on the DefaultSecurityManager. + CA156: uncaughtExceptionHandler doesn't work with OpenJDK 6 b21. + * NEWS: Updated. + * Makefile.am: Remove upstreamed CACAO patches. + (CACAO_VERSION): Updated to latest CACAO revision. + (CACAO_SHA256SUM): Updated. + * patches/cacao/arm-arch-defines.patch: Deleted. + * patches/cacao/arm-memory-barrier.patch: Deleted. + * patches/cacao/ignore-unknown-options.patch: Deleted. + 2011-03-17 Xerxes Ranby <xerxes@zafena.se> JamVM: Update to latest JamVM revision and remove upstreamed pathes.
--- a/Makefile.am Fri May 20 00:19:55 2011 +0100 +++ b/Makefile.am Fri May 20 00:22:49 2011 +0100 @@ -18,8 +18,8 @@ LANGTOOLS_SHA256SUM = e1beab78534a3a0fb18404c3c200e8866da275c7c656172c9f295f11203e5f39 OPENJDK_SHA256SUM = 856b791751e56f64cc10e4826eefc9af9882969b179595c9642f7c9771965e7d -CACAO_VERSION = e321b101a9ee -CACAO_SHA256SUM = 46bc5b6212c199dc4a3dbebe6386fe15a8248625a5dffa17115aab394a298444 +CACAO_VERSION = c7bf150bfa46 +CACAO_SHA256SUM = 73629f5ac9514afbcf63b6cdf58556e889a5f6a22d4bd70de1dd2816c6500aee CACAO_BASE_URL = http://mips.complang.tuwien.ac.at/hg/cacao/archive CACAO_URL = $(CACAO_BASE_URL)/$(CACAO_VERSION).tar.bz2 CACAO_SRC_ZIP = cacao-$(CACAO_VERSION).tar.bz2 @@ -299,12 +299,9 @@ ICEDTEA_PATCHES += \ patches/cacao/launcher.patch \ patches/cacao/version.patch \ - patches/cacao/arm-arch-defines.patch \ patches/cacao/jsig.patch \ patches/cacao/6714758.patch \ - patches/cacao/memory.patch \ - patches/cacao/arm-memory-barrier.patch \ - patches/cacao/ignore-unknown-options.patch + patches/cacao/memory.patch endif if WITH_CACAO
--- a/NEWS Fri May 20 00:19:55 2011 +0100 +++ b/NEWS Fri May 20 00:22:49 2011 +0100 @@ -1,3 +1,5 @@ +CAX - http://server.complang.tuwien.ac.at/cgi-bin/bugzilla/show_bug.cgi?id=X + New in release 1.14 (XXXX-XX-XX) * NetX and the plugin moved to the IcedTea-Web project with a separate @@ -6,6 +8,9 @@ * Allow building of JamVM beside the default VM by using --with-additional-vms=jamvm * Allow the location of the JamVM source zip to be specified using --with-jamvm-src-zip * JamVM builds can bootstrap and are self-hosting. +* Bug fixes + - PR616, PR99: Don't statically link libstdc++ + - PR640: JamVM fails to build - Unrecognised option: -XX:ThreadStackSize. * JamVM - Ignore all unknown options. - Handle O_DELETE in JVM_Open. @@ -16,10 +21,16 @@ - On ARM, force interpreter to be built in ARM mode. - MIPS: 64-bit and interpreter inlining by default. - Trivial implementation of stubs for MIPS. -* Bug fixes - - PR616, PR99: Don't statically link libstdc++ - - PR640: JamVM fails to build - Unrecognised option: -XX:ThreadStackSize. - - CACAO PR157: ARM SMP Assertion thinlock failed. +* CACAO + - Ignore all unknown options, but report them. + - Fixes build for newer gcc (at least 4.4) on PPC64, breaks older gcc. + - CA123: LD_LIBRARY_PATH and java.library.path. + - CA143: don't hang with invalid locale. + - CA144: aligned patchers on x86_64. + - CA148: support for LCMP bytecode. + - CA152: Calling Policy.setPolicy with a new Policy object has no effect on the DefaultSecurityManager. + - CA156: uncaughtExceptionHandler doesn't work with OpenJDK 6 b21. + - CA157: ARM SMP Assertion thinlock failed. * Zero/Shark - Match Shark in icedtea6, makes OSR work by removing vestigal check. - LLVM 2.7 non-product fixes.
--- a/patches/cacao/arm-arch-defines.patch Fri May 20 00:19:55 2011 +0100 +++ b/patches/cacao/arm-arch-defines.patch Fri May 20 00:22:49 2011 +0100 @@ -16,34 +16,3 @@ AO_INLINE void AO_nop_full() { -diff -Nru cacao.orig/cacao/src/vm/jit/arm/md-atomic.hpp cacao/cacao/src/vm/jit/arm/md-atomic.hpp ---- cacao.orig/cacao/src/vm/jit/arm/md-atomic.hpp 2010-05-19 12:14:46.000000000 +0100 -+++ cacao/cacao/src/vm/jit/arm/md-atomic.hpp 2010-06-21 18:35:53.000000000 +0100 -@@ -45,26 +45,7 @@ - */ - inline uint32_t compare_and_swap(volatile uint32_t *p, uint32_t oldval, uint32_t newval) - { -- uint32_t result; -- uint32_t temp; -- -- /* TODO: improve this one! */ -- __asm__ __volatile__ ( -- "1:\t" -- "ldr %0,[%2]\n\t" -- "cmp %0,%4\n\t" -- "bne 2f\n\t" -- "swp %1,%3,[%2]\n\t" -- "cmp %1,%0\n\t" -- "swpne %0,%1,[%2]\n\t" -- "bne 1b\n\t" -- "2:" -- : "=&r" (result), "=&r" (temp) -- : "r" (p), "r" (newval), "r" (oldval) -- : "cc", "memory" -- ); -- -- return result; -+ return __sync_val_compare_and_swap (p, oldval, newval); - } - -
--- a/patches/cacao/arm-memory-barrier.patch Fri May 20 00:19:55 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -Index: cacao/cacao/src/vm/jit/arm/md-atomic.hpp -=================================================================== ---- cacao.orig/cacao/src/vm/jit/arm/md-atomic.hpp 2011-03-04 22:44:20.000000000 +0100 -+++ cacao/cacao/src/vm/jit/arm/md-atomic.hpp 2011-03-04 23:02:52.000000000 +0100 -@@ -63,13 +63,21 @@ - return Atomic::generic_compare_and_swap(p, oldval, newval); - } - -+/** -+ * ARM Kernel helper for memory barrier. -+ * Using __asm __volatile ("":::"memory") does not work reliable on ARM -+ * and gcc __sync_synchronize(); implementation does not use the kernel -+ * helper for all gcc versions so it is unreliable to use as well. -+ */ -+typedef void (__kernel_dmb_t) (void); -+#define __kernel_dmb (*(__kernel_dmb_t *) 0xffff0fa0) - - /** - * A memory barrier. - */ - inline void memory_barrier(void) - { -- __asm__ __volatile__ ("" : : : "memory"); -+ __kernel_dmb(); - } - - -@@ -78,7 +86,7 @@ - */ - inline void write_memory_barrier(void) - { -- __asm__ __volatile__ ("" : : : "memory"); -+ __kernel_dmb(); - } - - -@@ -87,7 +95,7 @@ - */ - inline void instruction_barrier(void) - { -- __asm__ __volatile__ ("" : : : "memory"); -+ __kernel_dmb(); - } - - }
--- a/patches/cacao/ignore-unknown-options.patch Fri May 20 00:19:55 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ -Index: cacao/cacao/src/vm/vm.cpp -=================================================================== ---- cacao.orig/cacao/src/vm/vm.cpp 2011-03-04 00:20:24.000000000 +0100 -+++ cacao/cacao/src/vm/vm.cpp 2011-03-04 01:12:45.000000000 +0100 -@@ -1239,9 +1239,10 @@ - - #endif - default: -- printf("Unknown option: %s\n", -+ fprintf(stderr,"Unknown option: %s\n", - vm_args->options[opt_index].optionString); -- usage(); -+ opt_index++; -+ /* Ignore */ - } - } -