Mercurial > hg > release > icedtea6-1.11
changeset 2641:36e7e97a3702
Update due to inclusion of hs20, 6599601, 6997495, 7029905 and 7042040.
2011-05-18 Andrew John Hughes <ahughes@redhat.com>
* patches/hotspot/hs20/7032388-work_without_cmov_instruction.patch,
* patches/hotspot/hs20/arm.patch,
* patches/hotspot/hs20/gcc-suffix.patch,
* patches/hotspot/hs20/ia64-fix.patch,
* patches/hotspot/hs20/params-cast-size_t.patch,
* patches/hotspot/hs20/powerpc-stacksize.patch,
* patches/hotspot/hs20/sparc-buildfixes.patch,
* patches/hotspot/hs20/systemtap.patch,
* patches/hotspot/hs20/text-relocations.patch:
Moved to main tree.
* patches/hotspot/original/7032388-work_without_cmov_instruction.patch,
* patches/hotspot/original/arm.patch,
* patches/hotspot/original/gcc-suffix.patch,
* patches/hotspot/original/ia64-fix.patch,
* patches/hotspot/original/no-precompiled-headers.patch,
* patches/hotspot/original/params-cast-size_t.patch,
* patches/hotspot/original/sparc-buildfixes.patch,
* patches/hotspot/original/systemtap.patch,
* patches/hotspot/original/text-relocations.patch,
* patches/hotspot/original/too-many-args.patch:
Dropped; hs19 no longer supported.
* patches/openjdk/6599601-mark_sun_toolkit_privileged_code.patch,
* patches/openjdk/6997495-test_correction_6857159.patch,
* patches/openjdk/7029905-demo_applet_html_files.patch,
* patches/openjdk/7042040-no_disk_space_check.patch:
Removed; upstream in OpenJDK6.
* INSTALL: Update HotSpot documentation.
* Makefile.am:
(ICEDTEA_PATCHES): Updated.
* acinclude.m4:
(IT_WITH_HOTSPOT_BUILD): Set default back to original.
* hotspot.map: Remove hs19.
* patches/arm.patch,
* patches/gcc-suffix.patch,
* patches/ia64-fix.patch:
Extended with HotSpot segments from hotspot/hs20.
* patches/openjdk/6633275-shaped_translucent_windows.patch:
Recreated due to copyright header change in Component.java.
* patches/openjdk/7032388-work_without_cmov_instruction.patch,
* patches/params-cast-size_t.patch,
* patches/powerpc-stacksize.patch,
* patches/sparc-buildfixes.patch,
* patches/systemtap.patch,
* patches/text-relocations.patch:
Moved from hotspot/hs20.
author | Andrew John Hughes <ahughes@redhat.com> |
---|---|
date | Wed, 18 May 2011 22:49:21 +0100 |
parents | 83034f3f172f |
children | b1123c5a67f7 |
files | ChangeLog INSTALL Makefile.am acinclude.m4 hotspot.map patches/arm.patch patches/gcc-suffix.patch patches/hotspot/hs20/7032388-work_without_cmov_instruction.patch patches/hotspot/hs20/arm.patch patches/hotspot/hs20/gcc-suffix.patch patches/hotspot/hs20/ia64-fix.patch patches/hotspot/hs20/params-cast-size_t.patch patches/hotspot/hs20/powerpc-stacksize.patch patches/hotspot/hs20/sparc-buildfixes.patch patches/hotspot/hs20/systemtap.patch patches/hotspot/hs20/text-relocations.patch patches/hotspot/original/7032388-work_without_cmov_instruction.patch patches/hotspot/original/arm.patch patches/hotspot/original/gcc-suffix.patch patches/hotspot/original/ia64-fix.patch patches/hotspot/original/no-precompiled-headers.patch patches/hotspot/original/params-cast-size_t.patch patches/hotspot/original/sparc-buildfixes.patch patches/hotspot/original/systemtap.patch patches/hotspot/original/text-relocations.patch patches/hotspot/original/too-many-args.patch patches/ia64-fix.patch patches/openjdk/6599601-mark_sun_toolkit_privileged_code.patch patches/openjdk/6633275-shaped_translucent_windows.patch patches/openjdk/6997495-test_correction_6857159.patch patches/openjdk/7029905-demo_applet_html_files.patch patches/openjdk/7032388-work_without_cmov_instruction.patch patches/openjdk/7042040-no_disk_space_check.patch patches/params-cast-size_t.patch patches/powerpc-stacksize.patch patches/sparc-buildfixes.patch patches/systemtap.patch patches/text-relocations.patch |
diffstat | 38 files changed, 950 insertions(+), 1989 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Wed May 18 15:46:37 2011 +0100 +++ b/ChangeLog Wed May 18 22:49:21 2011 +0100 @@ -1,3 +1,51 @@ +2011-05-18 Andrew John Hughes <ahughes@redhat.com> + + * patches/hotspot/hs20/7032388-work_without_cmov_instruction.patch, + * patches/hotspot/hs20/arm.patch, + * patches/hotspot/hs20/gcc-suffix.patch, + * patches/hotspot/hs20/ia64-fix.patch, + * patches/hotspot/hs20/params-cast-size_t.patch, + * patches/hotspot/hs20/powerpc-stacksize.patch, + * patches/hotspot/hs20/sparc-buildfixes.patch, + * patches/hotspot/hs20/systemtap.patch, + * patches/hotspot/hs20/text-relocations.patch: + Moved to main tree. + * patches/hotspot/original/7032388-work_without_cmov_instruction.patch, + * patches/hotspot/original/arm.patch, + * patches/hotspot/original/gcc-suffix.patch, + * patches/hotspot/original/ia64-fix.patch, + * patches/hotspot/original/no-precompiled-headers.patch, + * patches/hotspot/original/params-cast-size_t.patch, + * patches/hotspot/original/sparc-buildfixes.patch, + * patches/hotspot/original/systemtap.patch, + * patches/hotspot/original/text-relocations.patch, + * patches/hotspot/original/too-many-args.patch: + Dropped; hs19 no longer supported. + * patches/openjdk/6599601-mark_sun_toolkit_privileged_code.patch, + * patches/openjdk/6997495-test_correction_6857159.patch, + * patches/openjdk/7029905-demo_applet_html_files.patch, + * patches/openjdk/7042040-no_disk_space_check.patch: + Removed; upstream in OpenJDK6. + * INSTALL: Update HotSpot documentation. + * Makefile.am: + (ICEDTEA_PATCHES): Updated. + * acinclude.m4: + (IT_WITH_HOTSPOT_BUILD): Set default back to original. + * hotspot.map: Remove hs19. + * patches/arm.patch, + * patches/gcc-suffix.patch, + * patches/ia64-fix.patch: + Extended with HotSpot segments from hotspot/hs20. + * patches/openjdk/6633275-shaped_translucent_windows.patch: + Recreated due to copyright header change in Component.java. + * patches/openjdk/7032388-work_without_cmov_instruction.patch, + * patches/params-cast-size_t.patch, + * patches/powerpc-stacksize.patch, + * patches/sparc-buildfixes.patch, + * patches/systemtap.patch, + * patches/text-relocations.patch: + Moved from hotspot/hs20. + 2011-05-17 Denis Lila <dlila@redhat.com> * Makefile.am: Apply patch.
--- a/INSTALL Wed May 18 15:46:37 2011 +0100 +++ b/INSTALL Wed May 18 22:49:21 2011 +0100 @@ -318,16 +318,13 @@ download stage and just verifies that the zip's MD5 sum matches that of the requested build. -At present, IcedTea6 supports the 'original' HotSpot 19 provided as -part of the upstream tarball and HotSpot 20 ('hs20') from the stable -hs20 tree at http://hg.openjdk.java.net/hsx/hsx20/master. The default -is 'hs20' which will use the version of hs20 specified in hotspot.map. -Note that the norm. is for up to one alternate (non-default) build to -be supported and just passing --with-hotspot-build (equivalent to ---with-hotspot-build=yes) will always provide the alternate build -(currently hs20). Conversely, passing --without-hotspot-build -(equivalent to --with-hotspot-build=no) provides the original build -from the OpenJDK tarball (currently hs19). +At present, IcedTea6 supports the 'original' HotSpot 20 provided as +part of the upstream tarball. Note that the norm. is for up to one +alternate (non-default) build to be supported and just passing +--with-hotspot-build (equivalent to --with-hotspot-build=yes) will +always provide the alternate build. Conversely, passing +--without-hotspot-build (equivalent to --with-hotspot-build=no) +provides the original build from the OpenJDK tarball. Javascript Support ==================
--- a/Makefile.am Wed May 18 15:46:37 2011 +0100 +++ b/Makefile.am Wed May 18 22:49:21 2011 +0100 @@ -187,11 +187,6 @@ SECURITY_PATCHES = -if WITH_ALT_HSBUILD -SECURITY_PATCHES += \ - patches/security/20110215/6878713.patch -endif - ICEDTEA_PATCHES = \ $(SECURITY_PATCHES) \ patches/stdc-limit-macros.patch \ @@ -215,12 +210,11 @@ patches/lucene-crash.patch \ patches/version.patch \ patches/version-hotspot.patch \ - patches/hotspot/$(HSBUILD)/text-relocations.patch \ + patches/text-relocations.patch \ patches/openjdk/7043921-java_rmi_cgi.patch \ patches/use-system-tzdata.patch \ patches/headers.patch \ patches/gcc-suffix.patch \ - patches/hotspot/$(HSBUILD)/gcc-suffix.patch \ patches/memory-limits.patch \ patches/libraries.patch \ patches/jvmtiEnv.patch \ @@ -235,7 +229,7 @@ patches/alt-jar.patch \ patches/jdk-use-ssize_t.patch \ patches/use-idx_t.patch \ - patches/hotspot/$(HSBUILD)/params-cast-size_t.patch \ + patches/params-cast-size_t.patch \ patches/clean-crypto.patch \ patches/arch.patch \ patches/lc_ctype.patch \ @@ -244,11 +238,10 @@ patches/testenv.patch \ patches/samejvm-safe.patch \ patches/pr261.patch \ - patches/hotspot/$(HSBUILD)/sparc-buildfixes.patch \ + patches/sparc-buildfixes.patch \ patches/sparc64-linux.patch \ patches/sparc-ptracefix.patch \ patches/sparc-trapsfix.patch \ - patches/openjdk/7029905-demo_applet_html_files.patch \ patches/jtreg-6592792.patch \ patches/s390-noinline.patch \ patches/jtreg-dnd.patch \ @@ -266,9 +259,7 @@ patches/applet_hole.patch \ patches/jtreg-httpTest.patch \ patches/arm.patch \ - patches/hotspot/$(HSBUILD)/arm.patch \ patches/debug-dir.patch \ - patches/openjdk/7042040-no_disk_space_check.patch \ patches/override-redirect-metacity.patch \ patches/openjdk/6967533-pre_epoch.patch \ patches/fonts-rhel.patch \ @@ -289,7 +280,7 @@ patches/openjdk/6800846-printing-quality.patch \ patches/rh661505-jpeg.patch \ patches/6703377-freetypescaler.patch \ - patches/hotspot/$(HSBUILD)/ia64-fix.patch \ + patches/ia64-fix.patch \ patches/openjdk/6642612-filechooser_button_sizes.patch \ patches/jtreg-international-fonts-styles.patch \ patches/openjdk/6736649-text_bearings.patch \ @@ -324,10 +315,9 @@ patches/openjdk/7023591-AAShapePipe.patch \ patches/openjdk/7027667-AAShapePipeRegTest.patch \ patches/openjdk/7019861-AA-regression-fix.patch \ - patches/openjdk/6599601-mark_sun_toolkit_privileged_code.patch \ patches/g356743-libpng-1.5.patch \ patches/revert-6885123.patch \ - patches/hotspot/$(HSBUILD)/7032388-work_without_cmov_instruction.patch \ + patches/openjdk/7032388-work_without_cmov_instruction.patch \ patches/openjdk/7031385-gcc-register-allocation-fix.patch \ patches/openjdk/7036220-shark_llvm_29_headers.patch \ patches/openjdk/6986968-crash_on_xim_restart.patch \ @@ -336,20 +326,11 @@ patches/openjdk/7034464-hugepage.patch \ patches/openjdk/7037939-hugepage.patch \ patches/openjdk/7043564-hugepage.patch \ - patches/openjdk/mutter.patch - -if WITH_ALT_HSBUILD -ICEDTEA_PATCHES += \ + patches/openjdk/mutter.patch \ patches/pr639-broken_shark_build.patch \ - patches/hotspot/$(HSBUILD)/powerpc-stacksize.patch \ + patches/powerpc-stacksize.patch \ patches/jtreg-remove-test-6987555.patch \ patches/jtreg-remove-test-6991596.patch -else -ICEDTEA_PATCHES += \ - patches/hotspot/$(HSBUILD)/no-precompiled-headers.patch \ - patches/hotspot/$(HSBUILD)/too-many-args.patch \ - patches/openjdk/6997495-test_correction_6857159.patch -endif if WITH_RHINO ICEDTEA_PATCHES += \ @@ -391,7 +372,6 @@ if ENABLE_SYSTEMTAP ICEDTEA_PATCHES += patches/systemtap.patch \ - patches/hotspot/$(HSBUILD)/systemtap.patch \ patches/systemtap-gcc-4.5.patch \ patches/systemtap-alloc-size-workaround.patch endif
--- a/acinclude.m4 Wed May 18 15:46:37 2011 +0100 +++ b/acinclude.m4 Wed May 18 22:49:21 2011 +0100 @@ -1044,8 +1044,8 @@ AC_DEFUN([IT_WITH_HOTSPOT_BUILD], [ ORIGINAL_BUILD="original" - ALTERNATE_BUILD="hs20" - DEFAULT_BUILD=${ALTERNATE_BUILD} + ALTERNATE_BUILD="original" + DEFAULT_BUILD=${ORIGINAL_BUILD} AC_MSG_CHECKING([which HotSpot build to use]) AC_ARG_WITH([hotspot-build], [AS_HELP_STRING(--with-hotspot-build,the HotSpot build to use (see hotspot.map))],
--- a/hotspot.map Wed May 18 15:46:37 2011 +0100 +++ b/hotspot.map Wed May 18 22:49:21 2011 +0100 @@ -1,2 +1,1 @@ # version url changeset md5sum -hs20 http://hg.openjdk.java.net/hsx/hsx20/master f0f676c5a2c6 369ad745bf697d525d1a00fc09906829
--- a/patches/arm.patch Wed May 18 15:46:37 2011 +0100 +++ b/patches/arm.patch Wed May 18 22:49:21 2011 +0100 @@ -164,3 +164,60 @@ Thread* t = ThreadLocalStorage::get_thread_slow(); SignalHandlerMark shm(t); +diff -Nru openjdk.orig/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp openjdk/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp +--- openjdk.orig/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp 2011-01-28 01:46:18.769782690 +0000 +@@ -1,6 +1,7 @@ + /* + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright 2009 Red Hat, Inc. ++ * Copyright 2009 Edward Nevill + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -26,6 +27,44 @@ + #ifndef CPU_ZERO_VM_BYTECODES_ZERO_HPP + #define CPU_ZERO_VM_BYTECODES_ZERO_HPP + +-// This file is intentionally empty ++#ifdef HOTSPOT_ASM ++#define _iaccess_0 ((Bytecodes::Code)0xdb) ++#define _iaccess_1 ((Bytecodes::Code)0xdc) ++#define _iaccess_2 ((Bytecodes::Code)0xdd) ++#define _iaccess_3 ((Bytecodes::Code)0xde) ++ ++#define _invokeresolved ((Bytecodes::Code)0xdf) ++#define _invokespecialresolved ((Bytecodes::Code)0xe0) ++#define _invokestaticresolved ((Bytecodes::Code)0xe1) ++ ++#define _iload_iload ((Bytecodes::Code)0xe3) ++#define _iload_iload_N ((Bytecodes::Code)0xe4) ++ ++#define _dmac ((Bytecodes::Code)0xe6) ++ ++ _iload_0_iconst_N , // 231 ++ _iload_1_iconst_N , // 232 ++ _iload_2_iconst_N , // 233 ++ _iload_3_iconst_N , // 234 ++ _iload_iconst_N , // 235 ++ _iadd_istore_N , // 236 ++ _isub_istore_N , // 237 ++ _iand_istore_N , // 238 ++ _ior_istore_N , // 239 ++ _ixor_istore_N , // 240 ++ _iadd_u4store , // 241 ++ _isub_u4store , // 242 ++ _iand_u4store , // 243 ++ _ior_u4store , // 244 ++ _ixor_u4store , // 245 ++ _iload_0_iload , // 246 ++ _iload_1_iload , // 247 ++ _iload_2_iload , // 248 ++ _iload_3_iload , // 249 ++ _iload_0_iload_N , // 250 ++ _iload_1_iload_N , // 251 ++ _iload_2_iload_N , // 252 ++ _iload_3_iload_N , // 253 ++#endif // HOTSPOT_ASM + + #endif // CPU_ZERO_VM_BYTECODES_ZERO_HPP
--- a/patches/gcc-suffix.patch Wed May 18 15:46:37 2011 +0100 +++ b/patches/gcc-suffix.patch Wed May 18 22:49:21 2011 +0100 @@ -46,3 +46,34 @@ endif ifneq ("$(findstring sparc,$(ARCH))", "") # sparc or sparcv9 +diff -Nru openjdk.orig/hotspot/agent/src/os/linux/Makefile openjdk/hotspot/agent/src/os/linux/Makefile +--- openjdk.orig/hotspot/agent/src/os/linux/Makefile 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/agent/src/os/linux/Makefile 2011-01-28 00:43:20.632487152 +0000 +@@ -23,7 +23,7 @@ + # + + ARCH := $(shell if ([ `uname -m` = "ia64" ]) ; then echo ia64 ; elif ([ `uname -m` = "x86_64" ]) ; then echo amd64; elif ([ `uname -m` = "sparc64" ]) ; then echo sparc; else echo i386 ; fi ) +-GCC = gcc ++GCC = gcc$(GCC_SUFFIX) + + JAVAH = ${JAVA_HOME}/bin/javah + +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make +--- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2011-01-28 00:35:53.000000000 +0000 ++++ openjdk/hotspot/make/linux/makefiles/gcc.make 2011-01-28 00:43:56.676866099 +0000 +@@ -28,11 +28,11 @@ + # When cross-compiling the ALT_COMPILER_PATH points + # to the cross-compilation toolset + ifdef CROSS_COMPILE_ARCH +-CPP = $(ALT_COMPILER_PATH)/g++ +-CC = $(ALT_COMPILER_PATH)/gcc ++CPP = $(ALT_COMPILER_PATH)/g++$(GCC_SUFFIX) ++CC = $(ALT_COMPILER_PATH)/gcc$(GCC_SUFFIX) + else +-CPP = g++ +-CC = gcc ++CPP = g++$(GCC_SUFFIX) ++CC = gcc$(GCC_SUFFIX) + endif + + AS = $(CC) -c
--- a/patches/hotspot/hs20/7032388-work_without_cmov_instruction.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,178 +0,0 @@ ---- openjdk/hotspot/src/cpu/x86/vm/assembler_x86.cpp 2011-03-30 11:31:16.408872134 -0700 -+++ openjdk/hotspot/src/cpu/x86/vm/assembler_x86.cpp 2011-03-30 11:31:16.084614406 -0700 -@@ -7769,6 +7769,28 @@ - } - } - -+void MacroAssembler::cmov32(Condition cc, Register dst, Address src) { -+ if (VM_Version::supports_cmov()) { -+ cmovl(cc, dst, src); -+ } else { -+ Label L; -+ jccb(negate_condition(cc), L); -+ movl(dst, src); -+ bind(L); -+ } -+} -+ -+void MacroAssembler::cmov32(Condition cc, Register dst, Register src) { -+ if (VM_Version::supports_cmov()) { -+ cmovl(cc, dst, src); -+ } else { -+ Label L; -+ jccb(negate_condition(cc), L); -+ movl(dst, src); -+ bind(L); -+ } -+} -+ - void MacroAssembler::verify_oop(Register reg, const char* s) { - if (!VerifyOops) return; - -@@ -9019,14 +9041,7 @@ - movl(result, cnt1); - subl(cnt1, cnt2); - push(cnt1); -- if (VM_Version::supports_cmov()) { -- cmovl(Assembler::lessEqual, cnt2, result); -- } else { -- Label GT_LABEL; -- jccb(Assembler::greater, GT_LABEL); -- movl(cnt2, result); -- bind(GT_LABEL); -- } -+ cmov32(Assembler::lessEqual, cnt2, result); - - // Is the minimum length zero? - testl(cnt2, cnt2); ---- openjdk/hotspot/src/cpu/x86/vm/assembler_x86.hpp 2011-03-30 11:31:17.757655562 -0700 -+++ openjdk/hotspot/src/cpu/x86/vm/assembler_x86.hpp 2011-03-30 11:31:17.553920606 -0700 -@@ -2244,10 +2244,13 @@ - - // Data - -- void cmov(Condition cc, Register dst, Register src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmovl(cc, dst, src)); } -+ void cmov32( Condition cc, Register dst, Address src); -+ void cmov32( Condition cc, Register dst, Register src); - -- void cmovptr(Condition cc, Register dst, Address src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmovl(cc, dst, src)); } -- void cmovptr(Condition cc, Register dst, Register src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmovl(cc, dst, src)); } -+ void cmov( Condition cc, Register dst, Register src) { cmovptr(cc, dst, src); } -+ -+ void cmovptr(Condition cc, Register dst, Address src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmov32(cc, dst, src)); } -+ void cmovptr(Condition cc, Register dst, Register src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmov32(cc, dst, src)); } - - void movoop(Register dst, jobject obj); - void movoop(Address dst, jobject obj); ---- openjdk/hotspot/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp 2011-03-30 11:31:18.743456717 -0700 -+++ openjdk/hotspot/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp 2011-03-30 11:31:18.541656202 -0700 -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "asm/assembler.hpp" - #include "c1/c1_Compilation.hpp" - #include "c1/c1_LIRAssembler.hpp" - #include "c1/c1_MacroAssembler.hpp" -@@ -569,24 +570,13 @@ - __ lea (rdi, Address(rdi, rcx, Address::times_2, arrayOopDesc::base_offset_in_bytes(T_CHAR))); - - // compute minimum length (in rax) and difference of lengths (on top of stack) -- if (VM_Version::supports_cmov()) { -- __ movl (rbx, Address(rbx, java_lang_String::count_offset_in_bytes())); -- __ movl (rax, Address(rax, java_lang_String::count_offset_in_bytes())); -- __ mov (rcx, rbx); -- __ subptr (rbx, rax); // subtract lengths -- __ push (rbx); // result -- __ cmov (Assembler::lessEqual, rax, rcx); -- } else { -- Label L; -- __ movl (rbx, Address(rbx, java_lang_String::count_offset_in_bytes())); -- __ movl (rcx, Address(rax, java_lang_String::count_offset_in_bytes())); -- __ mov (rax, rbx); -- __ subptr (rbx, rcx); -- __ push (rbx); -- __ jcc (Assembler::lessEqual, L); -- __ mov (rax, rcx); -- __ bind (L); -- } -+ __ movl (rbx, Address(rbx, java_lang_String::count_offset_in_bytes())); -+ __ movl (rax, Address(rax, java_lang_String::count_offset_in_bytes())); -+ __ mov (rcx, rbx); -+ __ subptr(rbx, rax); // subtract lengths -+ __ push (rbx); // result -+ __ cmov (Assembler::lessEqual, rax, rcx); -+ - // is minimum length 0? - Label noLoop, haveResult; - __ testptr (rax, rax); ---- openjdk/hotspot/src/cpu/x86/vm/c1_Runtime1_x86.cpp 2011-03-30 11:31:19.824124145 -0700 -+++ openjdk/hotspot/src/cpu/x86/vm/c1_Runtime1_x86.cpp 2011-03-30 11:31:19.606167752 -0700 -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "asm/assembler.hpp" - #include "c1/c1_Defs.hpp" - #include "c1/c1_MacroAssembler.hpp" - #include "c1/c1_Runtime1.hpp" ---- openjdk/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp 2011-03-30 11:31:20.910918826 -0700 -+++ openjdk/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp 2011-03-30 11:31:20.703693030 -0700 -@@ -23,6 +23,7 @@ - */ - - #include "precompiled.hpp" -+#include "asm/assembler.hpp" - #include "interpreter/interpreter.hpp" - #include "interpreter/interpreterRuntime.hpp" - #include "interpreter/templateTable.hpp" -@@ -1939,18 +1940,10 @@ - __ movl(temp, Address(array, h, Address::times_8, 0*wordSize)); - __ bswapl(temp); - __ cmpl(key, temp); -- if (VM_Version::supports_cmov()) { -- __ cmovl(Assembler::less , j, h); // j = h if (key < array[h].fast_match()) -- __ cmovl(Assembler::greaterEqual, i, h); // i = h if (key >= array[h].fast_match()) -- } else { -- Label set_i, end_of_if; -- __ jccb(Assembler::greaterEqual, set_i); // { -- __ mov(j, h); // j = h; -- __ jmp(end_of_if); // } -- __ bind(set_i); // else { -- __ mov(i, h); // i = h; -- __ bind(end_of_if); // } -- } -+ // j = h if (key < array[h].fast_match()) -+ __ cmov32(Assembler::less , j, h); -+ // i = h if (key >= array[h].fast_match()) -+ __ cmov32(Assembler::greaterEqual, i, h); - // while (i+1 < j) - __ bind(entry); - __ leal(h, Address(i, 1)); // i+1 -@@ -3478,22 +3471,14 @@ - - // find a free slot in the monitor block (result in rdx) - { Label entry, loop, exit; -- __ movptr(rcx, monitor_block_top); // points to current entry, starting with top-most entry -- __ lea(rbx, monitor_block_bot); // points to word before bottom of monitor block -+ __ movptr(rcx, monitor_block_top); // points to current entry, starting with top-most entry -+ -+ __ lea(rbx, monitor_block_bot); // points to word before bottom of monitor block - __ jmpb(entry); - - __ bind(loop); - __ cmpptr(Address(rcx, BasicObjectLock::obj_offset_in_bytes()), (int32_t)NULL_WORD); // check if current entry is used -- --// TODO - need new func here - kbt -- if (VM_Version::supports_cmov()) { -- __ cmov(Assembler::equal, rdx, rcx); // if not used then remember entry in rdx -- } else { -- Label L; -- __ jccb(Assembler::notEqual, L); -- __ mov(rdx, rcx); // if not used then remember entry in rdx -- __ bind(L); -- } -+ __ cmovptr(Assembler::equal, rdx, rcx); // if not used then remember entry in rdx - __ cmpptr(rax, Address(rcx, BasicObjectLock::obj_offset_in_bytes())); // check if current entry is for same object - __ jccb(Assembler::equal, exit); // if same object then stop searching - __ addptr(rcx, entry_size); // otherwise advance to next entry
--- a/patches/hotspot/hs20/arm.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -diff -Nru openjdk.orig/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp openjdk/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp ---- openjdk.orig/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp 2011-01-28 01:46:18.769782690 +0000 -@@ -1,6 +1,7 @@ - /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright 2009 Red Hat, Inc. -+ * Copyright 2009 Edward Nevill - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -26,6 +27,44 @@ - #ifndef CPU_ZERO_VM_BYTECODES_ZERO_HPP - #define CPU_ZERO_VM_BYTECODES_ZERO_HPP - --// This file is intentionally empty -+#ifdef HOTSPOT_ASM -+#define _iaccess_0 ((Bytecodes::Code)0xdb) -+#define _iaccess_1 ((Bytecodes::Code)0xdc) -+#define _iaccess_2 ((Bytecodes::Code)0xdd) -+#define _iaccess_3 ((Bytecodes::Code)0xde) -+ -+#define _invokeresolved ((Bytecodes::Code)0xdf) -+#define _invokespecialresolved ((Bytecodes::Code)0xe0) -+#define _invokestaticresolved ((Bytecodes::Code)0xe1) -+ -+#define _iload_iload ((Bytecodes::Code)0xe3) -+#define _iload_iload_N ((Bytecodes::Code)0xe4) -+ -+#define _dmac ((Bytecodes::Code)0xe6) -+ -+ _iload_0_iconst_N , // 231 -+ _iload_1_iconst_N , // 232 -+ _iload_2_iconst_N , // 233 -+ _iload_3_iconst_N , // 234 -+ _iload_iconst_N , // 235 -+ _iadd_istore_N , // 236 -+ _isub_istore_N , // 237 -+ _iand_istore_N , // 238 -+ _ior_istore_N , // 239 -+ _ixor_istore_N , // 240 -+ _iadd_u4store , // 241 -+ _isub_u4store , // 242 -+ _iand_u4store , // 243 -+ _ior_u4store , // 244 -+ _ixor_u4store , // 245 -+ _iload_0_iload , // 246 -+ _iload_1_iload , // 247 -+ _iload_2_iload , // 248 -+ _iload_3_iload , // 249 -+ _iload_0_iload_N , // 250 -+ _iload_1_iload_N , // 251 -+ _iload_2_iload_N , // 252 -+ _iload_3_iload_N , // 253 -+#endif // HOTSPOT_ASM - - #endif // CPU_ZERO_VM_BYTECODES_ZERO_HPP
--- a/patches/hotspot/hs20/gcc-suffix.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -diff -Nru openjdk.orig/hotspot/agent/src/os/linux/Makefile openjdk/hotspot/agent/src/os/linux/Makefile ---- openjdk.orig/hotspot/agent/src/os/linux/Makefile 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/agent/src/os/linux/Makefile 2011-01-28 00:43:20.632487152 +0000 -@@ -23,7 +23,7 @@ - # - - ARCH := $(shell if ([ `uname -m` = "ia64" ]) ; then echo ia64 ; elif ([ `uname -m` = "x86_64" ]) ; then echo amd64; elif ([ `uname -m` = "sparc64" ]) ; then echo sparc; else echo i386 ; fi ) --GCC = gcc -+GCC = gcc$(GCC_SUFFIX) - - JAVAH = ${JAVA_HOME}/bin/javah - -diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make ---- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2011-01-28 00:35:53.000000000 +0000 -+++ openjdk/hotspot/make/linux/makefiles/gcc.make 2011-01-28 00:43:56.676866099 +0000 -@@ -28,11 +28,11 @@ - # When cross-compiling the ALT_COMPILER_PATH points - # to the cross-compilation toolset - ifdef CROSS_COMPILE_ARCH --CPP = $(ALT_COMPILER_PATH)/g++ --CC = $(ALT_COMPILER_PATH)/gcc -+CPP = $(ALT_COMPILER_PATH)/g++$(GCC_SUFFIX) -+CC = $(ALT_COMPILER_PATH)/gcc$(GCC_SUFFIX) - else --CPP = g++ --CC = gcc -+CPP = g++$(GCC_SUFFIX) -+CC = gcc$(GCC_SUFFIX) - endif - - AS = $(CC) -c
--- a/patches/hotspot/hs20/ia64-fix.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ ---- openjdk/hotspot/src/share/vm/opto/connode.cpp~ 2010-10-08 20:29:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/opto/connode.cpp 2010-11-29 07:57:22.000000000 +0000 -@@ -712,12 +712,7 @@ - if( t == Type::TOP ) return Type::TOP; - if( t == Type::FLOAT ) return Type::DOUBLE; - const TypeF *tf = t->is_float_constant(); --#ifndef IA64 - return TypeD::make( (double)tf->getf() ); --#else -- float x = tf->getf(); -- return TypeD::make( (x == 0.0f) ? (double)x : (double)x + ia64_double_zero ); --#endif - } - - //=============================================================================
--- a/patches/hotspot/hs20/params-cast-size_t.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,270 +0,0 @@ -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2011-01-28 01:06:11.887088930 +0000 -@@ -2645,7 +2645,7 @@ - if (ResizeOldPLAB && CMSOldPLABResizeQuicker) { - size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks); - n_blks += CMSOldPLABReactivityFactor*multiple*n_blks; -- n_blks = MIN2(n_blks, CMSOldPLABMax); -+ n_blks = MIN2(n_blks, (size_t)CMSOldPLABMax); - } - assert(n_blks > 0, "Error"); - _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl); -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2011-01-28 01:06:11.891088974 +0000 -@@ -955,7 +955,7 @@ - if (free_percentage < desired_free_percentage) { - size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage)); - assert(desired_capacity >= capacity(), "invalid expansion size"); -- expand_bytes = MAX2(desired_capacity - capacity(), MinHeapDeltaBytes); -+ expand_bytes = MAX2((long unsigned int) (desired_capacity - capacity()), (long unsigned int) MinHeapDeltaBytes); - } - if (expand_bytes > 0) { - if (PrintGCDetails && Verbose) { -@@ -6238,7 +6238,7 @@ - HeapWord* curAddr = _markBitMap.startWord(); - while (curAddr < _markBitMap.endWord()) { - size_t remaining = pointer_delta(_markBitMap.endWord(), curAddr); -- MemRegion chunk(curAddr, MIN2(CMSBitMapYieldQuantum, remaining)); -+ MemRegion chunk(curAddr, MIN2((size_t) CMSBitMapYieldQuantum, remaining)); - _markBitMap.clear_large_range(chunk); - if (ConcurrentMarkSweepThread::should_yield() && - !foregroundGCIsActive() && -@@ -6533,7 +6533,7 @@ - return; - } - // Double capacity if possible -- size_t new_capacity = MIN2(_capacity*2, MarkStackSizeMax); -+ size_t new_capacity = MIN2((size_t) (_capacity*2), (size_t) MarkStackSizeMax); - // Do not give up existing stack until we have managed to - // get the double capacity that we desired. - ReservedSpace rs(ReservedSpace::allocation_align_size_up( -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2011-01-28 00:50:00.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2011-01-28 01:06:11.891088974 +0000 -@@ -471,7 +471,7 @@ - _regionStack(), - // _finger set in set_non_marking_state - -- _max_task_num(MAX2(ParallelGCThreads, (size_t)1)), -+ _max_task_num(MAX2((size_t)ParallelGCThreads, (size_t)1)), - // _active_tasks set in set_non_marking_state - // _tasks set inside the constructor - _task_queues(new CMTaskQueueSet((int) _max_task_num)), -@@ -575,7 +575,7 @@ - _sleep_factor = sleep_factor; - _marking_task_overhead = marking_task_overhead; - } else { -- _parallel_marking_threads = MAX2((ParallelGCThreads + 2) / 4, (size_t)1); -+ _parallel_marking_threads = MAX2((size_t)((ParallelGCThreads + 2) / 4), (size_t)1); - _sleep_factor = 0.0; - _marking_task_overhead = 1.0; - } -@@ -3371,7 +3371,7 @@ - // of things to do) or totally (at the very end). - size_t target_size; - if (partially) -- target_size = MIN2((size_t)_task_queue->max_elems()/3, GCDrainStackTargetSize); -+ target_size = MIN2((size_t)_task_queue->max_elems()/3, (size_t)GCDrainStackTargetSize); - else - target_size = 0; - -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2011-01-28 01:06:11.891088974 +0000 -@@ -1074,7 +1074,7 @@ - // This can be done by either mutator threads together with the - // concurrent refinement threads or GC threads. - int HeapRegionRemSet::num_par_rem_sets() { -- return (int)MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), ParallelGCThreads); -+ return (int)MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), (size_t)ParallelGCThreads); - } - - HeapRegionRemSet::HeapRegionRemSet(G1BlockOffsetSharedArray* bosa, -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2011-01-28 01:06:11.891088974 +0000 -@@ -895,8 +895,8 @@ - void PSParallelCompact::initialize_dead_wood_limiter() - { - const size_t max = 100; -- _dwl_mean = double(MIN2(ParallelOldDeadWoodLimiterMean, max)) / 100.0; -- _dwl_std_dev = double(MIN2(ParallelOldDeadWoodLimiterStdDev, max)) / 100.0; -+ _dwl_mean = double(MIN2((size_t) ParallelOldDeadWoodLimiterMean, max)) / 100.0; -+ _dwl_std_dev = double(MIN2((size_t) ParallelOldDeadWoodLimiterStdDev, max)) / 100.0; - _dwl_first_term = 1.0 / (sqrt(2.0 * M_PI) * _dwl_std_dev); - DEBUG_ONLY(_dwl_initialized = true;) - _dwl_adjustment = normal_distribution(1.0); -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp 2011-01-28 01:06:11.891088974 +0000 -@@ -69,7 +69,7 @@ - _last_used = current_live; - - // We have different alignment constraints than the rest of the heap. -- const size_t alignment = MAX2(MinPermHeapExpansion, -+ const size_t alignment = MAX2((size_t) MinPermHeapExpansion, - virtual_space()->alignment()); - - // Compute the desired size: -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2011-01-28 01:06:11.895089019 +0000 -@@ -188,7 +188,7 @@ - const size_t num_overflow_elems = of_stack->size(); - const size_t space_available = queue->max_elems() - queue->size(); - const size_t num_take_elems = MIN3(space_available / 4, -- ParGCDesiredObjsFromOverflowList, -+ (size_t) ParGCDesiredObjsFromOverflowList, - num_overflow_elems); - // Transfer the most recent num_take_elems from the overflow - // stack to our work queue. -diff -Nru openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp ---- openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp 2011-01-28 01:06:11.891088974 +0000 -@@ -328,7 +328,7 @@ - // yield a size that is too small) and bound it by MaxNewSize above. - // Ergonomics plays here by previously calculating the desired - // NewSize and MaxNewSize. -- max_new_size = MIN2(MAX2(max_new_size, NewSize), MaxNewSize); -+ max_new_size = MIN2(MAX2(max_new_size, (size_t)NewSize), (size_t)MaxNewSize); - } - assert(max_new_size > 0, "All paths should set max_new_size"); - -@@ -355,7 +355,7 @@ - // generally small compared to the NewRatio calculation. - _min_gen0_size = NewSize; - desired_new_size = NewSize; -- max_new_size = MAX2(max_new_size, NewSize); -+ max_new_size = MAX2(max_new_size, (size_t) NewSize); - } else { - // For the case where NewSize is the default, use NewRatio - // to size the minimum and initial generation sizes. -@@ -363,10 +363,10 @@ - // NewRatio is overly large, the resulting sizes can be too - // small. - _min_gen0_size = MAX2(scale_by_NewRatio_aligned(min_heap_byte_size()), -- NewSize); -+ (size_t) NewSize); - desired_new_size = - MAX2(scale_by_NewRatio_aligned(initial_heap_byte_size()), -- NewSize); -+ (size_t) NewSize); - } - - assert(_min_gen0_size > 0, "Sanity check"); -@@ -421,14 +421,14 @@ - // Adjust gen0 down to accomodate OldSize - *gen0_size_ptr = heap_size - min_gen0_size; - *gen0_size_ptr = -- MAX2((uintx)align_size_down(*gen0_size_ptr, min_alignment()), -+ MAX2((size_t)align_size_down(*gen0_size_ptr, min_alignment()), - min_alignment()); - assert(*gen0_size_ptr > 0, "Min gen0 is too large"); - result = true; - } else { - *gen1_size_ptr = heap_size - *gen0_size_ptr; - *gen1_size_ptr = -- MAX2((uintx)align_size_down(*gen1_size_ptr, min_alignment()), -+ MAX2((size_t)align_size_down(*gen1_size_ptr, min_alignment()), - min_alignment()); - } - } -@@ -452,7 +452,7 @@ - // for setting the gen1 maximum. - _max_gen1_size = max_heap_byte_size() - _max_gen0_size; - _max_gen1_size = -- MAX2((uintx)align_size_down(_max_gen1_size, min_alignment()), -+ MAX2((size_t)align_size_down(_max_gen1_size, min_alignment()), - min_alignment()); - // If no explicit command line flag has been set for the - // gen1 size, use what is left for gen1. -@@ -466,11 +466,11 @@ - "gen0 has an unexpected minimum size"); - set_min_gen1_size(min_heap_byte_size() - min_gen0_size()); - set_min_gen1_size( -- MAX2((uintx)align_size_down(_min_gen1_size, min_alignment()), -+ MAX2((size_t)align_size_down(_min_gen1_size, min_alignment()), - min_alignment())); - set_initial_gen1_size(initial_heap_byte_size() - initial_gen0_size()); - set_initial_gen1_size( -- MAX2((uintx)align_size_down(_initial_gen1_size, min_alignment()), -+ MAX2((size_t)align_size_down(_initial_gen1_size, min_alignment()), - min_alignment())); - - } else { -diff -Nru openjdk.orig/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp openjdk/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp ---- openjdk.orig/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp 2011-01-28 01:06:11.891088974 +0000 -@@ -240,7 +240,7 @@ - size_t init_sz; - - if (TLABSize > 0) { -- init_sz = MIN2(TLABSize / HeapWordSize, max_size()); -+ init_sz = MIN2((size_t) (TLABSize / HeapWordSize), max_size()); - } else if (global_stats() == NULL) { - // Startup issue - main thread initialized before heap initialized. - init_sz = min_size(); -diff -Nru openjdk.orig/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp openjdk/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp ---- openjdk.orig/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp 2011-01-28 01:06:11.891088974 +0000 -@@ -46,7 +46,7 @@ - const size_t beg_index = size_t(index); - assert(beg_index < len || len == 0, "index too large"); - -- const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride); -+ const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride); - const size_t end_index = beg_index + stride; - T* const base = (T*)a->base(); - T* const beg = base + beg_index; -@@ -80,7 +80,7 @@ - const size_t beg_index = size_t(index); - assert(beg_index < len || len == 0, "index too large"); - -- const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride); -+ const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride); - const size_t end_index = beg_index + stride; - T* const base = (T*)a->base(); - T* const beg = base + beg_index; -diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp openjdk/hotspot/src/share/vm/runtime/arguments.cpp ---- openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp 2011-01-28 00:49:59.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp 2011-01-28 01:06:11.891088974 +0000 -@@ -1161,7 +1161,7 @@ - // NewSize was set on the command line and it is larger than - // preferred_max_new_size. - if (!FLAG_IS_DEFAULT(NewSize)) { // NewSize explicitly set at command-line -- FLAG_SET_ERGO(uintx, MaxNewSize, MAX2(NewSize, preferred_max_new_size)); -+ FLAG_SET_ERGO(uintx, MaxNewSize, MAX2((size_t) NewSize, preferred_max_new_size)); - } else { - FLAG_SET_ERGO(uintx, MaxNewSize, preferred_max_new_size); - } -@@ -1180,7 +1180,7 @@ - // there was no obvious reason. Also limit to the case where - // MaxNewSize has not been set. - -- FLAG_SET_ERGO(intx, NewRatio, MAX2(NewRatio, new_ratio)); -+ FLAG_SET_ERGO(intx, NewRatio, MAX2((intx) NewRatio, new_ratio)); - - // Code along this path potentially sets NewSize and OldSize - -@@ -1222,8 +1222,8 @@ - // Unless explicitly requested otherwise, make young gen - // at least min_new, and at most preferred_max_new_size. - if (FLAG_IS_DEFAULT(NewSize)) { -- FLAG_SET_ERGO(uintx, NewSize, MAX2(NewSize, min_new)); -- FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, NewSize)); -+ FLAG_SET_ERGO(uintx, NewSize, MAX2((size_t) NewSize, min_new)); -+ FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, (size_t) NewSize)); - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty - tty->print_cr("Ergo set NewSize: " SIZE_FORMAT, NewSize); -@@ -1234,7 +1234,7 @@ - // later NewRatio will decide how it grows; see above. - if (FLAG_IS_DEFAULT(OldSize)) { - if (max_heap > NewSize) { -- FLAG_SET_ERGO(uintx, OldSize, MIN2(3*NewSize, max_heap - NewSize)); -+ FLAG_SET_ERGO(uintx, OldSize, MIN2((size_t) 3*NewSize, max_heap - (size_t) NewSize)); - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty - tty->print_cr("Ergo set OldSize: " SIZE_FORMAT, OldSize);
--- a/patches/hotspot/hs20/powerpc-stacksize.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,42 +0,0 @@ ---- openjdk/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp~ 2011-02-22 17:51:24.000000000 +0100 -+++ openjdk/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp 2011-02-24 18:58:27.758228950 +0100 -@@ -32,7 +32,11 @@ - // - - define_pd_global(bool, DontYieldALot, false); -+#ifdef __powerpc64__ -+define_pd_global(intx, ThreadStackSize, 2048); -+#else - define_pd_global(intx, ThreadStackSize, 1536); -+#endif - #ifdef _LP64 - define_pd_global(intx, VMThreadStackSize, 1024); - #else ---- openjdk/corba/make/common/shared/Defs-java.gmk~ 2011-02-24 18:56:20.278228999 +0100 -+++ openjdk/corba/make/common/shared/Defs-java.gmk 2011-02-24 19:01:47.938229001 +0100 -@@ -68,9 +68,9 @@ - - # 64-bit builds require a larger thread stack size. - ifeq ($(ARCH_DATA_MODEL), 32) -- JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=768 -+ JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=1024 - else -- JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=1536 -+ JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=2048 - endif - JAVAC_JVM_FLAGS += $(JAVA_TOOLS_FLAGS:%=-J%) - ---- openjdk/jdk/make/common/shared/Defs-java.gmk~ 2011-02-24 20:10:20.598229000 +0100 -+++ openjdk/jdk/make/common/shared/Defs-java.gmk 2011-02-24 20:11:45.608228331 +0100 -@@ -75,9 +75,9 @@ - - # 64-bit builds require a larger thread stack size. - ifeq ($(ARCH_DATA_MODEL), 32) -- JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=768 -+ JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=1024 - else -- JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=1536 -+ JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=2048 - endif - JAVAC_JVM_FLAGS += $(JAVA_TOOLS_FLAGS:%=-J%) -
--- a/patches/hotspot/hs20/sparc-buildfixes.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,26 +0,0 @@ -diff -Nru openjdk.orig/hotspot/make/linux/makefiles/defs.make openjdk/hotspot/make/linux/makefiles/defs.make ---- openjdk.orig/hotspot/make/linux/makefiles/defs.make 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/make/linux/makefiles/defs.make 2011-01-28 01:21:25.609237228 +0000 -@@ -58,7 +58,7 @@ - endif - - # sparc --ifeq ($(ARCH), sparc64) -+ifneq (,$(filter $(ARCH), sparc sparc64)) - ifeq ($(ARCH_DATA_MODEL), 64) - ARCH_DATA_MODEL = 64 - MAKE_ARGS += LP64=1 -diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make ---- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2011-01-28 01:14:57.000000000 +0000 -+++ openjdk/hotspot/make/linux/makefiles/gcc.make 2011-01-28 01:21:25.609237228 +0000 -@@ -64,6 +64,10 @@ - PICFLAG = -fpic - endif - -+ifneq ($(filter sparc sparcv9,$(BUILDARCH)),) -+PICFLAG = -fPIC -+endif -+ - VM_PICFLAG/LIBJVM = $(PICFLAG) - VM_PICFLAG/AOUT = - VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
--- a/patches/hotspot/hs20/systemtap.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ -diff -Nru openjdk.orig/hotspot/src/share/vm/utilities/dtrace.hpp openjdk/hotspot/src/share/vm/utilities/dtrace.hpp ---- openjdk.orig/hotspot/src/share/vm/utilities/dtrace.hpp 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/utilities/dtrace.hpp 2011-01-28 02:39:02.052518309 +0000 -@@ -1,5 +1,6 @@ - /* - * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2009 Red Hat, Inc. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -25,7 +26,7 @@ - #ifndef SHARE_VM_UTILITIES_DTRACE_HPP - #define SHARE_VM_UTILITIES_DTRACE_HPP - --#if defined(SOLARIS) && defined(DTRACE_ENABLED) -+#if defined(DTRACE_ENABLED) - - #include <sys/sdt.h> - -@@ -36,7 +37,7 @@ - #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() \ - do { volatile size_t dtrace_workaround_tail_call_bug = 1; } while (0) - --#else // ndef SOLARIS || ndef DTRACE_ENABLED -+#else // ndef DTRACE_ENABLED - - #define DTRACE_ONLY(x) - #define NOT_DTRACE(x) x -@@ -47,11 +48,18 @@ - #define DTRACE_PROBE3(a,b,c,d,e) {;} - #define DTRACE_PROBE4(a,b,c,d,e,f) {;} - #define DTRACE_PROBE5(a,b,c,d,e,f,g) {;} -+#define DTRACE_PROBE6(a,b,c,d,e,f,g,h) {;} -+#define DTRACE_PROBE7(a,b,c,d,e,f,g,h,i) {;} -+#define DTRACE_PROBE8(a,b,c,d,e,f,g,h,i,j) {;} -+#define DTRACE_PROBE9(a,b,c,d,e,f,g,h,i,j,k) {;} -+#define DTRACE_PROBE10(a,b,c,d,e,f,g,h,i,j,k,l) {;} - - #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() - - #endif - -+#if defined(SOLARIS) -+// Solaris dtrace needs actual extern function decls. - #define HS_DTRACE_PROBE_FN(provider,name)\ - __dtrace_##provider##___##name - -@@ -59,6 +67,11 @@ - DTRACE_ONLY(extern "C" void HS_DTRACE_PROBE_FN(provider,name) args) - #define HS_DTRACE_PROBE_CDECL_N(provider,name,args) \ - DTRACE_ONLY(extern void HS_DTRACE_PROBE_FN(provider,name) args) -+#else -+// Systemtap dtrace compatible probes on GNU/Linux don't. -+#define HS_DTRACE_PROBE_DECL_N(provider,name,args) -+#define HS_DTRACE_PROBE_CDECL_N(provider,name,args) -+#endif - - /* Dtrace probe declarations */ - #define HS_DTRACE_PROBE_DECL(provider,name) \ -@@ -97,6 +110,8 @@ - uintptr_t,uintptr_t,uintptr_t)) - - /* Dtrace probe definitions */ -+#if defined(SOLARIS) -+// Solaris dtrace uses actual function calls. - #define HS_DTRACE_PROBE_N(provider,name, args) \ - DTRACE_ONLY(HS_DTRACE_PROBE_FN(provider,name) args) - -@@ -132,5 +147,31 @@ - HS_DTRACE_PROBE_N(provider,name,((uintptr_t)a0,(uintptr_t)a1,(uintptr_t)a2,\ - (uintptr_t)a3,(uintptr_t)a4,(uintptr_t)a5,(uintptr_t)a6,(uintptr_t)a7,\ - (uintptr_t)a8,(uintptr_t)a9)) -+#else -+// Systemtap dtrace compatible probes on GNU/Linux use direct macros. -+#define HS_DTRACE_PROBE(provider,name) HS_DTRACE_PROBE0(provider,name) -+#define HS_DTRACE_PROBE0(provider,name)\ -+ DTRACE_PROBE(provider,name) -+#define HS_DTRACE_PROBE1(provider,name,a0)\ -+ DTRACE_PROBE1(provider,name,a0) -+#define HS_DTRACE_PROBE2(provider,name,a0,a1)\ -+ DTRACE_PROBE2(provider,name,a0,a1) -+#define HS_DTRACE_PROBE3(provider,name,a0,a1,a2)\ -+ DTRACE_PROBE3(provider,name,a0,a1,a2) -+#define HS_DTRACE_PROBE4(provider,name,a0,a1,a2,a3)\ -+ DTRACE_PROBE4(provider,name,a0,a1,a2,a3) -+#define HS_DTRACE_PROBE5(provider,name,a0,a1,a2,a3,a4)\ -+ DTRACE_PROBE5(provider,name,a0,a1,a2,a3,a4) -+#define HS_DTRACE_PROBE6(provider,name,a0,a1,a2,a3,a4,a5)\ -+ DTRACE_PROBE6(provider,name,a0,a1,a2,a3,a4,a5) -+#define HS_DTRACE_PROBE7(provider,name,a0,a1,a2,a3,a4,a5,a6)\ -+ DTRACE_PROBE7(provider,name,a0,a1,a2,a3,a4,a5,a6) -+#define HS_DTRACE_PROBE8(provider,name,a0,a1,a2,a3,a4,a5,a6,a7)\ -+ DTRACE_PROBE8(provider,name,a0,a1,a2,a3,a4,a5,a6,a7) -+#define HS_DTRACE_PROBE9(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)\ -+ DTRACE_PROBE9(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8) -+#define HS_DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)\ -+ DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8) -+#endif - - #endif // SHARE_VM_UTILITIES_DTRACE_HPP
--- a/patches/hotspot/hs20/text-relocations.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,63 +0,0 @@ -diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make ---- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/make/linux/makefiles/gcc.make 2011-01-28 00:32:20.817556386 +0000 -@@ -58,7 +58,11 @@ - # Compiler flags - - # position-independent code -+ifneq ($(filter alpha parisc ppc ppc64 s390 s390x sparc sparc64 sparcv9,$(ZERO_LIBARCH)),) - PICFLAG = -fPIC -+else -+PICFLAG = -fpic -+endif - - VM_PICFLAG/LIBJVM = $(PICFLAG) - VM_PICFLAG/AOUT = -diff -Nru openjdk.orig/hotspot/make/linux/makefiles/rules.make openjdk/hotspot/make/linux/makefiles/rules.make ---- openjdk.orig/hotspot/make/linux/makefiles/rules.make 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/make/linux/makefiles/rules.make 2011-01-28 00:32:52.857892660 +0000 -@@ -146,20 +146,10 @@ - include $(GAMMADIR)/make/pic.make - endif - --# The non-PIC object files are only generated for 32 bit platforms. --ifdef LP64 - %.o: %.cpp - @echo Compiling $< - $(QUIETLY) $(REMOVE_TARGET) - $(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE) --else --%.o: %.cpp -- @echo Compiling $< -- $(QUIETLY) $(REMOVE_TARGET) -- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \ -- $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \ -- $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)) --endif - - %.o: %.s - @echo Assembling $< -diff -Nru openjdk.orig/hotspot/make/solaris/makefiles/rules.make openjdk/hotspot/make/solaris/makefiles/rules.make ---- openjdk.orig/hotspot/make/solaris/makefiles/rules.make 2011-01-25 22:57:24.000000000 +0000 -+++ openjdk/hotspot/make/solaris/makefiles/rules.make 2011-01-28 00:33:15.158126725 +0000 -@@ -146,20 +146,10 @@ - include $(GAMMADIR)/make/pic.make - endif - --# Sun compiler for 64 bit Solaris does not support building non-PIC object files. --ifdef LP64 - %.o: %.cpp - @echo Compiling $< - $(QUIETLY) $(REMOVE_TARGET) - $(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE) --else --%.o: %.cpp -- @echo Compiling $< -- $(QUIETLY) $(REMOVE_TARGET) -- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \ -- $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \ -- $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)) --endif - - %.o: %.s - @echo Assembling $<
--- a/patches/hotspot/original/7032388-work_without_cmov_instruction.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,156 +0,0 @@ -diff -Nru openjdk.orig/hotspot/src/cpu/x86/vm/assembler_x86.cpp openjdk/hotspot/src/cpu/x86/vm/assembler_x86.cpp ---- openjdk.orig/hotspot/src/cpu/x86/vm/assembler_x86.cpp 2011-02-28 16:03:14.000000000 +0000 -+++ openjdk/hotspot/src/cpu/x86/vm/assembler_x86.cpp 2011-03-31 03:28:54.031901634 +0100 -@@ -7643,6 +7643,28 @@ - } - } - -+void MacroAssembler::cmov32(Condition cc, Register dst, Address src) { -+ if (VM_Version::supports_cmov()) { -+ cmovl(cc, dst, src); -+ } else { -+ Label L; -+ jccb(negate_condition(cc), L); -+ movl(dst, src); -+ bind(L); -+ } -+} -+ -+void MacroAssembler::cmov32(Condition cc, Register dst, Register src) { -+ if (VM_Version::supports_cmov()) { -+ cmovl(cc, dst, src); -+ } else { -+ Label L; -+ jccb(negate_condition(cc), L); -+ movl(dst, src); -+ bind(L); -+ } -+} -+ - void MacroAssembler::verify_oop(Register reg, const char* s) { - if (!VerifyOops) return; - -@@ -8559,14 +8581,7 @@ - movl(result, cnt1); - subl(cnt1, cnt2); - push(cnt1); -- if (VM_Version::supports_cmov()) { -- cmovl(Assembler::lessEqual, cnt2, result); -- } else { -- Label GT_LABEL; -- jccb(Assembler::greater, GT_LABEL); -- movl(cnt2, result); -- bind(GT_LABEL); -- } -+ cmov32(Assembler::lessEqual, cnt2, result); - - // Is the minimum length zero? - testl(cnt2, cnt2); -diff -Nru openjdk.orig/hotspot/src/cpu/x86/vm/assembler_x86.hpp openjdk/hotspot/src/cpu/x86/vm/assembler_x86.hpp ---- openjdk.orig/hotspot/src/cpu/x86/vm/assembler_x86.hpp 2011-02-28 16:03:14.000000000 +0000 -+++ openjdk/hotspot/src/cpu/x86/vm/assembler_x86.hpp 2011-03-31 03:28:54.031901634 +0100 -@@ -2174,10 +2174,13 @@ - - // Data - -- void cmov(Condition cc, Register dst, Register src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmovl(cc, dst, src)); } -+ void cmov32( Condition cc, Register dst, Address src); -+ void cmov32( Condition cc, Register dst, Register src); - -- void cmovptr(Condition cc, Register dst, Address src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmovl(cc, dst, src)); } -- void cmovptr(Condition cc, Register dst, Register src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmovl(cc, dst, src)); } -+ void cmov( Condition cc, Register dst, Register src) { cmovptr(cc, dst, src); } -+ -+ void cmovptr(Condition cc, Register dst, Address src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmov32(cc, dst, src)); } -+ void cmovptr(Condition cc, Register dst, Register src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmov32(cc, dst, src)); } - - void movoop(Register dst, jobject obj); - void movoop(Address dst, jobject obj); -diff -Nru openjdk.orig/hotspot/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp openjdk/hotspot/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp ---- openjdk.orig/hotspot/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp 2011-02-28 16:03:14.000000000 +0000 -+++ openjdk/hotspot/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp 2011-03-31 03:28:54.035901697 +0100 -@@ -559,24 +559,13 @@ - __ lea (rdi, Address(rdi, rcx, Address::times_2, arrayOopDesc::base_offset_in_bytes(T_CHAR))); - - // compute minimum length (in rax) and difference of lengths (on top of stack) -- if (VM_Version::supports_cmov()) { -- __ movl (rbx, Address(rbx, java_lang_String::count_offset_in_bytes())); -- __ movl (rax, Address(rax, java_lang_String::count_offset_in_bytes())); -- __ mov (rcx, rbx); -- __ subptr (rbx, rax); // subtract lengths -- __ push (rbx); // result -- __ cmov (Assembler::lessEqual, rax, rcx); -- } else { -- Label L; -- __ movl (rbx, Address(rbx, java_lang_String::count_offset_in_bytes())); -- __ movl (rcx, Address(rax, java_lang_String::count_offset_in_bytes())); -- __ mov (rax, rbx); -- __ subptr (rbx, rcx); -- __ push (rbx); -- __ jcc (Assembler::lessEqual, L); -- __ mov (rax, rcx); -- __ bind (L); -- } -+ __ movl (rbx, Address(rbx, java_lang_String::count_offset_in_bytes())); -+ __ movl (rax, Address(rax, java_lang_String::count_offset_in_bytes())); -+ __ mov (rcx, rbx); -+ __ subptr(rbx, rax); // subtract lengths -+ __ push (rbx); // result -+ __ cmov (Assembler::lessEqual, rax, rcx); -+ - // is minimum length 0? - Label noLoop, haveResult; - __ testptr (rax, rax); -diff -Nru openjdk.orig/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp openjdk/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp ---- openjdk.orig/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp 2011-02-28 16:03:14.000000000 +0000 -+++ openjdk/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp 2011-03-31 03:28:54.035901697 +0100 -@@ -1931,18 +1931,10 @@ - __ movl(temp, Address(array, h, Address::times_8, 0*wordSize)); - __ bswapl(temp); - __ cmpl(key, temp); -- if (VM_Version::supports_cmov()) { -- __ cmovl(Assembler::less , j, h); // j = h if (key < array[h].fast_match()) -- __ cmovl(Assembler::greaterEqual, i, h); // i = h if (key >= array[h].fast_match()) -- } else { -- Label set_i, end_of_if; -- __ jccb(Assembler::greaterEqual, set_i); // { -- __ mov(j, h); // j = h; -- __ jmp(end_of_if); // } -- __ bind(set_i); // else { -- __ mov(i, h); // i = h; -- __ bind(end_of_if); // } -- } -+ // j = h if (key < array[h].fast_match()) -+ __ cmov32(Assembler::less , j, h); -+ // i = h if (key >= array[h].fast_match()) -+ __ cmov32(Assembler::greaterEqual, i, h); - // while (i+1 < j) - __ bind(entry); - __ leal(h, Address(i, 1)); // i+1 -@@ -3463,22 +3455,14 @@ - - // find a free slot in the monitor block (result in rdx) - { Label entry, loop, exit; -- __ movptr(rcx, monitor_block_top); // points to current entry, starting with top-most entry -- __ lea(rbx, monitor_block_bot); // points to word before bottom of monitor block -+ __ movptr(rcx, monitor_block_top); // points to current entry, starting with top-most entry -+ -+ __ lea(rbx, monitor_block_bot); // points to word before bottom of monitor block - __ jmpb(entry); - - __ bind(loop); - __ cmpptr(Address(rcx, BasicObjectLock::obj_offset_in_bytes()), (int32_t)NULL_WORD); // check if current entry is used -- --// TODO - need new func here - kbt -- if (VM_Version::supports_cmov()) { -- __ cmov(Assembler::equal, rdx, rcx); // if not used then remember entry in rdx -- } else { -- Label L; -- __ jccb(Assembler::notEqual, L); -- __ mov(rdx, rcx); // if not used then remember entry in rdx -- __ bind(L); -- } -+ __ cmovptr(Assembler::equal, rdx, rcx); // if not used then remember entry in rdx - __ cmpptr(rax, Address(rcx, BasicObjectLock::obj_offset_in_bytes())); // check if current entry is for same object - __ jccb(Assembler::equal, exit); // if same object then stop searching - __ addptr(rcx, entry_size); // otherwise advance to next entry
--- a/patches/hotspot/original/arm.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,55 +0,0 @@ -diff -Nru openjdk.orig/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp openjdk/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp ---- openjdk.orig/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp 2010-05-28 11:10:30.000000000 +0100 -+++ openjdk/hotspot/src/cpu/zero/vm/bytecodes_zero.hpp 2010-06-17 17:28:49.000000000 +0100 -@@ -1,6 +1,7 @@ - /* - * Copyright (c) 1997, 2007, Oracle and/or its affiliates. All rights reserved. - * Copyright 2009 Red Hat, Inc. -+ * Copyright 2009 Edward Nevill - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -23,4 +24,42 @@ - * - */ - --// This file is intentionally empty -+#ifdef HOTSPOT_ASM -+#define _iaccess_0 ((Bytecodes::Code)0xdb) -+#define _iaccess_1 ((Bytecodes::Code)0xdc) -+#define _iaccess_2 ((Bytecodes::Code)0xdd) -+#define _iaccess_3 ((Bytecodes::Code)0xde) -+ -+#define _invokeresolved ((Bytecodes::Code)0xdf) -+#define _invokespecialresolved ((Bytecodes::Code)0xe0) -+#define _invokestaticresolved ((Bytecodes::Code)0xe1) -+ -+#define _iload_iload ((Bytecodes::Code)0xe3) -+#define _iload_iload_N ((Bytecodes::Code)0xe4) -+ -+#define _dmac ((Bytecodes::Code)0xe6) -+ -+ _iload_0_iconst_N , // 231 -+ _iload_1_iconst_N , // 232 -+ _iload_2_iconst_N , // 233 -+ _iload_3_iconst_N , // 234 -+ _iload_iconst_N , // 235 -+ _iadd_istore_N , // 236 -+ _isub_istore_N , // 237 -+ _iand_istore_N , // 238 -+ _ior_istore_N , // 239 -+ _ixor_istore_N , // 240 -+ _iadd_u4store , // 241 -+ _isub_u4store , // 242 -+ _iand_u4store , // 243 -+ _ior_u4store , // 244 -+ _ixor_u4store , // 245 -+ _iload_0_iload , // 246 -+ _iload_1_iload , // 247 -+ _iload_2_iload , // 248 -+ _iload_3_iload , // 249 -+ _iload_0_iload_N , // 250 -+ _iload_1_iload_N , // 251 -+ _iload_2_iload_N , // 252 -+ _iload_3_iload_N , // 253 -+#endif // HOTSPOT_ASM
--- a/patches/hotspot/original/gcc-suffix.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -diff -Nru openjdk.orig/hotspot/agent/src/os/linux/Makefile openjdk/hotspot/agent/src/os/linux/Makefile ---- openjdk.orig/hotspot/agent/src/os/linux/Makefile 2010-09-01 01:23:45.000000000 +0100 -+++ openjdk/hotspot/agent/src/os/linux/Makefile 2010-09-19 14:09:17.907131214 +0100 -@@ -23,7 +23,7 @@ - # - - ARCH := $(shell if ([ `uname -m` = "ia64" ]) ; then echo ia64 ; elif ([ `uname -m` = "x86_64" ]) ; then echo amd64; elif ([ `uname -m` = "sparc64" ]) ; then echo sparc; else echo i386 ; fi ) --GCC = gcc -+GCC = gcc$(GCC_SUFFIX) - - JAVAH = ${JAVA_HOME}/bin/javah - -diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make ---- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2010-09-19 14:07:15.000000000 +0100 -+++ openjdk/hotspot/make/linux/makefiles/gcc.make 2010-09-19 14:09:58.015272246 +0100 -@@ -26,11 +26,11 @@ - # CC, CPP & AS - - ifdef ALT_COMPILER_PATH --CPP = $(ALT_COMPILER_PATH)/g++ --CC = $(ALT_COMPILER_PATH)/gcc -+CPP = $(ALT_COMPILER_PATH)/g++$(GCC_SUFFIX) -+CC = $(ALT_COMPILER_PATH)/gcc$(GCC_SUFFIX) - else --CPP = g++ --CC = gcc -+CPP = g++$(GCC_SUFFIX) -+CC = gcc$(GCC_SUFFIX) - endif - - AS = $(CC) -c
--- a/patches/hotspot/original/ia64-fix.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ ---- openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp~ 2010-10-08 20:29:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp 2010-11-29 07:56:22.000000000 +0000 -@@ -1287,12 +1287,7 @@ - jfloat f; - jdouble r; - f = STACK_FLOAT(-1); --#ifdef IA64 -- // IA64 gcc bug -- r = ( f == 0.0f ) ? (jdouble) f : (jdouble) f + ia64_double_zero; --#else - r = (jdouble) f; --#endif - MORE_STACK(-1); // POP - SET_STACK_DOUBLE(r, 1); - UPDATE_PC_AND_TOS_AND_CONTINUE(1, 2); ---- openjdk/hotspot/src/share/vm/opto/connode.cpp~ 2010-10-08 20:29:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/opto/connode.cpp 2010-11-29 07:57:22.000000000 +0000 -@@ -712,12 +712,7 @@ - if( t == Type::TOP ) return Type::TOP; - if( t == Type::FLOAT ) return Type::DOUBLE; - const TypeF *tf = t->is_float_constant(); --#ifndef IA64 - return TypeD::make( (double)tf->getf() ); --#else -- float x = tf->getf(); -- return TypeD::make( (x == 0.0f) ? (double)x : (double)x + ia64_double_zero ); --#endif - } - - //=============================================================================
--- a/patches/hotspot/original/no-precompiled-headers.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,35 +0,0 @@ ---- openjdk/hotspot/make/linux/makefiles/gcc.make~ 2009-10-30 11:54:26.000000000 +0100 -+++ openjdk/hotspot/make/linux/makefiles/gcc.make 2009-10-30 11:55:34.000000000 +0100 -@@ -34,13 +34,14 @@ - CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1) - CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2) - -+ifeq (,$(DISABLE_PRECOMPILED_HEADER)) - # check for precompiled headers support - ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0" - USE_PRECOMPILED_HEADER=1 - PRECOMPILED_HEADER_DIR=. - PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/incls/_precompiled.incl.gch - endif -- -+endif - - #------------------------------------------------------------------------ - # Compiler flags ---- openjdk/hotspot/make/solaris/makefiles/gcc.make~ 2009-10-30 11:54:26.000000000 +0100 -+++ openjdk/hotspot/make/solaris/makefiles/gcc.make 2009-10-30 11:56:05.000000000 +0100 -@@ -45,12 +45,14 @@ - $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2) - - -+ifeq (,$(DISABLE_PRECOMPILED_HEADER)) - # check for precompiled headers support - ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0" - USE_PRECOMPILED_HEADER=1 - PRECOMPILED_HEADER_DIR=. - PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/incls/_precompiled.incl.gch - endif -+endif - - - #------------------------------------------------------------------------
--- a/patches/hotspot/original/params-cast-size_t.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,295 +0,0 @@ -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2010-09-01 01:23:45.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2010-09-19 16:07:14.939307365 +0100 -@@ -2619,7 +2619,7 @@ - if (ResizeOldPLAB && CMSOldPLABResizeQuicker) { - size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks); - n_blks += CMSOldPLABReactivityFactor*multiple*n_blks; -- n_blks = MIN2(n_blks, CMSOldPLABMax); -+ n_blks = MIN2(n_blks, (size_t)CMSOldPLABMax); - } - assert(n_blks > 0, "Error"); - _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl); -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2010-09-01 01:23:45.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2010-09-19 16:07:14.915307286 +0100 -@@ -967,7 +967,7 @@ - if (free_percentage < desired_free_percentage) { - size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage)); - assert(desired_capacity >= capacity(), "invalid expansion size"); -- expand_bytes = MAX2(desired_capacity - capacity(), MinHeapDeltaBytes); -+ expand_bytes = MAX2((long unsigned int) (desired_capacity - capacity()), (long unsigned int) MinHeapDeltaBytes); - } - if (expand_bytes > 0) { - if (PrintGCDetails && Verbose) { -@@ -6191,7 +6191,7 @@ - HeapWord* curAddr = _markBitMap.startWord(); - while (curAddr < _markBitMap.endWord()) { - size_t remaining = pointer_delta(_markBitMap.endWord(), curAddr); -- MemRegion chunk(curAddr, MIN2(CMSBitMapYieldQuantum, remaining)); -+ MemRegion chunk(curAddr, MIN2((size_t) CMSBitMapYieldQuantum, remaining)); - _markBitMap.clear_large_range(chunk); - if (ConcurrentMarkSweepThread::should_yield() && - !foregroundGCIsActive() && -@@ -6484,7 +6484,7 @@ - return; - } - // Double capacity if possible -- size_t new_capacity = MIN2(_capacity*2, MarkStackSizeMax); -+ size_t new_capacity = MIN2((size_t) (_capacity*2), (size_t) MarkStackSizeMax); - // Do not give up existing stack until we have managed to - // get the double capacity that we desired. - ReservedSpace rs(ReservedSpace::allocation_align_size_up( -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2010-09-19 15:38:16.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2010-09-19 16:07:14.915307286 +0100 -@@ -452,7 +452,7 @@ - _regionStack(), - // _finger set in set_non_marking_state - -- _max_task_num(MAX2(ParallelGCThreads, (size_t)1)), -+ _max_task_num(MAX2((size_t)ParallelGCThreads, (size_t)1)), - // _active_tasks set in set_non_marking_state - // _tasks set inside the constructor - _task_queues(new CMTaskQueueSet((int) _max_task_num)), -@@ -503,7 +503,7 @@ - SATBMarkQueueSet& satb_qs = JavaThread::satb_mark_queue_set(); - satb_qs.set_buffer_size(G1SATBBufferSize); - -- int size = (int) MAX2(ParallelGCThreads, (size_t)1); -+ int size = (int) MAX2((size_t)ParallelGCThreads, (size_t)1); - _par_cleanup_thread_state = NEW_C_HEAP_ARRAY(ParCleanupThreadState*, size); - for (int i = 0 ; i < size; i++) { - _par_cleanup_thread_state[i] = new ParCleanupThreadState; -@@ -562,7 +562,7 @@ - _sleep_factor = sleep_factor; - _marking_task_overhead = marking_task_overhead; - } else { -- _parallel_marking_threads = MAX2((ParallelGCThreads + 2) / 4, (size_t)1); -+ _parallel_marking_threads = MAX2((size_t)((ParallelGCThreads + 2) / 4), (size_t)1); - _sleep_factor = 0.0; - _marking_task_overhead = 1.0; - } -@@ -689,7 +689,7 @@ - } - - ConcurrentMark::~ConcurrentMark() { -- int size = (int) MAX2(ParallelGCThreads, (size_t)1); -+ int size = (int) MAX2((size_t)ParallelGCThreads, (size_t)1); - for (int i = 0; i < size; i++) delete _par_cleanup_thread_state[i]; - FREE_C_HEAP_ARRAY(ParCleanupThreadState*, - _par_cleanup_thread_state); -@@ -1781,7 +1781,7 @@ - if (has_aborted()) return; - - int first = 0; -- int last = (int)MAX2(ParallelGCThreads, (size_t)1); -+ int last = (int)MAX2((size_t)ParallelGCThreads, (size_t)1); - for (int t = 0; t < last; t++) { - UncleanRegionList* list = &_par_cleanup_thread_state[t]->list; - assert(list->well_formed(), "Inv"); -@@ -3281,7 +3281,7 @@ - // of things to do) or totally (at the very end). - size_t target_size; - if (partially) -- target_size = MIN2((size_t)_task_queue->max_elems()/3, GCDrainStackTargetSize); -+ target_size = MIN2((size_t)_task_queue->max_elems()/3, (size_t)GCDrainStackTargetSize); - else - target_size = 0; - -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2010-09-01 01:23:45.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2010-09-19 16:07:14.915307286 +0100 -@@ -1066,7 +1066,7 @@ - // This can be done by either mutator threads together with the - // concurrent refinement threads or GC threads. - int HeapRegionRemSet::num_par_rem_sets() { -- return (int)MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), ParallelGCThreads); -+ return (int)MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), (size_t)ParallelGCThreads); - } - - HeapRegionRemSet::HeapRegionRemSet(G1BlockOffsetSharedArray* bosa, -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2010-09-01 01:23:45.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2010-09-19 16:07:14.915307286 +0100 -@@ -864,8 +864,8 @@ - void PSParallelCompact::initialize_dead_wood_limiter() - { - const size_t max = 100; -- _dwl_mean = double(MIN2(ParallelOldDeadWoodLimiterMean, max)) / 100.0; -- _dwl_std_dev = double(MIN2(ParallelOldDeadWoodLimiterStdDev, max)) / 100.0; -+ _dwl_mean = double(MIN2((size_t) ParallelOldDeadWoodLimiterMean, max)) / 100.0; -+ _dwl_std_dev = double(MIN2((size_t) ParallelOldDeadWoodLimiterStdDev, max)) / 100.0; - _dwl_first_term = 1.0 / (sqrt(2.0 * M_PI) * _dwl_std_dev); - DEBUG_ONLY(_dwl_initialized = true;) - _dwl_adjustment = normal_distribution(1.0); -diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp ---- openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp 2010-09-01 01:23:45.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp 2010-09-19 16:07:14.915307286 +0100 -@@ -63,7 +63,7 @@ - _last_used = current_live; - - // We have different alignment constraints than the rest of the heap. -- const size_t alignment = MAX2(MinPermHeapExpansion, -+ const size_t alignment = MAX2((size_t) MinPermHeapExpansion, - virtual_space()->alignment()); - - // Compute the desired size: -diff -Nru openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp ---- openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp 2010-09-01 01:23:45.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp 2010-09-19 16:07:14.939307365 +0100 -@@ -297,7 +297,7 @@ - // yield a size that is too small) and bound it by MaxNewSize above. - // Ergonomics plays here by previously calculating the desired - // NewSize and MaxNewSize. -- max_new_size = MIN2(MAX2(max_new_size, NewSize), MaxNewSize); -+ max_new_size = MIN2(MAX2(max_new_size, (size_t)NewSize), (size_t)MaxNewSize); - } - assert(max_new_size > 0, "All paths should set max_new_size"); - -@@ -324,7 +324,7 @@ - // generally small compared to the NewRatio calculation. - _min_gen0_size = NewSize; - desired_new_size = NewSize; -- max_new_size = MAX2(max_new_size, NewSize); -+ max_new_size = MAX2(max_new_size, (size_t) NewSize); - } else { - // For the case where NewSize is the default, use NewRatio - // to size the minimum and initial generation sizes. -@@ -332,10 +332,10 @@ - // NewRatio is overly large, the resulting sizes can be too - // small. - _min_gen0_size = MAX2(scale_by_NewRatio_aligned(min_heap_byte_size()), -- NewSize); -+ (size_t) NewSize); - desired_new_size = - MAX2(scale_by_NewRatio_aligned(initial_heap_byte_size()), -- NewSize); -+ (size_t) NewSize); - } - - assert(_min_gen0_size > 0, "Sanity check"); -@@ -390,14 +390,14 @@ - // Adjust gen0 down to accomodate OldSize - *gen0_size_ptr = heap_size - min_gen0_size; - *gen0_size_ptr = -- MAX2((uintx)align_size_down(*gen0_size_ptr, min_alignment()), -+ MAX2((size_t)align_size_down(*gen0_size_ptr, min_alignment()), - min_alignment()); - assert(*gen0_size_ptr > 0, "Min gen0 is too large"); - result = true; - } else { - *gen1_size_ptr = heap_size - *gen0_size_ptr; - *gen1_size_ptr = -- MAX2((uintx)align_size_down(*gen1_size_ptr, min_alignment()), -+ MAX2((size_t)align_size_down(*gen1_size_ptr, min_alignment()), - min_alignment()); - } - } -@@ -421,7 +421,7 @@ - // for setting the gen1 maximum. - _max_gen1_size = max_heap_byte_size() - _max_gen0_size; - _max_gen1_size = -- MAX2((uintx)align_size_down(_max_gen1_size, min_alignment()), -+ MAX2((size_t)align_size_down(_max_gen1_size, min_alignment()), - min_alignment()); - // If no explicit command line flag has been set for the - // gen1 size, use what is left for gen1. -@@ -435,11 +435,11 @@ - "gen0 has an unexpected minimum size"); - set_min_gen1_size(min_heap_byte_size() - min_gen0_size()); - set_min_gen1_size( -- MAX2((uintx)align_size_down(_min_gen1_size, min_alignment()), -+ MAX2((size_t)align_size_down(_min_gen1_size, min_alignment()), - min_alignment())); - set_initial_gen1_size(initial_heap_byte_size() - initial_gen0_size()); - set_initial_gen1_size( -- MAX2((uintx)align_size_down(_initial_gen1_size, min_alignment()), -+ MAX2((size_t)align_size_down(_initial_gen1_size, min_alignment()), - min_alignment())); - - } else { -diff -Nru openjdk.orig/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp openjdk/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp ---- openjdk.orig/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp 2010-09-01 01:23:45.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp 2010-09-19 16:07:14.939307365 +0100 -@@ -221,7 +221,7 @@ - size_t init_sz; - - if (TLABSize > 0) { -- init_sz = MIN2(TLABSize / HeapWordSize, max_size()); -+ init_sz = MIN2((size_t) (TLABSize / HeapWordSize), max_size()); - } else if (global_stats() == NULL) { - // Startup issue - main thread initialized before heap initialized. - init_sz = min_size(); -diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp openjdk/hotspot/src/share/vm/runtime/arguments.cpp ---- openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp 2010-09-19 15:38:15.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp 2010-09-19 16:07:14.939307365 +0100 -@@ -1073,7 +1073,7 @@ - // NewSize was set on the command line and it is larger than - // preferred_max_new_size. - if (!FLAG_IS_DEFAULT(NewSize)) { // NewSize explicitly set at command-line -- FLAG_SET_ERGO(uintx, MaxNewSize, MAX2(NewSize, preferred_max_new_size)); -+ FLAG_SET_ERGO(uintx, MaxNewSize, MAX2((size_t) NewSize, preferred_max_new_size)); - } else { - FLAG_SET_ERGO(uintx, MaxNewSize, preferred_max_new_size); - } -@@ -1092,7 +1092,7 @@ - // there was no obvious reason. Also limit to the case where - // MaxNewSize has not been set. - -- FLAG_SET_ERGO(intx, NewRatio, MAX2(NewRatio, new_ratio)); -+ FLAG_SET_ERGO(intx, NewRatio, MAX2((intx) NewRatio, new_ratio)); - - // Code along this path potentially sets NewSize and OldSize - -@@ -1134,8 +1134,8 @@ - // Unless explicitly requested otherwise, make young gen - // at least min_new, and at most preferred_max_new_size. - if (FLAG_IS_DEFAULT(NewSize)) { -- FLAG_SET_ERGO(uintx, NewSize, MAX2(NewSize, min_new)); -- FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, NewSize)); -+ FLAG_SET_ERGO(uintx, NewSize, MAX2((size_t) NewSize, min_new)); -+ FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, (size_t) NewSize)); - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty - tty->print_cr("Ergo set NewSize: " SIZE_FORMAT, NewSize); -@@ -1146,7 +1146,7 @@ - // later NewRatio will decide how it grows; see above. - if (FLAG_IS_DEFAULT(OldSize)) { - if (max_heap > NewSize) { -- FLAG_SET_ERGO(uintx, OldSize, MIN2(3*NewSize, max_heap - NewSize)); -+ FLAG_SET_ERGO(uintx, OldSize, MIN2((size_t) 3*NewSize, max_heap - (size_t) NewSize)); - if (PrintGCDetails && Verbose) { - // Too early to use gclog_or_tty - tty->print_cr("Ergo set OldSize: " SIZE_FORMAT, OldSize); ---- openjdk.orig/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp 2010-10-28 05:45:16.000000000 -0400 -+++ openjdk/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp 2010-10-28 05:46:22.000000000 -0400 -@@ -37,7 +37,7 @@ void objArrayKlass::objarray_follow_cont - const size_t beg_index = size_t(index); - assert(beg_index < len || len == 0, "index too large"); - -- const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride); -+ const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride); - const size_t end_index = beg_index + stride; - T* const base = (T*)a->base(); - T* const beg = base + beg_index; -@@ -71,7 +71,7 @@ void objArrayKlass::objarray_follow_cont - const size_t beg_index = size_t(index); - assert(beg_index < len || len == 0, "index too large"); - -- const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride); -+ const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride); - const size_t end_index = beg_index + stride; - T* const base = (T*)a->base(); - T* const beg = base + beg_index; ---- openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp~ 2010-10-08 20:29:24.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2010-11-29 07:27:56.000000000 +0000 -@@ -163,7 +163,7 @@ - const size_t num_overflow_elems = of_stack->size(); - const size_t space_available = queue->max_elems() - queue->size(); - const size_t num_take_elems = MIN3(space_available / 4, -- ParGCDesiredObjsFromOverflowList, -+ (size_t) ParGCDesiredObjsFromOverflowList, - num_overflow_elems); - // Transfer the most recent num_take_elems from the overflow - // stack to our work queue.
--- a/patches/hotspot/original/sparc-buildfixes.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,35 +0,0 @@ ---- openjdk/hotspot/make/linux/makefiles/gcc.make.orig 2008-12-04 20:29:08.000000000 +0000 -+++ openjdk/hotspot/make/linux/makefiles/gcc.make 2008-12-04 20:32:54.000000000 +0000 -@@ -52,6 +52,10 @@ - PICFLAG = -fpic - endif - -+ifneq ($(filter sparc sparcv9,$(BUILDARCH)),) -+PICFLAG = -fPIC -+endif -+ - VM_PICFLAG/LIBJVM = $(PICFLAG) - VM_PICFLAG/AOUT = - VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO)) ---- openjdk/hotspot/make/linux/makefiles/defs.make.orig 2008-12-04 20:29:04.000000000 +0000 -+++ openjdk/hotspot/make/linux/makefiles/defs.make 2008-12-04 20:32:54.000000000 +0000 -@@ -59,7 +59,7 @@ - endif - - # sparc --ifeq ($(ARCH), sparc64) -+ifneq (,$(filter $(ARCH), sparc sparc64)) - ifeq ($(ARCH_DATA_MODEL), 64) - ARCH_DATA_MODEL = 64 - MAKE_ARGS += LP64=1 ---- openjdk/hotspot/src/cpu/sparc/vm/frame_sparc.hpp.orig 2008-12-04 20:32:19.000000000 +0000 -+++ openjdk/hotspot/src/cpu/sparc/vm/frame_sparc.hpp 2008-12-04 20:32:54.000000000 +0000 -@@ -264,7 +264,7 @@ - - private: - -- constantPoolCacheOop* frame::interpreter_frame_cpoolcache_addr() const; -+ constantPoolCacheOop* interpreter_frame_cpoolcache_addr() const; - - #ifndef CC_INTERP -
--- a/patches/hotspot/original/systemtap.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,98 +0,0 @@ -diff -Nru openjdk.orig/hotspot/src/share/vm/utilities/dtrace.hpp openjdk/hotspot/src/share/vm/utilities/dtrace.hpp ---- openjdk.orig/hotspot/src/share/vm/utilities/dtrace.hpp 2010-08-27 20:30:52.000000000 +0100 -+++ openjdk/hotspot/src/share/vm/utilities/dtrace.hpp 2010-08-27 22:38:19.569540300 +0100 -@@ -1,5 +1,6 @@ - /* - * Copyright (c) 2005, 2007, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2009 Red Hat, Inc. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -22,7 +23,7 @@ - * - */ - --#if defined(SOLARIS) && defined(DTRACE_ENABLED) -+#if defined(DTRACE_ENABLED) - - #include <sys/sdt.h> - -@@ -33,7 +34,7 @@ - #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() \ - do { volatile size_t dtrace_workaround_tail_call_bug = 1; } while (0) - --#else // ndef SOLARIS || ndef DTRACE_ENABLED -+#else // ndef DTRACE_ENABLED - - #define DTRACE_ONLY(x) - #define NOT_DTRACE(x) x -@@ -44,11 +45,18 @@ - #define DTRACE_PROBE3(a,b,c,d,e) {;} - #define DTRACE_PROBE4(a,b,c,d,e,f) {;} - #define DTRACE_PROBE5(a,b,c,d,e,f,g) {;} -+#define DTRACE_PROBE6(a,b,c,d,e,f,g,h) {;} -+#define DTRACE_PROBE7(a,b,c,d,e,f,g,h,i) {;} -+#define DTRACE_PROBE8(a,b,c,d,e,f,g,h,i,j) {;} -+#define DTRACE_PROBE9(a,b,c,d,e,f,g,h,i,j,k) {;} -+#define DTRACE_PROBE10(a,b,c,d,e,f,g,h,i,j,k,l) {;} - - #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() - - #endif - -+#if defined(SOLARIS) -+// Solaris dtrace needs actual extern function decls. - #define HS_DTRACE_PROBE_FN(provider,name)\ - __dtrace_##provider##___##name - -@@ -56,6 +64,11 @@ - DTRACE_ONLY(extern "C" void HS_DTRACE_PROBE_FN(provider,name) args) - #define HS_DTRACE_PROBE_CDECL_N(provider,name,args) \ - DTRACE_ONLY(extern void HS_DTRACE_PROBE_FN(provider,name) args) -+#else -+// Systemtap dtrace compatible probes on GNU/Linux don't. -+#define HS_DTRACE_PROBE_DECL_N(provider,name,args) -+#define HS_DTRACE_PROBE_CDECL_N(provider,name,args) -+#endif - - /* Dtrace probe declarations */ - #define HS_DTRACE_PROBE_DECL(provider,name) \ -@@ -94,6 +107,8 @@ - uintptr_t,uintptr_t,uintptr_t)) - - /* Dtrace probe definitions */ -+#if defined(SOLARIS) -+// Solaris dtrace uses actual function calls. - #define HS_DTRACE_PROBE_N(provider,name, args) \ - DTRACE_ONLY(HS_DTRACE_PROBE_FN(provider,name) args) - -@@ -129,3 +144,29 @@ - HS_DTRACE_PROBE_N(provider,name,((uintptr_t)a0,(uintptr_t)a1,(uintptr_t)a2,\ - (uintptr_t)a3,(uintptr_t)a4,(uintptr_t)a5,(uintptr_t)a6,(uintptr_t)a7,\ - (uintptr_t)a8,(uintptr_t)a9)) -+#else -+// Systemtap dtrace compatible probes on GNU/Linux use direct macros. -+#define HS_DTRACE_PROBE(provider,name) HS_DTRACE_PROBE0(provider,name) -+#define HS_DTRACE_PROBE0(provider,name)\ -+ DTRACE_PROBE(provider,name) -+#define HS_DTRACE_PROBE1(provider,name,a0)\ -+ DTRACE_PROBE1(provider,name,a0) -+#define HS_DTRACE_PROBE2(provider,name,a0,a1)\ -+ DTRACE_PROBE2(provider,name,a0,a1) -+#define HS_DTRACE_PROBE3(provider,name,a0,a1,a2)\ -+ DTRACE_PROBE3(provider,name,a0,a1,a2) -+#define HS_DTRACE_PROBE4(provider,name,a0,a1,a2,a3)\ -+ DTRACE_PROBE4(provider,name,a0,a1,a2,a3) -+#define HS_DTRACE_PROBE5(provider,name,a0,a1,a2,a3,a4)\ -+ DTRACE_PROBE5(provider,name,a0,a1,a2,a3,a4) -+#define HS_DTRACE_PROBE6(provider,name,a0,a1,a2,a3,a4,a5)\ -+ DTRACE_PROBE6(provider,name,a0,a1,a2,a3,a4,a5) -+#define HS_DTRACE_PROBE7(provider,name,a0,a1,a2,a3,a4,a5,a6)\ -+ DTRACE_PROBE7(provider,name,a0,a1,a2,a3,a4,a5,a6) -+#define HS_DTRACE_PROBE8(provider,name,a0,a1,a2,a3,a4,a5,a6,a7)\ -+ DTRACE_PROBE8(provider,name,a0,a1,a2,a3,a4,a5,a6,a7) -+#define HS_DTRACE_PROBE9(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)\ -+ DTRACE_PROBE9(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8) -+#define HS_DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)\ -+ DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8) -+#endif
--- a/patches/hotspot/original/text-relocations.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,61 +0,0 @@ -diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make ---- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2008-07-17 08:40:27.000000000 +0100 -+++ openjdk/hotspot/make/linux/makefiles/gcc.make 2008-07-21 23:10:50.000000000 +0100 -@@ -46,7 +46,11 @@ - # Compiler flags - - # position-independent code -+ifneq ($(filter alpha parisc ppc ppc64 s390 s390x sparc sparc64 sparcv9,$(ZERO_LIBARCH)),) - PICFLAG = -fPIC -+else -+PICFLAG = -fpic -+endif - - VM_PICFLAG/LIBJVM = $(PICFLAG) - VM_PICFLAG/AOUT = ---- rules.make.orig 2008-12-12 11:23:31.000000000 -0500 -+++ openjdk/hotspot/make/linux/makefiles/rules.make 2008-12-12 11:32:26.000000000 -0500 -@@ -138,20 +138,10 @@ - include $(GAMMADIR)/make/pic.make - endif - --# The non-PIC object files are only generated for 32 bit platforms. --ifdef LP64 - %.o: %.cpp - @echo Compiling $< - $(QUIETLY) $(REMOVE_TARGET) - $(QUIETLY) $(COMPILE.CC) -o $@ $< $(COMPILE_DONE) --else --%.o: %.cpp -- @echo Compiling $< -- $(QUIETLY) $(REMOVE_TARGET) -- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \ -- $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) -o $@ $< $(COMPILE_DONE), \ -- $(COMPILE.CC) -o $@ $< $(COMPILE_DONE)) --endif - - %.o: %.s - @echo Assembling $< ---- rules.make.orig 2008-12-12 11:42:55.000000000 -0500 -+++ openjdk/hotspot/make/solaris/makefiles/rules.make 2008-12-12 11:44:01.000000000 -0500 -@@ -138,20 +138,10 @@ - include $(GAMMADIR)/make/pic.make - endif - --# Sun compiler for 64 bit Solaris does not support building non-PIC object files. --ifdef LP64 - %.o: %.cpp - @echo Compiling $< - $(QUIETLY) $(REMOVE_TARGET) - $(QUIETLY) $(COMPILE.CC) -o $@ $< $(COMPILE_DONE) --else --%.o: %.cpp -- @echo Compiling $< -- $(QUIETLY) $(REMOVE_TARGET) -- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \ -- $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) -o $@ $< $(COMPILE_DONE), \ -- $(COMPILE.CC) -o $@ $< $(COMPILE_DONE)) --endif - - %.o: %.s - @echo Assembling $<
--- a/patches/hotspot/original/too-many-args.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,46 +0,0 @@ ---- openjdk/hotspot/make/linux/makefiles/sa.make.orig 2010-06-21 23:12:13.000000000 +0200 -+++ openjdk/hotspot/make/linux/makefiles/sa.make 2010-06-28 01:11:27.022322578 +0200 -@@ -45,6 +45,9 @@ - AGENT_FILES1 := $(shell /usr/bin/test -d $(AGENT_DIR) && /bin/ls $(AGENT_FILES1)) - AGENT_FILES2 := $(shell /usr/bin/test -d $(AGENT_DIR) && /bin/ls $(AGENT_FILES2)) - -+AGENT_FILES1_LIST := $(TOPDIR)/../agent1.classes.list -+AGENT_FILES2_LIST := $(TOPDIR)/../agent2.classes.list -+ - SA_CLASSDIR = $(GENERATED)/saclasses - - SA_BUILD_VERSION_PROP = "sun.jvm.hotspot.runtime.VM.saBuildVersion=$(SA_BUILD_VERSION)" -@@ -59,7 +62,7 @@ - $(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \ - fi - --$(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2) -+$(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2) agent_files_preclean - $(QUIETLY) echo "Making $@" - $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \ - echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \ -@@ -74,8 +77,11 @@ - mkdir -p $(SA_CLASSDIR); \ - fi - -- $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) $(AGENT_FILES1) -- $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) $(AGENT_FILES2) -+ $(foreach file,$(AGENT_FILES1),$(shell echo $(file) >> $(AGENT_FILES1_LIST))) -+ $(foreach file,$(AGENT_FILES2),$(shell echo $(file) >> $(AGENT_FILES2_LIST))) -+ -+ $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES1_LIST) -+ $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -source 1.4 -target 1.4 -classpath $(SA_CLASSPATH) -sourcepath $(AGENT_SRC_DIR) -d $(SA_CLASSDIR) @$(AGENT_FILES2_LIST) - - $(QUIETLY) $(REMOTE) $(COMPILE.RMIC) -classpath $(SA_CLASSDIR) -d $(SA_CLASSDIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer - $(QUIETLY) echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES) -@@ -92,6 +98,10 @@ - $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext - $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.sparc.SPARCThreadContext - -+agent_files_preclean: -+ rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST) -+ - clean: - rm -rf $(SA_CLASSDIR) - rm -rf $(GENERATED)/sa-jdi.jar -+ rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/ia64-fix.patch Wed May 18 22:49:21 2011 +0100 @@ -0,0 +1,15 @@ +--- openjdk/hotspot/src/share/vm/opto/connode.cpp~ 2010-10-08 20:29:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/opto/connode.cpp 2010-11-29 07:57:22.000000000 +0000 +@@ -712,12 +712,7 @@ + if( t == Type::TOP ) return Type::TOP; + if( t == Type::FLOAT ) return Type::DOUBLE; + const TypeF *tf = t->is_float_constant(); +-#ifndef IA64 + return TypeD::make( (double)tf->getf() ); +-#else +- float x = tf->getf(); +- return TypeD::make( (x == 0.0f) ? (double)x : (double)x + ia64_double_zero ); +-#endif + } + + //=============================================================================
--- a/patches/openjdk/6599601-mark_sun_toolkit_privileged_code.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -# HG changeset patch -# User ptisnovs -# Date 1305021522 -7200 -# Node ID fe6a8ddfe33d460fe19867c6625ee6390934e4b7 -# Parent 593007922695685523c0730db47e379c26490967 -6599601: Permissions/AWTWindowTest and Permissions/DFLoadTest failed in PIT 7.0 B20 on Windows Vista -Summary: Correction of checking sun.awt.nativedebug flag. -Reviewed-by: ohair - -diff -r 593007922695 -r fe6a8ddfe33d src/share/classes/sun/awt/SunToolkit.java ---- openjdk/jdk/src/share/classes/sun/awt/SunToolkit.java Tue Jan 11 12:36:43 2011 -0500 -+++ openjdk/jdk/src/share/classes/sun/awt/SunToolkit.java Tue May 10 11:58:42 2011 +0200 -@@ -70,8 +70,7 @@ - - /* Load debug settings for native code */ - static { -- String nativeDebug = System.getProperty("sun.awt.nativedebug"); -- if ("true".equalsIgnoreCase(nativeDebug)) { -+ if (AccessController.doPrivileged(new GetBooleanAction("sun.awt.nativedebug"))) { - DebugSettings.init(); - } - };
--- a/patches/openjdk/6633275-shaped_translucent_windows.patch Wed May 18 15:46:37 2011 +0100 +++ b/patches/openjdk/6633275-shaped_translucent_windows.patch Wed May 18 22:49:21 2011 +0100 @@ -1,6 +1,6 @@ diff -Nru openjdk.orig/jdk/make/sun/awt/FILES_c_windows.gmk openjdk/jdk/make/sun/awt/FILES_c_windows.gmk ---- openjdk.orig/jdk/make/sun/awt/FILES_c_windows.gmk 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/make/sun/awt/FILES_c_windows.gmk 2011-02-16 01:27:24.988327481 +0000 +--- openjdk.orig/jdk/make/sun/awt/FILES_c_windows.gmk 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/make/sun/awt/FILES_c_windows.gmk 2011-05-18 16:12:18.052791528 +0100 @@ -1,5 +1,5 @@ # -# Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved. @@ -19,8 +19,8 @@ FILES_cpp = \ CmdIDList.cpp \ diff -Nru openjdk.orig/jdk/make/sun/awt/make.depend openjdk/jdk/make/sun/awt/make.depend ---- openjdk.orig/jdk/make/sun/awt/make.depend 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/make/sun/awt/make.depend 2011-02-16 01:27:25.000326551 +0000 +--- openjdk.orig/jdk/make/sun/awt/make.depend 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/make/sun/awt/make.depend 2011-05-18 16:12:18.068791794 +0100 @@ -16,7 +16,7 @@ $(OBJDIR)/awt_AWTEvent.obj:: $(CLASSHDRDIR)/java_awt_AWTEvent.h $(CLASSHDRDIR)/java_awt_Component.h $(CLASSHDRDIR)/java_awt_Dimension.h $(CLASSHDRDIR)/java_awt_Event.h $(CLASSHDRDIR)/java_awt_event_FocusEvent.h $(CLASSHDRDIR)/java_awt_event_KeyEvent.h $(CLASSHDRDIR)/java_awt_event_MouseEvent.h $(CLASSHDRDIR)/java_awt_event_WindowEvent.h $(CLASSHDRDIR)/java_awt_Font.h $(CLASSHDRDIR)/sun_awt_FontDescriptor.h $(CLASSHDRDIR)/sun_awt_PlatformFont.h $(CLASSHDRDIR)/sun_awt_windows_WComponentPeer.h $(CLASSHDRDIR)/sun_awt_windows_WFontMetrics.h $(CLASSHDRDIR)/sun_awt_windows_WObjectPeer.h $(CLASSHDRDIR)/sun_awt_windows_WToolkit.h ../../../src/share/javavm/export/jni.h ../../../src/share/javavm/export/jvm.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/share/native/sun/awt/debug/debug_assert.h ../../../src/share/native/sun/awt/debug/debug_mem.h ../../../src/share/native/sun/awt/debug/debug_trace.h ../../../src/share/native/sun/awt/debug/debug_util.h ../../../src/share/native/sun/awt/image/cvutils/img_globals.h ../../../src/share/native/sun/java2d/SurfaceData.h ../../../src/share/native/sun/java2d/Trace.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/javavm/export/jvm_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/java2d/windows/GDIWindowSurfaceData.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/awt.h ../../../src/windows/native/sun/windows/awtmsg.h ../../../src/windows/native/sun/windows/awt_AWTEvent.h ../../../src/windows/native/sun/windows/awt_Brush.h ../../../src/windows/native/sun/windows/awt_Component.h ../../../src/windows/native/sun/windows/awt_Debug.h ../../../src/windows/native/sun/windows/awt_Font.h ../../../src/windows/native/sun/windows/awt_GDIObject.h ../../../src/windows/native/sun/windows/awt_MMStub.h ../../../src/windows/native/sun/windows/awt_Multimon.h ../../../src/windows/native/sun/windows/awt_Object.h ../../../src/windows/native/sun/windows/awt_Palette.h ../../../src/windows/native/sun/windows/awt_Pen.h ../../../src/windows/native/sun/windows/awt_Toolkit.h ../../../src/windows/native/sun/windows/awt_Unicode.h ../../../src/windows/native/sun/windows/awt_Win32GraphicsDevice.h ../../../src/windows/native/sun/windows/colordata.h ../../../src/windows/native/sun/windows/Devices.h ../../../src/windows/native/sun/windows/GDIHashtable.h ../../../src/windows/native/sun/windows/Hashtable.h ../../../src/windows/native/sun/windows/ObjectList.h ../../../src/windows/native/sun/windows/stdhdrs.h ../../../src/windows/native/sun/windows/UnicowsLoader.h @@ -107,8 +107,8 @@ $(OBJDIR)/UnicowsLoader.obj:: ../../../src/share/javavm/export/jni.h ../../../src/share/native/common/jlong.h ../../../src/share/native/common/jni_util.h ../../../src/windows/javavm/export/jni_md.h ../../../src/windows/native/common/jlong_md.h ../../../src/windows/native/sun/windows/alloc.h ../../../src/windows/native/sun/windows/stdhdrs.h ../../../src/windows/native/sun/windows/UnicowsLoader.h diff -Nru openjdk.orig/jdk/make/sun/awt/Makefile openjdk/jdk/make/sun/awt/Makefile ---- openjdk.orig/jdk/make/sun/awt/Makefile 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/make/sun/awt/Makefile 2011-02-16 01:27:24.996326861 +0000 +--- openjdk.orig/jdk/make/sun/awt/Makefile 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/make/sun/awt/Makefile 2011-05-18 16:12:18.076791927 +0100 @@ -1,5 +1,5 @@ # -# Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved. @@ -125,8 +125,8 @@ vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe diff -Nru openjdk.orig/jdk/make/sun/awt/mapfile-mawt-vers openjdk/jdk/make/sun/awt/mapfile-mawt-vers ---- openjdk.orig/jdk/make/sun/awt/mapfile-mawt-vers 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/make/sun/awt/mapfile-mawt-vers 2011-02-16 01:27:25.000326551 +0000 +--- openjdk.orig/jdk/make/sun/awt/mapfile-mawt-vers 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/make/sun/awt/mapfile-mawt-vers 2011-05-18 16:12:18.088792126 +0100 @@ -291,6 +291,7 @@ Java_sun_awt_X11GraphicsConfig_createBackBuffer; Java_sun_awt_X11GraphicsConfig_destroyBackBuffer; @@ -136,8 +136,8 @@ Java_sun_awt_X11GraphicsDevice_getDisplay; Java_sun_awt_X11GraphicsDevice_getDoubleBufferVisuals; diff -Nru openjdk.orig/jdk/make/sun/awt/mapfile-vers-linux openjdk/jdk/make/sun/awt/mapfile-vers-linux ---- openjdk.orig/jdk/make/sun/awt/mapfile-vers-linux 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/make/sun/awt/mapfile-vers-linux 2011-02-16 01:27:25.000326551 +0000 +--- openjdk.orig/jdk/make/sun/awt/mapfile-vers-linux 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/make/sun/awt/mapfile-vers-linux 2011-05-18 16:12:18.088792126 +0100 @@ -406,6 +406,7 @@ Java_sun_awt_X11GraphicsConfig_getNumColors; Java_sun_awt_X11GraphicsConfig_getXResolution; @@ -147,8 +147,8 @@ Java_sun_awt_X11GraphicsDevice_getDisplay; Java_sun_awt_X11GraphicsDevice_getDoubleBufferVisuals; diff -Nru openjdk.orig/jdk/make/sun/xawt/mapfile-vers openjdk/jdk/make/sun/xawt/mapfile-vers ---- openjdk.orig/jdk/make/sun/xawt/mapfile-vers 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/make/sun/xawt/mapfile-vers 2011-02-16 01:27:25.000326551 +0000 +--- openjdk.orig/jdk/make/sun/xawt/mapfile-vers 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/make/sun/xawt/mapfile-vers 2011-05-18 16:12:18.088792126 +0100 @@ -216,6 +216,7 @@ Java_sun_awt_X11GraphicsConfig_createBackBuffer; Java_sun_awt_X11GraphicsConfig_destroyBackBuffer; @@ -158,8 +158,8 @@ Java_java_awt_KeyboardFocusManager_initIDs; Java_java_awt_Font_initIDs; diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/awt/AWTUtilities.java openjdk/jdk/src/share/classes/com/sun/awt/AWTUtilities.java ---- openjdk.orig/jdk/src/share/classes/com/sun/awt/AWTUtilities.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/share/classes/com/sun/awt/AWTUtilities.java 2011-02-16 01:27:25.000326551 +0000 +--- openjdk.orig/jdk/src/share/classes/com/sun/awt/AWTUtilities.java 2011-05-18 15:58:48.000000000 +0100 ++++ openjdk/jdk/src/share/classes/com/sun/awt/AWTUtilities.java 2011-05-18 16:12:18.088792126 +0100 @@ -26,17 +26,37 @@ package com.sun.awt; @@ -545,15 +545,8 @@ * Sets a 'mixing-cutout' shape for the given component. * diff -Nru openjdk.orig/jdk/src/share/classes/java/awt/Component.java openjdk/jdk/src/share/classes/java/awt/Component.java ---- openjdk.orig/jdk/src/share/classes/java/awt/Component.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/share/classes/java/awt/Component.java 2011-02-16 02:00:18.147235768 +0000 -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1995, 2007, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1995, 2009, Oracle and/or its affiliates. All rights reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it +--- openjdk.orig/jdk/src/share/classes/java/awt/Component.java 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/awt/Component.java 2011-05-18 16:12:18.088792126 +0100 @@ -806,18 +806,27 @@ } } @@ -663,8 +656,8 @@ + } } diff -Nru openjdk.orig/jdk/src/share/classes/java/awt/Container.java openjdk/jdk/src/share/classes/java/awt/Container.java ---- openjdk.orig/jdk/src/share/classes/java/awt/Container.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/share/classes/java/awt/Container.java 2011-02-16 01:27:25.004326241 +0000 +--- openjdk.orig/jdk/src/share/classes/java/awt/Container.java 2011-05-18 15:58:48.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/awt/Container.java 2011-05-18 16:12:18.092792193 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved. @@ -683,8 +676,8 @@ * JDK 1.1 serialVersionUID */ diff -Nru openjdk.orig/jdk/src/share/classes/java/awt/DefaultKeyboardFocusManager.java openjdk/jdk/src/share/classes/java/awt/DefaultKeyboardFocusManager.java ---- openjdk.orig/jdk/src/share/classes/java/awt/DefaultKeyboardFocusManager.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/share/classes/java/awt/DefaultKeyboardFocusManager.java 2011-02-16 01:27:25.004326241 +0000 +--- openjdk.orig/jdk/src/share/classes/java/awt/DefaultKeyboardFocusManager.java 2011-05-18 15:58:48.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/awt/DefaultKeyboardFocusManager.java 2011-05-18 16:12:18.092792193 +0100 @@ -480,7 +480,7 @@ // that a Component outside of the focused Window receives a // FOCUS_GAINED event. We synthesize a WINDOW_GAINED_FOCUS @@ -695,8 +688,8 @@ if (newFocusedWindow != null && newFocusedWindow != currentFocusedWindow) diff -Nru openjdk.orig/jdk/src/share/classes/java/awt/GraphicsConfiguration.java openjdk/jdk/src/share/classes/java/awt/GraphicsConfiguration.java ---- openjdk.orig/jdk/src/share/classes/java/awt/GraphicsConfiguration.java 2011-01-20 23:54:13.000000000 +0000 -+++ openjdk/jdk/src/share/classes/java/awt/GraphicsConfiguration.java 2011-02-16 01:27:25.004326241 +0000 +--- openjdk.orig/jdk/src/share/classes/java/awt/GraphicsConfiguration.java 2011-01-07 21:32:53.000000000 +0000 ++++ openjdk/jdk/src/share/classes/java/awt/GraphicsConfiguration.java 2011-05-18 16:12:18.092792193 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2007, Oracle and/or its affiliates. All rights reserved. @@ -726,8 +719,8 @@ } +} diff -Nru openjdk.orig/jdk/src/share/classes/java/awt/GraphicsDevice.java openjdk/jdk/src/share/classes/java/awt/GraphicsDevice.java ---- openjdk.orig/jdk/src/share/classes/java/awt/GraphicsDevice.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/share/classes/java/awt/GraphicsDevice.java 2011-02-16 01:27:25.004326241 +0000 +--- openjdk.orig/jdk/src/share/classes/java/awt/GraphicsDevice.java 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/awt/GraphicsDevice.java 2011-05-18 16:12:18.092792193 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved. @@ -896,8 +889,8 @@ + } } diff -Nru openjdk.orig/jdk/src/share/classes/java/awt/KeyboardFocusManager.java openjdk/jdk/src/share/classes/java/awt/KeyboardFocusManager.java ---- openjdk.orig/jdk/src/share/classes/java/awt/KeyboardFocusManager.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/share/classes/java/awt/KeyboardFocusManager.java 2011-02-16 01:27:25.004326241 +0000 +--- openjdk.orig/jdk/src/share/classes/java/awt/KeyboardFocusManager.java 2011-05-18 15:58:48.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/awt/KeyboardFocusManager.java 2011-05-18 16:12:18.092792193 +0100 @@ -2210,7 +2210,7 @@ boolean temporary, boolean focusedWindowChangeAllowed, long time) @@ -939,8 +932,8 @@ return false; } diff -Nru openjdk.orig/jdk/src/share/classes/java/awt/peer/WindowPeer.java openjdk/jdk/src/share/classes/java/awt/peer/WindowPeer.java ---- openjdk.orig/jdk/src/share/classes/java/awt/peer/WindowPeer.java 2011-01-20 23:54:15.000000000 +0000 -+++ openjdk/jdk/src/share/classes/java/awt/peer/WindowPeer.java 2011-02-16 01:27:25.004326241 +0000 +--- openjdk.orig/jdk/src/share/classes/java/awt/peer/WindowPeer.java 2011-01-07 21:32:53.000000000 +0000 ++++ openjdk/jdk/src/share/classes/java/awt/peer/WindowPeer.java 2011-05-18 16:12:18.096792260 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1995, 2007, Oracle and/or its affiliates. All rights reserved. @@ -985,8 +978,8 @@ + void updateWindow(BufferedImage backBuffer); } diff -Nru openjdk.orig/jdk/src/share/classes/java/awt/Window.java openjdk/jdk/src/share/classes/java/awt/Window.java ---- openjdk.orig/jdk/src/share/classes/java/awt/Window.java 2011-01-20 23:54:14.000000000 +0000 -+++ openjdk/jdk/src/share/classes/java/awt/Window.java 2011-02-16 01:27:25.004326241 +0000 +--- openjdk.orig/jdk/src/share/classes/java/awt/Window.java 2011-01-07 21:32:53.000000000 +0000 ++++ openjdk/jdk/src/share/classes/java/awt/Window.java 2011-05-18 16:12:18.096792260 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1995, 2007, Oracle and/or its affiliates. All rights reserved. @@ -1328,8 +1321,8 @@ diff -Nru openjdk.orig/jdk/src/share/classes/javax/swing/RepaintManager.java openjdk/jdk/src/share/classes/javax/swing/RepaintManager.java ---- openjdk.orig/jdk/src/share/classes/javax/swing/RepaintManager.java 2011-01-20 23:54:21.000000000 +0000 -+++ openjdk/jdk/src/share/classes/javax/swing/RepaintManager.java 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/share/classes/javax/swing/RepaintManager.java 2011-01-07 21:32:57.000000000 +0000 ++++ openjdk/jdk/src/share/classes/javax/swing/RepaintManager.java 2011-05-18 16:12:18.096792260 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2007, Oracle and/or its affiliates. All rights reserved. @@ -1402,8 +1395,8 @@ for (Component dirty : tmpDirtyComponents.keySet()) { diff -Nru openjdk.orig/jdk/src/share/classes/sun/awt/AWTAccessor.java openjdk/jdk/src/share/classes/sun/awt/AWTAccessor.java ---- openjdk.orig/jdk/src/share/classes/sun/awt/AWTAccessor.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/share/classes/sun/awt/AWTAccessor.java 2011-02-16 01:43:59.459209438 +0000 +--- openjdk.orig/jdk/src/share/classes/sun/awt/AWTAccessor.java 2011-05-18 15:58:48.000000000 +0100 ++++ openjdk/jdk/src/share/classes/sun/awt/AWTAccessor.java 2011-05-18 16:12:18.096792260 +0100 @@ -59,10 +59,29 @@ * An interface of accessor for the java.awt.Component class. */ @@ -1518,8 +1511,8 @@ + } diff -Nru openjdk.orig/jdk/src/share/classes/sun/awt/EmbeddedFrame.java openjdk/jdk/src/share/classes/sun/awt/EmbeddedFrame.java ---- openjdk.orig/jdk/src/share/classes/sun/awt/EmbeddedFrame.java 2011-01-20 23:54:24.000000000 +0000 -+++ openjdk/jdk/src/share/classes/sun/awt/EmbeddedFrame.java 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/share/classes/sun/awt/EmbeddedFrame.java 2011-01-07 21:32:58.000000000 +0000 ++++ openjdk/jdk/src/share/classes/sun/awt/EmbeddedFrame.java 2011-05-18 16:12:18.096792260 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved. @@ -1542,8 +1535,8 @@ + } } // class EmbeddedFrame diff -Nru openjdk.orig/jdk/src/share/classes/sun/awt/SunToolkit.java openjdk/jdk/src/share/classes/sun/awt/SunToolkit.java ---- openjdk.orig/jdk/src/share/classes/sun/awt/SunToolkit.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/share/classes/sun/awt/SunToolkit.java 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/share/classes/sun/awt/SunToolkit.java 2011-05-18 15:58:48.000000000 +0100 ++++ openjdk/jdk/src/share/classes/sun/awt/SunToolkit.java 2011-05-18 16:12:18.096792260 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved. @@ -1574,7 +1567,7 @@ import sun.awt.image.*; import sun.security.action.GetPropertyAction; import sun.security.action.GetBooleanAction; -@@ -825,16 +820,31 @@ +@@ -824,16 +819,31 @@ } /** @@ -1614,7 +1607,7 @@ } /** -@@ -1973,6 +1983,18 @@ +@@ -1972,6 +1982,18 @@ AWTAutoShutdown.getInstance().dumpPeers(aLog); } @@ -1633,7 +1626,7 @@ private static Boolean sunAwtDisableMixing = null; /** -@@ -1996,6 +2018,73 @@ +@@ -1995,6 +2017,73 @@ public boolean isNativeGTKAvailable() { return false; } @@ -1709,7 +1702,7 @@ diff -Nru openjdk.orig/jdk/src/share/native/sun/awt/utility/rect.c openjdk/jdk/src/share/native/sun/awt/utility/rect.c --- openjdk.orig/jdk/src/share/native/sun/awt/utility/rect.c 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/jdk/src/share/native/sun/awt/utility/rect.c 2011-02-16 01:27:25.008325931 +0000 ++++ openjdk/jdk/src/share/native/sun/awt/utility/rect.c 2011-05-18 16:12:18.096792260 +0100 @@ -0,0 +1,102 @@ +/* + * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved. @@ -1814,8 +1807,8 @@ +} +#endif diff -Nru openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java openjdk/jdk/src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java ---- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java 2011-01-20 23:54:40.000000000 +0000 -+++ openjdk/jdk/src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java 2011-01-07 21:33:04.000000000 +0000 ++++ openjdk/jdk/src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java 2011-05-18 16:12:18.100792327 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003, 2007, Oracle and/or its affiliates. All rights reserved. @@ -1841,8 +1834,8 @@ pw.println("\t\tlog.finest(\"Creating\");"); } diff -Nru openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/generator/xlibtypes.txt openjdk/jdk/src/solaris/classes/sun/awt/X11/generator/xlibtypes.txt ---- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/generator/xlibtypes.txt 2011-01-20 23:54:40.000000000 +0000 -+++ openjdk/jdk/src/solaris/classes/sun/awt/X11/generator/xlibtypes.txt 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/generator/xlibtypes.txt 2011-01-07 21:33:04.000000000 +0000 ++++ openjdk/jdk/src/solaris/classes/sun/awt/X11/generator/xlibtypes.txt 2011-05-18 16:12:18.100792327 +0100 @@ -750,6 +750,7 @@ pixelStride int color_data pointer ColorData @@ -1852,8 +1845,8 @@ AwtScreenData numConfigs int diff -Nru openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/XNETProtocol.java openjdk/jdk/src/solaris/classes/sun/awt/X11/XNETProtocol.java ---- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/XNETProtocol.java 2011-01-20 23:54:40.000000000 +0000 -+++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XNETProtocol.java 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/XNETProtocol.java 2011-01-07 21:33:04.000000000 +0000 ++++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XNETProtocol.java 2011-05-18 16:12:18.100792327 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003, 2007, Oracle and/or its affiliates. All rights reserved. @@ -1884,8 +1877,8 @@ if (!active()) { return false; diff -Nru openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java openjdk/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java ---- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java 2011-01-20 23:54:40.000000000 +0000 -+++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java 2011-01-07 21:33:04.000000000 +0000 ++++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XToolkit.java 2011-05-18 16:12:18.100792327 +0100 @@ -2181,4 +2181,35 @@ return new XDesktopPeer(); } @@ -1923,8 +1916,8 @@ + } } diff -Nru openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java openjdk/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java ---- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java 2011-01-20 23:54:40.000000000 +0000 -+++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java 2011-01-07 21:33:04.000000000 +0000 ++++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java 2011-05-18 16:12:18.100792327 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2002, 2007, Oracle and/or its affiliates. All rights reserved. @@ -2038,8 +2031,8 @@ + } } diff -Nru openjdk.orig/jdk/src/solaris/classes/sun/awt/X11GraphicsConfig.java openjdk/jdk/src/solaris/classes/sun/awt/X11GraphicsConfig.java ---- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11GraphicsConfig.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/solaris/classes/sun/awt/X11GraphicsConfig.java 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/solaris/classes/sun/awt/X11GraphicsConfig.java 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/solaris/classes/sun/awt/X11GraphicsConfig.java 2011-05-18 16:12:18.100792327 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved. @@ -2062,8 +2055,8 @@ + private native boolean isTranslucencyCapable(long x11ConfigData); } diff -Nru openjdk.orig/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c openjdk/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c ---- openjdk.orig/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c 2011-01-20 23:54:42.000000000 +0000 -+++ openjdk/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c 2011-01-07 21:33:07.000000000 +0000 ++++ openjdk/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c 2011-05-18 16:12:18.100792327 +0100 @@ -323,6 +323,48 @@ return NULL; } @@ -2200,8 +2193,8 @@ * Method: isDBESupported * Signature: ()Z diff -Nru openjdk.orig/jdk/src/solaris/native/sun/awt/awt_p.h openjdk/jdk/src/solaris/native/sun/awt/awt_p.h ---- openjdk.orig/jdk/src/solaris/native/sun/awt/awt_p.h 2011-01-20 23:54:42.000000000 +0000 -+++ openjdk/jdk/src/solaris/native/sun/awt/awt_p.h 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/solaris/native/sun/awt/awt_p.h 2011-01-07 21:33:07.000000000 +0000 ++++ openjdk/jdk/src/solaris/native/sun/awt/awt_p.h 2011-05-18 16:12:18.100792327 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1995, 2005, Oracle and/or its affiliates. All rights reserved. @@ -2218,8 +2211,8 @@ typedef AwtGraphicsConfigData* AwtGraphicsConfigDataPtr; diff -Nru openjdk.orig/jdk/src/windows/classes/sun/awt/Win32GraphicsConfig.java openjdk/jdk/src/windows/classes/sun/awt/Win32GraphicsConfig.java ---- openjdk.orig/jdk/src/windows/classes/sun/awt/Win32GraphicsConfig.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/classes/sun/awt/Win32GraphicsConfig.java 2011-02-16 01:27:25.008325931 +0000 +--- openjdk.orig/jdk/src/windows/classes/sun/awt/Win32GraphicsConfig.java 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/classes/sun/awt/Win32GraphicsConfig.java 2011-05-18 16:12:18.100792327 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved. @@ -2241,8 +2234,8 @@ + } } diff -Nru openjdk.orig/jdk/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java openjdk/jdk/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java ---- openjdk.orig/jdk/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java 2011-05-18 16:12:18.104792394 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved. @@ -2250,9 +2243,9 @@ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it -@@ -379,4 +379,11 @@ - private static void dwmCompositionChanged(boolean enabled) { - isDWMCompositionEnabled = enabled; +@@ -384,4 +384,11 @@ + public boolean isDisplayLocal() { + return true; } + + /** @@ -2264,7 +2257,7 @@ } diff -Nru openjdk.orig/jdk/src/windows/classes/sun/awt/windows/TranslucentWindowPainter.java openjdk/jdk/src/windows/classes/sun/awt/windows/TranslucentWindowPainter.java --- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/TranslucentWindowPainter.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/jdk/src/windows/classes/sun/awt/windows/TranslucentWindowPainter.java 2011-02-16 01:27:25.012325621 +0000 ++++ openjdk/jdk/src/windows/classes/sun/awt/windows/TranslucentWindowPainter.java 2011-05-18 16:12:18.104792394 +0100 @@ -0,0 +1,398 @@ +/* + * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved. @@ -2665,8 +2658,8 @@ + } +} diff -Nru openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WCanvasPeer.java openjdk/jdk/src/windows/classes/sun/awt/windows/WCanvasPeer.java ---- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WCanvasPeer.java 2011-01-20 23:54:43.000000000 +0000 -+++ openjdk/jdk/src/windows/classes/sun/awt/windows/WCanvasPeer.java 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WCanvasPeer.java 2011-01-07 21:33:07.000000000 +0000 ++++ openjdk/jdk/src/windows/classes/sun/awt/windows/WCanvasPeer.java 2011-05-18 16:12:18.104792394 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2007, Oracle and/or its affiliates. All rights reserved. @@ -2714,8 +2707,8 @@ super.print(g); } diff -Nru openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WComponentPeer.java openjdk/jdk/src/windows/classes/sun/awt/windows/WComponentPeer.java ---- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WComponentPeer.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/classes/sun/awt/windows/WComponentPeer.java 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WComponentPeer.java 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/classes/sun/awt/windows/WComponentPeer.java 2011-05-18 16:12:18.104792394 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2008, Oracle and/or its affiliates. All rights reserved. @@ -2842,8 +2835,8 @@ shapeLog.finer( "*** INFO: Setting shape: PEER: " + this diff -Nru openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WFileDialogPeer.java openjdk/jdk/src/windows/classes/sun/awt/windows/WFileDialogPeer.java ---- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WFileDialogPeer.java 2011-01-20 23:54:43.000000000 +0000 -+++ openjdk/jdk/src/windows/classes/sun/awt/windows/WFileDialogPeer.java 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WFileDialogPeer.java 2011-01-07 21:33:07.000000000 +0000 ++++ openjdk/jdk/src/windows/classes/sun/awt/windows/WFileDialogPeer.java 2011-05-18 16:12:18.104792394 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2007, Oracle and/or its affiliates. All rights reserved. @@ -2863,8 +2856,8 @@ + public void updateWindow(java.awt.image.BufferedImage backBuffer) {} } diff -Nru openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java openjdk/jdk/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java ---- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java 2011-01-20 23:54:43.000000000 +0000 -+++ openjdk/jdk/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java 2011-01-07 21:33:07.000000000 +0000 ++++ openjdk/jdk/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java 2011-05-18 16:12:18.104792394 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2007, Oracle and/or its affiliates. All rights reserved. @@ -2884,8 +2877,8 @@ + public void updateWindow(java.awt.image.BufferedImage backBuffer) {} } diff -Nru openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WToolkit.java openjdk/jdk/src/windows/classes/sun/awt/windows/WToolkit.java ---- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WToolkit.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/classes/sun/awt/windows/WToolkit.java 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WToolkit.java 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/classes/sun/awt/windows/WToolkit.java 2011-05-18 16:12:18.104792394 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2008, Oracle and/or its affiliates. All rights reserved. @@ -2929,8 +2922,8 @@ + } } diff -Nru openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WWindowPeer.java openjdk/jdk/src/windows/classes/sun/awt/windows/WWindowPeer.java ---- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WWindowPeer.java 2011-01-20 23:54:43.000000000 +0000 -+++ openjdk/jdk/src/windows/classes/sun/awt/windows/WWindowPeer.java 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/classes/sun/awt/windows/WWindowPeer.java 2011-01-07 21:33:07.000000000 +0000 ++++ openjdk/jdk/src/windows/classes/sun/awt/windows/WWindowPeer.java 2011-05-18 16:12:18.104792394 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2007, Oracle and/or its affiliates. All rights reserved. @@ -3177,8 +3170,8 @@ * Static inner class, listens for 'activeWindow' KFM property changes and * updates the list of active windows per AppContext, so the latest active diff -Nru openjdk.orig/jdk/src/windows/classes/sun/java2d/opengl/WGLSurfaceData.java openjdk/jdk/src/windows/classes/sun/java2d/opengl/WGLSurfaceData.java ---- openjdk.orig/jdk/src/windows/classes/sun/java2d/opengl/WGLSurfaceData.java 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/classes/sun/java2d/opengl/WGLSurfaceData.java 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/classes/sun/java2d/opengl/WGLSurfaceData.java 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/classes/sun/java2d/opengl/WGLSurfaceData.java 2011-05-18 16:12:18.112792526 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2008, Oracle and/or its affiliates. All rights reserved. @@ -3211,8 +3204,8 @@ return null; } diff -Nru openjdk.orig/jdk/src/windows/native/sun/awt/utility/rect.h openjdk/jdk/src/windows/native/sun/awt/utility/rect.h ---- openjdk.orig/jdk/src/windows/native/sun/awt/utility/rect.h 2011-01-20 23:54:44.000000000 +0000 -+++ openjdk/jdk/src/windows/native/sun/awt/utility/rect.h 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/native/sun/awt/utility/rect.h 2011-01-07 21:33:08.000000000 +0000 ++++ openjdk/jdk/src/windows/native/sun/awt/utility/rect.h 2011-05-18 16:12:18.112792526 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, Oracle and/or its affiliates. All rights reserved. @@ -3237,8 +3230,8 @@ #endif // _AWT_RECT_H diff -Nru openjdk.orig/jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp openjdk/jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp ---- openjdk.orig/jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp 2011-05-18 16:12:18.112792526 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved. @@ -3270,8 +3263,8 @@ // hBitmap is released in UpdateWindow diff -Nru openjdk.orig/jdk/src/windows/native/sun/java2d/opengl/WGLSurfaceData.c openjdk/jdk/src/windows/native/sun/java2d/opengl/WGLSurfaceData.c ---- openjdk.orig/jdk/src/windows/native/sun/java2d/opengl/WGLSurfaceData.c 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/native/sun/java2d/opengl/WGLSurfaceData.c 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/native/sun/java2d/opengl/WGLSurfaceData.c 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/native/sun/java2d/opengl/WGLSurfaceData.c 2011-05-18 16:12:18.112792526 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, 2008, Oracle and/or its affiliates. All rights reserved. @@ -3301,8 +3294,8 @@ // hBitmap is released in UpdateWindow diff -Nru openjdk.orig/jdk/src/windows/native/sun/windows/awt_BitmapUtil.cpp openjdk/jdk/src/windows/native/sun/windows/awt_BitmapUtil.cpp ---- openjdk.orig/jdk/src/windows/native/sun/windows/awt_BitmapUtil.cpp 2011-01-20 23:54:44.000000000 +0000 -+++ openjdk/jdk/src/windows/native/sun/windows/awt_BitmapUtil.cpp 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/native/sun/windows/awt_BitmapUtil.cpp 2011-01-07 21:33:08.000000000 +0000 ++++ openjdk/jdk/src/windows/native/sun/windows/awt_BitmapUtil.cpp 2011-05-18 16:12:18.112792526 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved. @@ -3549,8 +3542,8 @@ + bitmapBitsPtr, NULL, 0); +} diff -Nru openjdk.orig/jdk/src/windows/native/sun/windows/awt_BitmapUtil.h openjdk/jdk/src/windows/native/sun/windows/awt_BitmapUtil.h ---- openjdk.orig/jdk/src/windows/native/sun/windows/awt_BitmapUtil.h 2011-01-20 23:54:44.000000000 +0000 -+++ openjdk/jdk/src/windows/native/sun/windows/awt_BitmapUtil.h 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/native/sun/windows/awt_BitmapUtil.h 2011-01-07 21:33:08.000000000 +0000 ++++ openjdk/jdk/src/windows/native/sun/windows/awt_BitmapUtil.h 2011-05-18 16:12:18.112792526 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved. @@ -3592,8 +3585,8 @@ #endif diff -Nru openjdk.orig/jdk/src/windows/native/sun/windows/awt_Component.cpp openjdk/jdk/src/windows/native/sun/windows/awt_Component.cpp ---- openjdk.orig/jdk/src/windows/native/sun/windows/awt_Component.cpp 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/native/sun/windows/awt_Component.cpp 2011-02-16 01:27:25.012325621 +0000 +--- openjdk.orig/jdk/src/windows/native/sun/windows/awt_Component.cpp 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/native/sun/windows/awt_Component.cpp 2011-05-18 16:12:18.112792526 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2007, Oracle and/or its affiliates. All rights reserved. @@ -3656,8 +3649,8 @@ // If all the params are zeros, the shape must be simply reset. // Otherwise, convert it into a region. diff -Nru openjdk.orig/jdk/src/windows/native/sun/windows/awt_Component.h openjdk/jdk/src/windows/native/sun/windows/awt_Component.h ---- openjdk.orig/jdk/src/windows/native/sun/windows/awt_Component.h 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/native/sun/windows/awt_Component.h 2011-02-16 01:27:25.016325311 +0000 +--- openjdk.orig/jdk/src/windows/native/sun/windows/awt_Component.h 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/native/sun/windows/awt_Component.h 2011-05-18 16:12:18.120792659 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2008, Oracle and/or its affiliates. All rights reserved. @@ -3689,8 +3682,8 @@ private: BOOL m_bSubclassed; diff -Nru openjdk.orig/jdk/src/windows/native/sun/windows/awt_Window.cpp openjdk/jdk/src/windows/native/sun/windows/awt_Window.cpp ---- openjdk.orig/jdk/src/windows/native/sun/windows/awt_Window.cpp 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/native/sun/windows/awt_Window.cpp 2011-02-16 01:27:25.016325311 +0000 +--- openjdk.orig/jdk/src/windows/native/sun/windows/awt_Window.cpp 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/native/sun/windows/awt_Window.cpp 2011-05-18 16:12:18.120792659 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2007, Oracle and/or its affiliates. All rights reserved. @@ -4164,8 +4157,8 @@ } /* extern "C" */ diff -Nru openjdk.orig/jdk/src/windows/native/sun/windows/awt_Window.h openjdk/jdk/src/windows/native/sun/windows/awt_Window.h ---- openjdk.orig/jdk/src/windows/native/sun/windows/awt_Window.h 2011-02-16 00:40:21.000000000 +0000 -+++ openjdk/jdk/src/windows/native/sun/windows/awt_Window.h 2011-02-16 01:27:25.016325311 +0000 +--- openjdk.orig/jdk/src/windows/native/sun/windows/awt_Window.h 2011-05-18 15:58:49.000000000 +0100 ++++ openjdk/jdk/src/windows/native/sun/windows/awt_Window.h 2011-05-18 16:12:18.120792659 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2007, Oracle and/or its affiliates. All rights reserved. @@ -4239,7 +4232,7 @@ int m_screenNum; diff -Nru openjdk.orig/jdk/test/com/sun/awt/Translucency/TranslucentJAppletTest/TranslucentJAppletTest.java openjdk/jdk/test/com/sun/awt/Translucency/TranslucentJAppletTest/TranslucentJAppletTest.java --- openjdk.orig/jdk/test/com/sun/awt/Translucency/TranslucentJAppletTest/TranslucentJAppletTest.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/jdk/test/com/sun/awt/Translucency/TranslucentJAppletTest/TranslucentJAppletTest.java 2011-02-16 01:27:25.016325311 +0000 ++++ openjdk/jdk/test/com/sun/awt/Translucency/TranslucentJAppletTest/TranslucentJAppletTest.java 2011-05-18 16:12:18.120792659 +0100 @@ -0,0 +1,103 @@ +/* + * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved. @@ -4346,7 +4339,7 @@ +} diff -Nru openjdk.orig/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.form openjdk/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.form --- openjdk.orig/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.form 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.form 2011-02-16 01:27:25.016325311 +0000 ++++ openjdk/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.form 2011-05-18 16:12:18.120792659 +0100 @@ -0,0 +1,230 @@ +<?xml version="1.0" encoding="UTF-8" ?> + @@ -4580,7 +4573,7 @@ +</Form> diff -Nru openjdk.orig/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.java openjdk/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.java --- openjdk.orig/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.java 2011-02-16 01:27:25.016325311 +0000 ++++ openjdk/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TranslucentShapedFrameTest.java 2011-05-18 16:12:18.120792659 +0100 @@ -0,0 +1,359 @@ +/* + * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved. @@ -4943,7 +4936,7 @@ +} diff -Nru openjdk.orig/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TSFrame.java openjdk/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TSFrame.java --- openjdk.orig/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TSFrame.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TSFrame.java 2011-02-16 01:27:25.016325311 +0000 ++++ openjdk/jdk/test/com/sun/awt/Translucency/TranslucentShapedFrameTest/TSFrame.java 2011-05-18 16:12:18.120792659 +0100 @@ -0,0 +1,306 @@ +/* + * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved. @@ -5253,7 +5246,7 @@ +} diff -Nru openjdk.orig/jdk/test/com/sun/awt/Translucency/WindowOpacity.java openjdk/jdk/test/com/sun/awt/Translucency/WindowOpacity.java --- openjdk.orig/jdk/test/com/sun/awt/Translucency/WindowOpacity.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/jdk/test/com/sun/awt/Translucency/WindowOpacity.java 2011-02-16 01:27:25.016325311 +0000 ++++ openjdk/jdk/test/com/sun/awt/Translucency/WindowOpacity.java 2011-05-18 16:12:18.120792659 +0100 @@ -0,0 +1,461 @@ +/* + * Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved. @@ -5718,7 +5711,7 @@ +}// TestDialog class diff -Nru openjdk.orig/jdk/test/sun/java2d/pipe/RegionOps.java openjdk/jdk/test/sun/java2d/pipe/RegionOps.java --- openjdk.orig/jdk/test/sun/java2d/pipe/RegionOps.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/jdk/test/sun/java2d/pipe/RegionOps.java 2011-02-16 01:27:25.016325311 +0000 ++++ openjdk/jdk/test/sun/java2d/pipe/RegionOps.java 2011-05-18 16:12:18.120792659 +0100 @@ -0,0 +1,533 @@ +/* + * Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
--- a/patches/openjdk/6997495-test_correction_6857159.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,21 +0,0 @@ -# HG changeset patch -# User ptisnovs -# Date 1288875792 -3600 -# Node ID 086898a88056cd9f7de4475b7ebf4cc6c65f2b5e -# Parent 68d6141ea19de3a9ba98ef753f0da41a61f736a0 -6997495: correction of regression test compiler/6857159/Test6857159 -Summary: Testcase correction. -Reviewed-by: never - -diff -r 68d6141ea19d -r 086898a88056 test/compiler/6857159/Test6857159.java ---- openjdk.old/hotspot/test/compiler/6857159/Test6857159.java 2010-10-08 22:29:24.000000000 +0200 -+++ openjdk/hotspot/test/compiler/6857159/Test6857159.java 2010-11-04 15:27:47.000000000 +0100 -@@ -54,7 +54,7 @@ - } - - public static void main(String[] args) throws Exception { -- for (int i = 0; i < 100000; i++) { -+ for (int i = 0; i < 20000; i++) { - Thread t = null; - switch (i % 3) { - case 0: t = new ct0(); break;
--- a/patches/openjdk/7029905-demo_applet_html_files.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,56 +0,0 @@ -# HG changeset patch -# User ohair -# Date 1301955066 25200 -# Node ID 9d1f5ad258f89cde283c7c468bfd4d04f91f9c29 -# Parent aa13e7702cd9d8aca9aa38f1227f966990866944 -7029905: demo applets missing some html files -Reviewed-by: omajid, mchung, igor - -diff -r aa13e7702cd9 -r 9d1f5ad258f8 make/mkdemo/jfc/Font2DTest/Makefile ---- openjdk/jdk/make/mkdemo/jfc/Font2DTest/Makefile Tue Mar 29 20:19:55 2011 -0700 -+++ openjdk/jdk/make/mkdemo/jfc/Font2DTest/Makefile Mon Apr 04 15:11:06 2011 -0700 -@@ -33,7 +33,7 @@ - include $(BUILDDIR)/common/Defs.gmk - - DEMO_ROOT = $(SHARE_SRC)/demo/jfc/$(DEMONAME) --DEMO_TOPFILES = ./README.txt -+DEMO_TOPFILES = ./README.txt ./$(DEMONAME).html - DEMO_MAINCLASS = $(DEMONAME) - DEMO_DESTDIR = $(DEMODIR)/jfc/$(DEMONAME) - -diff -r aa13e7702cd9 -r 9d1f5ad258f8 make/mkdemo/jfc/Java2D/Makefile ---- openjdk/jdk/make/mkdemo/jfc/Java2D/Makefile Tue Mar 29 20:19:55 2011 -0700 -+++ openjdk/jdk/make/mkdemo/jfc/Java2D/Makefile Mon Apr 04 15:11:06 2011 -0700 -@@ -33,7 +33,7 @@ - include $(BUILDDIR)/common/Defs.gmk - - DEMO_ROOT = $(CLOSED_SRC)/share/demo/jfc/Java2D --DEMO_TOPFILES = ./Java2Demo.html ./README.txt -+DEMO_TOPFILES = ./README.txt ./$(DEMONAME).html - DEMO_MAINCLASS = java2d.Java2Demo - DEMO_DESTDIR = $(DEMODIR)/jfc/Java2D - -diff -r aa13e7702cd9 -r 9d1f5ad258f8 make/mkdemo/jfc/SwingApplet/Makefile ---- openjdk/jdk/make/mkdemo/jfc/SwingApplet/Makefile Tue Mar 29 20:19:55 2011 -0700 -+++ openjdk/jdk/make/mkdemo/jfc/SwingApplet/Makefile Mon Apr 04 15:11:06 2011 -0700 -@@ -33,7 +33,7 @@ - include $(BUILDDIR)/common/Defs.gmk - - DEMO_ROOT = $(SHARE_SRC)/demo/jfc/$(DEMONAME) --DEMO_TOPFILES = ./README.txt -+DEMO_TOPFILES = ./README.txt ./$(DEMONAME).html - DEMO_MAINCLASS = $(DEMONAME) - DEMO_DESTDIR = $(DEMODIR)/jfc/$(DEMONAME) - -diff -r aa13e7702cd9 -r 9d1f5ad258f8 make/mkdemo/jfc/SwingSet2/Makefile ---- openjdk/jdk/make/mkdemo/jfc/SwingSet2/Makefile Tue Mar 29 20:19:55 2011 -0700 -+++ openjdk/jdk/make/mkdemo/jfc/SwingSet2/Makefile Mon Apr 04 15:11:06 2011 -0700 -@@ -33,7 +33,7 @@ - include $(BUILDDIR)/common/Defs.gmk - - DEMO_ROOT = $(CLOSED_SRC)/share/demo/jfc/$(DEMONAME) --DEMO_TOPFILES = ./README.txt -+DEMO_TOPFILES = ./README.txt ./$(DEMONAME).html - DEMO_MAINCLASS = $(DEMONAME) - DEMO_MANIFEST_ATTR = SplashScreen-Image: resources/images/splash.png - DEMO_DESTDIR = $(DEMODIR)/jfc/$(DEMONAME)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/7032388-work_without_cmov_instruction.patch Wed May 18 22:49:21 2011 +0100 @@ -0,0 +1,178 @@ +--- openjdk/hotspot/src/cpu/x86/vm/assembler_x86.cpp 2011-03-30 11:31:16.408872134 -0700 ++++ openjdk/hotspot/src/cpu/x86/vm/assembler_x86.cpp 2011-03-30 11:31:16.084614406 -0700 +@@ -7769,6 +7769,28 @@ + } + } + ++void MacroAssembler::cmov32(Condition cc, Register dst, Address src) { ++ if (VM_Version::supports_cmov()) { ++ cmovl(cc, dst, src); ++ } else { ++ Label L; ++ jccb(negate_condition(cc), L); ++ movl(dst, src); ++ bind(L); ++ } ++} ++ ++void MacroAssembler::cmov32(Condition cc, Register dst, Register src) { ++ if (VM_Version::supports_cmov()) { ++ cmovl(cc, dst, src); ++ } else { ++ Label L; ++ jccb(negate_condition(cc), L); ++ movl(dst, src); ++ bind(L); ++ } ++} ++ + void MacroAssembler::verify_oop(Register reg, const char* s) { + if (!VerifyOops) return; + +@@ -9019,14 +9041,7 @@ + movl(result, cnt1); + subl(cnt1, cnt2); + push(cnt1); +- if (VM_Version::supports_cmov()) { +- cmovl(Assembler::lessEqual, cnt2, result); +- } else { +- Label GT_LABEL; +- jccb(Assembler::greater, GT_LABEL); +- movl(cnt2, result); +- bind(GT_LABEL); +- } ++ cmov32(Assembler::lessEqual, cnt2, result); + + // Is the minimum length zero? + testl(cnt2, cnt2); +--- openjdk/hotspot/src/cpu/x86/vm/assembler_x86.hpp 2011-03-30 11:31:17.757655562 -0700 ++++ openjdk/hotspot/src/cpu/x86/vm/assembler_x86.hpp 2011-03-30 11:31:17.553920606 -0700 +@@ -2244,10 +2244,13 @@ + + // Data + +- void cmov(Condition cc, Register dst, Register src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmovl(cc, dst, src)); } ++ void cmov32( Condition cc, Register dst, Address src); ++ void cmov32( Condition cc, Register dst, Register src); + +- void cmovptr(Condition cc, Register dst, Address src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmovl(cc, dst, src)); } +- void cmovptr(Condition cc, Register dst, Register src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmovl(cc, dst, src)); } ++ void cmov( Condition cc, Register dst, Register src) { cmovptr(cc, dst, src); } ++ ++ void cmovptr(Condition cc, Register dst, Address src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmov32(cc, dst, src)); } ++ void cmovptr(Condition cc, Register dst, Register src) { LP64_ONLY(cmovq(cc, dst, src)) NOT_LP64(cmov32(cc, dst, src)); } + + void movoop(Register dst, jobject obj); + void movoop(Address dst, jobject obj); +--- openjdk/hotspot/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp 2011-03-30 11:31:18.743456717 -0700 ++++ openjdk/hotspot/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp 2011-03-30 11:31:18.541656202 -0700 +@@ -23,6 +23,7 @@ + */ + + #include "precompiled.hpp" ++#include "asm/assembler.hpp" + #include "c1/c1_Compilation.hpp" + #include "c1/c1_LIRAssembler.hpp" + #include "c1/c1_MacroAssembler.hpp" +@@ -569,24 +570,13 @@ + __ lea (rdi, Address(rdi, rcx, Address::times_2, arrayOopDesc::base_offset_in_bytes(T_CHAR))); + + // compute minimum length (in rax) and difference of lengths (on top of stack) +- if (VM_Version::supports_cmov()) { +- __ movl (rbx, Address(rbx, java_lang_String::count_offset_in_bytes())); +- __ movl (rax, Address(rax, java_lang_String::count_offset_in_bytes())); +- __ mov (rcx, rbx); +- __ subptr (rbx, rax); // subtract lengths +- __ push (rbx); // result +- __ cmov (Assembler::lessEqual, rax, rcx); +- } else { +- Label L; +- __ movl (rbx, Address(rbx, java_lang_String::count_offset_in_bytes())); +- __ movl (rcx, Address(rax, java_lang_String::count_offset_in_bytes())); +- __ mov (rax, rbx); +- __ subptr (rbx, rcx); +- __ push (rbx); +- __ jcc (Assembler::lessEqual, L); +- __ mov (rax, rcx); +- __ bind (L); +- } ++ __ movl (rbx, Address(rbx, java_lang_String::count_offset_in_bytes())); ++ __ movl (rax, Address(rax, java_lang_String::count_offset_in_bytes())); ++ __ mov (rcx, rbx); ++ __ subptr(rbx, rax); // subtract lengths ++ __ push (rbx); // result ++ __ cmov (Assembler::lessEqual, rax, rcx); ++ + // is minimum length 0? + Label noLoop, haveResult; + __ testptr (rax, rax); +--- openjdk/hotspot/src/cpu/x86/vm/c1_Runtime1_x86.cpp 2011-03-30 11:31:19.824124145 -0700 ++++ openjdk/hotspot/src/cpu/x86/vm/c1_Runtime1_x86.cpp 2011-03-30 11:31:19.606167752 -0700 +@@ -23,6 +23,7 @@ + */ + + #include "precompiled.hpp" ++#include "asm/assembler.hpp" + #include "c1/c1_Defs.hpp" + #include "c1/c1_MacroAssembler.hpp" + #include "c1/c1_Runtime1.hpp" +--- openjdk/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp 2011-03-30 11:31:20.910918826 -0700 ++++ openjdk/hotspot/src/cpu/x86/vm/templateTable_x86_32.cpp 2011-03-30 11:31:20.703693030 -0700 +@@ -23,6 +23,7 @@ + */ + + #include "precompiled.hpp" ++#include "asm/assembler.hpp" + #include "interpreter/interpreter.hpp" + #include "interpreter/interpreterRuntime.hpp" + #include "interpreter/templateTable.hpp" +@@ -1939,18 +1940,10 @@ + __ movl(temp, Address(array, h, Address::times_8, 0*wordSize)); + __ bswapl(temp); + __ cmpl(key, temp); +- if (VM_Version::supports_cmov()) { +- __ cmovl(Assembler::less , j, h); // j = h if (key < array[h].fast_match()) +- __ cmovl(Assembler::greaterEqual, i, h); // i = h if (key >= array[h].fast_match()) +- } else { +- Label set_i, end_of_if; +- __ jccb(Assembler::greaterEqual, set_i); // { +- __ mov(j, h); // j = h; +- __ jmp(end_of_if); // } +- __ bind(set_i); // else { +- __ mov(i, h); // i = h; +- __ bind(end_of_if); // } +- } ++ // j = h if (key < array[h].fast_match()) ++ __ cmov32(Assembler::less , j, h); ++ // i = h if (key >= array[h].fast_match()) ++ __ cmov32(Assembler::greaterEqual, i, h); + // while (i+1 < j) + __ bind(entry); + __ leal(h, Address(i, 1)); // i+1 +@@ -3478,22 +3471,14 @@ + + // find a free slot in the monitor block (result in rdx) + { Label entry, loop, exit; +- __ movptr(rcx, monitor_block_top); // points to current entry, starting with top-most entry +- __ lea(rbx, monitor_block_bot); // points to word before bottom of monitor block ++ __ movptr(rcx, monitor_block_top); // points to current entry, starting with top-most entry ++ ++ __ lea(rbx, monitor_block_bot); // points to word before bottom of monitor block + __ jmpb(entry); + + __ bind(loop); + __ cmpptr(Address(rcx, BasicObjectLock::obj_offset_in_bytes()), (int32_t)NULL_WORD); // check if current entry is used +- +-// TODO - need new func here - kbt +- if (VM_Version::supports_cmov()) { +- __ cmov(Assembler::equal, rdx, rcx); // if not used then remember entry in rdx +- } else { +- Label L; +- __ jccb(Assembler::notEqual, L); +- __ mov(rdx, rcx); // if not used then remember entry in rdx +- __ bind(L); +- } ++ __ cmovptr(Assembler::equal, rdx, rcx); // if not used then remember entry in rdx + __ cmpptr(rax, Address(rcx, BasicObjectLock::obj_offset_in_bytes())); // check if current entry is for same object + __ jccb(Assembler::equal, exit); // if same object then stop searching + __ addptr(rcx, entry_size); // otherwise advance to next entry
--- a/patches/openjdk/7042040-no_disk_space_check.patch Wed May 18 15:46:37 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,115 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1305128024 14400 -# Node ID 6b74421f46b04f8cbe898ed4d8896b46be70becf -# Parent fe6a8ddfe33d460fe19867c6625ee6390934e4b7 -7042040: Remove disk space sanity check -Summary: Remove outdated disk space checks using df -Reviewed-by: ohair, omajid - -diff -r fe6a8ddfe33d -r 6b74421f46b0 make/common/shared/Platform.gmk ---- openjdk/jdk/make/common/shared/Platform.gmk Tue May 10 11:58:42 2011 +0200 -+++ openjdk/jdk/make/common/shared/Platform.gmk Wed May 11 11:33:44 2011 -0400 -@@ -75,7 +75,6 @@ - # USING_CYGWIN windows only: true or false - # WINDOWS_NT_VERSION_STRING windows only: long version name - # REQUIRED_OS_VERSION required OS version, e.g. 5.10, 2.4 --# REQUIRED_FREE_SPACE minimum disk space needed for outputdir - # ISHIELD_TEMP_MIN windows only: minimum disk space in temp area - # REQUIRED_ZIP_VER required version of zip - # REQUIRED_UNZIP_VER required version of unzip -@@ -171,13 +170,6 @@ - else - REQUIRED_OS_VERSION = 5.8 - endif -- # Minimum disk space needed as determined by running 'du -sk' on -- # a fully built workspace. -- ifeq ($(ARCH_FAMILY), sparc) -- REQUIRED_FREE_SPACE=1300000 -- else -- REQUIRED_FREE_SPACE=1040000 -- endif - # How much RAM does this machine have: - MB_OF_MEMORY=$(shell /etc/prtconf | fgrep 'Memory size:' | expand | cut -d' ' -f3) - endif -@@ -247,9 +239,6 @@ - - # Suffix for file bundles used in previous release - BUNDLE_FILE_SUFFIX=.tar.gz -- # Minimum disk space needed as determined by running 'du -sk' on -- # a fully built workspace. -- REQUIRED_FREE_SPACE=1460000 - LINUX_VERSION_INFO = /etc/redhat-release - ifeq ($(ARCH_DATA_MODEL), 32) - REQUIRED_LINUX_VER = Advanced Server -@@ -371,9 +360,6 @@ - ARCH_VM_SUBDIR=jre/bin - # Suffix for file bundles used in previous release - BUNDLE_FILE_SUFFIX=.tar -- # Minimum disk space needed as determined by running 'du -sk' on -- # a fully built workspace. -- REQUIRED_FREE_SPACE=500000 - # ISHIELD_TEMP_MIN is the difference of an empty C:\TEMP vs. one after a - # bundles build on windows. - ISHIELD_TEMP_MIN=250000 -diff -r fe6a8ddfe33d -r 6b74421f46b0 make/common/shared/Sanity-Settings.gmk ---- openjdk/jdk/make/common/shared/Sanity-Settings.gmk Tue May 10 11:58:42 2011 +0200 -+++ openjdk/jdk/make/common/shared/Sanity-Settings.gmk Wed May 11 11:33:44 2011 -0400 -@@ -189,8 +189,6 @@ - endif - ALL_SETTINGS+=$(call addRequiredVersionSetting,OS_VERSION) - ALL_SETTINGS+=$(call addRequiredSetting,OS_NAME) --ALL_SETTINGS+=$(call addRequiredSetting,TEMP_FREE_SPACE) --ALL_SETTINGS+=$(call addRequiredSetting,FREE_SPACE) - ALL_SETTINGS+=$(call addRequiredSetting,MB_OF_MEMORY) - - -diff -r fe6a8ddfe33d -r 6b74421f46b0 make/common/shared/Sanity.gmk ---- openjdk/jdk/make/common/shared/Sanity.gmk Tue May 10 11:58:42 2011 +0200 -+++ openjdk/jdk/make/common/shared/Sanity.gmk Wed May 11 11:33:44 2011 -0400 -@@ -46,8 +46,6 @@ - # Settings and rules to validate the JDK build environment. - - ifeq ($(PLATFORM), solaris) -- FREE_SPACE := $(shell $(DF) -b $(OUTPUTDIR) | $(TAIL) -1 | $(NAWK) '{print $$2;}') -- TEMP_FREE_SPACE := $(shell $(DF) -b $(TEMP_DISK) | $(TAIL) -1 | $(NAWK) '{print $$2;}') - REQ_PATCH_LIST = $(JDK_TOPDIR)/make/PatchList.solaris - ifeq ($(ARCH_FAMILY), sparc) - PATCH_POSITION = $$4 -@@ -57,8 +55,6 @@ - endif - - ifeq ($(PLATFORM), linux) -- FREE_SPACE := $(shell $(DF) --sync -kP $(OUTPUTDIR) | $(TAIL) -1 | $(NAWK) '{print $$4;}') -- TEMP_FREE_SPACE := $(shell $(DF) --sync -kP $(TEMP_DISK) | $(TAIL) -1 | $(NAWK) '{print $$4;}') - ifeq ($(ARCH), amd64) - LINUX_VERSION := $(shell \ - if [ -r "$(LINUX_VERSION_INFO)" ] ; then \ -@@ -82,8 +78,6 @@ - endif - - ifeq ($(PLATFORM), windows) -- FREE_SPACE := $(shell $(DF) -kP $(OUTPUTDIR) | $(TAIL) -1 | $(NAWK) '{print $$4;}') -- TEMP_FREE_SPACE := $(shell $(DF) -kP $(TEMP_DISK) | $(TAIL) -1 | $(NAWK) '{print $$4;}') - # Localized systeminfo has localized labels, but not localized values. - _WINDOWS_VERSION := \ - $(shell systeminfo 2> $(DEV_NULL) | grep 'Microsoft' | grep 'Windows' | \ -@@ -675,18 +669,6 @@ - " Either obtain these permissions or set ALT_OUTPUTDIR. \n" \ - "" >> $(ERROR_FILE) ; \ - fi -- @# -- @# OUTPUTDIR must have enough free space... -- @# -- @if [ $(FREE_SPACE) -lt $(REQUIRED_FREE_SPACE) ]; then \ -- $(ECHO) "WARNING: You may not have enough free space in your OUTPUTDIR. The \n" \ -- " current value of OUTPUTDIR is \n" \ -- " $(OUTPUTDIR) \n" \ -- " You need "$(REQUIRED_FREE_SPACE)" Kbytes free on this device to build \n" \ -- " and it appears that only "$(FREE_SPACE)" Kbytes are free. \n" \ -- " Either obtain more space or set ALT_OUTPUTDIR to a larger disk. \n" \ -- "" >> $(WARNING_FILE) ; \ -- fi - - ###################################################### - # if specified, ALT_BOOTDIR must point to non-relative path if set
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/params-cast-size_t.patch Wed May 18 22:49:21 2011 +0100 @@ -0,0 +1,270 @@ +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2011-01-28 01:06:11.887088930 +0000 +@@ -2645,7 +2645,7 @@ + if (ResizeOldPLAB && CMSOldPLABResizeQuicker) { + size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks); + n_blks += CMSOldPLABReactivityFactor*multiple*n_blks; +- n_blks = MIN2(n_blks, CMSOldPLABMax); ++ n_blks = MIN2(n_blks, (size_t)CMSOldPLABMax); + } + assert(n_blks > 0, "Error"); + _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl); +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2011-01-28 01:06:11.891088974 +0000 +@@ -955,7 +955,7 @@ + if (free_percentage < desired_free_percentage) { + size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage)); + assert(desired_capacity >= capacity(), "invalid expansion size"); +- expand_bytes = MAX2(desired_capacity - capacity(), MinHeapDeltaBytes); ++ expand_bytes = MAX2((long unsigned int) (desired_capacity - capacity()), (long unsigned int) MinHeapDeltaBytes); + } + if (expand_bytes > 0) { + if (PrintGCDetails && Verbose) { +@@ -6238,7 +6238,7 @@ + HeapWord* curAddr = _markBitMap.startWord(); + while (curAddr < _markBitMap.endWord()) { + size_t remaining = pointer_delta(_markBitMap.endWord(), curAddr); +- MemRegion chunk(curAddr, MIN2(CMSBitMapYieldQuantum, remaining)); ++ MemRegion chunk(curAddr, MIN2((size_t) CMSBitMapYieldQuantum, remaining)); + _markBitMap.clear_large_range(chunk); + if (ConcurrentMarkSweepThread::should_yield() && + !foregroundGCIsActive() && +@@ -6533,7 +6533,7 @@ + return; + } + // Double capacity if possible +- size_t new_capacity = MIN2(_capacity*2, MarkStackSizeMax); ++ size_t new_capacity = MIN2((size_t) (_capacity*2), (size_t) MarkStackSizeMax); + // Do not give up existing stack until we have managed to + // get the double capacity that we desired. + ReservedSpace rs(ReservedSpace::allocation_align_size_up( +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2011-01-28 00:50:00.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2011-01-28 01:06:11.891088974 +0000 +@@ -471,7 +471,7 @@ + _regionStack(), + // _finger set in set_non_marking_state + +- _max_task_num(MAX2(ParallelGCThreads, (size_t)1)), ++ _max_task_num(MAX2((size_t)ParallelGCThreads, (size_t)1)), + // _active_tasks set in set_non_marking_state + // _tasks set inside the constructor + _task_queues(new CMTaskQueueSet((int) _max_task_num)), +@@ -575,7 +575,7 @@ + _sleep_factor = sleep_factor; + _marking_task_overhead = marking_task_overhead; + } else { +- _parallel_marking_threads = MAX2((ParallelGCThreads + 2) / 4, (size_t)1); ++ _parallel_marking_threads = MAX2((size_t)((ParallelGCThreads + 2) / 4), (size_t)1); + _sleep_factor = 0.0; + _marking_task_overhead = 1.0; + } +@@ -3371,7 +3371,7 @@ + // of things to do) or totally (at the very end). + size_t target_size; + if (partially) +- target_size = MIN2((size_t)_task_queue->max_elems()/3, GCDrainStackTargetSize); ++ target_size = MIN2((size_t)_task_queue->max_elems()/3, (size_t)GCDrainStackTargetSize); + else + target_size = 0; + +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2011-01-28 01:06:11.891088974 +0000 +@@ -1074,7 +1074,7 @@ + // This can be done by either mutator threads together with the + // concurrent refinement threads or GC threads. + int HeapRegionRemSet::num_par_rem_sets() { +- return (int)MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), ParallelGCThreads); ++ return (int)MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), (size_t)ParallelGCThreads); + } + + HeapRegionRemSet::HeapRegionRemSet(G1BlockOffsetSharedArray* bosa, +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2011-01-28 01:06:11.891088974 +0000 +@@ -895,8 +895,8 @@ + void PSParallelCompact::initialize_dead_wood_limiter() + { + const size_t max = 100; +- _dwl_mean = double(MIN2(ParallelOldDeadWoodLimiterMean, max)) / 100.0; +- _dwl_std_dev = double(MIN2(ParallelOldDeadWoodLimiterStdDev, max)) / 100.0; ++ _dwl_mean = double(MIN2((size_t) ParallelOldDeadWoodLimiterMean, max)) / 100.0; ++ _dwl_std_dev = double(MIN2((size_t) ParallelOldDeadWoodLimiterStdDev, max)) / 100.0; + _dwl_first_term = 1.0 / (sqrt(2.0 * M_PI) * _dwl_std_dev); + DEBUG_ONLY(_dwl_initialized = true;) + _dwl_adjustment = normal_distribution(1.0); +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp 2011-01-28 01:06:11.891088974 +0000 +@@ -69,7 +69,7 @@ + _last_used = current_live; + + // We have different alignment constraints than the rest of the heap. +- const size_t alignment = MAX2(MinPermHeapExpansion, ++ const size_t alignment = MAX2((size_t) MinPermHeapExpansion, + virtual_space()->alignment()); + + // Compute the desired size: +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2011-01-28 01:06:11.895089019 +0000 +@@ -188,7 +188,7 @@ + const size_t num_overflow_elems = of_stack->size(); + const size_t space_available = queue->max_elems() - queue->size(); + const size_t num_take_elems = MIN3(space_available / 4, +- ParGCDesiredObjsFromOverflowList, ++ (size_t) ParGCDesiredObjsFromOverflowList, + num_overflow_elems); + // Transfer the most recent num_take_elems from the overflow + // stack to our work queue. +diff -Nru openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp +--- openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp 2011-01-28 01:06:11.891088974 +0000 +@@ -328,7 +328,7 @@ + // yield a size that is too small) and bound it by MaxNewSize above. + // Ergonomics plays here by previously calculating the desired + // NewSize and MaxNewSize. +- max_new_size = MIN2(MAX2(max_new_size, NewSize), MaxNewSize); ++ max_new_size = MIN2(MAX2(max_new_size, (size_t)NewSize), (size_t)MaxNewSize); + } + assert(max_new_size > 0, "All paths should set max_new_size"); + +@@ -355,7 +355,7 @@ + // generally small compared to the NewRatio calculation. + _min_gen0_size = NewSize; + desired_new_size = NewSize; +- max_new_size = MAX2(max_new_size, NewSize); ++ max_new_size = MAX2(max_new_size, (size_t) NewSize); + } else { + // For the case where NewSize is the default, use NewRatio + // to size the minimum and initial generation sizes. +@@ -363,10 +363,10 @@ + // NewRatio is overly large, the resulting sizes can be too + // small. + _min_gen0_size = MAX2(scale_by_NewRatio_aligned(min_heap_byte_size()), +- NewSize); ++ (size_t) NewSize); + desired_new_size = + MAX2(scale_by_NewRatio_aligned(initial_heap_byte_size()), +- NewSize); ++ (size_t) NewSize); + } + + assert(_min_gen0_size > 0, "Sanity check"); +@@ -421,14 +421,14 @@ + // Adjust gen0 down to accomodate OldSize + *gen0_size_ptr = heap_size - min_gen0_size; + *gen0_size_ptr = +- MAX2((uintx)align_size_down(*gen0_size_ptr, min_alignment()), ++ MAX2((size_t)align_size_down(*gen0_size_ptr, min_alignment()), + min_alignment()); + assert(*gen0_size_ptr > 0, "Min gen0 is too large"); + result = true; + } else { + *gen1_size_ptr = heap_size - *gen0_size_ptr; + *gen1_size_ptr = +- MAX2((uintx)align_size_down(*gen1_size_ptr, min_alignment()), ++ MAX2((size_t)align_size_down(*gen1_size_ptr, min_alignment()), + min_alignment()); + } + } +@@ -452,7 +452,7 @@ + // for setting the gen1 maximum. + _max_gen1_size = max_heap_byte_size() - _max_gen0_size; + _max_gen1_size = +- MAX2((uintx)align_size_down(_max_gen1_size, min_alignment()), ++ MAX2((size_t)align_size_down(_max_gen1_size, min_alignment()), + min_alignment()); + // If no explicit command line flag has been set for the + // gen1 size, use what is left for gen1. +@@ -466,11 +466,11 @@ + "gen0 has an unexpected minimum size"); + set_min_gen1_size(min_heap_byte_size() - min_gen0_size()); + set_min_gen1_size( +- MAX2((uintx)align_size_down(_min_gen1_size, min_alignment()), ++ MAX2((size_t)align_size_down(_min_gen1_size, min_alignment()), + min_alignment())); + set_initial_gen1_size(initial_heap_byte_size() - initial_gen0_size()); + set_initial_gen1_size( +- MAX2((uintx)align_size_down(_initial_gen1_size, min_alignment()), ++ MAX2((size_t)align_size_down(_initial_gen1_size, min_alignment()), + min_alignment())); + + } else { +diff -Nru openjdk.orig/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp openjdk/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp +--- openjdk.orig/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp 2011-01-28 01:06:11.891088974 +0000 +@@ -240,7 +240,7 @@ + size_t init_sz; + + if (TLABSize > 0) { +- init_sz = MIN2(TLABSize / HeapWordSize, max_size()); ++ init_sz = MIN2((size_t) (TLABSize / HeapWordSize), max_size()); + } else if (global_stats() == NULL) { + // Startup issue - main thread initialized before heap initialized. + init_sz = min_size(); +diff -Nru openjdk.orig/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp openjdk/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp +--- openjdk.orig/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/oops/objArrayKlass.inline.hpp 2011-01-28 01:06:11.891088974 +0000 +@@ -46,7 +46,7 @@ + const size_t beg_index = size_t(index); + assert(beg_index < len || len == 0, "index too large"); + +- const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride); ++ const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride); + const size_t end_index = beg_index + stride; + T* const base = (T*)a->base(); + T* const beg = base + beg_index; +@@ -80,7 +80,7 @@ + const size_t beg_index = size_t(index); + assert(beg_index < len || len == 0, "index too large"); + +- const size_t stride = MIN2(len - beg_index, ObjArrayMarkingStride); ++ const size_t stride = MIN2(len - beg_index, (size_t)ObjArrayMarkingStride); + const size_t end_index = beg_index + stride; + T* const base = (T*)a->base(); + T* const beg = base + beg_index; +diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp openjdk/hotspot/src/share/vm/runtime/arguments.cpp +--- openjdk.orig/hotspot/src/share/vm/runtime/arguments.cpp 2011-01-28 00:49:59.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp 2011-01-28 01:06:11.891088974 +0000 +@@ -1161,7 +1161,7 @@ + // NewSize was set on the command line and it is larger than + // preferred_max_new_size. + if (!FLAG_IS_DEFAULT(NewSize)) { // NewSize explicitly set at command-line +- FLAG_SET_ERGO(uintx, MaxNewSize, MAX2(NewSize, preferred_max_new_size)); ++ FLAG_SET_ERGO(uintx, MaxNewSize, MAX2((size_t) NewSize, preferred_max_new_size)); + } else { + FLAG_SET_ERGO(uintx, MaxNewSize, preferred_max_new_size); + } +@@ -1180,7 +1180,7 @@ + // there was no obvious reason. Also limit to the case where + // MaxNewSize has not been set. + +- FLAG_SET_ERGO(intx, NewRatio, MAX2(NewRatio, new_ratio)); ++ FLAG_SET_ERGO(intx, NewRatio, MAX2((intx) NewRatio, new_ratio)); + + // Code along this path potentially sets NewSize and OldSize + +@@ -1222,8 +1222,8 @@ + // Unless explicitly requested otherwise, make young gen + // at least min_new, and at most preferred_max_new_size. + if (FLAG_IS_DEFAULT(NewSize)) { +- FLAG_SET_ERGO(uintx, NewSize, MAX2(NewSize, min_new)); +- FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, NewSize)); ++ FLAG_SET_ERGO(uintx, NewSize, MAX2((size_t) NewSize, min_new)); ++ FLAG_SET_ERGO(uintx, NewSize, MIN2(preferred_max_new_size, (size_t) NewSize)); + if (PrintGCDetails && Verbose) { + // Too early to use gclog_or_tty + tty->print_cr("Ergo set NewSize: " SIZE_FORMAT, NewSize); +@@ -1234,7 +1234,7 @@ + // later NewRatio will decide how it grows; see above. + if (FLAG_IS_DEFAULT(OldSize)) { + if (max_heap > NewSize) { +- FLAG_SET_ERGO(uintx, OldSize, MIN2(3*NewSize, max_heap - NewSize)); ++ FLAG_SET_ERGO(uintx, OldSize, MIN2((size_t) 3*NewSize, max_heap - (size_t) NewSize)); + if (PrintGCDetails && Verbose) { + // Too early to use gclog_or_tty + tty->print_cr("Ergo set OldSize: " SIZE_FORMAT, OldSize);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/powerpc-stacksize.patch Wed May 18 22:49:21 2011 +0100 @@ -0,0 +1,42 @@ +--- openjdk/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp~ 2011-02-22 17:51:24.000000000 +0100 ++++ openjdk/hotspot/src/os_cpu/linux_zero/vm/globals_linux_zero.hpp 2011-02-24 18:58:27.758228950 +0100 +@@ -32,7 +32,11 @@ + // + + define_pd_global(bool, DontYieldALot, false); ++#ifdef __powerpc64__ ++define_pd_global(intx, ThreadStackSize, 2048); ++#else + define_pd_global(intx, ThreadStackSize, 1536); ++#endif + #ifdef _LP64 + define_pd_global(intx, VMThreadStackSize, 1024); + #else +--- openjdk/corba/make/common/shared/Defs-java.gmk~ 2011-02-24 18:56:20.278228999 +0100 ++++ openjdk/corba/make/common/shared/Defs-java.gmk 2011-02-24 19:01:47.938229001 +0100 +@@ -68,9 +68,9 @@ + + # 64-bit builds require a larger thread stack size. + ifeq ($(ARCH_DATA_MODEL), 32) +- JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=768 ++ JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=1024 + else +- JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=1536 ++ JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=2048 + endif + JAVAC_JVM_FLAGS += $(JAVA_TOOLS_FLAGS:%=-J%) + +--- openjdk/jdk/make/common/shared/Defs-java.gmk~ 2011-02-24 20:10:20.598229000 +0100 ++++ openjdk/jdk/make/common/shared/Defs-java.gmk 2011-02-24 20:11:45.608228331 +0100 +@@ -75,9 +75,9 @@ + + # 64-bit builds require a larger thread stack size. + ifeq ($(ARCH_DATA_MODEL), 32) +- JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=768 ++ JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=1024 + else +- JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=1536 ++ JAVAC_JVM_FLAGS += -J-XX:ThreadStackSize=2048 + endif + JAVAC_JVM_FLAGS += $(JAVA_TOOLS_FLAGS:%=-J%) +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/sparc-buildfixes.patch Wed May 18 22:49:21 2011 +0100 @@ -0,0 +1,26 @@ +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/defs.make openjdk/hotspot/make/linux/makefiles/defs.make +--- openjdk.orig/hotspot/make/linux/makefiles/defs.make 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/make/linux/makefiles/defs.make 2011-01-28 01:21:25.609237228 +0000 +@@ -58,7 +58,7 @@ + endif + + # sparc +-ifeq ($(ARCH), sparc64) ++ifneq (,$(filter $(ARCH), sparc sparc64)) + ifeq ($(ARCH_DATA_MODEL), 64) + ARCH_DATA_MODEL = 64 + MAKE_ARGS += LP64=1 +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make +--- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2011-01-28 01:14:57.000000000 +0000 ++++ openjdk/hotspot/make/linux/makefiles/gcc.make 2011-01-28 01:21:25.609237228 +0000 +@@ -64,6 +64,10 @@ + PICFLAG = -fpic + endif + ++ifneq ($(filter sparc sparcv9,$(BUILDARCH)),) ++PICFLAG = -fPIC ++endif ++ + VM_PICFLAG/LIBJVM = $(PICFLAG) + VM_PICFLAG/AOUT = + VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
--- a/patches/systemtap.patch Wed May 18 15:46:37 2011 +0100 +++ b/patches/systemtap.patch Wed May 18 22:49:21 2011 +0100 @@ -60,3 +60,103 @@ #ifdef ASSERT } else if (match_option(option, "-XX:+FullGCALot", &tail)) { FLAG_SET_CMDLINE(bool, FullGCALot, true); +diff -Nru openjdk.orig/hotspot/src/share/vm/utilities/dtrace.hpp openjdk/hotspot/src/share/vm/utilities/dtrace.hpp +--- openjdk.orig/hotspot/src/share/vm/utilities/dtrace.hpp 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/utilities/dtrace.hpp 2011-01-28 02:39:02.052518309 +0000 +@@ -1,5 +1,6 @@ + /* + * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. ++ * Copyright 2009 Red Hat, Inc. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -25,7 +26,7 @@ + #ifndef SHARE_VM_UTILITIES_DTRACE_HPP + #define SHARE_VM_UTILITIES_DTRACE_HPP + +-#if defined(SOLARIS) && defined(DTRACE_ENABLED) ++#if defined(DTRACE_ENABLED) + + #include <sys/sdt.h> + +@@ -36,7 +37,7 @@ + #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() \ + do { volatile size_t dtrace_workaround_tail_call_bug = 1; } while (0) + +-#else // ndef SOLARIS || ndef DTRACE_ENABLED ++#else // ndef DTRACE_ENABLED + + #define DTRACE_ONLY(x) + #define NOT_DTRACE(x) x +@@ -47,11 +48,18 @@ + #define DTRACE_PROBE3(a,b,c,d,e) {;} + #define DTRACE_PROBE4(a,b,c,d,e,f) {;} + #define DTRACE_PROBE5(a,b,c,d,e,f,g) {;} ++#define DTRACE_PROBE6(a,b,c,d,e,f,g,h) {;} ++#define DTRACE_PROBE7(a,b,c,d,e,f,g,h,i) {;} ++#define DTRACE_PROBE8(a,b,c,d,e,f,g,h,i,j) {;} ++#define DTRACE_PROBE9(a,b,c,d,e,f,g,h,i,j,k) {;} ++#define DTRACE_PROBE10(a,b,c,d,e,f,g,h,i,j,k,l) {;} + + #define HS_DTRACE_WORKAROUND_TAIL_CALL_BUG() + + #endif + ++#if defined(SOLARIS) ++// Solaris dtrace needs actual extern function decls. + #define HS_DTRACE_PROBE_FN(provider,name)\ + __dtrace_##provider##___##name + +@@ -59,6 +67,11 @@ + DTRACE_ONLY(extern "C" void HS_DTRACE_PROBE_FN(provider,name) args) + #define HS_DTRACE_PROBE_CDECL_N(provider,name,args) \ + DTRACE_ONLY(extern void HS_DTRACE_PROBE_FN(provider,name) args) ++#else ++// Systemtap dtrace compatible probes on GNU/Linux don't. ++#define HS_DTRACE_PROBE_DECL_N(provider,name,args) ++#define HS_DTRACE_PROBE_CDECL_N(provider,name,args) ++#endif + + /* Dtrace probe declarations */ + #define HS_DTRACE_PROBE_DECL(provider,name) \ +@@ -97,6 +110,8 @@ + uintptr_t,uintptr_t,uintptr_t)) + + /* Dtrace probe definitions */ ++#if defined(SOLARIS) ++// Solaris dtrace uses actual function calls. + #define HS_DTRACE_PROBE_N(provider,name, args) \ + DTRACE_ONLY(HS_DTRACE_PROBE_FN(provider,name) args) + +@@ -132,5 +147,31 @@ + HS_DTRACE_PROBE_N(provider,name,((uintptr_t)a0,(uintptr_t)a1,(uintptr_t)a2,\ + (uintptr_t)a3,(uintptr_t)a4,(uintptr_t)a5,(uintptr_t)a6,(uintptr_t)a7,\ + (uintptr_t)a8,(uintptr_t)a9)) ++#else ++// Systemtap dtrace compatible probes on GNU/Linux use direct macros. ++#define HS_DTRACE_PROBE(provider,name) HS_DTRACE_PROBE0(provider,name) ++#define HS_DTRACE_PROBE0(provider,name)\ ++ DTRACE_PROBE(provider,name) ++#define HS_DTRACE_PROBE1(provider,name,a0)\ ++ DTRACE_PROBE1(provider,name,a0) ++#define HS_DTRACE_PROBE2(provider,name,a0,a1)\ ++ DTRACE_PROBE2(provider,name,a0,a1) ++#define HS_DTRACE_PROBE3(provider,name,a0,a1,a2)\ ++ DTRACE_PROBE3(provider,name,a0,a1,a2) ++#define HS_DTRACE_PROBE4(provider,name,a0,a1,a2,a3)\ ++ DTRACE_PROBE4(provider,name,a0,a1,a2,a3) ++#define HS_DTRACE_PROBE5(provider,name,a0,a1,a2,a3,a4)\ ++ DTRACE_PROBE5(provider,name,a0,a1,a2,a3,a4) ++#define HS_DTRACE_PROBE6(provider,name,a0,a1,a2,a3,a4,a5)\ ++ DTRACE_PROBE6(provider,name,a0,a1,a2,a3,a4,a5) ++#define HS_DTRACE_PROBE7(provider,name,a0,a1,a2,a3,a4,a5,a6)\ ++ DTRACE_PROBE7(provider,name,a0,a1,a2,a3,a4,a5,a6) ++#define HS_DTRACE_PROBE8(provider,name,a0,a1,a2,a3,a4,a5,a6,a7)\ ++ DTRACE_PROBE8(provider,name,a0,a1,a2,a3,a4,a5,a6,a7) ++#define HS_DTRACE_PROBE9(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)\ ++ DTRACE_PROBE9(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8) ++#define HS_DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)\ ++ DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8) ++#endif + + #endif // SHARE_VM_UTILITIES_DTRACE_HPP
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/text-relocations.patch Wed May 18 22:49:21 2011 +0100 @@ -0,0 +1,63 @@ +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make +--- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/make/linux/makefiles/gcc.make 2011-01-28 00:32:20.817556386 +0000 +@@ -58,7 +58,11 @@ + # Compiler flags + + # position-independent code ++ifneq ($(filter alpha parisc ppc ppc64 s390 s390x sparc sparc64 sparcv9,$(ZERO_LIBARCH)),) + PICFLAG = -fPIC ++else ++PICFLAG = -fpic ++endif + + VM_PICFLAG/LIBJVM = $(PICFLAG) + VM_PICFLAG/AOUT = +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/rules.make openjdk/hotspot/make/linux/makefiles/rules.make +--- openjdk.orig/hotspot/make/linux/makefiles/rules.make 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/make/linux/makefiles/rules.make 2011-01-28 00:32:52.857892660 +0000 +@@ -146,20 +146,10 @@ + include $(GAMMADIR)/make/pic.make + endif + +-# The non-PIC object files are only generated for 32 bit platforms. +-ifdef LP64 + %.o: %.cpp + @echo Compiling $< + $(QUIETLY) $(REMOVE_TARGET) + $(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE) +-else +-%.o: %.cpp +- @echo Compiling $< +- $(QUIETLY) $(REMOVE_TARGET) +- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \ +- $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \ +- $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)) +-endif + + %.o: %.s + @echo Assembling $< +diff -Nru openjdk.orig/hotspot/make/solaris/makefiles/rules.make openjdk/hotspot/make/solaris/makefiles/rules.make +--- openjdk.orig/hotspot/make/solaris/makefiles/rules.make 2011-01-25 22:57:24.000000000 +0000 ++++ openjdk/hotspot/make/solaris/makefiles/rules.make 2011-01-28 00:33:15.158126725 +0000 +@@ -146,20 +146,10 @@ + include $(GAMMADIR)/make/pic.make + endif + +-# Sun compiler for 64 bit Solaris does not support building non-PIC object files. +-ifdef LP64 + %.o: %.cpp + @echo Compiling $< + $(QUIETLY) $(REMOVE_TARGET) + $(QUIETLY) $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE) +-else +-%.o: %.cpp +- @echo Compiling $< +- $(QUIETLY) $(REMOVE_TARGET) +- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \ +- $(subst $(VM_PICFLAG), ,$(COMPILE.CC)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \ +- $(COMPILE.CC) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)) +-endif + + %.o: %.s + @echo Assembling $<