hotspot/make/solaris/makefiles/optimized.make
author ohair
Tue, 27 May 2008 09:47:18 -0700
changeset 584 02175b2b64e6
parent 338 5cf9f61d76f4
child 670 ddf3e9583f2f
permissions -rw-r--r--
6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles) Summary: Allows for building with SS12, no longer requires SS11, warns if not SS11 for now. Once SS12 is validated and performance measurements look ok, SS12 will be the validated compiler. Reviewed-by: sspitsyn, ikrylov
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
     1
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
     2
# Copyright 1998-2005 Sun Microsystems, Inc.  All Rights Reserved.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     4
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
489c9b5090e2 Initial load
duke
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
489c9b5090e2 Initial load
duke
parents:
diff changeset
     7
# published by the Free Software Foundation.
489c9b5090e2 Initial load
duke
parents:
diff changeset
     8
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
     9
# This code is distributed in the hope that it will be useful, but WITHOUT
489c9b5090e2 Initial load
duke
parents:
diff changeset
    10
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
489c9b5090e2 Initial load
duke
parents:
diff changeset
    11
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
489c9b5090e2 Initial load
duke
parents:
diff changeset
    12
# version 2 for more details (a copy is included in the LICENSE file that
489c9b5090e2 Initial load
duke
parents:
diff changeset
    13
# accompanied this code).
489c9b5090e2 Initial load
duke
parents:
diff changeset
    14
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    15
# You should have received a copy of the GNU General Public License version
489c9b5090e2 Initial load
duke
parents:
diff changeset
    16
# 2 along with this work; if not, write to the Free Software Foundation,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    17
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    18
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    19
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
489c9b5090e2 Initial load
duke
parents:
diff changeset
    20
# CA 95054 USA or visit www.sun.com if you need additional information or
489c9b5090e2 Initial load
duke
parents:
diff changeset
    21
# have any questions.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    22
#  
489c9b5090e2 Initial load
duke
parents:
diff changeset
    23
#
489c9b5090e2 Initial load
duke
parents:
diff changeset
    24
489c9b5090e2 Initial load
duke
parents:
diff changeset
    25
# Sets make macros for making optimized version of Gamma VM
489c9b5090e2 Initial load
duke
parents:
diff changeset
    26
# (This is the "product", not the "release" version.)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    27
489c9b5090e2 Initial load
duke
parents:
diff changeset
    28
# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
489c9b5090e2 Initial load
duke
parents:
diff changeset
    29
OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    30
OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
489c9b5090e2 Initial load
duke
parents:
diff changeset
    31
489c9b5090e2 Initial load
duke
parents:
diff changeset
    32
# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
584
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    33
ifeq ("${Platform_compiler}", "sparcWorks")
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    34
584
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    35
# Problem with SS12 compiler, dtrace doesn't like the .o files  (bug 6693876)
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    36
ifeq ($(COMPILER_REV),5.9)
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    37
  # Not clear this workaround could be skipped in some cases.
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    38
  OPT_CFLAGS/vmGCOperations.o = $(OPT_CFLAGS/SLOWER) -g
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    39
  OPT_CFLAGS/java.o = $(OPT_CFLAGS/SLOWER) -g
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    40
  OPT_CFLAGS/jni.o = $(OPT_CFLAGS/SLOWER) -g
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    41
endif
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    42
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    43
# Workaround SS11 bug 6345274 (all platforms) (Fixed in SS11 patch and SS12)
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    44
ifeq ($(COMPILER_REV),5.8))
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    45
OPT_CFLAGS/ciTypeFlow.o = $(OPT_CFLAGS/O2)
584
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    46
endif # COMPILER_REV == 5.8
02175b2b64e6 6563752: Build and test JDK7 with Sun Studio 12 Express compilers (prep makefiles)
ohair
parents: 338
diff changeset
    47
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    48
endif # Platform_compiler == sparcWorks
489c9b5090e2 Initial load
duke
parents:
diff changeset
    49
489c9b5090e2 Initial load
duke
parents:
diff changeset
    50
# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
489c9b5090e2 Initial load
duke
parents:
diff changeset
    51
CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
489c9b5090e2 Initial load
duke
parents:
diff changeset
    52
489c9b5090e2 Initial load
duke
parents:
diff changeset
    53
# Linker mapfiles
489c9b5090e2 Initial load
duke
parents:
diff changeset
    54
# NOTE: inclusion of nonproduct mapfile not necessary; read it for details
338
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 1
diff changeset
    55
MAPFILE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers \
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 1
diff changeset
    56
          $(GAMMADIR)/make/solaris/makefiles/mapfile-vers-nonproduct
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    57
489c9b5090e2 Initial load
duke
parents:
diff changeset
    58
# This mapfile is only needed when compiling with dtrace support, 
489c9b5090e2 Initial load
duke
parents:
diff changeset
    59
# and mustn't be otherwise.
338
5cf9f61d76f4 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 1
diff changeset
    60
MAPFILE_DTRACE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers-$(TYPE)
1
489c9b5090e2 Initial load
duke
parents:
diff changeset
    61
489c9b5090e2 Initial load
duke
parents:
diff changeset
    62
# Set the environment variable HOTSPARC_GENERIC to "true"
489c9b5090e2 Initial load
duke
parents:
diff changeset
    63
# to inhibit the effect of the previous line on CFLAGS.
489c9b5090e2 Initial load
duke
parents:
diff changeset
    64
489c9b5090e2 Initial load
duke
parents:
diff changeset
    65
G_SUFFIX =
489c9b5090e2 Initial load
duke
parents:
diff changeset
    66
VERSION = optimized