diff --git a/.hgtags-top-repo b/.hgtags-top-repo
index 86759295812f2aada0625225a10d8baef58671f9..6a03d78b921fb350bc57a027c117606cffee574b 100644
--- a/.hgtags-top-repo
+++ b/.hgtags-top-repo
@@ -97,3 +97,4 @@ a12a9e78df8a9d534da0b4a244ed68f0de0bd58e jdk7-b118
366ff0b6d2151595629806b033e2e1497e3a55d4 jdk7-b120
2c2d4f88637b488014c37e1a2eb401f68bca8838 jdk7-b121
f1591eed71f64f6eba79fb7426f5616cc4dfea73 jdk7-b122
+ed6950da30cf1e8904b4bdb034d471647942271f jdk7-b123
diff --git a/Makefile b/Makefile
index d42650e58ce8af5b4b467ddd421c7e90e293af40..7c5b2db01c0db3a4bf8e813f646912145ef52691 100644
--- a/Makefile
+++ b/Makefile
@@ -156,12 +156,6 @@ ifeq ($(BUILD_DEPLOY), true)
clobber:: deploy-clobber
endif
-ifeq ($(BUILD_JDK), true)
- ifeq ($(BUNDLE_RULES_AVAILABLE), true)
- generic_build_repo_series:: openjdk-binary-plugs-bundles
- endif
-endif
-
# The debug build, fastdebug or debug. Needs special handling.
# Note that debug builds do NOT do INSTALL steps, but must be done
# after the product build and before the INSTALL step of the product build.
@@ -301,7 +295,6 @@ ifneq ($(SKIP_OPENJDK_BUILD), true)
ifeq ($(BUILD_JDK), true)
ifeq ($(BUNDLE_RULES_AVAILABLE), true)
-OPENJDK_PLUGS=$(ABS_OUTPUTDIR)/$(OPENJDK_BINARY_PLUGS_INAME)
OPENJDK_OUTPUTDIR=$(ABS_OUTPUTDIR)/open-output
OPENJDK_BUILD_NAME \
= openjdk-$(JDK_MINOR_VERSION)-$(BUILD_NUMBER)-$(PLATFORM)-$(ARCH)-$(BUNDLE_DATE)
@@ -330,7 +323,6 @@ openjdk_build:
GENERATE_DOCS=false \
ALT_JDK_DEVTOOLS_DIR=$(JDK_DEVTOOLS_DIR) \
ALT_OUTPUTDIR=$(OPENJDK_OUTPUTDIR) \
- ALT_BINARY_PLUGS_PATH=$(OPENJDK_PLUGS) \
ALT_BOOTDIR=$(OPENJDK_BOOTDIR) \
ALT_JDK_IMPORT_PATH=$(OPENJDK_IMPORTJDK) \
product_build )
@@ -456,7 +448,6 @@ CACERTS_FILE.desc = Location of certificates file
DEVTOOLS_PATH.desc = Directory containing zip and gnumake
CUPS_HEADERS_PATH.desc = Include directory location for CUPS header files
DXSDK_PATH.desc = Root directory of DirectX SDK
-MSDEVTOOLS_PATH.desc = Root directory of VC++ tools (e.g. rc.exe)
MSVCRT_DLL_PATH.desc = Directory containing mscvrt.dll
# Make variables to print out (description and value)
@@ -487,12 +478,10 @@ ifeq ($(PLATFORM), windows)
VARIABLE_PRINTVAL_LIST += \
DXSDK_PATH \
- MSDEVTOOLS_PATH \
MSVCRT_DLL_PATH
VARIABLE_CHECKDIR_LIST += \
DXSDK_PATH \
- MSDEVTOOLS_PATH \
MSVCRT_DLL_PATH
endif
@@ -548,7 +537,7 @@ examples_help:
"
################################################################
-# Source and binary plug bundling
+# Source bundling
################################################################
ifeq ($(BUNDLE_RULES_AVAILABLE), true)
include $(BUNDLE_RULES)
diff --git a/README b/README
index eef68df24a7e265498e5144bb21e9bc720bbf7a4..722131d683f02b71c79b84c1444c399b5c0d00ec 100644
--- a/README
+++ b/README
@@ -1,28 +1,38 @@
README:
- This file should be located at the top of the OpenJDK Mercurial repository
- forest. This top or enclosing repository will include a "make" directory,
- and a Makefile at the very top of the repository.
- It should also include the 6 repositories: "jdk", "hotspot", "langtools",
- "corba", "jaxws" and "jaxp".
+ This file should be located at the top of the OpenJDK Mercurial root
+ repository. This root repository will include a "make" directory,
+ and a Makefile for building the entire OpenJDK.
+ A full OpenJDK repository set (forest) should also include the following
+ 6 nested repositories:
+ "jdk", "hotspot", "langtools", "corba", "jaxws" and "jaxp".
+ There are also several source downloads for the jax* repositories that
+ will be needed.
+
+ This one root repository can be obtained with something like:
+ hg clone http://hg.openjdk.java.net/jdk7/jdk7 openjdk7
+ To make sure you have all the nested repositories, you can run:
+ cd openjdk7 && sh ./get_source.sh
+ (This is identical to using the Mercurial Forest Extension command
+ 'hg fclone http://hg.openjdk.java.net/jdk7/jdk7 openjdk7').
+ People unfamiliar with Mercurial should read the first few chapters of
+ the Mercurial book: http://hgbook.red-bean.com/read/
See http://openjdk.java.net/ for more information about the OpenJDK.
Simple Build Instructions:
+
+ 0. Get the necessary system software/packages installed on your system, see
+ http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html
- 1. Download and install a JDK 6 from
+ 1. If you don't have a jdk6 installed, download and install a JDK 6 from
http://java.sun.com/javase/downloads/index.jsp
- Set the environment variable ALT_BOOTDIR to the location of this JDK 6.
+ Set the environment variable ALT_BOOTDIR to the location of JDK 6.
- 2. Download and install the Binary Plugs for the most recent JDK7 from
- http://download.java.net/openjdk/jdk7/
- Set the environment variable ALT_BINARY_PLUGS_PATH to the location of
- these binary plugs.
-
- 3. Check the sanity of doing a build with the current machine:
+ 2. Check the sanity of doing a build with your current system:
gnumake sanity
See README-builds.html if you run into problems.
- 4. Do a complete build of the jdk:
+ 3. Do a complete build of the OpenJDK:
gnumake all
The resulting JDK image should be found in build/*/j2sdk-image
diff --git a/README-builds.html b/README-builds.html
index 1c2504c4dc5fcde19167ee8f8df5bee506773e6e..e48aaff3612f317e95f66a1f75002450d6b50ff4 100644
--- a/README-builds.html
+++ b/README-builds.html
@@ -24,12 +24,12 @@
- This README file contains build instructions for the
- OpenJDK.
- Building the source code for the
- OpenJDK
- requires
- a certain degree of technical expertise.
+ This README file contains build instructions for the
+ OpenJDK.
+ Building the source code for the
+ OpenJDK
+ requires
+ a certain degree of technical expertise.
+ The OpenJDK sources are maintained with the revision control system
+ Mercurial.
+ If you are new to Mercurial, please see the
+ Beginner Guides
+ or refer to the Mercurial Book.
+ The first few chapters of the book provide an excellent overview of
+ Mercurial, what it is and how it works.
+
+ For using Mercurial with the OpenJDK refer to the
+
+ Developer Guide: Installing and Configuring Mercurial
+ section for more information.
+ The Forest Extension is not part of the Mercurial install,
+ and is optional,
+ but can be obtained with the following commands:
+
+ To get the entire set of OpenJDK Mercurial repositories
+ without using the Forest Extension:
+
+
+ hg clone http://openjdk.java.net/jdk7/jdk7 YourOpenJDK
+ cd YourOpenJDK
+ sh ./get_source.sh
+
+
+ Once you have all the repositories, the
+ script make/scripts/hgforest.sh
+ can be used to repeat the same hg
+ command on every repository in the forest, e.g.
+
+
+ cd YourOpenJDK
+ sh ./make/scripts/hgforest.sh pull -u
+
+
+ You may find this script make/scripts/hgforest.sh faster
+ than the hg forest commands provided by the
+ Forest Extension.
+
@@ -116,8 +191,8 @@
specific platforms, and in fact creating these specific platforms
may be difficult due to the age of some of this software.
- The minimum OS and C/C++ compiler versions needed for building the
- OpenJDK:
+ The minimum OS and C/C++ compiler versions needed for building the
+ OpenJDK:
@@ -146,7 +221,7 @@
Solaris 10u2 + patches
See
- SunSolve for patch downloads.
+ SunSolve for patch downloads.
Sun Studio 12 Update 1 + patches
JDK 6u14 FCS
@@ -156,7 +231,7 @@
Solaris 10u2 + patches
See
- SunSolve for patch downloads.
+ SunSolve for patch downloads.
Sun Studio 12 Update 1 + patches
JDK 6u14 FCS
@@ -166,7 +241,7 @@
Solaris 10u2 + patches
See
- SunSolve for patch downloads.
+ SunSolve for patch downloads.
Sun Studio 12 Update 1 + patches
JDK 6u14 FCS
@@ -176,7 +251,7 @@
Solaris 10u2 + patches
See
- SunSolve for patch downloads.
+ SunSolve for patch downloads.
Sun Studio 12 Update 1 + patches
JDK 6u14 FCS
@@ -195,14 +270,14 @@
-
+
These same sources do indeed build on many more systems than the
above older generation systems, again the above is just a minimum.
-
+
Compilation problems with newer or different C/C++ compilers is a
common problem.
Similarly, compilation problems related to changes to the
- /usr/include or system header files is also a
+ /usr/include or system header files is also a
common problem with newer or unreleased OS versions.
Please report these types of problems as bugs so that they
can be dealt with accordingly.
@@ -217,57 +292,57 @@
+ After installing Fedora 9
you need to install several build dependencies. The simplest
way to do it is to execute the following commands as user
- root:
-
- yum-builddep java-openjdk
-
- yum install gcc gcc-c++
-
+ root:
+
+ yum-builddep java-openjdk
+
+ yum install gcc gcc-c++
+
In addition, it's necessary to set a few environment variables for the build:
-
- export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk
+
+ export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk
+ After installing Fedora 10
you need to install several build dependencies. The simplest
way to do it is to execute the following commands as user
- root:
-
- yum-builddep java-1.6.0-openjdk
-
- yum install gcc gcc-c++
-
+ root:
+
+ yum-builddep java-1.6.0-openjdk
+
+ yum install gcc gcc-c++
+
In addition, it's necessary to set a few environment variables for the build:
-
- export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk
+
+ export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk
+ After installing Fedora 11
you need to install several build dependencies. The simplest
way to do it is to execute the following commands as user
- root:
-
- yum-builddep java-1.6.0-openjdk
-
- yum install gcc gcc-c++
-
+ root:
+
+ yum-builddep java-1.6.0-openjdk
+
+ yum install gcc gcc-c++
+
In addition, it's necessary to set a few environment variables for the build:
-
- export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-openjdk
-
- Plus the following packages:
+ Plus the following packages:
cups devel: Cups Development Package
@@ -295,188 +370,188 @@
- The freetype 2.3 packages don't seem to be available,
- but the freetype 2.3 sources can be downloaded, built,
- and installed easily enough from
-
- the freetype site.
- Build and install with something like:
+ The freetype 2.3 packages don't seem to be available,
+ but the freetype 2.3 sources can be downloaded, built,
+ and installed easily enough from
+
+ the freetype site.
+ Build and install with something like:
./configure && make && sudo -u root make install
- Mercurial packages could not be found easily, but a Google
- search should find ones, and they usually include Python if
- it's needed.
+ Mercurial packages could not be found easily, but a Google
+ search should find ones, and they usually include Python if
+ it's needed.
After installing Debian 5
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands as user root:
-
- aptitude build-dep openjdk-6
-
- aptitude install openjdk-6-jdk libmotif-dev
-
+
+ aptitude build-dep openjdk-6
+
+ aptitude install openjdk-6-jdk libmotif-dev
+
In addition, it's necessary to set a few environment variables for the build:
-
- export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk
-
After installing Ubuntu 8.04
you need to install several build dependencies.
-
+
First, you need to enable the universe repository in the
Software Sources application and reload the repository
information. The Software Sources application is available
under the System/Administration menu.
-
+
The simplest way to install the build dependencies is to
execute the following commands:
-
- sudo aptitude build-dep openjdk-6
-
- sudo aptitude install openjdk-6-jdk
-
+
+ sudo aptitude build-dep openjdk-6
+
+ sudo aptitude install openjdk-6-jdk
+
In addition, it's necessary to set a few environment variables for the build:
-
- export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk
-
After installing Ubuntu 8.10
you need to install several build dependencies. The simplest
way to do it is to execute the following commands:
-
- sudo aptitude build-dep openjdk-6
-
- sudo aptitude install openjdk-6-jdk
-
+
+ sudo aptitude build-dep openjdk-6
+
+ sudo aptitude install openjdk-6-jdk
+
In addition, it's necessary to set a few environment variables for the build:
-
- export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk
-
After installing Ubuntu 9.04
you need to install several build dependencies. The simplest
way to do it is to execute the following commands:
-
- sudo aptitude build-dep openjdk-6
-
- sudo aptitude install openjdk-6-jdk
-
+
+ sudo aptitude build-dep openjdk-6
+
+ sudo aptitude install openjdk-6-jdk
+
In addition, it's necessary to set a few environment variables for the build:
-
- export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk
-
After installing OpenSUSE 11.1
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands:
-
- sudo zypper source-install -d java-1_6_0-openjdk
-
- sudo zypper install make
-
+
+ sudo zypper source-install -d java-1_6_0-openjdk
+
+ sudo zypper install make
+
In addition, it is necessary to set a few environment variables for the build:
-
- export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk
-
+
+ export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk
+
Finally, you need to unset the JAVA_HOME environment variable:
-
- export -n JAVA_HOME
-
After installing Mandriva Linux One 2009 Spring
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands as user root:
-
- urpmi java-1.6.0-openjdk-devel ant make gcc gcc-c++ freetype-devel zip unzip libcups2-devel libxrender1-devel libalsa2-devel libstc++-static-devel libxtst6-devel libxi-devel
+
+ urpmi java-1.6.0-openjdk-devel ant make gcc gcc-c++ freetype-devel zip unzip libcups2-devel libxrender1-devel libalsa2-devel libstc++-static-devel libxtst6-devel libxi-devel
In addition, it is necessary to set a few environment variables for the build:
-
- export LANG=C ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk
-
After installing OpenSolaris 2009.06
you need to install several build dependencies.
The simplest way to install the build dependencies is to
execute the following commands:
-
- pfexec pkg install SUNWgmake SUNWj6dev SUNWant sunstudioexpress SUNWcups SUNWzip SUNWunzip SUNWxwhl SUNWxorg-headers SUNWaudh SUNWfreetype2
+
+ pfexec pkg install SUNWgmake SUNWj6dev SUNWant sunstudioexpress SUNWcups SUNWzip SUNWunzip SUNWxwhl SUNWxorg-headers SUNWaudh SUNWfreetype2
In addition, it is necessary to set a few environment variables for the build:
-
- export LANG=C ALT_COMPILER_PATH=/opt/SunStudioExpress/bin/ ALT_CUPS_HEADERS_PATH=/usr/include/
-
+
+ export LANG=C ALT_COMPILER_PATH=/opt/SunStudioExpress/bin/ ALT_CUPS_HEADERS_PATH=/usr/include/
+
Finally, you need to make sure that the build process can find the Sun Studio compilers:
-
- export PATH=$PATH:/opt/SunStudioExpress/bin/
-
- The source code for the OpenJDK is delivered in a set of
- directories:
- hotspot,
- langtools,
- corba,
- jaxws,
- jaxp,
- and
- jdk.
- The hotspot directory contains the source code and make
- files for building the OpenJDK Hotspot Virtual Machine.
- The langtools directory contains the source code and make
- files for building the OpenJDK javac and language tools.
- The corba directory contains the source code and make
- files for building the OpenJDK Corba files.
- The jaxws directory contains the source code and make
- files for building the OpenJDK JAXWS files.
- The jaxp directory contains the source code and make
- files for building the OpenJDK JAXP files.
- The jdk directory contains the source code and make files for
- building the OpenJDK runtime libraries and misc files.
- The top level Makefile
- is used to build the entire OpenJDK.
+ The source code for the OpenJDK is delivered in a set of
+ directories:
+ hotspot,
+ langtools,
+ corba,
+ jaxws,
+ jaxp,
+ and
+ jdk.
+ The hotspot directory contains the source code and make
+ files for building the OpenJDK Hotspot Virtual Machine.
+ The langtools directory contains the source code and make
+ files for building the OpenJDK javac and language tools.
+ The corba directory contains the source code and make
+ files for building the OpenJDK Corba files.
+ The jaxws directory contains the source code and make
+ files for building the OpenJDK JAXWS files.
+ The jaxp directory contains the source code and make
+ files for building the OpenJDK JAXP files.
+ The jdk directory contains the source code and make files for
+ building the OpenJDK runtime libraries and misc files.
+ The top level Makefile
+ is used to build the entire OpenJDK.
@@ -495,10 +570,10 @@
ALT_* variables (alternates)
can be used to help the makefiles locate components.
- Refer to the bash/sh/ksh setup file
- jdk/make/jdk_generic_profile.sh
- if you need help in setting up your environment variables.
- A build could be as simple as:
+ Refer to the bash/sh/ksh setup file
+ jdk/make/jdk_generic_profile.sh
+ if you need help in setting up your environment variables.
+ A build could be as simple as:
bash
@@ -507,12 +582,12 @@
- Of course ksh or sh would work too.
- But some customization will probably be necessary.
- The sanity rule will make some basic checks on build
- dependencies and generate appropriate warning messages
- regarding missing, out of date, or newer than expected components
- found on your system.
+ Of course ksh or sh would work too.
+ But some customization will probably be necessary.
+ The sanity rule will make some basic checks on build
+ dependencies and generate appropriate warning messages
+ regarding missing, out of date, or newer than expected components
+ found on your system.
@@ -559,14 +634,14 @@
version that has this problem fixed.
The older 3.80 version of make.exe can be downloaded with this
- link.
+ link.
Use of this older 3.80 make.exe may require that you install the
libintl2.dll library or libintl2 cygwin package which is
no longer installed by default by the cygwin installer.
Also see the
- mozilla developer center
+ mozilla developer center
on this topic.
It's hoped that when make 3.82 starts shipping in a future cygwin
@@ -574,19 +649,19 @@
In addition to the above 3.80 make.exe you can download
this
- www.cmake.org make.exe which will not have a libintl2.dll
+ www.cmake.org make.exe which will not have a libintl2.dll
dependency.
@@ -597,27 +672,27 @@
is a Pentium class processor or better, at least 256 MB of RAM, and
approximately 1.5 GB of free disk space.
- X64 only:
- The minimum recommended hardware for building the Linux
- version is an AMD Opteron class processor, at least 512 MB of RAM, and
- approximately 4 GB of free disk space.
+ X64 only:
+ The minimum recommended hardware for building the Linux
+ version is an AMD Opteron class processor, at least 512 MB of RAM, and
+ approximately 4 GB of free disk space.
- The build will use the tools contained in
- /bin and
- /usr/bin
- of a standard installation of the Linux operating environment.
- You should ensure that these directories are in your
- PATH.
+ The build will use the tools contained in
+ /bin and
+ /usr/bin
+ of a standard installation of the Linux operating environment.
+ You should ensure that these directories are in your
+ PATH.
- Note that some Linux systems have a habit of pre-populating
- your environment variables for you, for example JAVA_HOME
- might get pre-defined for you to refer to the JDK installed on
- your Linux system.
- You will need to unset JAVA_HOME.
- It's a good idea to run env and verify the
- environment variables you are getting from the default system
- settings make sense for building the
- OpenJDK.
+ Note that some Linux systems have a habit of pre-populating
+ your environment variables for you, for example JAVA_HOME
+ might get pre-defined for you to refer to the JDK installed on
+ your Linux system.
+ You will need to unset JAVA_HOME.
+ It's a good idea to run env and verify the
+ environment variables you are getting from the default system
+ settings make sense for building the
+ OpenJDK.
Install
@@ -660,23 +730,23 @@
Approximately 1.4 GB of free disk
space is needed for a 32-bit build.
- If you are building the 64-bit version, you should
- run the command "isainfo -v" to verify that you have a
- 64-bit installation, it should say sparcv9 or
- amd64.
- An additional 7 GB of free disk space is needed
- for a 64-bit build.
+ If you are building the 64-bit version, you should
+ run the command "isainfo -v" to verify that you have a
+ 64-bit installation, it should say sparcv9 or
+ amd64.
+ An additional 7 GB of free disk space is needed
+ for a 64-bit build.
- The build uses the tools contained in /usr/ccs/bin
- and /usr/bin of a standard developer or full installation of
- the Solaris operating environment.
+ The build uses the tools contained in /usr/ccs/bin
+ and /usr/bin of a standard developer or full installation of
+ the Solaris operating environment.
- Solaris patches specific to the JDK can be downloaded from the
-
- SunSolve JDK Solaris patches download page.
- You should ensure that the latest patch cluster for
- your version of the Solaris operating environment has also
- been installed.
+ Solaris patches specific to the JDK can be downloaded from the
+
+ SunSolve JDK Solaris patches download page.
+ You should ensure that the latest patch cluster for
+ your version of the Solaris operating environment has also
+ been installed.
- X64 only:
- The minimum recommended hardware for building
- the Windows X64 version is an AMD Opteron class processor, at least 1
- GB of RAM, and approximately 10 GB of free disk space.
+ X64 only:
+ The minimum recommended hardware for building
+ the Windows X64 version is an AMD Opteron class processor, at least 1
+ GB of RAM, and approximately 10 GB of free disk space.
- The makefiles will try to translate any pathnames supplied
- to it into the C:/ style automatically.
+ The makefiles will try to translate any pathnames supplied
+ to it into the C:/ style automatically.
- Note that use of CYGWIN creates a unique problem with regards to
- setting PATH. Normally on Windows
- the PATH variable contains directories
- separated with the ";" character (Solaris and Linux uses ":").
- With CYGWIN, it uses ":", but that means that paths like "C:/path"
- cannot be placed in the CYGWIN version of PATH and
- instead CYGWIN uses something like /cygdrive/c/path
- which CYGWIN understands, but only CYGWIN understands.
- So be careful with paths on Windows.
+ Note that use of CYGWIN creates a unique problem with regards to
+ setting PATH. Normally on Windows
+ the PATH variable contains directories
+ separated with the ";" character (Solaris and Linux uses ":").
+ With CYGWIN, it uses ":", but that means that paths like "C:/path"
+ cannot be placed in the CYGWIN version of PATH and
+ instead CYGWIN uses something like /cygdrive/c/path
+ which CYGWIN understands, but only CYGWIN understands.
+ So be careful with paths on Windows.
Optional Import JDK, set
ALT_JDK_IMPORT_PATH.
@@ -828,7 +888,7 @@
JDK 6, this is often called a bootstrap JDK.
The JDK 6 binaries can be downloaded from Sun's
JDK 6 download site.
+ target="_blank">JDK 6 download site.
For build performance reasons
is very important that this bootstrap JDK be made available on the
local disk of the machine doing the build.
@@ -841,44 +901,12 @@
in the PATH environment variable, although it's
not required.
- Solaris:
- Some pre-installed JDK images may be available to you in the
- directory /usr/jdk/instances.
- If you don't set
- ALT_BOOTDIR
- the makefiles will look in that location for a JDK it can use.
-
-
-
- Not all of the source code that makes up the JDK is available
- under an open-source license.
- This is a temporary situation and these binary plugs will be
- replaced with fully open source replacements as soon as possible.
- So currently, in order to build a complete OpenJDK image,
- you must first download and install the appropriate
- binary plug bundles for the OpenJDK, go to the
- OpenJDK site and select
- the
- "Bundles(7)"
- link and download the binaryplugs for
- your particular platform.
- The file downloaded is a jar file that must be extracted by running
- the jar file with:
-
- A prompt will be issued for acceptance of these binary plug files.
- During the OpenJDK build process these "binary plugs"
- for the encumbered components will be copied into your
- resulting OpenJDK binary build image.
- These binary plug files are only for the purpose of
- building an OpenJDK binary.
- Make sure you set
- ALT_BINARY_PLUGS_PATH
- to the root of this installation.
+ Solaris:
+ Some pre-installed JDK images may be available to you in the
+ directory /usr/jdk/instances.
+ If you don't set
+ ALT_BOOTDIR
+ the makefiles will look in that location for a JDK it can use.
@@ -896,7 +924,7 @@
All OpenJDK builds require access to least Ant 1.6.5.
The Ant tool is available from the
- Ant download site.
+ Ant download site.
You should always make sure ant is in your PATH, and
on Windows you may also need to set
ANT_HOME
@@ -908,7 +936,7 @@
See
- http://en.wikipedia.org/wiki/Certificate_Authority
+ http://en.wikipedia.org/wiki/Certificate_Authority
for a better understanding of the Certificate Authority (CA).
A certificates file named "cacerts"
represents a system-wide keystore with CA certificates.
@@ -942,121 +970,121 @@
At a minimum, the
- Sun Studio 12 Update 1 Compilers
+ Sun Studio 12 Update 1 Compilers
(containing version 5.10 of the C and C++ compilers) is required,
including specific patches.
-
+
The Solaris SPARC patch list is:
-
-
- 118683-05: SunOS 5.10: Patch for profiling libraries and assembler
-
-
- 119963-21: SunOS 5.10: Shared library patch for C++
-
+ 141858-06: Sun Studio 12 Update 1_x86: Sun Compiler Common patch for x86 backend
+
+
+ 128229-09: Sun Studio 12 Update 1_x86: Patch for C++ Compiler
+
+
+ 142363-05: Sun Studio 12 Update 1_x86: Patch for C Compiler
+
+
+ 142368-01: Sun Studio 12.1_x86: Patch for Performance Analyzer Tools
+
- Set
- ALT_COMPILER_PATH
- to point to the location of
- the compiler binaries, and place this location in the PATH.
+ Set
+ ALT_COMPILER_PATH
+ to point to the location of
+ the compiler binaries, and place this location in the PATH.
-BEGIN WARNING: At this time (Spring/Summer 2010) JDK 7 is starting a transition to
-use the newest VS2010 Microsoft compilers. These build instructions are updated
-to show where we are going. We have a QA process to go through before
-official builds actually use VS2010. So for now, official builds are
-still using VS2003. No other compilers are known to build the entire JDK,
-including non-open portions.
-So for now you should be able to build with either VS2003 or VS2010.
-We do not guarantee that VS2008 will work, although there is sufficient
-makefile support to make at least basic JDK builds plausible.
-Visual Studio 2010 Express compilers are now able to build all the
-open source repositories, but this is 32 bit only. To build 64 bit
-Windows binaries use the the 7.1 Windows SDK.END WARNING.
-
- The 32-bit OpenJDK Windows build
- requires
- Microsoft Visual Studio C++ 2010 (VS2010) Professional
- Edition or Express compiler.
- The compiler and other tools are expected to reside
- in the location defined by the variable
- VS100COMNTOOLS which
- is set by the Microsoft Visual Studio installer.
+
+ BEGIN WARNING: At this time (Spring/Summer 2010) JDK 7 is starting a transition to
+ use the newest VS2010 Microsoft compilers. These build instructions are updated
+ to show where we are going. We have a QA process to go through before
+ official builds actually use VS2010. So for now, official builds are
+ still using VS2003. No other compilers are known to build the entire JDK,
+ including non-open portions.
+ So for now you should be able to build with either VS2003 or VS2010.
+ We do not guarantee that VS2008 will work, although there is sufficient
+ makefile support to make at least basic JDK builds plausible.
+ Visual Studio 2010 Express compilers are now able to build all the
+ open source repositories, but this is 32 bit only. To build 64 bit
+ Windows binaries use the the 7.1 Windows SDK.END WARNING.
+
+ The 32-bit OpenJDK Windows build
+ requires
+ Microsoft Visual Studio C++ 2010 (VS2010) Professional
+ Edition or Express compiler.
+ The compiler and other tools are expected to reside
+ in the location defined by the variable
+ VS100COMNTOOLS which
+ is set by the Microsoft Visual Studio installer.
- Once the compiler is installed,
- it is recommended that you run VCVARS32.BAT
- to set the compiler environment variables
- INCLUDE,
- LIB, and
- PATH
- prior to building the
- OpenJDK.
- The above environment variables MUST be set.
- This compiler also contains the Windows SDK v 7.0a,
- which is an update to the Windows 7 SDK.
+ Once the compiler is installed,
+ it is recommended that you run VCVARS32.BAT
+ to set the compiler environment variables
+ INCLUDE,
+ LIB, and
+ PATH
+ prior to building the
+ OpenJDK.
+ The above environment variables MUST be set.
+ This compiler also contains the Windows SDK v 7.0a,
+ which is an update to the Windows 7 SDK.
- WARNING: Make sure you check out the
- CYGWIN link.exe WARNING.
- The path /usr/bin must be after the path to the
- Visual Studio product.
+ WARNING: Make sure you check out the
+ CYGWIN link.exe WARNING.
+ The path /usr/bin must be after the path to the
+ Visual Studio product.
- What was tested is just directly setting up LIB, INCLUDE,
- PATH and based on the installation directories using the
- DOS short name appropriate for the system, (you will
- need to set them for yours, not just blindly copy this) eg :
-
+
+ What was tested is just directly setting up LIB, INCLUDE,
+ PATH and based on the installation directories using the
+ DOS short name appropriate for the system, (you will
+ need to set them for yours, not just blindly copy this) eg :
+
set VSINSTALLDIR=c:\PROGRA~2\MICROS~1.0
set WindowsSdkDir=c:\PROGRA~1\MICROS~1\Windows\v7.1
set PATH=%VSINSTALLDIR%\vc\bin\amd64;%VSINSTALLDIR%\Common7\IDE;%WindowsSdkDir%\bin;%PATH%
set INCLUDE=%VSINSTALLDIR%\vc\include;%WindowsSdkDir%\include
set LIB=%VSINSTALLDIR%\vc\lib\amd64;%WindowsSdkDir%\lib\x64
-
@@ -1110,41 +1138,41 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
Companion CD/DVD, these often will be installed into
/opt/sfw/cups.
- Linux:
- CUPS header files are required for building the
- OpenJDK on Linux.
- The Linux header files are usually available from a "cups"
- development package, it's recommended that you try and use
- the package provided by the particular version of Linux that
- you are using.
+ Linux:
+ CUPS header files are required for building the
+ OpenJDK on Linux.
+ The Linux header files are usually available from a "cups"
+ development package, it's recommended that you try and use
+ the package provided by the particular version of Linux that
+ you are using.
- The CUPS header files can always be downloaded from
- www.cups.org.
- The variable
- ALT_CUPS_HEADERS_PATH
- can be used to override the default location of the
- CUPS Header files.
+ The CUPS header files can always be downloaded from
+ www.cups.org.
+ The variable
+ ALT_CUPS_HEADERS_PATH
+ can be used to override the default location of the
+ CUPS Header files.
- Solaris:
- XRender header files are required for building the
- OpenJDK on Solaris.
- The XRender header file is included with the other X11 header files
- in the package SFWxwinc on new enough versions of
- Solaris and will be installed in
- /usr/X11/include/X11/extensions/Xrender.h
+ Solaris:
+ XRender header files are required for building the
+ OpenJDK on Solaris.
+ The XRender header file is included with the other X11 header files
+ in the package SFWxwinc on new enough versions of
+ Solaris and will be installed in
+ /usr/X11/include/X11/extensions/Xrender.h
- Linux:
- XRender header files are required for building the
- OpenJDK on Linux.
- The Linux header files are usually available from a "Xrender"
- development package, it's recommended that you try and use
- the package provided by the particular distribution of Linux that
- you are using.
-
+ Linux:
+ XRender header files are required for building the
+ OpenJDK on Linux.
+ The Linux header files are usually available from a "Xrender"
+ development package, it's recommended that you try and use
+ the package provided by the particular distribution of Linux that
+ you are using.
+
@@ -1155,31 +1183,31 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
Note that you need development version of package that
includes both FreeType library and header files.
- You can always download latest FreeType version from the
- FreeType website.
+ You can always download latest FreeType version from the
+ FreeType website.
- Makefiles will try to pick FreeType from /usr/lib and /usr/include.
- In case it is installed elsewhere you will need to set environment
- variables
- ALT_FREETYPE_LIB_PATH
- and
- ALT_FREETYPE_HEADERS_PATH
- to refer to place where library and header files are installed.
+ Makefiles will try to pick FreeType from /usr/lib and /usr/include.
+ In case it is installed elsewhere you will need to set environment
+ variables
+ ALT_FREETYPE_LIB_PATH
+ and
+ ALT_FREETYPE_HEADERS_PATH
+ to refer to place where library and header files are installed.
- Note that by default FreeType is built with byte code hinting
- support disabled due to licensing restrictions.
- In this case, text appearance and metrics are expected to
- differ from Sun's official JDK build.
- See
-
- the SourceForge FreeType2 Home Page
-
- for more information.
+ Note that by default FreeType is built with byte code hinting
+ support disabled due to licensing restrictions.
+ In this case, text appearance and metrics are expected to
+ differ from Sun's official JDK build.
+ See
+
+ the SourceForge FreeType2 Home Page
+
+ for more information.
@@ -1195,25 +1223,25 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
The makefiles will check this emit a sanity error if it is
missing or the wrong version.
- In particular, older Linux systems will likely not have the
- right version of ALSA installed, for example
- Redhat AS 2.1 U2 and SuSE 8.1 do not include a sufficiently
- recent ALSA distribution.
- On rpm-based systems, you can see if ALSA is installed by
- running this command:
+ In particular, older Linux systems will likely not have the
+ right version of ALSA installed, for example
+ Redhat AS 2.1 U2 and SuSE 8.1 do not include a sufficiently
+ recent ALSA distribution.
+ On rpm-based systems, you can see if ALSA is installed by
+ running this command:
rpm -qa | grep alsa
Both alsa and alsa-devel packages are needed.
- If your distribution does not come with ALSA, and you can't
- find ALSA packages built for your particular system,
- you can try to install the pre-built ALSA rpm packages from
-
- www.freshrpms.net.
- Note that installing a newer ALSA could
- break sound output if an older version of ALSA was previously
- installed on the system, but it will enable JDK compilation.
+ If your distribution does not come with ALSA, and you can't
+ find ALSA packages built for your particular system,
+ you can try to install the pre-built ALSA rpm packages from
+
+ www.freshrpms.net.
+ Note that installing a newer ALSA could
+ break sound output if an older version of ALSA was previously
+ installed on the system, but it will enable JDK compilation.
Installation: execute as root
[i586]: rpm -Uv --force alsa-lib-devel-0.9.1-rh61.i386.rpm
@@ -1228,7 +1256,7 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
Download driver and library
@@ -1256,9 +1284,9 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
building the JDK platform. To actually use ALSA sound drivers, more
steps are necessary as outlined in the documentation on ALSA's homepage.
- ALSA can be uninstalled by executing make uninstall first in
- the alsa-lib-0.9.1 directory and then in
- alsa-driver-0.9.1.
+ ALSA can be uninstalled by executing make uninstall first in
+ the alsa-lib-0.9.1 directory and then in
+ alsa-driver-0.9.1.
There are no ALT* variables to change the assumed locations of ALSA,
the makefiles will expect to find the ALSA include files and library at:
@@ -1273,15 +1301,15 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
on Windows which can be supplied by
CYGWIN.
- The OpenJDK build requires CYGWIN version 1.5.12 or newer.
- Information about CYGWIN can
- be obtained from the CYGWIN website at
- www.cygwin.com.
+ The OpenJDK build requires CYGWIN version 1.5.12 or newer.
+ Information about CYGWIN can
+ be obtained from the CYGWIN website at
+ www.cygwin.com.
- By default CYGWIN doesn't install all the tools required for building
- the OpenJDK.
- Along with the default installation, you need to install
- the following tools.
+ By default CYGWIN doesn't install all the tools required for building
+ the OpenJDK.
+ Along with the default installation, you need to install
+ the following tools.
@@ -1298,21 +1326,21 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
Devel
binutils
The GNU assembler, linker and binary
- utilities
+ utilities
make.exe
Devel
make
The GNU version of the 'make' utility built for CYGWIN.
- NOTE: See the GNU make section
GNU implementation of the traditional Unix macro
- processor
+ processor
cpio.exe
@@ -1354,21 +1382,21 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
- Note that the CYGWIN software can conflict with other non-CYGWIN
- software on your Windows system.
- CYGWIN provides a
- FAQ for
- known issues and problems, of particular interest is the
- section on
-
- BLODA (applications that interfere with CYGWIN).
+ Note that the CYGWIN software can conflict with other non-CYGWIN
+ software on your Windows system.
+ CYGWIN provides a
+ FAQ for
+ known issues and problems, of particular interest is the
+ section on
+
+ BLODA (applications that interfere with CYGWIN).
- WARNING:
- Be very careful with link.exe, it will conflict
- with the Visual Studio version. You need the Visual Studio
- version of link.exe, not the CYGWIN one.
- So it's important that the Visual Studio paths in PATH preceed
- the CYGWIN path /usr/bin.
+ WARNING:
+ Be very careful with link.exe, it will conflict
+ with the Visual Studio version. You need the Visual Studio
+ version of link.exe, not the CYGWIN one.
+ So it's important that the Visual Studio paths in PATH preceed
+ the CYGWIN path /usr/bin.
Microsoft DirectX 9.0 SDK header files and libraries
@@ -1377,7 +1405,7 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
OpenJDK.
This SDK can be downloaded from
- Microsoft DirectX 9.0 SDK (Summer 2004).
+ Microsoft DirectX 9.0 SDK (Summer 2004).
If the link above becomes obsolete, the SDK can be found from
the Microsoft Download Site
(search with "DirectX 9.0 SDK Update Summer 2004").
@@ -1431,14 +1459,14 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
- Solaris:
- Note that ARCH_DATA_MODEL is really only needed on Solaris to
- indicate you want to built the 64-bit version.
- And before the Solaris 64-bit binaries can be used, they
- must be merged with the binaries from a separate 32-bit build.
- The merged binaries may then be used in either 32-bit or 64-bit mode, with
- the selection occurring at runtime
- with the -d32 or -d64 options.
+ Solaris:
+ Note that ARCH_DATA_MODEL is really only needed on Solaris to
+ indicate you want to built the 64-bit version.
+ And before the Solaris 64-bit binaries can be used, they
+ must be merged with the binaries from a separate 32-bit build.
+ The merged binaries may then be used in either 32-bit or 64-bit mode, with
+ the selection occurring at runtime
+ with the -d32 or -d64 options.
@@ -1450,37 +1478,39 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
The default output directory is
build/platform,
where platform is one of
-
-
solaris-sparc
-
solaris-sparcv9
-
solaris-i586
-
solaris-amd64
-
linux-i586
-
linux-amd64
-
windows-i586
-
windows-amd64
-
+
+
+
solaris-sparc
+
solaris-sparcv9
+
solaris-i586
+
solaris-amd64
+
linux-i586
+
linux-amd64
+
windows-i586
+
windows-amd64
+
+
In particular, the
build/platform/j2sdk-image/bin
directory should contain executables for the
OpenJDK tools and utilities.
- You can test that the build completed properly by using the build
- to run the various demos that you will find in the
- build/platform/j2sdk-image/demo
- directory.
+ You can test that the build completed properly by using the build
+ to run the various demos that you will find in the
+ build/platform/j2sdk-image/demo
+ directory.
- The provided regression tests can be run with the jtreg
- utility from
- the jtreg site.
+ The provided regression tests can be run with the jtreg
+ utility from
+ the jtreg site.
- Some of the
- environment or make variables (just called variables in this
- document) that can impact the build are:
+ Some of the
+ environment or make variables (just called variables in this
+ document) that can impact the build are:
The location or locations for the Unix command utilities
- (e.g. /usr/bin)
+ (e.g. /usr/bin)
MILESTONE
@@ -1523,14 +1553,6 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
You should always install your own local Bootstrap JDK and
always set ALT_BOOTDIR explicitly.
-
- The location of the binary plugs installation.
- See Binary Plugs for more information.
- You should always have a local copy of a
- recent Binary Plugs install image
- and set this variable to that location.
-
The location of a previously built JDK installation.
@@ -1627,36 +1649,19 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
Where each of these directories contain the import JDK image
for that platform.
- These are useful in managing builds on multiple platforms.
- The default network location for all of the binary plug images
- for all platforms.
- If ALT_BINARY_PLUGS_PATH
- is not set, this directory will be used and should contain
- the following directories:
- solaris-sparc,
- solaris-i586,
- solaris-sparcv9,
- solaris-amd64,
- linux-i586,
- linux-amd64,
- windows-i586,
- and
- windows-amd64.
- Where each of these directories contain the binary plugs image
- for that platform.
-
The location of the
- Microsoft Visual Studio
- tools 'bin' directory.
- The default is usually derived from
- ALT_COMPILER_PATH.
+ Microsoft Windows SDK where some tools will be
+ located.
+ The default is whatever WINDOWSSDKDIR is set to
+ (or WindowsSdkDir) or the path
+
@@ -1694,17 +1699,17 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
Look for the check list of the platform you are building on in the
Table of Contents.
- You can validate your build environment by using the sanity
- target.
- Any errors listed
- will stop the build from starting, and any warnings may result in
- a flawed product build.
- We strongly encourage you to evaluate every
- sanity check warning and fix it if required, before you proceed
- further with your build.
+ You can validate your build environment by using the sanity
+ target.
+ Any errors listed
+ will stop the build from starting, and any warnings may result in
+ a flawed product build.
+ We strongly encourage you to evaluate every
+ sanity check warning and fix it if required, before you proceed
+ further with your build.
- Some of the more common problems with builds are briefly described
- below, with suggestions for remedies.
+ Some of the more common problems with builds are briefly described
+ below, with suggestions for remedies.
Slow Builds:
@@ -1715,15 +1720,15 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
machine, setting it to more than the the number of CPUs is probably
not a good idea).
- Creating the javadocs can be very slow, if you are running
- javadoc, consider skipping that step.
+ Creating the javadocs can be very slow, if you are running
+ javadoc, consider skipping that step.
- Faster hardware and more RAM always helps too.
- The VM build tends to be CPU intensive (many C++ compiles),
- and the rest of the JDK will often be disk intensive.
+ Faster hardware and more RAM always helps too.
+ The VM build tends to be CPU intensive (many C++ compiles),
+ and the rest of the JDK will often be disk intensive.
- Faster compiles are possible using a tool called
- ccache.
+ Faster compiles are possible using a tool called
+ ccache.
@@ -1732,10 +1737,10 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
If you see warnings that refer to file time stamps, e.g.
Warning message: File `xxx' has modification time in
- the future.
+ the future.
Warning message: Clock skew detected. Your build may
- be incomplete.
+ be incomplete.
These warnings can occur when the clock on the build machine is out of
sync with the timestamps on the source files. Other errors, apparently
@@ -1747,9 +1752,9 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
when the pre-1.4 compiler ran across the new assert keyword
in the 1.4 source code.
- If you see these warnings, reset the clock on the build
- machine, run "gmake clobber" or delete the directory
- containing the build output, and restart the build from the beginning.
+ If you see these warnings, reset the clock on the build
+ machine, run "gmake clobber" or delete the directory
+ containing the build output, and restart the build from the beginning.
@@ -1776,32 +1781,28 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
This is probably an issue with SELinux (See
- http://en.wikipedia.org/wiki/SELinux).
+ http://en.wikipedia.org/wiki/SELinux).
Parts of the VM is built without the -fPIC for
performance reasons.
- To completely disable SELinux:
-
-
-
$ su root
-
# system-config-securitylevel
-
In the window that appears, select the SELinux tab
-
Disable SELinux
-
-
+ To completely disable SELinux:
+
+
$ su root
+
# system-config-securitylevel
+
In the window that appears, select the SELinux tab
+
Disable SELinux
+
- Alternatively, instead of completely disabling it you could
- disable just this one check.
-
-
-
Select System->Administration->SELinux Management
-
In the SELinux Management Tool which appears,
+ Alternatively, instead of completely disabling it you could
+ disable just this one check.
+
+
Select System->Administration->SELinux Management
+
In the SELinux Management Tool which appears,
select "Boolean" from the menu on the left
-
Expand the "Memory Protection" group
-
Check the first item, labeled
+
Expand the "Memory Protection" group
+
Check the first item, labeled
"Allow all unconfined executables to use libraries requiring text relocation ..."
-
-
+
@@ -1810,7 +1811,7 @@ Windows binaries use the the 7.1 Windows SDK.END WARNING.
The CYGWIN software can conflict with other non-CYGWIN
software. See the CYGWIN FAQ section on
- BLODA (applications that interfere with CYGWIN).
+ BLODA (applications that interfere with CYGWIN).
diff --git a/corba/.hgtags b/corba/.hgtags
index 331d411b743df57e0cd7c383833f7481ae32eb48..6a4b3aa44b18d7f4a06198b6426753a2998f7350 100644
--- a/corba/.hgtags
+++ b/corba/.hgtags
@@ -97,3 +97,4 @@ fa502e4834dac2176499cc1f44794d5dc32a11b9 jdk7-b117
cff5a173ec1e89013359e804a3e31736ef6fb462 jdk7-b120
2cc9f32992101732b23730b737740e64ebc5fa89 jdk7-b121
1523a060032c8a5b7840198da8911abeff88118f jdk7-b122
+a230c142628cea22475ab9dc5cd544266ddf2466 jdk7-b123
diff --git a/corba/make/Makefile b/corba/make/Makefile
index b8a719150793d60b416575f61be370030fcdc2eb..aef5c1b4bd452e21d30e127211ce05e319bc3a42 100644
--- a/corba/make/Makefile
+++ b/corba/make/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2007, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2010, 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
diff --git a/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_io.jmk b/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_io.jmk
index a1e8610ddc13589345c45408a278cebd778727a4..b8de62d6f2a476b8c05c63f6a3bd135e21441bcc 100644
--- a/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_io.jmk
+++ b/corba/make/com/sun/corba/minclude/com_sun_corba_se_impl_io.jmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2010, 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
diff --git a/corba/make/common/Defs-linux.gmk b/corba/make/common/Defs-linux.gmk
index a5ef1d36b290aabff327808f2f451dc4d3e8b62f..f65cfe8e5357b6ba6387f716d6fe8a48a07add79 100644
--- a/corba/make/common/Defs-linux.gmk
+++ b/corba/make/common/Defs-linux.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1999, 2007, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2010, 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
diff --git a/corba/make/common/Defs-solaris.gmk b/corba/make/common/Defs-solaris.gmk
index eb38771dfabc2d38b973a6abc69fd93c1db2a2e2..3237978a01a389f0c83ece327ac6e883f27dd104 100644
--- a/corba/make/common/Defs-solaris.gmk
+++ b/corba/make/common/Defs-solaris.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1995, 2007, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1995, 2010, 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
diff --git a/corba/make/common/Defs-windows.gmk b/corba/make/common/Defs-windows.gmk
index cef6c6c60b86a61b07ec7826c00f85297ec1f9e2..75823af9dd91159a84e68cf6026ae5dc6f06b4fa 100644
--- a/corba/make/common/Defs-windows.gmk
+++ b/corba/make/common/Defs-windows.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1999, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2010, 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
diff --git a/corba/make/common/Defs.gmk b/corba/make/common/Defs.gmk
index 2d5c83db6e0dc97d5f8741be8c35ccd5c3a3a7e6..6d78ecb580e2728d013f6b32e2621e0eb56f10ca 100644
--- a/corba/make/common/Defs.gmk
+++ b/corba/make/common/Defs.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1995, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1995, 2010, 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
diff --git a/corba/make/common/Rules.gmk b/corba/make/common/Rules.gmk
index a18978697b42b4e43ccccff4f1181996b126681f..7080e5bc53be1c22cf53070335f8139e42b60829 100644
--- a/corba/make/common/Rules.gmk
+++ b/corba/make/common/Rules.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1995, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1995, 2010, 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
diff --git a/corba/make/common/shared/Defs-java.gmk b/corba/make/common/shared/Defs-java.gmk
index 8d7531fe3e434d75357961f2d8e5a9206c848ee9..f45a7a1bc7347d57f9817ad7d883c347b80857ed 100644
--- a/corba/make/common/shared/Defs-java.gmk
+++ b/corba/make/common/shared/Defs-java.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1995, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1995, 2010, 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
diff --git a/corba/make/common/shared/Defs-linux.gmk b/corba/make/common/shared/Defs-linux.gmk
index 9db85a39ba772cb4d11c536ef6e9183ae1aaa39e..c8a3e3595430d069f7f89fd6bbec28eb6138bf4a 100644
--- a/corba/make/common/shared/Defs-linux.gmk
+++ b/corba/make/common/shared/Defs-linux.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2007, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2010, 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
diff --git a/corba/make/common/shared/Defs-solaris.gmk b/corba/make/common/shared/Defs-solaris.gmk
index 7f0abf6a790a9d74095ad6a67c0a74d546abff1b..416e868dc1dab4dbdd124bd55391b126e4c1e679 100644
--- a/corba/make/common/shared/Defs-solaris.gmk
+++ b/corba/make/common/shared/Defs-solaris.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2007, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2010, 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
diff --git a/corba/make/common/shared/Defs-windows.gmk b/corba/make/common/shared/Defs-windows.gmk
index 559317a744e6f496769699050c2289fdf5ca6def..1521d9461c378b817190bc050223a52839b848d2 100644
--- a/corba/make/common/shared/Defs-windows.gmk
+++ b/corba/make/common/shared/Defs-windows.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2010, 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
diff --git a/corba/make/common/shared/Defs.gmk b/corba/make/common/shared/Defs.gmk
index af1456bab97d033d997b4a3d96b97d059eb7e115..1619dcba1c2040c6b3fc483a3cc619d5514a5d81 100644
--- a/corba/make/common/shared/Defs.gmk
+++ b/corba/make/common/shared/Defs.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2010, 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
diff --git a/corba/make/org/omg/idl/Makefile b/corba/make/org/omg/idl/Makefile
index 87ad9db55a955522c7b456fb5aab8daff3c8250d..3687eb0b08cfb8ee380e6d99274732a0ef74f885 100644
--- a/corba/make/org/omg/idl/Makefile
+++ b/corba/make/org/omg/idl/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1999, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2010, 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
diff --git a/corba/make/sun/corba/Makefile b/corba/make/sun/corba/Makefile
index f590de2d1a55adb41b503fc13b175fb4e774313c..5b7dfd05b56b212f1267b43c8ff074aaf668018a 100644
--- a/corba/make/sun/corba/Makefile
+++ b/corba/make/sun/corba/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2000, 2005, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2000, 2010, 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
diff --git a/corba/make/sun/corba/core/Makefile b/corba/make/sun/corba/core/Makefile
index 861aed047c968075419fdc888812c66d40dea5d1..7075e865cd233a8e87c3ee7e4006d872b9f6446f 100644
--- a/corba/make/sun/corba/core/Makefile
+++ b/corba/make/sun/corba/core/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1997, 2005, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1997, 2010, 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
diff --git a/corba/make/sun/rmi/rmic/FILES.gmk b/corba/make/sun/rmi/rmic/FILES.gmk
index ca8f409b20ef265dd3cb16d6928a229083465444..9ad7901d54ae15be38bcbc99ba0df06f55a3b975 100644
--- a/corba/make/sun/rmi/rmic/FILES.gmk
+++ b/corba/make/sun/rmi/rmic/FILES.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/encoding/BufferManagerWriteStream.java b/corba/src/share/classes/com/sun/corba/se/impl/encoding/BufferManagerWriteStream.java
index 0c7844325cd92ca9f482cb3090c3859c9f9ebf85..e03c71c5a957487698ccf4b5a2a101a2d861db25 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/encoding/BufferManagerWriteStream.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/encoding/BufferManagerWriteStream.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java b/corba/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java
index 95224cbd882164eba77d71203b5e3897de93dfe6..d24fa03072544d459e4557381ecc6b552e260562 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java b/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java
index f5951362a54131c50721fb10c1878b82067a73b7..e8c6d1560fc1e4859d1845005a942965406c7b32 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PINoOpHandlerImpl.java b/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PINoOpHandlerImpl.java
index 972cc8d214c852069bd2b420d71c273009b8269f..e6d9e53609ff94eb9a5c897881de13a7454a530e 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PINoOpHandlerImpl.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PINoOpHandlerImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java b/corba/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java
index ecadabd33eb7aae269e3a14f3ea1aca6d03a86a5..a20de7a3af0dd7c780024ad24be421ef40faed87 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java b/corba/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java
index 830fd648df5628062bfe2296f77ad76d03dd1438..1992c25a3c137644fa3bcde92a942d39349fefe0 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/io/IIOPInputStream.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/io/ObjectStreamClass.java b/corba/src/share/classes/com/sun/corba/se/impl/io/ObjectStreamClass.java
index a8f55670d4e100b9a3f59ccf102e326e97800e13..bb4aca2d58cde843ad59f17f8bc063b9c5e4d9e2 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/io/ObjectStreamClass.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/io/ObjectStreamClass.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/orbutil/CorbaResourceUtil.java b/corba/src/share/classes/com/sun/corba/se/impl/orbutil/CorbaResourceUtil.java
index 9f23ebf76acdd46ef0daa4c814c3677821ca81d3..5f141201392378d37d01d41fcc9581ec7b6ee18f 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/orbutil/CorbaResourceUtil.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/orbutil/CorbaResourceUtil.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties b/corba/src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties
index 17b104b8e2f87061d8117ef70f3d327af3c85b2c..7fc4dddab1892a7f10d11e4976e7a9e87aab7642 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties
+++ b/corba/src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties
@@ -1,5 +1,5 @@
-# Copyright (c) 2001, 2005, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2001, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/presentation/rmi/ExceptionHandlerImpl.java b/corba/src/share/classes/com/sun/corba/se/impl/presentation/rmi/ExceptionHandlerImpl.java
index 6b9452e27661c45591d3cd059bd6e31ac004876a..f6b08eab1a50636010544cd895287c5cb0d82b03 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/presentation/rmi/ExceptionHandlerImpl.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/presentation/rmi/ExceptionHandlerImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/impl/transport/SocketOrChannelConnectionImpl.java b/corba/src/share/classes/com/sun/corba/se/impl/transport/SocketOrChannelConnectionImpl.java
index 913cd903755c9536e249a6e0f0d109749b1d79e2..277657e7586612fe15810b8572c33b3e6a876a1c 100644
--- a/corba/src/share/classes/com/sun/corba/se/impl/transport/SocketOrChannelConnectionImpl.java
+++ b/corba/src/share/classes/com/sun/corba/se/impl/transport/SocketOrChannelConnectionImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/pept/transport/ConnectionCache.java b/corba/src/share/classes/com/sun/corba/se/pept/transport/ConnectionCache.java
index ac926d063c0bb2f693f67f0db0f3e6c7efe72037..7d32050a9099d263ffa64f53e62371bc47477a59 100644
--- a/corba/src/share/classes/com/sun/corba/se/pept/transport/ConnectionCache.java
+++ b/corba/src/share/classes/com/sun/corba/se/pept/transport/ConnectionCache.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/spi/protocol/PIHandler.java b/corba/src/share/classes/com/sun/corba/se/spi/protocol/PIHandler.java
index 5aebbac4dea347bc9fb0be74f669fdd7971cc390..b59062a43be8b4f5d98f74295cf75870f38d2eb0 100644
--- a/corba/src/share/classes/com/sun/corba/se/spi/protocol/PIHandler.java
+++ b/corba/src/share/classes/com/sun/corba/se/spi/protocol/PIHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2010, 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
diff --git a/corba/src/share/classes/com/sun/corba/se/spi/transport/CorbaConnection.java b/corba/src/share/classes/com/sun/corba/se/spi/transport/CorbaConnection.java
index c7ec1ac0aa1f7649f00626e30fb8089afe3b570a..59bbd5140767574f8eac015866bed96bae5553cc 100644
--- a/corba/src/share/classes/com/sun/corba/se/spi/transport/CorbaConnection.java
+++ b/corba/src/share/classes/com/sun/corba/se/spi/transport/CorbaConnection.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2010, 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
diff --git a/corba/src/share/classes/com/sun/tools/corba/se/idl/constExpr/Expression.java b/corba/src/share/classes/com/sun/tools/corba/se/idl/constExpr/Expression.java
index d30696cdaf3c0b5a09ef12eb80b368f6482767f8..84a1873609d6ba5bd2e3307aa94aac2fa5465e1e 100644
--- a/corba/src/share/classes/com/sun/tools/corba/se/idl/constExpr/Expression.java
+++ b/corba/src/share/classes/com/sun/tools/corba/se/idl/constExpr/Expression.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1999, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2010, 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
diff --git a/corba/src/share/classes/javax/rmi/PortableRemoteObject.java b/corba/src/share/classes/javax/rmi/PortableRemoteObject.java
index fef8d40b0b2eadf5f1a8286ec057b7377a27f679..cbd6df255104a872af826e10952f08b913303241 100644
--- a/corba/src/share/classes/javax/rmi/PortableRemoteObject.java
+++ b/corba/src/share/classes/javax/rmi/PortableRemoteObject.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2010, 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
diff --git a/corba/src/share/classes/org/omg/CORBA/ORB.java b/corba/src/share/classes/org/omg/CORBA/ORB.java
index 4c1737a94c88ea6cd9685c0b9bd2af82b2c25bd6..42fe7bc0090fdeefebad67147096a7eea53ce2c6 100644
--- a/corba/src/share/classes/org/omg/CORBA/ORB.java
+++ b/corba/src/share/classes/org/omg/CORBA/ORB.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1995, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1995, 2010, 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
diff --git a/corba/src/share/classes/org/omg/CORBA/SetOverrideType.java b/corba/src/share/classes/org/omg/CORBA/SetOverrideType.java
index 32c0243db849168f6672e5081d68b910e010690e..82818974d2ae4b10c7935e4dbdd1fd64c932871f 100644
--- a/corba/src/share/classes/org/omg/CORBA/SetOverrideType.java
+++ b/corba/src/share/classes/org/omg/CORBA/SetOverrideType.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2000, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2010, 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
diff --git a/corba/src/share/classes/org/omg/CORBA/TCKind.java b/corba/src/share/classes/org/omg/CORBA/TCKind.java
index 6bea0fd2212781a0f68a215eaa822b3bbea5885e..bfacebf18d9a906d7bd5da255d33f2069d5b5253 100644
--- a/corba/src/share/classes/org/omg/CORBA/TCKind.java
+++ b/corba/src/share/classes/org/omg/CORBA/TCKind.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2010, 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
diff --git a/corba/src/share/classes/org/omg/CORBA/UnknownUserException.java b/corba/src/share/classes/org/omg/CORBA/UnknownUserException.java
index 38b0b711679be4e2c0d0e4026d55b44d00d3c935..f9c8550927dcaef9ae2f26723731243c7ded047e 100644
--- a/corba/src/share/classes/org/omg/CORBA/UnknownUserException.java
+++ b/corba/src/share/classes/org/omg/CORBA/UnknownUserException.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2010, 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
diff --git a/corba/src/share/classes/org/omg/CORBA/portable/ServantObject.java b/corba/src/share/classes/org/omg/CORBA/portable/ServantObject.java
index feddaa3cdf6f2b920260c7b20e567060cc6c1ee9..2735927f789b9371ca938382085054103e511bf3 100644
--- a/corba/src/share/classes/org/omg/CORBA/portable/ServantObject.java
+++ b/corba/src/share/classes/org/omg/CORBA/portable/ServantObject.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 1999, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2010, 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
diff --git a/corba/src/share/classes/org/omg/CosNaming/nameservice.idl b/corba/src/share/classes/org/omg/CosNaming/nameservice.idl
index dbdf6a74050e347a12c86cb6136eed6fa6e8e9b6..9e5ec9b439faedb62ae67de9e4062a46f003d9f3 100644
--- a/corba/src/share/classes/org/omg/CosNaming/nameservice.idl
+++ b/corba/src/share/classes/org/omg/CosNaming/nameservice.idl
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1996, 2002, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2010, 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
diff --git a/corba/src/share/classes/org/omg/PortableInterceptor/Interceptors.idl b/corba/src/share/classes/org/omg/PortableInterceptor/Interceptors.idl
index 2a3077d57430545e3b4f9eb0581c88c1aedbdd72..e55408d704bca450ac854cf2ff9ac49754010eb6 100644
--- a/corba/src/share/classes/org/omg/PortableInterceptor/Interceptors.idl
+++ b/corba/src/share/classes/org/omg/PortableInterceptor/Interceptors.idl
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, 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
diff --git a/corba/src/share/classes/sun/corba/Bridge.java b/corba/src/share/classes/sun/corba/Bridge.java
index e7ab067422c7e3da2aa7a3ef7ebe95b74d2afca8..987ee0973763e04fac0888f66659a403f532ee83 100644
--- a/corba/src/share/classes/sun/corba/Bridge.java
+++ b/corba/src/share/classes/sun/corba/Bridge.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2010, 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
diff --git a/get_source.sh b/get_source.sh
new file mode 100644
index 0000000000000000000000000000000000000000..bc609b3ee8d0a52a4bba93bf6fd1085268aaef88
--- /dev/null
+++ b/get_source.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+#
+# Copyright (c) 2010, 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
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation. Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+
+# Get clones of all nested repositories
+sh ./make/scripts/hgforest.sh clone
+
+# Update all existing repositories to the latest sources
+sh ./make/scripts/hgforest.sh pull -u
+
diff --git a/hotspot/.hgtags b/hotspot/.hgtags
index b92574b671cab545b429c966eab514579505a083..cb26cd3520fede6882a145b8966416c5c7868e6f 100644
--- a/hotspot/.hgtags
+++ b/hotspot/.hgtags
@@ -136,3 +136,5 @@ f5603a6e50422046ebc0d2f1671d55cb8f1bf1e9 jdk7-b120
3f3653ab7af8dc1ddb9fa75dad56bf94f89e81a8 jdk7-b121
3a548dc9cb456110ca8fc1514441a8c3bda0014d jdk7-b122
5484e7c53fa7da5e869902437ee08a9ae10c1c69 hs20-b03
+9669f9b284108a9ee0a0ccbe215c37a130c9dcf5 jdk7-b123
+9669f9b284108a9ee0a0ccbe215c37a130c9dcf5 hs20-b04
diff --git a/hotspot/agent/src/os/linux/libproc_impl.c b/hotspot/agent/src/os/linux/libproc_impl.c
index ade0638da667ec4c69744eb361486c9654c4c49e..971a82835199b1aee232ef81bdd776004bffbe78 100644
--- a/hotspot/agent/src/os/linux/libproc_impl.c
+++ b/hotspot/agent/src/os/linux/libproc_impl.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2010, 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
diff --git a/hotspot/agent/src/os/linux/ps_core.c b/hotspot/agent/src/os/linux/ps_core.c
index 21dfd05cd7ea88aafd96ff9762ede5283949a6ac..9739e161471277eb04f7de59df00dcb594ec6eae 100644
--- a/hotspot/agent/src/os/linux/ps_core.c
+++ b/hotspot/agent/src/os/linux/ps_core.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2010, 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
diff --git a/hotspot/agent/src/os/linux/ps_proc.c b/hotspot/agent/src/os/linux/ps_proc.c
index 73b99c5002158c8fd064e0e2ce72372f33c4fe47..676e88a44bc60c6b23b77b3478b68bdd229652fa 100644
--- a/hotspot/agent/src/os/linux/ps_proc.c
+++ b/hotspot/agent/src/os/linux/ps_proc.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2010, 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
diff --git a/hotspot/agent/src/os/linux/symtab.c b/hotspot/agent/src/os/linux/symtab.c
index 70ecf82e5aa7501b21fa15e747a59cb6c284aecc..bea59e37823316f3ef9b776ba0727449060d6298 100644
--- a/hotspot/agent/src/os/linux/symtab.c
+++ b/hotspot/agent/src/os/linux/symtab.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2010, 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
diff --git a/hotspot/agent/src/os/linux/symtab.h b/hotspot/agent/src/os/linux/symtab.h
index 534e33d75886e274ce38e3c61ae23800e6e19c54..b2b9a3b9a27e25409da8f26994a3491cac10bce8 100644
--- a/hotspot/agent/src/os/linux/symtab.h
+++ b/hotspot/agent/src/os/linux/symtab.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeInvoke.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeInvoke.java
index aaf216676d9eaff3168b721faa1fedd4daeb4aec..15b49869cf71c818a59ed4d23ff197f391118070 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeInvoke.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeInvoke.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWithCPIndex.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWithCPIndex.java
index 55aba177058a3e948c816fdd8797217619a37584..fc0730feb14dcb287ca389ce812ddd9915fddacf 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWithCPIndex.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/BytecodeWithCPIndex.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java
index 16e35562f74803f2ca0f536062848f20ee12cb3f..1306dc419dbcf122c107502e83024559edcfe74a 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2004, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/CompactibleFreeListSpace.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/CompactibleFreeListSpace.java
index 2733af50aa1573a059799c40f0c83a4d2bd73fe9..06f149156ce1e35ea3320e6a63712c90b393cb9d 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/CompactibleFreeListSpace.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/CompactibleFreeListSpace.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/SystemDictionary.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/SystemDictionary.java
index 92cd92b9115d1ff468fe3da90b4c5bcf076c6128..f8bb01adb960fcffb39e7ecd195ea1c27e618964 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/SystemDictionary.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/memory/SystemDictionary.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCache.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCache.java
index 0b162a438af0b6b48cd4c2874f56524bb5369511..47a3facedfafe524185372e1af66576a26d29a31 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCache.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCache.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCacheEntry.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCacheEntry.java
index c3982615ccc0c5da1d66daa0efc52a5df53d188a..48bee4b9ed155dd4bf2987bd598a90927f76a60d 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCacheEntry.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/ConstantPoolCacheEntry.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/GenerateOopMap.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/GenerateOopMap.java
index 82a20a5c96bd7a9803589458f97464375b96d1e1..04d64086740fc1185a12688f41d2096d5d71d1b8 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/GenerateOopMap.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/GenerateOopMap.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/Oop.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/Oop.java
index 02ba1eaff90fcd6ae3514a46cc70ad76348e7de6..0e7e6fcce01732cfd7e96edaaa46609e86a8b5cb 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/Oop.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/oops/Oop.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java
index 3d2afd9d7544210c2996954faf4894d2a72b9dae..c0b31065b720365578d90d8fa4fdc1237aa3b748 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/VM.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/jcore/ByteCodeRewriter.java b/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/jcore/ByteCodeRewriter.java
index 508357f82f9f223b1386472d1cce36da569ddbbf..737bbc630eaa6ca8962dd83f1b2c376aeac15d4c 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/jcore/ByteCodeRewriter.java
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/tools/jcore/ByteCodeRewriter.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2009, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2010, 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
diff --git a/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/soql/sa.js b/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/soql/sa.js
index f181bd6262a57544df40ef22e2b4c790b40291be..246dbc6772b30e086206907d9decfd0871fe049f 100644
--- a/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/soql/sa.js
+++ b/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/soql/sa.js
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, 2007, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2010, 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
diff --git a/hotspot/make/hotspot_distro b/hotspot/make/hotspot_distro
index fb960646c19684275ea4c494ecda0be55af2c71c..059f4d1f547da1474da3b1ba09e6c12b40bef288 100644
--- a/hotspot/make/hotspot_distro
+++ b/hotspot/make/hotspot_distro
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2006, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2010, 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
diff --git a/hotspot/make/hotspot_version b/hotspot/make/hotspot_version
index 57260490cc080282c5d7e8b41313e98e0c508e43..d18a4e382c27aaa04ed7d0b80f6cfd8c00d96268 100644
--- a/hotspot/make/hotspot_version
+++ b/hotspot/make/hotspot_version
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2006, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2010, 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
@@ -35,7 +35,7 @@ HOTSPOT_VM_COPYRIGHT=Copyright 2010
HS_MAJOR_VER=20
HS_MINOR_VER=0
-HS_BUILD_NUMBER=04
+HS_BUILD_NUMBER=05
JDK_MAJOR_VER=1
JDK_MINOR_VER=7
diff --git a/hotspot/make/jprt.gmk b/hotspot/make/jprt.gmk
index 7495cc31456a48984a08da8b397603b50d82e9d2..8da610d7433da35e701d5d3a5b90c4225478683a 100644
--- a/hotspot/make/jprt.gmk
+++ b/hotspot/make/jprt.gmk
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2010, 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
diff --git a/hotspot/make/jprt.properties b/hotspot/make/jprt.properties
index 04554aabe9241757b6a85b55f7540276a97c23ce..132331e10f61dbf95438cce5ae478b0f0bdaca47 100644
--- a/hotspot/make/jprt.properties
+++ b/hotspot/make/jprt.properties
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2006, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2010, 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
diff --git a/hotspot/make/linux/makefiles/defs.make b/hotspot/make/linux/makefiles/defs.make
index 561f7f58107a1057b5fd16191e48f6f4094c6c5b..88329a6f58382cc6aecc64b21ff001af14e30162 100644
--- a/hotspot/make/linux/makefiles/defs.make
+++ b/hotspot/make/linux/makefiles/defs.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2006, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2010, 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
diff --git a/hotspot/make/linux/makefiles/jvmti.make b/hotspot/make/linux/makefiles/jvmti.make
index 292ccc8ef2deea3a4c51f4fab041b1b08038303b..43cdb9d8789ccdb9ba6522ad1b8998d2482f5b28 100644
--- a/hotspot/make/linux/makefiles/jvmti.make
+++ b/hotspot/make/linux/makefiles/jvmti.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2010, 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
diff --git a/hotspot/make/linux/makefiles/mapfile-vers-debug b/hotspot/make/linux/makefiles/mapfile-vers-debug
index edd213ea194f6424d9826928eb64969ba40bc5f4..a7ba4583ee95adaace462247b446b9eb5152a4e7 100644
--- a/hotspot/make/linux/makefiles/mapfile-vers-debug
+++ b/hotspot/make/linux/makefiles/mapfile-vers-debug
@@ -3,7 +3,7 @@
#
#
-# Copyright (c) 2002, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2010, 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
diff --git a/hotspot/make/linux/makefiles/mapfile-vers-product b/hotspot/make/linux/makefiles/mapfile-vers-product
index 4cc8f15735dbf08f6d82143f543b42d16662c441..7f7e279aa2ff0b292eab416420f9b238ab923ac9 100644
--- a/hotspot/make/linux/makefiles/mapfile-vers-product
+++ b/hotspot/make/linux/makefiles/mapfile-vers-product
@@ -3,7 +3,7 @@
#
#
-# Copyright (c) 2002, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2002, 2010, 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
diff --git a/hotspot/make/linux/makefiles/product.make b/hotspot/make/linux/makefiles/product.make
index ff768b6a6bd842b83816637250b0e74cad35eec4..379685f5f51146e1960493d47a64857c92e0a96e 100644
--- a/hotspot/make/linux/makefiles/product.make
+++ b/hotspot/make/linux/makefiles/product.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1999, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2010, 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
diff --git a/hotspot/make/linux/makefiles/saproc.make b/hotspot/make/linux/makefiles/saproc.make
index e65bf5ba142311d2538f094678d636f15ac54a17..68ec2378ad4dd23de01b084782fd19007e2f65b4 100644
--- a/hotspot/make/linux/makefiles/saproc.make
+++ b/hotspot/make/linux/makefiles/saproc.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2010, 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
diff --git a/hotspot/make/linux/makefiles/shark.make b/hotspot/make/linux/makefiles/shark.make
index f767a805039341ded1f2432ce9111cef63e76f66..ca702ee6616c13f4b6397773ef392fcd2ec85fdb 100644
--- a/hotspot/make/linux/makefiles/shark.make
+++ b/hotspot/make/linux/makefiles/shark.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1999, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
# Copyright 2008, 2010 Red Hat, Inc.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
diff --git a/hotspot/make/linux/makefiles/sparcWorks.make b/hotspot/make/linux/makefiles/sparcWorks.make
index d6fe9679b4bb473170e7becf1a6bc530a6e1bc16..77076fff16c3805774134cc13e42fda01da2ecb6 100644
--- a/hotspot/make/linux/makefiles/sparcWorks.make
+++ b/hotspot/make/linux/makefiles/sparcWorks.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1999, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2010, 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
diff --git a/hotspot/make/solaris/makefiles/defs.make b/hotspot/make/solaris/makefiles/defs.make
index 637b3b49c5421ab64a514b51afcf83019843324f..6fc596404d17e3fdfd10b5a512ad0b176a65d22b 100644
--- a/hotspot/make/solaris/makefiles/defs.make
+++ b/hotspot/make/solaris/makefiles/defs.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2006, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2010, 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
diff --git a/hotspot/make/solaris/makefiles/fastdebug.make b/hotspot/make/solaris/makefiles/fastdebug.make
index 3537b3ab06ecc232d516252dc116ec32e729387a..1a033f0cba487eefbc10c85d3e75a9c2df82b6e2 100644
--- a/hotspot/make/solaris/makefiles/fastdebug.make
+++ b/hotspot/make/solaris/makefiles/fastdebug.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1998, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1998, 2010, 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
diff --git a/hotspot/make/solaris/makefiles/jvmti.make b/hotspot/make/solaris/makefiles/jvmti.make
index 1a32cab70609702525d8d0ce44601854dd448e6f..be07e0546bcdfee486ffa2ff21ad0060b509601e 100644
--- a/hotspot/make/solaris/makefiles/jvmti.make
+++ b/hotspot/make/solaris/makefiles/jvmti.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2003, 2010, 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
diff --git a/hotspot/make/solaris/makefiles/optimized.make b/hotspot/make/solaris/makefiles/optimized.make
index 9cf8543233e06186ac9908212131ba8a2a0ab604..563bd4c4a095c1d55f843fb51fc283e6b87c128b 100644
--- a/hotspot/make/solaris/makefiles/optimized.make
+++ b/hotspot/make/solaris/makefiles/optimized.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1998, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1998, 2010, 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
diff --git a/hotspot/make/solaris/makefiles/product.make b/hotspot/make/solaris/makefiles/product.make
index daf335cf3326eff42fa82a452aa1d48634b871ac..e6ebeea7580284cd2c81fdc857677c34d57b6a96 100644
--- a/hotspot/make/solaris/makefiles/product.make
+++ b/hotspot/make/solaris/makefiles/product.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 1999, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 1999, 2010, 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
diff --git a/hotspot/make/solaris/makefiles/saproc.make b/hotspot/make/solaris/makefiles/saproc.make
index 0f5a0bb4cd66bd6cb471ff1bde9ca4567f4608d8..f94a9b4270d5d45b559f45109e2a407f709a9197 100644
--- a/hotspot/make/solaris/makefiles/saproc.make
+++ b/hotspot/make/solaris/makefiles/saproc.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2010, 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
diff --git a/hotspot/make/windows/build.bat b/hotspot/make/windows/build.bat
index f40b2654a5e41e600f97dd799c9099cd9587969e..ee0a6b058d2e7d33ac81672d194e9f536bc6fa15 100644
--- a/hotspot/make/windows/build.bat
+++ b/hotspot/make/windows/build.bat
@@ -1,6 +1,6 @@
@echo off
REM
-REM Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.
+REM Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
REM DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
REM
REM This code is free software; you can redistribute it and/or modify it
diff --git a/hotspot/make/windows/get_msc_ver.sh b/hotspot/make/windows/get_msc_ver.sh
index 0cea6d99b8550ed6cbdba97472df7aff2c522cce..339e92b2f71f247ef8e0f36559ce70a243e61503 100644
--- a/hotspot/make/windows/get_msc_ver.sh
+++ b/hotspot/make/windows/get_msc_ver.sh
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2010, 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
diff --git a/hotspot/make/windows/makefiles/defs.make b/hotspot/make/windows/makefiles/defs.make
index b126c702a7db04af6ff708b4b82e1575204bb417..ded87af7b4603771528e30dccab5349d5e88cff4 100644
--- a/hotspot/make/windows/makefiles/defs.make
+++ b/hotspot/make/windows/makefiles/defs.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2006, 2008, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2010, 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
diff --git a/hotspot/make/windows/makefiles/sanity.make b/hotspot/make/windows/makefiles/sanity.make
index f874416d728a681671939956d891991404ad87fa..99f98d7e2060c4a36a33869e442d1148723d09cd 100644
--- a/hotspot/make/windows/makefiles/sanity.make
+++ b/hotspot/make/windows/makefiles/sanity.make
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2006, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2006, 2010, 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
diff --git a/hotspot/src/os/solaris/dtrace/hotspot.d b/hotspot/src/os/solaris/dtrace/hotspot.d
index 08cf99ad303b28a680f26c2c1ec964090a80a4f6..1f7d51b8cec5b1fc3fe5c10185420992edd2d434 100644
--- a/hotspot/src/os/solaris/dtrace/hotspot.d
+++ b/hotspot/src/os/solaris/dtrace/hotspot.d
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2010, 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
diff --git a/hotspot/src/os_cpu/linux_x86/vm/linux_x86_32.s b/hotspot/src/os_cpu/linux_x86/vm/linux_x86_32.s
index ff315197949ed3315ffbb4b76107f2d8ec0ef7d9..819293c8faaccd983ee88aecd6861d9df566f30f 100644
--- a/hotspot/src/os_cpu/linux_x86/vm/linux_x86_32.s
+++ b/hotspot/src/os_cpu/linux_x86/vm/linux_x86_32.s
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2004, 2007, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2004, 2010, 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
diff --git a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.il b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.il
index 99b19a313ad6182b8216b8a2877d105c32804673..be111f4322ea011272ab138646958fbee0dc0140 100644
--- a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.il
+++ b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.il
@@ -1,5 +1,5 @@
//
-// Copyright (c) 2003, 2009, Oracle and/or its affiliates. All rights reserved.
+// Copyright (c) 2003, 2010, 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
diff --git a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.s b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.s
index 6219a698d66a641aa2e8b9ed28977db28c100e01..1fac3b25f11955bf76c3734b49c5d66c20bff002 100644
--- a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.s
+++ b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.s
@@ -1,5 +1,5 @@
//
-// Copyright (c) 2004, 2007, Oracle and/or its affiliates. All rights reserved.
+// Copyright (c) 2004, 2010, 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
diff --git a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.il b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.il
index 9b66b3652a1ec761588f65b67b3bdb41ae8313d3..b260375b16445f8a62f161606a53b1a22fc26a98 100644
--- a/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.il
+++ b/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.il
@@ -1,5 +1,5 @@
//
-// Copyright (c) 2004, 2009, Oracle and/or its affiliates. All rights reserved.
+// Copyright (c) 2004, 2010, 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
diff --git a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
index cea107220ababaf544697b6294fada5991acf77c..d1989d4a24ef6f284e61359909f104fb79a337b0 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
@@ -1825,23 +1825,11 @@ void ConcurrentMark::completeCleanup() {
}
}
-
-class G1CMIsAliveClosure: public BoolObjectClosure {
- G1CollectedHeap* _g1;
- public:
- G1CMIsAliveClosure(G1CollectedHeap* g1) :
- _g1(g1)
- {}
-
- void do_object(oop obj) {
- assert(false, "not to be invoked");
- }
- bool do_object_b(oop obj) {
- HeapWord* addr = (HeapWord*)obj;
- return addr != NULL &&
- (!_g1->is_in_g1_reserved(addr) || !_g1->is_obj_ill(obj));
- }
-};
+bool G1CMIsAliveClosure::do_object_b(oop obj) {
+ HeapWord* addr = (HeapWord*)obj;
+ return addr != NULL &&
+ (!_g1->is_in_g1_reserved(addr) || !_g1->is_obj_ill(obj));
+}
class G1CMKeepAliveClosure: public OopClosure {
G1CollectedHeap* _g1;
@@ -1896,16 +1884,15 @@ void ConcurrentMark::weakRefsWork(bool clear_all_soft_refs) {
rp->setup_policy(clear_all_soft_refs);
assert(_markStack.isEmpty(), "mark stack should be empty");
- G1CMIsAliveClosure g1IsAliveClosure (g1h);
- G1CMKeepAliveClosure g1KeepAliveClosure(g1h, this, nextMarkBitMap());
+ G1CMIsAliveClosure g1_is_alive(g1h);
+ G1CMKeepAliveClosure g1_keep_alive(g1h, this, nextMarkBitMap());
G1CMDrainMarkingStackClosure
- g1DrainMarkingStackClosure(nextMarkBitMap(), &_markStack,
- &g1KeepAliveClosure);
+ g1_drain_mark_stack(nextMarkBitMap(), &_markStack, &g1_keep_alive);
// XXXYYY Also: copy the parallel ref processing code from CMS.
- rp->process_discovered_references(&g1IsAliveClosure,
- &g1KeepAliveClosure,
- &g1DrainMarkingStackClosure,
+ rp->process_discovered_references(&g1_is_alive,
+ &g1_keep_alive,
+ &g1_drain_mark_stack,
NULL);
assert(_markStack.overflow() || _markStack.isEmpty(),
"mark stack should be empty (unless it overflowed)");
@@ -1918,8 +1905,8 @@ void ConcurrentMark::weakRefsWork(bool clear_all_soft_refs) {
assert(!rp->discovery_enabled(), "should have been disabled");
// Now clean up stale oops in SymbolTable and StringTable
- SymbolTable::unlink(&g1IsAliveClosure);
- StringTable::unlink(&g1IsAliveClosure);
+ SymbolTable::unlink(&g1_is_alive);
+ StringTable::unlink(&g1_is_alive);
}
void ConcurrentMark::swapMarkBitMaps() {
diff --git a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp
index 7f13483b72e6963fa469f07f225e90e1312e5034..f02d6f049fa3d0a488b9961a2bd2deb22b3b5aa1 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.hpp
@@ -33,6 +33,25 @@ class CMTask;
typedef GenericTaskQueue CMTaskQueue;
typedef GenericTaskQueueSet CMTaskQueueSet;
+// Closure used by CM during concurrent reference discovery
+// and reference processing (during remarking) to determine
+// if a particular object is alive. It is primarily used
+// to determine if referents of discovered reference objects
+// are alive. An instance is also embedded into the
+// reference processor as the _is_alive_non_header field
+class G1CMIsAliveClosure: public BoolObjectClosure {
+ G1CollectedHeap* _g1;
+ public:
+ G1CMIsAliveClosure(G1CollectedHeap* g1) :
+ _g1(g1)
+ {}
+
+ void do_object(oop obj) {
+ ShouldNotCallThis();
+ }
+ bool do_object_b(oop obj);
+};
+
// A generic CM bit map. This is essentially a wrapper around the BitMap
// class, with one bit per (1<<_shifter) HeapWords.
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
index 29a2cc24743643e0971008a5f3f2e91bc86dc0bf..030aecade7725d747a759b270c31a6b92d059a8d 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
@@ -1192,6 +1192,7 @@ bool G1CollectedHeap::do_collection(bool explicit_gc,
return false;
}
+ DTraceGCProbeMarker gc_probe_marker(true /* full */);
ResourceMark rm;
if (PrintHeapAtGC) {
@@ -1768,6 +1769,7 @@ G1CollectedHeap::G1CollectedHeap(G1CollectorPolicy* policy_) :
_g1_policy(policy_),
_dirty_card_queue_set(false),
_into_cset_dirty_card_queue_set(false),
+ _is_alive_closure(this),
_ref_processor(NULL),
_process_strong_tasks(new SubTasksDone(G1H_PS_NumElements)),
_bot_shared(NULL),
@@ -2061,7 +2063,8 @@ void G1CollectedHeap::ref_processing_init() {
mr, // span
false, // Reference discovery is not atomic
true, // mt_discovery
- NULL, // is alive closure: need to fill this in for efficiency
+ &_is_alive_closure, // is alive closure
+ // for efficiency
ParallelGCThreads,
ParallelRefProcEnabled,
true); // Setting next fields of discovered
@@ -3211,13 +3214,14 @@ G1CollectedHeap::do_collection_pause_at_safepoint(double target_pause_time_ms) {
return false;
}
+ DTraceGCProbeMarker gc_probe_marker(false /* full */);
+ ResourceMark rm;
+
if (PrintHeapAtGC) {
Universe::print_heap_before_gc();
}
{
- ResourceMark rm;
-
// This call will decide whether this pause is an initial-mark
// pause. If it is, during_initial_mark_pause() will return true
// for the duration of this pause.
@@ -3956,8 +3960,6 @@ void G1CollectedHeap::remove_self_forwarding_pointers() {
// Now restore saved marks, if any.
if (_objs_with_preserved_marks != NULL) {
assert(_preserved_marks_of_objs != NULL, "Both or none.");
- assert(_objs_with_preserved_marks->length() ==
- _preserved_marks_of_objs->length(), "Both or none.");
guarantee(_objs_with_preserved_marks->length() ==
_preserved_marks_of_objs->length(), "Both or none.");
for (int i = 0; i < _objs_with_preserved_marks->length(); i++) {
@@ -4052,7 +4054,10 @@ void G1CollectedHeap::handle_evacuation_failure_common(oop old, markOop m) {
}
void G1CollectedHeap::preserve_mark_if_necessary(oop obj, markOop m) {
- if (m != markOopDesc::prototype()) {
+ assert(evacuation_failed(), "Oversaving!");
+ // We want to call the "for_promotion_failure" version only in the
+ // case of a promotion failure.
+ if (m->must_be_preserved_for_promotion_failure(obj)) {
if (_objs_with_preserved_marks == NULL) {
assert(_preserved_marks_of_objs == NULL, "Both or none.");
_objs_with_preserved_marks =
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
index ad5ca71a143f871785da36968f25f81a35b1c63f..0cec92564fe7623dae801ac665d58320ec894020 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
@@ -849,6 +849,12 @@ protected:
void print_gc_alloc_regions();
#endif // !PRODUCT
+ // Instance of the concurrent mark is_alive closure for embedding
+ // into the reference processor as the is_alive_non_header. This
+ // prevents unnecessary additions to the discovered lists during
+ // concurrent discovery.
+ G1CMIsAliveClosure _is_alive_closure;
+
// ("Weak") Reference processing support
ReferenceProcessor* _ref_processor;
@@ -893,7 +899,7 @@ public:
// specified by the policy object.
jint initialize();
- void ref_processing_init();
+ virtual void ref_processing_init();
void set_par_threads(int t) {
SharedHeap::set_par_threads(t);
diff --git a/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp b/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
index 2b63c9382f49ad9b8972eac53cefe70f969217d7..d8d1ae9b4bf05c12d8b1146193c3a3acf00ad218 100644
--- a/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
@@ -1058,10 +1058,11 @@ bool ParNewGeneration::is_legal_forward_ptr(oop p) {
#endif
void ParNewGeneration::preserve_mark_if_necessary(oop obj, markOop m) {
- if ((m != markOopDesc::prototype()) &&
- (!UseBiasedLocking || (m != markOopDesc::biased_locking_prototype()))) {
+ if (m->must_be_preserved_for_promotion_failure(obj)) {
+ // We should really have separate per-worker stacks, rather
+ // than use locking of a common pair of stacks.
MutexLocker ml(ParGCRareEvent_lock);
- DefNewGeneration::preserve_mark_if_necessary(obj, m);
+ preserve_mark(obj, m);
}
}
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp
index 9cf294eb97ce56dc4f1f45233e5123e4043c548d..f87db47e7cb98ff74c601adb143927cf89238fc4 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp
@@ -694,6 +694,8 @@ void PSScavenge::clean_up_failed_promotion() {
void PSScavenge::oop_promotion_failed(oop obj, markOop obj_mark) {
_promotion_failed = true;
if (obj_mark->must_be_preserved_for_promotion_failure(obj)) {
+ // Should use per-worker private stakcs hetre rather than
+ // locking a common pair of stacks.
ThreadCritical tc;
_preserved_oop_stack.push(obj);
_preserved_mark_stack.push(obj_mark);
diff --git a/hotspot/src/share/vm/gc_implementation/shared/vmGCOperations.hpp b/hotspot/src/share/vm/gc_implementation/shared/vmGCOperations.hpp
index 93611bdaf611ed136db9973d795e18103b7e4b0b..c7ee95f445bfb28d116876656023ab0f20ca86cb 100644
--- a/hotspot/src/share/vm/gc_implementation/shared/vmGCOperations.hpp
+++ b/hotspot/src/share/vm/gc_implementation/shared/vmGCOperations.hpp
@@ -209,4 +209,15 @@ class VM_GenCollectForPermanentAllocation: public VM_GC_Operation {
HeapWord* result() const { return _res; }
};
+class DTraceGCProbeMarker : public StackObj {
+public:
+ DTraceGCProbeMarker(bool full) {
+ VM_GC_Operation::notify_gc_begin(full);
+ }
+
+ ~DTraceGCProbeMarker() {
+ VM_GC_Operation::notify_gc_end();
+ }
+};
+
#endif // SHARE_VM_GC_IMPLEMENTATION_SHARED_VMGCOPERATIONS_HPP
diff --git a/hotspot/src/share/vm/memory/defNewGeneration.cpp b/hotspot/src/share/vm/memory/defNewGeneration.cpp
index 746119ada93c59d0b52e2b35fff714193acad685..cbb6c38cfc31b5cc99e9e4d6bc44295053b2036a 100644
--- a/hotspot/src/share/vm/memory/defNewGeneration.cpp
+++ b/hotspot/src/share/vm/memory/defNewGeneration.cpp
@@ -684,23 +684,28 @@ void DefNewGeneration::remove_forwarding_pointers() {
_preserved_marks_of_objs.clear(true);
}
+void DefNewGeneration::preserve_mark(oop obj, markOop m) {
+ assert(promotion_failed() && m->must_be_preserved_for_promotion_failure(obj),
+ "Oversaving!");
+ _objs_with_preserved_marks.push(obj);
+ _preserved_marks_of_objs.push(m);
+}
+
void DefNewGeneration::preserve_mark_if_necessary(oop obj, markOop m) {
if (m->must_be_preserved_for_promotion_failure(obj)) {
- _objs_with_preserved_marks.push(obj);
- _preserved_marks_of_objs.push(m);
+ preserve_mark(obj, m);
}
}
void DefNewGeneration::handle_promotion_failure(oop old) {
- preserve_mark_if_necessary(old, old->mark());
- if (!_promotion_failed && PrintPromotionFailure) {
+ if (PrintPromotionFailure && !_promotion_failed) {
gclog_or_tty->print(" (promotion failure size = " SIZE_FORMAT ") ",
old->size());
}
-
+ _promotion_failed = true;
+ preserve_mark_if_necessary(old, old->mark());
// forward to self
old->forward_to(old);
- _promotion_failed = true;
_promo_failure_scan_stack.push(old);
diff --git a/hotspot/src/share/vm/memory/defNewGeneration.hpp b/hotspot/src/share/vm/memory/defNewGeneration.hpp
index e21fb2cb875fb4baf7fadeee9cfe469e4b16124f..e7b852857756af6a852f720f81dbeb6923f5e1fb 100644
--- a/hotspot/src/share/vm/memory/defNewGeneration.hpp
+++ b/hotspot/src/share/vm/memory/defNewGeneration.hpp
@@ -85,6 +85,7 @@ protected:
// Preserve the mark of "obj", if necessary, in preparation for its mark
// word being overwritten with a self-forwarding-pointer.
void preserve_mark_if_necessary(oop obj, markOop m);
+ void preserve_mark(oop obj, markOop m); // work routine used by the above
// Together, these keep