United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: 6359696 Windows AMD64 Platform SDK build of hotspot with /O2 causes bogus exceptions
6359696 : Windows AMD64 Platform SDK build of hotspot with /O2 causes bogus exceptions

Details
Type:
Bug
Submit Date:
2005-12-06
Status:
Closed
Updated Date:
2012-10-08
Project Name:
JDK
Resolved Date:
2005-12-30
Component:
hotspot
OS:
windows_2003
Sub-Component:
runtime
CPU:
x86
Priority:
P2
Resolution:
Fixed
Affected Versions:
6
Fixed Versions:
6

Related Reports
Backport:
Relates:
Relates:
Relates:
Relates:

Sub Tasks

Description
When hotspot build 62/63 is built with the Windows AMD64/X64 Platform SDK (3790.1830) compiler (version 14.00.40310.41) at /O2, the build of the j2se fails.  Details to follow soon.

Currently the Build 63 makefile changes in hotspot will detect this newer compiler (14.00.40310.41) and drop the optimization level from /O2 to /O1, so to build hotspot with this compiler at /O2, you will need to go into file hotspot/build/windows/makefiles/compile.make and look for the lines:

!if "$(COMPILER_NAME)" == "VS2005"
# Reduced down from /O2 because of control build failures
PRODUCT_OPT_OPTION   = /O1
FASTDEBUG_OPT_OPTION = /O1
...

The above /O1 patterns needs to change to /O2.

NOTE: This 14.00.40310.41 compiler is considered a VS2005 (Visual Studio 2005) compiler. The older Platform SDK contained compiler 14.00.30701, which might appear to be VS2005 due to the "14" but is much closer to being VS2003 (13), so inside the hotspot makefiles this compiler is identified as MSC_VER=1399.

I'll add the exact circumstances of the build failure shortly... just trying to get this posted first.
FYI...

These changes did not make it into B63, they will go into B64, but they are in hotspot main/baseline.

                                    

Comments
EVALUATION

On Windows AMD64, every generated call through native ABI needs to allocate the register save area required by the ABI.  See comments for more detail.
                                     
2005-12-14



Hardware and Software, Engineered to Work Together