--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/BuildHotspot.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,54 @@
+#
+# Copyright (c) 2015, 2016 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.
+#
+
+# This must be the first rule
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+
+VARIANT_TARGETS := $(foreach v, $(JVM_VARIANTS), variant-$v)
+VARIANT_GENSRC_TARGETS := $(addsuffix -gensrc, $(VARIANT_TARGETS))
+VARIANT_LIBS_TARGETS := $(addsuffix -libs, $(VARIANT_TARGETS))
+
+$(VARIANT_GENSRC_TARGETS): variant-%-gensrc:
+ $(call LogWarn, Building JVM variant '$*' with features '$(JVM_FEATURES_$*)')
+ +$(MAKE) -f gensrc/GenerateSources.gmk JVM_VARIANT=$*
+
+$(VARIANT_LIBS_TARGETS): variant-%-libs: variant-%-gensrc
+ +$(MAKE) -f lib/CompileLibraries.gmk JVM_VARIANT=$*
+
+$(VARIANT_TARGETS): variant-%: variant-%-gensrc variant-%-libs
+
+jsig:
+ +$(MAKE) -f lib/CompileLibjsig.gmk
+
+dist: $(VARIANT_TARGETS) jsig
+ +$(MAKE) -f Dist.gmk
+
+all: dist
+
+.PHONY: $(VARIANT_TARGETS) $(VARIANT_GENSRC_TARGETS) $(VARIANT_LIBS_TARGETS) \
+ jsig dist all
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/Dist.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,239 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+################################################################################
+# Copy the generated output into well-defined places in the dist directory.
+
+# This must be the first rule
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+
+$(eval $(call IncludeCustomExtension, hotspot, Dist.gmk))
+
+DIST_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/dist
+
+# Unfortunately, all platforms have different target subdirs.
+ifeq ($(OPENJDK_TARGET_OS), windows)
+ LIB_SUBDIR := bin
+else ifeq ($(OPENJDK_TARGET_OS), macosx)
+ LIB_SUBDIR := lib
+else
+ LIB_SUBDIR := lib$(OPENJDK_TARGET_CPU_LIBDIR)
+endif
+
+################################################################################
+# Functions to setup copying of files for variants
+
+# Support macro for SetupDistLibFile
+define macosx_universalize
+ $(MKDIR) -p $(@D)
+ $(LIPO) -create -output $@ $<
+endef
+
+################################################################################
+# Setup make rules to copy a native library and associated data.
+#
+# Parameter 1 is the name of the rule. This name is used as variable prefix,
+# and the targets generated are listed in a variable by that name.
+#
+# Remaining parameters are named arguments. These include:
+# NAME -- The base name of the native library (e.g. 'jvm')
+# VARIANT -- The variant to copy from
+# VARIANT_TARGET_DIR -- The variant target sub dir, with trailing slash, optional
+SetupDistLibFile = $(NamedParamsMacroTemplate)
+define SetupDistLibFileBody
+ ifneq ($$($1_VARIANT), )
+ $1_SRC_DIR := $$(HOTSPOT_OUTPUTDIR)/variant-$$($1_VARIANT)/lib$$($1_NAME)
+ else
+ $1_SRC_DIR := $$(HOTSPOT_OUTPUTDIR)/lib$$($1_NAME)
+ endif
+ $1_LIB_NAME := $(LIBRARY_PREFIX)$$($1_NAME)
+ $1_TARGET_DIR := $$(DIST_OUTPUTDIR)/$$(LIB_SUBDIR)/$$($1_VARIANT_TARGET_DIR)
+
+ ifeq ($(OPENJDK_TARGET_OS), macosx)
+ # We must use the 'universalize' macro to run lipo on shared libraries, at
+ # least until JDK-8069540 is fixed.
+ $1_MACRO := macosx_universalize
+ endif
+
+ # Copy the the native library.
+ $$(eval $$(call SetupCopyFiles, $1_COPY_LIB, \
+ DEST := $$($1_TARGET_DIR), \
+ MACRO := $$($1_MACRO), \
+ FILES := $$(wildcard \
+ $$($1_SRC_DIR)/$$($1_LIB_NAME)$(SHARED_LIBRARY_SUFFIX)), \
+ ))
+
+ TARGETS += $$($1_COPY_LIB)
+
+ # Copy related data (debug symbols, static-build symbols file etc)
+ $$(eval $$(call SetupCopyFiles, $1_COPY_FILES, \
+ DEST := $$($1_TARGET_DIR), \
+ FILES := $$(wildcard \
+ $$(addprefix $$($1_SRC_DIR)/$$($1_LIB_NAME), \
+ .diz .debuginfo .pdb .map .symbols)), \
+ ))
+
+ TARGETS += $$($1_COPY_FILES)
+
+ ifeq ($(OPENJDK_TARGET_OS), macosx)
+ # Debug symbols on macosx is a directory, not a single file, per library.
+ $1_DSYM_SRC := $$($1_SRC_DIR)/$$($1_LIB_NAME)$(SHARED_LIBRARY_SUFFIX).dSYM)
+ ifneq ($$(wildcard $$($1_DSYM_SRC)), )
+ $$(eval $$(call SetupCopyFiles, $1_COPY_DSYM_DIR, \
+ DEST := $$($1_TARGET_DIR), \
+ SRC := $$($1_SRC_DIR), \
+ FILES := $$(shell $(FIND) $$($1_DSYM_SRC) -type f), \
+ ))
+ TARGETS += $$($1_COPY_DSYM_DIR)
+ endif
+ endif
+endef
+
+################################################################################
+# Copy common files, which are independent on the jvm variant(s) being built.
+# For files that were generated during the build, we assume all versions of
+# these files are identical, and just pick one arbitrarily to use as source.
+
+ANY_JVM_VARIANT := $(firstword $(JVM_VARIANTS))
+JVM_VARIANT_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/variant-$(ANY_JVM_VARIANT)
+
+### Copy platform-independent .h files
+INCLUDE_FILES_SRC_DIR := $(HOTSPOT_TOPDIR)/src/share/vm
+$(eval $(call SetupCopyFiles, COPY_INCLUDE, \
+ SRC := $(INCLUDE_FILES_SRC_DIR), \
+ DEST := $(DIST_OUTPUTDIR)/include, \
+ FLATTEN := true, \
+ FILES := $(INCLUDE_FILES_SRC_DIR)/prims/jni.h \
+ $(INCLUDE_FILES_SRC_DIR)/code/jvmticmlr.h \
+ $(INCLUDE_FILES_SRC_DIR)/services/jmm.h))
+
+TARGETS += $(COPY_INCLUDE)
+
+### Copy jni_md.h
+
+# This might have been defined in a custom extension
+ifeq ($(JNI_MD_H_SRC), )
+ JNI_MD_H_SRC := $(HOTSPOT_TOPDIR)/src/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/vm/jni_$(HOTSPOT_TARGET_CPU_ARCH).h
+endif
+
+ifeq ($(OPENJDK_TARGET_OS), macosx)
+ # NOTE: This should most likely be darwin, but the old hotspot build uses bsd
+ JNI_MD_SUBDIR := bsd
+else ifeq ($(OPENJDK_TARGET_OS), windows)
+ JNI_MD_SUBDIR := win32
+else
+ JNI_MD_SUBDIR := $(OPENJDK_TARGET_OS)
+endif
+
+# SetupCopyFiles is not used here since it's non-trivial to copy a single
+# file with a different target name.
+$(DIST_OUTPUTDIR)/include/$(JNI_MD_SUBDIR)/jni_md.h: $(JNI_MD_H_SRC)
+ $(call LogInfo, Copying hotspot/dist/include/$(JNI_MD_SUBDIR)/jni_md.h)
+ $(install-file)
+
+TARGETS += $(DIST_OUTPUTDIR)/include/$(JNI_MD_SUBDIR)/jni_md.h
+
+$(eval $(call SetupCopyFiles, COPY_JVMTI_H, \
+ DEST := $(DIST_OUTPUTDIR)/include, \
+ FLATTEN := true, \
+ FILES := $(JVM_VARIANT_OUTPUTDIR)/gensrc/jvmtifiles/jvmti.h))
+
+TARGETS += $(COPY_JVMTI_H)
+
+# NOTE: In the old build, this file was not copied on Windows.
+ifneq ($(OPENJDK_TARGET_OS), windows)
+ $(eval $(call SetupCopyFiles, COPY_JVMTI_HTML, \
+ DEST := $(DIST_OUTPUTDIR)/docs/platform/jvmti, \
+ FILES := $(JVM_VARIANT_OUTPUTDIR)/gensrc/jvmtifiles/jvmti.html))
+endif
+
+TARGETS += $(COPY_JVMTI_HTML)
+
+ifeq ($(OPENJDK_TARGET_OS), windows)
+ $(eval $(call SetupCopyFiles, COPY_JVM_LIB, \
+ DEST := $(DIST_OUTPUTDIR)/lib, \
+ FILES :=$(JVM_VARIANT_OUTPUTDIR)/libjvm/objs/jvm.lib))
+
+ TARGETS += $(COPY_JVM_LIB)
+endif
+
+# Copy libjsig, if it exists
+$(eval $(call SetupDistLibFile, DIST_jsig, \
+ NAME := jsig, \
+))
+
+################################################################################
+# Copy variant-specific files
+
+# Setup make rules to copy a single variant to dist.
+# $1: The name of the variant
+define SetupDistForVariant
+ ifneq ($$(filter client minimal, $1), )
+ VARIANT_TARGET_DIR := $1
+ else
+ # Use 'server' as default target directory name for all other variants.
+ VARIANT_TARGET_DIR := server
+ endif
+
+ $$(eval $$(call SetupDistLibFile, DIST_$(strip $1)_jvm, \
+ NAME := jvm, \
+ VARIANT := $1, \
+ VARIANT_TARGET_DIR := $$(VARIANT_TARGET_DIR)/, \
+ ))
+
+ # Copy the dtrace libraries, if they exist
+ $$(eval $$(call SetupDistLibFile, DIST_$(strip $1)_jvm_db, \
+ NAME := jvm_db, \
+ VARIANT := $1, \
+ VARIANT_TARGET_DIR := $$(VARIANT_TARGET_DIR)/, \
+ ))
+
+ $$(eval $$(call SetupDistLibFile, DIST_$(strip $1)_jvm_dtrace, \
+ NAME := jvm_dtrace, \
+ VARIANT := $1, \
+ VARIANT_TARGET_DIR := $$(VARIANT_TARGET_DIR)/, \
+ ))
+
+ # Copy the Xusage.txt file
+ $$(eval $$(call SetupCopyFiles, DIST_$(strip $1)_Xusage, \
+ DEST := $$(DIST_OUTPUTDIR)/$$(LIB_SUBDIR)/$(strip $1), \
+ FILES := $$(HOTSPOT_OUTPUTDIR)/variant-$(strip $1)/support/misc/Xusage.txt, \
+ ))
+
+ TARGETS += $$(DIST_$(strip $1)_Xusage)
+endef
+
+$(foreach variant, $(JVM_VARIANTS), \
+ $(eval $(call SetupDistForVariant, $(variant))) \
+)
+
+################################################################################
+
+all: $(TARGETS)
+
+.PHONY: all
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/HotspotCommon.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,45 @@
+#
+# Copyright (c) 2016, 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.
+#
+
+ifeq ($(JVM_VARIANT), )
+ $(error This makefile must be called with JVM_VARIANT set)
+endif
+
+JVM_VARIANT_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/variant-$(JVM_VARIANT)
+JVM_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/libjvm
+JVM_SUPPORT_DIR := $(JVM_VARIANT_OUTPUTDIR)/support
+
+DTRACE_SUPPORT_DIR := $(JVM_SUPPORT_DIR)/dtrace
+
+################################################################################
+
+# Test if a feature is available in the present build of JVM_VARIANT. Will return
+# 'true' or 'false'.
+# $1 - the feature to test for
+check-jvm-feature = \
+ $(strip \
+ $(if $(filter-out $(VALID_JVM_FEATURES), $1), \
+ $(error Internal error: Invalid feature tested: $1)) \
+ $(if $(filter $1, $(JVM_FEATURES_$(JVM_VARIANT))), true, false))
--- a/hotspot/make/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,895 +0,0 @@
-#
-# Copyright (c) 2005, 2015, 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.
-#
-# 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.
-#
-#
-
-# Top level gnumake file for hotspot builds
-#
-# Default is to build the both product images and construct an export dir.
-# The default export directory name is `pwd`/export-$(PLATFORM).
-#
-# Use: 'gnumake help' for more information.
-#
-# This makefile uses the default settings for where to find compilers and
-# tools, and obeys the ALT_* variable settings used by the other JDK
-# workspaces.
-#
-
-# Expected/optional make variables defined on make command line:
-# LP64=1 or ARCH_DATA_MODEL=64 for 64bit build
-#
-# Expected/optional make variables or environment variables:
-# ALT_SLASH_JAVA Location of /java or J:
-# ALT_BOOTDIR Previous JDK home directory for javac compiler
-# ALT_OUTPUTDIR Output directory to use for hotspot build
-# ALT_EXPORT_PATH Directory to export hotspot build to
-# ALT_JDK_IMPORT_PATH Current JDK build (only for create_jdk rules)
-# ALT_JDK_TARGET_IMPORT_PATH Current JDK build when cross-compiling
-#
-# Version strings and numbers:
-# VERSION_SHORT Current JDK version (e.g. 9.0.0)
-# JDK_PREVIOUS_VERSION Previous (bootdir) JDK version (e.g. 1.5.0) (Only needed
-# to facilitate standalone build.)
-# VERSION_STRING Full version string to use (e.g. "9.0.0-ea-b42")
-# VERSION_MAJOR Major number for version (e.g. 9)
-# VERSION_MINOR Minor number for version (e.g. 0)
-# VERSION_SECURITY Security number for version (e.g. 0)
-# VERSION_PATCH Patch number for version (e.g. 0)
-#
-
-# Default is build both product fastdebug and create export area
-
-# Allow to build HotSpot in local directory from sources specified by GAMMADIR.
-# After make/defs.make GAMMADIR is defined.
-ifdef GAMMADIR
- ifndef ALT_OUTPUTDIR
- ALT_OUTPUTDIR := $(shell pwd)
- endif
- include $(GAMMADIR)/make/defs.make
-else
- include defs.make
-endif
-
-include $(GAMMADIR)/make/altsrc.make
-
--include $(HS_ALT_MAKE)/Makefile.make
-
-ifneq ($(ALT_OUTPUTDIR),)
- ALT_OUT=ALT_OUTPUTDIR=$(ALT_OUTPUTDIR)
-else
- ALT_OUT=
-endif
-
-# Typical C1/C2 targets made available with this Makefile
-C1_VM_TARGETS=product1 fastdebug1 optimized1 debug1
-C2_VM_TARGETS=product fastdebug optimized debug
-CORE_VM_TARGETS=productcore fastdebugcore optimizedcore debugcore
-ZERO_VM_TARGETS=productzero fastdebugzero optimizedzero debugzero
-SHARK_VM_TARGETS=productshark fastdebugshark optimizedshark debugshark
-MINIMAL1_VM_TARGETS=productminimal1 fastdebugminimal1 debugminimal1
-
-COMMON_VM_PRODUCT_TARGETS=product product1 docs export_product
-COMMON_VM_FASTDEBUG_TARGETS=fastdebug fastdebug1 docs export_fastdebug
-COMMON_VM_DEBUG_TARGETS=debug debug1 docs export_debug
-COMMON_VM_OPTIMIZED_TARGETS=optimized optimized1 docs export_optimized
-
-# JDK directory list
-JDK_DIRS=bin include lib demo
-
-all: all_product all_fastdebug
-
-ifeq ($(JVM_VARIANT_MINIMAL1),true)
-all_product: productminimal1
-all_fastdebug: fastdebugminimal1
-all_debug: debugminimal1
-endif
-
-ifdef BUILD_CLIENT_ONLY
-all_product: product1 docs export_product
-all_fastdebug: fastdebug1 docs export_fastdebug
-all_debug: debug1 docs export_debug
-all_optimized: optimized1 docs export_optimized
-else
-ifeq ($(MACOSX_UNIVERSAL),true)
-all_product: universal_product
-all_fastdebug: universal_fastdebug
-all_debug: universal_debug
-all_optimized: universal_optimized
-else
-all_product: $(COMMON_VM_PRODUCT_TARGETS)
-all_fastdebug: $(COMMON_VM_FASTDEBUG_TARGETS)
-all_debug: $(COMMON_VM_DEBUG_TARGETS)
-all_optimized: $(COMMON_VM_OPTIMIZED_TARGETS)
-endif
-endif
-
-allzero: all_productzero all_fastdebugzero
-all_productzero: productzero docs export_product
-all_fastdebugzero: fastdebugzero docs export_fastdebug
-all_debugzero: debugzero docs export_debug
-all_optimizedzero: optimizedzero docs export_optimized
-
-allshark: all_productshark all_fastdebugshark
-all_productshark: productshark docs export_product
-all_fastdebugshark: fastdebugshark docs export_fastdebug
-all_debugshark: debugshark docs export_debug
-all_optimizedshark: optimizedshark docs export_optimized
-
-allcore: all_productcore all_fastdebugcore
-all_productcore: productcore docs export_product
-all_fastdebugcore: fastdebugcore docs export_fastdebug
-all_debugcore: debugcore docs export_debug
-all_optimizedcore: optimizedcore docs export_optimized
-
-# Do everything
-world: all create_jdk
-
-# Build or export docs
-docs:
-ifeq ($(OSNAME),windows)
- @$(ECHO) "No docs ($(VM_TARGET)) for windows"
-else
-# We specify 'BUILD_FLAVOR=product' so that the proper
-# ENABLE_FULL_DEBUG_SYMBOLS value is used.
- $(CD) $(OUTPUTDIR); \
- $(MAKE) -f $(ABS_OS_MAKEFILE) \
- $(MAKE_ARGS) BUILD_FLAVOR=product docs
-endif
-
-# Output directories
-C1_DIR =$(OUTPUTDIR)/$(VM_PLATFORM)_compiler1
-C2_DIR =$(OUTPUTDIR)/$(VM_PLATFORM)_compiler2
-CORE_DIR =$(OUTPUTDIR)/$(VM_PLATFORM)_core
-MINIMAL1_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_minimal1
-ZERO_DIR =$(OUTPUTDIR)/$(VM_PLATFORM)_zero
-SHARK_DIR =$(OUTPUTDIR)/$(VM_PLATFORM)_shark
-
-# Build variation of hotspot
-$(C1_VM_TARGETS):
- $(CD) $(GAMMADIR)/make; \
- $(MAKE) BUILD_DIR=$(C1_DIR) BUILD_FLAVOR=$(@:%1=%) VM_TARGET=$@ generic_build1 $(ALT_OUT)
-
-$(C2_VM_TARGETS):
- $(CD) $(GAMMADIR)/make; \
- $(MAKE) BUILD_DIR=$(C2_DIR) BUILD_FLAVOR=$@ VM_TARGET=$@ generic_build2 $(ALT_OUT)
-
-$(CORE_VM_TARGETS):
- $(CD) $(GAMMADIR)/make; \
- $(MAKE) BUILD_DIR=$(CORE_DIR) BUILD_FLAVOR=$(@:%core=%) VM_TARGET=$@ generic_buildcore $(ALT_OUT)
-
-$(ZERO_VM_TARGETS):
- $(CD) $(GAMMADIR)/make; \
- $(MAKE) BUILD_DIR=$(ZERO_DIR) BUILD_FLAVOR=$(@:%zero=%) VM_TARGET=$@ generic_buildzero $(ALT_OUT)
-
-$(SHARK_VM_TARGETS):
- $(CD) $(GAMMADIR)/make; \
- $(MAKE) BUILD_DIR=$(SHARK_DIR) BUILD_FLAVOR=$(@:%shark=%) VM_TARGET=$@ generic_buildshark $(ALT_OUT)
-
-$(MINIMAL1_VM_TARGETS):
- $(CD) $(GAMMADIR)/make; \
- $(MAKE) BUILD_DIR=$(MINIMAL1_DIR) BUILD_FLAVOR=$(@:%minimal1=%) VM_TARGET=$@ generic_buildminimal1 $(ALT_OUT)
-
-# Install hotspot script in build directory
-HOTSPOT_SCRIPT=$(BUILD_DIR)/$(BUILD_FLAVOR)/hotspot
-$(HOTSPOT_SCRIPT): $(GAMMADIR)/make/hotspot.script
- $(QUIETLY) $(MKDIR) -p $(BUILD_DIR)/$(BUILD_FLAVOR)
- $(QUIETLY) cat $< | sed -e 's|@@LIBARCH@@|$(LIBARCH)|g' | sed -e 's|@@JDK_IMPORT_PATH@@|$(JDK_IMPORT_PATH)|g' > $@
- $(QUIETLY) chmod +x $@
-
-# Build compiler1 (client) rule, different for platforms
-generic_build1: $(HOTSPOT_SCRIPT)
- $(MKDIR) -p $(OUTPUTDIR)
-ifeq ($(OSNAME),windows)
- ifeq ($(ARCH_DATA_MODEL), 32)
- $(CD) $(OUTPUTDIR); \
- $(NMAKE) -f $(ABS_OS_MAKEFILE) \
- Variant=compiler1 \
- WorkSpace=$(ABS_GAMMADIR) \
- BootStrapDir=$(ABS_BOOTDIR) \
- BuildUser=$(USERNAME) \
- $(MAKE_ARGS) $(VM_TARGET:%1=%)
- else
- @$(ECHO) "No compiler1 ($(VM_TARGET)) for ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
- endif
-else
- ifeq ($(ARCH_DATA_MODEL), 32)
- $(CD) $(OUTPUTDIR); \
- $(MAKE) -f $(ABS_OS_MAKEFILE) \
- $(MAKE_ARGS) $(VM_TARGET)
- else
- @$(ECHO) "No compiler1 ($(VM_TARGET)) for ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
- endif
-endif
-
-# Build compiler2 (server) rule, different for platforms
-generic_build2: $(HOTSPOT_SCRIPT)
- $(MKDIR) -p $(OUTPUTDIR)
-ifeq ($(OSNAME),windows)
- $(CD) $(OUTPUTDIR); \
- $(NMAKE) -f $(ABS_OS_MAKEFILE) \
- Variant=compiler2 \
- WorkSpace=$(ABS_GAMMADIR) \
- BootStrapDir=$(ABS_BOOTDIR) \
- BuildUser=$(USERNAME) \
- $(MAKE_ARGS) $(VM_TARGET)
-else
- $(CD) $(OUTPUTDIR); \
- $(MAKE) -f $(ABS_OS_MAKEFILE) \
- $(MAKE_ARGS) $(VM_TARGET)
-endif
-
-# NOTE: Changes in this file was just to facilitate comparison when
-# developing the new build, and should not be integrated.
-generic_buildcore: $(HOTSPOT_SCRIPT)
-#ifeq ($(HS_ARCH),ppc)
-# ifeq ($(ARCH_DATA_MODEL),64)
- $(MKDIR) -p $(OUTPUTDIR)
- $(CD) $(OUTPUTDIR); \
- $(MAKE) -f $(ABS_OS_MAKEFILE) \
- $(MAKE_ARGS) $(VM_TARGET)
-# else
-# @$(ECHO) "No ($(VM_TARGET)) for ppc ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
-# endif
-#else
-# @$(ECHO) "No ($(VM_TARGET)) for $(HS_ARCH)"
-#endif
-
-generic_buildzero: $(HOTSPOT_SCRIPT)
- $(MKDIR) -p $(OUTPUTDIR)
- $(CD) $(OUTPUTDIR); \
- $(MAKE) -f $(ABS_OS_MAKEFILE) \
- $(MAKE_ARGS) $(VM_TARGET)
-
-generic_buildshark: $(HOTSPOT_SCRIPT)
- $(MKDIR) -p $(OUTPUTDIR)
- $(CD) $(OUTPUTDIR); \
- $(MAKE) -f $(ABS_OS_MAKEFILE) \
- $(MAKE_ARGS) $(VM_TARGET)
-
-generic_buildminimal1: $(HOTSPOT_SCRIPT)
-ifeq ($(JVM_VARIANT_MINIMAL1),true)
- $(MKDIR) -p $(OUTPUTDIR)
- ifeq ($(ARCH_DATA_MODEL), 32)
- ifeq ($(OSNAME),windows)
- $(ECHO) "No ($(VM_TARGET)) for $(OSNAME) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)" ;
- else
- ifeq ($(OSNAME),solaris)
- $(ECHO) "No ($(VM_TARGET)) for $(OSNAME) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)" ;
- else
- $(CD) $(OUTPUTDIR); \
- $(MAKE) -f $(ABS_OS_MAKEFILE) $(MAKE_ARGS) $(VM_TARGET) ;
- endif
- endif
- else
- @$(ECHO) "No ($(VM_TARGET)) for $(OSNAME) ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
- endif
-else
- @$(ECHO) "Error: trying to build a minimal target but JVM_VARIANT_MINIMAL1 is not true."
-endif
-
-remove_old_debuginfo:
-ifeq ($(JVM_VARIANT_CLIENT), true)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- ifeq ($(OSNAME), windows)
- $(RM) -f $(EXPORT_CLIENT_DIR)/jvm.map $(EXPORT_CLIENT_DIR)/jvm.pdb
- else
- $(RM) -f $(EXPORT_CLIENT_DIR)/libjvm.debuginfo
- endif
- else
- $(RM) -f $(EXPORT_CLIENT_DIR)/libjvm.diz
- endif
-endif
-ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- ifeq ($(OSNAME), windows)
- $(RM) -f $(EXPORT_SERVER_DIR)/jvm.map $(EXPORT_SERVER_DIR)/jvm.pdb
- else
- ifeq ($(OS_VENDOR), Darwin)
- $(RM) -rf $(EXPORT_SERVER_DIR)/libjvm.dylib.dSYM
- else
- $(RM) -f $(EXPORT_SERVER_DIR)/libjvm.debuginfo
- endif
- endif
- else
- $(RM) -f $(EXPORT_SERVER_DIR)/libjvm.diz
- endif
-endif
-ifeq ($(JVM_VARIANT_MINIMAL1),true)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(RM) -f $(EXPORT_MINIMAL_DIR)/libjvm.debuginfo
- else
- $(RM) -f $(EXPORT_MINIMAL_DIR)/libjvm.diz
- endif
-endif
-
-# Export file rule
-generic_export: $(EXPORT_LIST) remove_old_debuginfo
-
-export_product:
- $(MAKE) BUILD_FLAVOR=$(@:export_%=%) generic_export
-export_fastdebug:
- $(MAKE) BUILD_FLAVOR=$(@:export_%=%) EXPORT_SUBDIR=/$(@:export_%=%) generic_export
-export_debug:
- $(MAKE) BUILD_FLAVOR=$(@:export_%=%) EXPORT_SUBDIR=/$(@:export_%=%) generic_export
-export_optimized:
- $(MAKE) BUILD_FLAVOR=$(@:export_%=%) EXPORT_SUBDIR=/$(@:export_%=%) generic_export
-
-export_product_jdk::
- $(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR) generic_export
-export_optimized_jdk::
- $(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/$(@:export_%_jdk=%) generic_export
-export_fastdebug_jdk::
- $(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/$(@:export_%_jdk=%) generic_export
-export_debug_jdk::
- $(MAKE) BUILD_FLAVOR=$(@:export_%_jdk=%) ALT_EXPORT_PATH=$(JDK_IMAGE_DIR)/$(@:export_%_jdk=%) generic_export
-
-# Export file copy rules
-XUSAGE=$(HS_SRC_DIR)/share/vm/Xusage.txt
-DOCS_DIR=$(OUTPUTDIR)/$(VM_PLATFORM)_docs
-C1_BUILD_DIR =$(C1_DIR)/$(BUILD_FLAVOR)
-C2_BUILD_DIR =$(C2_DIR)/$(BUILD_FLAVOR)
-CORE_BUILD_DIR =$(CORE_DIR)/$(BUILD_FLAVOR)
-MINIMAL1_BUILD_DIR=$(MINIMAL1_DIR)/$(BUILD_FLAVOR)
-ZERO_BUILD_DIR =$(ZERO_DIR)/$(BUILD_FLAVOR)
-SHARK_BUILD_DIR =$(SHARK_DIR)/$(BUILD_FLAVOR)
-
-# Server (C2)
-ifeq ($(JVM_VARIANT_SERVER), true)
-# Common
-$(EXPORT_SERVER_DIR)/%.diz: $(C2_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_LIB_DIR)/%.jar: $(C2_BUILD_DIR)/../generated/%.jar
- $(install-file)
-$(EXPORT_INCLUDE_DIR)/%: $(C2_BUILD_DIR)/../generated/jvmtifiles/%
- $(install-file)
-# Windows
-$(EXPORT_SERVER_DIR)/%.dll: $(C2_BUILD_DIR)/%.dll
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.pdb: $(C2_BUILD_DIR)/%.pdb
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.map: $(C2_BUILD_DIR)/%.map
- $(install-file)
-$(EXPORT_LIB_DIR)/%.lib: $(C2_BUILD_DIR)/%.lib
- $(install-file)
-$(EXPORT_BIN_DIR)/%.diz: $(C2_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_BIN_DIR)/%.dll: $(C2_BUILD_DIR)/%.dll
- $(install-file)
-$(EXPORT_BIN_DIR)/%.pdb: $(C2_BUILD_DIR)/%.pdb
- $(install-file)
-$(EXPORT_BIN_DIR)/%.map: $(C2_BUILD_DIR)/%.map
- $(install-file)
-# Unix
-$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(C2_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_SERVER_DIR)/64/%.$(LIBRARY_SUFFIX): $(C2_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.debuginfo: $(C2_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.debuginfo: $(C2_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_SERVER_DIR)/64/%.debuginfo: $(C2_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.diz: $(C2_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_SERVER_DIR)/64/%.diz: $(C2_BUILD_DIR)/%.diz
- $(install-file)
-# MacOS X
-$(EXPORT_LIB_ARCH_DIR)/%.dSYM: $(C2_BUILD_DIR)/%.dSYM
- $(install-dir)
-$(EXPORT_SERVER_DIR)/%.dSYM: $(C2_BUILD_DIR)/%.dSYM
- $(install-dir)
-$(EXPORT_SERVER_DIR)/%.symbols: $(C2_BUILD_DIR)/%.symbols
- $(install-file)
-endif
-
-# Client (C1)
-ifeq ($(JVM_VARIANT_CLIENT), true)
-# Common
-$(EXPORT_CLIENT_DIR)/%.diz: $(C1_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_LIB_DIR)/%.jar: $(C1_BUILD_DIR)/../generated/%.jar
- $(install-file)
-$(EXPORT_INCLUDE_DIR)/%: $(C1_BUILD_DIR)/../generated/jvmtifiles/%
- $(install-file)
-# Windows
-$(EXPORT_CLIENT_DIR)/%.dll: $(C1_BUILD_DIR)/%.dll
- $(install-file)
-$(EXPORT_CLIENT_DIR)/%.pdb: $(C1_BUILD_DIR)/%.pdb
- $(install-file)
-$(EXPORT_CLIENT_DIR)/%.map: $(C1_BUILD_DIR)/%.map
- $(install-file)
-$(EXPORT_LIB_DIR)/%.lib: $(C1_BUILD_DIR)/%.lib
- $(install-file)
-$(EXPORT_BIN_DIR)/%.diz: $(C1_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_BIN_DIR)/%.dll: $(C1_BUILD_DIR)/%.dll
- $(install-file)
-$(EXPORT_BIN_DIR)/%.pdb: $(C1_BUILD_DIR)/%.pdb
- $(install-file)
-$(EXPORT_BIN_DIR)/%.map: $(C1_BUILD_DIR)/%.map
- $(install-file)
-# Unix
-$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_CLIENT_DIR)/%.$(LIBRARY_SUFFIX): $(C1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_CLIENT_DIR)/64/%.$(LIBRARY_SUFFIX): $(C1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.debuginfo: $(C1_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_CLIENT_DIR)/%.debuginfo: $(C1_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_CLIENT_DIR)/64/%.debuginfo: $(C1_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.diz: $(C1_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_CLIENT_DIR)/64/%.diz: $(C1_BUILD_DIR)/%.diz
- $(install-file)
-# MacOS X
-$(EXPORT_LIB_ARCH_DIR)/%.dSYM: $(C1_BUILD_DIR)/%.dSYM
- $(install-dir)
-$(EXPORT_CLIENT_DIR)/%.dSYM: $(C1_BUILD_DIR)/%.dSYM
- $(install-dir)
-endif
-
-# Minimal1
-ifeq ($(JVM_VARIANT_MINIMAL1), true)
-# Common
-$(EXPORT_MINIMAL_DIR)/%.diz: $(MINIMAL1_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_LIB_DIR)/%.jar: $(MINIMAL1_BUILD_DIR)/../generated/%.jar
- $(install-file)
-$(EXPORT_INCLUDE_DIR)/%: $(MINIMAL1_BUILD_DIR)/../generated/jvmtifiles/%
- $(install-file)
-# Windows
-$(EXPORT_MINIMAL_DIR)/%.dll: $(MINIMAL1_BUILD_DIR)/%.dll
- $(install-file)
-$(EXPORT_MINIMAL_DIR)/%.pdb: $(MINIMAL1_BUILD_DIR)/%.pdb
- $(install-file)
-$(EXPORT_MINIMAL_DIR)/%.map: $(MINIMAL1_BUILD_DIR)/%.map
- $(install-file)
-$(EXPORT_LIB_DIR)/%.lib: $(MINIMAL1_BUILD_DIR)/%.lib
- $(install-file)
-$(EXPORT_BIN_DIR)/%.diz: $(MINIMAL1_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_BIN_DIR)/%.dll: $(MINIMAL1_BUILD_DIR)/%.dll
- $(install-file)
-$(EXPORT_BIN_DIR)/%.pdb: $(MINIMAL1_BUILD_DIR)/%.pdb
- $(install-file)
-$(EXPORT_BIN_DIR)/%.map: $(MINIMAL1_BUILD_DIR)/%.map
- $(install-file)
-# Unix
-$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(MINIMAL1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_MINIMAL_DIR)/%.$(LIBRARY_SUFFIX): $(MINIMAL1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_MINIMAL_DIR)/64/%.$(LIBRARY_SUFFIX): $(MINIMAL1_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.debuginfo: $(MINIMAL1_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_MINIMAL_DIR)/%.debuginfo: $(MINIMAL1_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_MINIMAL_DIR)/64/%.debuginfo: $(MINIMAL1_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.diz: $(MINIMAL1_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_MINIMAL_DIR)/64/%.diz: $(MINIMAL1_BUILD_DIR)/%.diz
- $(install-file)
-# MacOS X does not support Minimal1 config
-endif
-
-# Zero
-ifeq ($(JVM_VARIANT_ZERO), true)
-# Common
-$(EXPORT_LIB_DIR)/%.jar: $(ZERO_BUILD_DIR)/../generated/%.jar
- $(install-file)
-$(EXPORT_INCLUDE_DIR)/%: $(ZERO_BUILD_DIR)/../generated/jvmtifiles/%
- $(install-file)
-# Unix
-$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.debuginfo: $(ZERO_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.diz: $(ZERO_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.debuginfo: $(ZERO_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.diz: $(ZERO_BUILD_DIR)/%.diz
- $(install-file)
-# MacOS X
-$(EXPORT_LIB_ARCH_DIR)/%.dSYM: $(ZERO_BUILD_DIR)/%.dSYM
- $(install-dir)
-$(EXPORT_SERVER_DIR)/%.dSYM: $(ZERO_BUILD_DIR)/%.dSYM
- $(install-dir)
-endif
-
-# Core
-ifeq ($(JVM_VARIANT_CORE), true)
-# Common
-$(EXPORT_LIB_DIR)/%.jar: $(CORE_BUILD_DIR)/../generated/%.jar
- $(install-file)
-$(EXPORT_INCLUDE_DIR)/%: $(CORE_BUILD_DIR)/../generated/jvmtifiles/%
- $(install-file)
-# Unix
-$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(CORE_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.debuginfo: $(CORE_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.diz: $(CORE_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(CORE_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.debuginfo: $(CORE_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.diz: $(CORE_BUILD_DIR)/%.diz
- $(install-file)
-endif
-
-# Shark
-ifeq ($(JVM_VARIANT_ZEROSHARK), true)
-# Common
-$(EXPORT_LIB_DIR)/%.jar: $(SHARK_BUILD_DIR)/../generated/%.jar
- $(install-file)
-$(EXPORT_INCLUDE_DIR)/%: $(SHARK_BUILD_DIR)/../generated/jvmtifiles/%
- $(install-file)
-# Unix
-$(EXPORT_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.debuginfo): $(SHARK_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_LIB_ARCH_DIR)/%.diz: $(SHARK_BUILD_DIR)/%.diz
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX): $(SHARK_BUILD_DIR)/%.$(LIBRARY_SUFFIX)
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.debuginfo: $(SHARK_BUILD_DIR)/%.debuginfo
- $(install-file)
-$(EXPORT_SERVER_DIR)/%.diz: $(SHARK_BUILD_DIR)/%.diz
- $(install-file)
-# MacOS X
-$(EXPORT_LIB_ARCH_DIR)/%.dSYM: $(SHARK_BUILD_DIR)/%.dSYM
- $(install-dir)
-$(EXPORT_SERVER_DIR)/%.dSYM: $(SHARK_BUILD_DIR)/%.dSYM
- $(install-dir)
-endif
-
-$(EXPORT_INCLUDE_DIR)/%: $(HS_SRC_DIR)/share/vm/code/%
- $(install-file)
-
-$(EXPORT_INCLUDE_DIR)/%: $(HS_SRC_DIR)/share/vm/prims/%
- $(install-file)
-
-HS_JNI_ARCH_SRC=$(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(HS_ARCH)/vm/jni_$(HS_ARCH).h)
-$(EXPORT_INCLUDE_DIR)/$(JDK_INCLUDE_SUBDIR)/jni_md.h: $(HS_JNI_ARCH_SRC)
- $(install-file)
-
-$(EXPORT_INCLUDE_DIR)/%: $(HS_SRC_DIR)/share/vm/services/%
- $(install-file)
-
-JFR_EXISTS=$(shell if [ -d $(HS_ALT_SRC) ]; then echo 1; else echo 0; fi)
-# export jfr.h
-ifeq ($JFR_EXISTS,1)
-$(EXPORT_INCLUDE_DIR)/%: $(HS_ALT_SRC)/share/vm/jfr/%
- $(install-file)
-else
-$(EXPORT_INCLUDE_DIR)/jfr.h:
-endif
-
-# Doc files (jvmti.html)
-$(EXPORT_DOCS_DIR)/platform/jvmti/%: $(DOCS_DIR)/%
- $(install-file)
-
-# Xusage file
-$(EXPORT_SERVER_DIR)/Xusage.txt $(EXPORT_CLIENT_DIR)/Xusage.txt $(EXPORT_MINIMAL_DIR)/Xusage.txt: $(XUSAGE)
- $(prep-target)
- $(RM) $@.temp
- $(SED) 's/\(separated by \)[;:]/\1$(PATH_SEP)/g' $< > $@.temp
- $(MV) $@.temp $@
-
-#
-# Clean rules
-#
-clobber clean: clean_build clean_export clean_jdk
-clean_build:
- $(RM) -r $(C1_DIR)
- $(RM) -r $(C2_DIR)
- $(RM) -r $(CORE_DIR)
- $(RM) -r $(ZERO_DIR)
- $(RM) -r $(SHARK_DIR)
- $(RM) -r $(MINIMAL1_DIR)
-clean_export:
- $(RM) -r $(EXPORT_PATH)
-clean_jdk:
- $(RM) -r $(JDK_IMAGE_DIR)
-
-#
-# Create JDK and place this build into it
-#
-create_jdk: copy_jdk update_jdk
-
-update_jdk: export_product_jdk export_fastdebug_jdk test_jdk
-
-copy_jdk: $(JDK_IMAGE_DIR)/bin/java
-
-$(JDK_IMAGE_DIR)/bin/java:
- $(RM) -r $(JDK_IMAGE_DIR)
- $(MKDIR) -p $(JDK_IMAGE_DIR)
- ($(CD) $(JDK_IMPORT_PATH) && \
- $(TAR) -cf - *) | \
- ($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
-
-
-# Testing the built JVM
-RUN_JVM=JAVA_HOME=$(JDK_IMPORT_PATH) $(JDK_IMPORT_PATH)/bin/java -d$(ARCH_DATA_MODEL) -XXaltjvm=$(ALTJVM_DIR) -Dsun.java.launcher.is_altjvm=true
-generic_test:
- @$(ECHO) "Running with: $(ALTJVM_DIR)"
- @$(RUN_JVM) -Xinternalversion
- @$(RUN_JVM) -showversion -help
-
-# C2 test targets
-test_product test_optimized test_fastdebug test_debug:
- @$(MAKE) generic_test ALTJVM_DIR="$(C2_DIR)/$(@:test_%=%)"
-
-# C1 test targets
-test_product1 test_optimized1 test_fastdebug1 test_debug1:
- ifeq ($(ARCH_DATA_MODEL), 32)
- @$(MAKE) generic_test ALTJVM_DIR="$(C1_DIR)/$(@:test_%1=%)"
- else
- @$(ECHO) "No compiler1 ($(@:test_%=%)) for ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)"
- endif
-
-# Zero test targets
-test_productzero test_optimizedzero test_fastdebugzero test_debugzero:
- @$(MAKE) generic_test ALTJVM_DIR="$(ZERO_DIR)/$(@:test_%zero=%)"
-
-# Shark test targets
-test_productshark test_optimizedshark test_fastdebugshark test_debugshark:
- @$(MAKE) generic_test ALTJVM_DIR="$(SHARK_DIR)/$(@:test_%shark=%)"
-
-# Minimal1 test targets
-test_productminimal1 test_optimizedminimal1 test_fastdebugminimal1 test_debugminimal1:
- @$(MAKE) generic_test ALTJVM_DIR="$(MINIMAL1_DIR)/$(@:test_%minimal1=%)"
-
-
-test_jdk:
- ifeq ($(JVM_VARIANT_CLIENT), true)
- $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -client -Xinternalversion
- $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -client -version
- endif
- ifeq ($(findstring true, $(JVM_VARIANT_SERVER)\
- $(JVM_VARIANT_ZERO)$(JVM_VARIANT_ZEROSHARK)), true)
- $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -server -Xinternalversion
- $(JDK_IMAGE_DIR)/bin/java -d$(ARCH_DATA_MODEL) -server -version
- endif
-
-copy_product_jdk::
- $(RM) -r $(JDK_IMAGE_DIR)
- $(MKDIR) -p $(JDK_IMAGE_DIR)
- ($(CD) $(JDK_IMPORT_PATH) && \
- $(TAR) -cf - $(JDK_DIRS)) | \
- ($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xf -)
-
-copy_fastdebug_jdk::
- $(RM) -r $(JDK_IMAGE_DIR)/fastdebug
- $(MKDIR) -p $(JDK_IMAGE_DIR)/fastdebug
- if [ -d $(JDK_IMPORT_PATH)/fastdebug ] ; then \
- ($(CD) $(JDK_IMPORT_PATH)/fastdebug && \
- $(TAR) -cf - $(JDK_DIRS)) | \
- ($(CD) $(JDK_IMAGE_DIR)/fastdebug && $(TAR) -xf -) ; \
- else \
- ($(CD) $(JDK_IMPORT_PATH) && \
- $(TAR) -cf - $(JDK_DIRS)) | \
- ($(CD) $(JDK_IMAGE_DIR)/fastdebug && $(TAR) -xf -) ; \
- fi
-
-copy_debug_jdk::
- $(RM) -r $(JDK_IMAGE_DIR)/debug
- $(MKDIR) -p $(JDK_IMAGE_DIR)/debug
- if [ -d $(JDK_IMPORT_PATH)/debug ] ; then \
- ($(CD) $(JDK_IMPORT_PATH)/debug && \
- $(TAR) -cf - $(JDK_DIRS)) | \
- ($(CD) $(JDK_IMAGE_DIR)/debug && $(TAR) -xf -) ; \
- elif [ -d $(JDK_IMPORT_PATH)/fastdebug ] ; then \
- ($(CD) $(JDK_IMPORT_PATH)/fastdebug && \
- $(TAR) -cf - $(JDK_DIRS)) | \
- ($(CD) $(JDK_IMAGE_DIR)/debug && $(TAR) -xf -) ; \
- else \
- ($(CD) $(JDK_IMPORT_PATH) && \
- $(TAR) -cf - $(JDK_DIRS)) | \
- ($(CD) $(JDK_IMAGE_DIR)/debug && $(TAR) -xf -) ; \
- fi
-
-copy_optimized_jdk::
- $(RM) -r $(JDK_IMAGE_DIR)/optimized
- $(MKDIR) -p $(JDK_IMAGE_DIR)/optimized
- if [ -d $(JDK_IMPORT_PATH)/optimized ] ; then \
- ($(CD) $(JDK_IMPORT_PATH)/optimized && \
- $(TAR) -cf - $(JDK_DIRS)) | \
- ($(CD) $(JDK_IMAGE_DIR)/optimized && $(TAR) -xf -) ; \
- else \
- ($(CD) $(JDK_IMPORT_PATH) && \
- $(TAR) -cf - $(JDK_DIRS)) | \
- ($(CD) $(JDK_IMAGE_DIR)/optimized && $(TAR) -xf -) ; \
- fi
-
-#
-# Check target
-#
-check: variable_check
-
-#
-# Help target
-#
-help: intro_help target_help variable_help notes_help examples_help
-
-# Intro help message
-intro_help:
- @$(ECHO) \
-"Makefile for the Hotspot workspace."
- @$(ECHO) \
-"Default behavior is to build and create an export area for the j2se builds."
-
-# Target help
-target_help:
- @$(ECHO) "help: This help message"
- @$(ECHO) "all: Same as: all_product all_fastdebug"
- @$(ECHO) "world: Same as: all create_jdk"
- @$(ECHO) "all_product: Same as: product product1 export_product"
- @$(ECHO) "all_fastdebug: Same as: fastdebug fastdebug1 export_fastdebug"
- @$(ECHO) "all_debug: Same as: debug debug1 export_debug"
- @$(ECHO) "all_optimized: Same as: optimized optimized1 export_optimized"
- @$(ECHO) "clean: Clean all areas"
- @$(ECHO) "export_product: Export product files to EXPORT_PATH"
- @$(ECHO) "export_fastdebug: Export fastdebug files to EXPORT_PATH"
- @$(ECHO) "export_debug: Export debug files to EXPORT_PATH"
- @$(ECHO) "export_optimized: Export optimized files to EXPORT_PATH"
- @$(ECHO) "create_jdk: Create JDK image, export all files into it"
- @$(ECHO) "update_jdk: Update JDK image with fresh exported files"
- @$(ECHO) " "
- @$(ECHO) "Other targets are:"
- @$(ECHO) " $(C1_VM_TARGETS)"
- @$(ECHO) " $(C2_VM_TARGETS)"
- @$(ECHO) " $(MINIMAL1_VM_TARGETS)"
-
-# Variable help (only common ones used by this workspace)
-variable_help: variable_help_intro variable_list variable_help_end
-variable_help_intro:
- @$(ECHO) "--- Common Variables ---"
-variable_help_end:
- @$(ECHO) " "
- @$(ECHO) "--- Make Arguments ---"
- @$(ECHO) "MAKE_ARGS=$(MAKE_ARGS)"
-
-# One line descriptions for the variables
-SLASH_JAVA.desc = Root of all build tools, e.g. /java or J:
-OUTPUTDIR.desc = Output directory, default is build/<osname>
-BOOTDIR.desc = JDK used to compile agent java source and test with
-JDK_IMPORT_PATH.desc = Promoted JDK to copy for 'create_jdk'
-JDK_IMAGE_DIR.desc = Directory to place JDK to copy
-EXPORT_PATH.desc = Directory to place files to export for JDK build
-
-# Make variables to print out (description and value)
-VARIABLE_PRINTVAL_LIST += \
- SLASH_JAVA \
- OUTPUTDIR \
- BOOTDIR \
- JDK_IMPORT_PATH \
- JDK_IMAGE_DIR \
- EXPORT_PATH
-
-# Make variables that should refer to directories that exist
-VARIABLE_CHECKDIR_LIST += \
- SLASH_JAVA \
- BOOTDIR \
- JDK_IMPORT_PATH
-
-# For pattern rules below, so all are treated the same
-DO_PRINTVAL_LIST=$(VARIABLE_PRINTVAL_LIST:%=%.printval)
-DO_CHECKDIR_LIST=$(VARIABLE_CHECKDIR_LIST:%=%.checkdir)
-
-# Complete variable check
-variable_check: $(DO_CHECKDIR_LIST)
-variable_list: $(DO_PRINTVAL_LIST) variable_check
-
-# Pattern rule for printing out a variable
-%.printval:
- @$(ECHO) " ALT_$* - $($*.desc)"
- @$(ECHO) " $*=$($*)"
-
-# Pattern rule for checking to see if a variable with a directory exists
-%.checkdir:
- @if [ ! -d $($*) ] ; then \
- $(ECHO) "WARNING: $* does not exist, try $(MAKE) sanity"; \
- fi
-
-# Pattern rule for checking to see if a variable with a file exists
-%.checkfil:
- @if [ ! -f $($*) ] ; then \
- $(ECHO) "WARNING: $* does not exist, try $(MAKE) sanity"; \
- fi
-
-# Misc notes on help
-notes_help:
- @$(ECHO) \
-"--- Notes --- "
- @$(ECHO) \
-"- JDK_IMPORT_PATH must refer to a compatible build, not all past promoted"
- @$(ECHO) \
-" builds or previous release JDK builds will work."
- @$(ECHO) \
-"- The fastest builds have been when the workspace and the BOOTDIR are on"
- @$(ECHO) \
-" local disk."
-
-examples_help:
- @$(ECHO) \
-"--- Examples --- "
- @$(ECHO) \
-" $(MAKE) all"
- @$(ECHO) \
-" $(MAKE) world"
- @$(ECHO) \
-" $(MAKE) ALT_BOOTDIR=/opt/java/jdk$(JDK_PREVIOUS_VERSION)"
- @$(ECHO) \
-" $(MAKE) ALT_JDK_IMPORT_PATH=/opt/java/jdk$(VERSION_STRING)"
-
-# Universal build support
-ifeq ($(OS_VENDOR), Darwin)
-ifeq ($(MACOSX_UNIVERSAL),true)
-include $(GAMMADIR)/make/$(OSNAME)/makefiles/universal.gmk
-endif
-endif
-
-# Compatibility for transition to new naming
-warn_jvmg_deprecated:
- echo "Warning: The jvmg target has been replaced with debug"
- echo "Warning: Please update your usage"
-
-jvmg: warn_jvmg_deprecated debug
-
-jvmg1: warn_jvmg_deprecated debug1
-
-jvmgminimal1: warn_jvmg_deprecated debugminimal1
-
-jvmgcore: warn_jvmg_deprecated debugcore
-
-jvmgzero: warn_jvmg_deprecated debugzero
-
-jvmgshark: warn_jvmg_deprecated debugshark
-
-# JPRT rule to build this workspace
-include $(GAMMADIR)/make/jprt.gmk
-
-.PHONY: all world clobber clean help $(C1_VM_TARGETS) $(C2_VM_TARGETS) \
- $(MINIMAL1_VM_TARGETS) \
- generic_build1 generic_build2 generic_buildminimal1 generic_export \
- export_product export_fastdebug export_debug export_optimized \
- export_jdk_product export_jdk_fastdebug export_jdk_debug \
- create_jdk copy_jdk update_jdk test_jdk \
- copy_product_jdk copy_fastdebug_jdk copy_debug_jdk \
- $(HS_ALT_MAKE)/Makefile.make remove_old_debuginfo
-
-.NOTPARALLEL:
--- a/hotspot/make/aix/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,369 +0,0 @@
-#
-# Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2015 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# This makefile creates a build tree and lights off a build.
-# You can go back into the build tree and perform rebuilds or
-# incremental builds as desired. Be sure to reestablish
-# environment variable settings for LD_LIBRARY_PATH and JAVA_HOME.
-
-# The make process now relies on java and javac. These can be
-# specified either implicitly on the PATH, by setting the
-# (JDK-inherited) ALT_BOOTDIR environment variable to full path to a
-# JDK in which bin/java and bin/javac are present and working (e.g.,
-# /usr/local/java/jdk1.3/solaris), or via the (JDK-inherited)
-# default BOOTDIR path value. Note that one of ALT_BOOTDIR
-# or BOOTDIR has to be set. We do *not* search javac, javah, rmic etc.
-# from the PATH.
-#
-# One can set ALT_BOOTDIR or BOOTDIR to point to a jdk that runs on
-# an architecture that differs from the target architecture, as long
-# as the bootstrap jdk runs under the same flavor of OS as the target
-# (i.e., if the target is linux, point to a jdk that runs on a linux
-# box). In order to use such a bootstrap jdk, set the make variable
-# REMOTE to the desired remote command mechanism, e.g.,
-#
-# make REMOTE="rsh -l me myotherlinuxbox"
-
-# No tests on Aix.
-TEST_IN_BUILD=false
-
-ifeq ($(GAMMADIR),)
-include ../../make/defs.make
-else
-include $(GAMMADIR)/make/defs.make
-endif
-include $(GAMMADIR)/make/$(OSNAME)/makefiles/rules.make
-
-ifndef CC_INTERP
- ifndef FORCE_TIERED
- FORCE_TIERED=1
- endif
-endif
-
-ifdef LP64
- ifeq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
- _JUNK_ := $(shell echo >&2 \
- $(OSNAME) $(ARCH) "*** ERROR: this platform does not support 64-bit compilers!")
- @exit 1
- endif
-endif
-
-# we need to set up LP64 correctly to satisfy sanity checks in adlc
-ifneq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
- MFLAGS += " LP64=1 "
-endif
-
-# pass USE_SUNCC further, through MFLAGS
-ifdef USE_SUNCC
- MFLAGS += " USE_SUNCC=1 "
-endif
-
-# The following renders pathnames in generated Makefiles valid on
-# machines other than the machine containing the build tree.
-#
-# For example, let's say my build tree lives on /files12 on
-# exact.east.sun.com. This logic will cause GAMMADIR to begin with
-# /net/exact/files12/...
-#
-# We only do this on SunOS variants, for a couple of reasons:
-# * It is extremely rare that source trees exist on other systems
-# * It has been claimed that the Linux automounter is flakey, so
-# changing GAMMADIR in a way that exercises the automounter could
-# prove to be a source of unreliability in the build process.
-# Obviously, this Makefile is only relevant on SunOS boxes to begin
-# with, but the SunOS conditionalization will make it easier to
-# combine Makefiles in the future (assuming we ever do that).
-
-ifeq ($(OSNAME),solaris)
-
- # prepend current directory to relative pathnames.
- NEW_GAMMADIR := \
- $(shell echo $(GAMMADIR) | \
- sed -e "s=^\([^/].*\)=$(shell pwd)/\1=" \
- )
- unexport NEW_GAMMADIR
-
- # If NEW_GAMMADIR doesn't already start with "/net/":
- ifeq ($(strip $(filter /net/%,$(NEW_GAMMADIR))),)
- # prepend /net/$(HOST)
- # remove /net/$(HOST) if name already began with /home/
- # remove /net/$(HOST) if name already began with /java/
- # remove /net/$(HOST) if name already began with /lab/
- NEW_GAMMADIR := \
- $(shell echo $(NEW_GAMMADIR) | \
- sed -e "s=^\(.*\)=/net/$(HOST)\1=" \
- -e "s=^/net/$(HOST)/home/=/home/=" \
- -e "s=^/net/$(HOST)/java/=/java/=" \
- -e "s=^/net/$(HOST)/lab/=/lab/=" \
- )
- # Don't use the new value for GAMMADIR unless a file with the new
- # name actually exists.
- ifneq ($(wildcard $(NEW_GAMMADIR)),)
- GAMMADIR := $(NEW_GAMMADIR)
- endif
- endif
-
-endif
-
-# BUILDARCH is set to "zero" for Zero builds. VARIANTARCH
-# is used to give the build directories meaningful names.
-VARIANTARCH = $(subst i386,i486,$(ZERO_LIBARCH))
-
-# There is a (semi-) regular correspondence between make targets and actions:
-#
-# Target Tree Type Build Dir
-#
-# debug compiler2 <os>_<arch>_compiler2/debug
-# fastdebug compiler2 <os>_<arch>_compiler2/fastdebug
-# optimized compiler2 <os>_<arch>_compiler2/optimized
-# product compiler2 <os>_<arch>_compiler2/product
-#
-# debug1 compiler1 <os>_<arch>_compiler1/debug
-# fastdebug1 compiler1 <os>_<arch>_compiler1/fastdebug
-# optimized1 compiler1 <os>_<arch>_compiler1/optimized
-# product1 compiler1 <os>_<arch>_compiler1/product
-#
-# debugcore core <os>_<arch>_core/debug
-# fastdebugcore core <os>_<arch>_core/fastdebug
-# optimizedcore core <os>_<arch>_core/optimized
-# productcore core <os>_<arch>_core/product
-#
-# debugzero zero <os>_<arch>_zero/debug
-# fastdebugzero zero <os>_<arch>_zero/fastdebug
-# optimizedzero zero <os>_<arch>_zero/optimized
-# productzero zero <os>_<arch>_zero/product
-#
-# debugshark shark <os>_<arch>_shark/debug
-# fastdebugshark shark <os>_<arch>_shark/fastdebug
-# optimizedshark shark <os>_<arch>_shark/optimized
-# productshark shark <os>_<arch>_shark/product
-#
-# fastdebugminimal1 minimal1 <os>_<arch>_minimal1/fastdebug
-# productminimal1 minimal1 <os>_<arch>_minimal1/product
-#
-# What you get with each target:
-#
-# debug* - debug compile with asserts enabled
-# fastdebug* - optimized compile, but with asserts enabled
-# optimized* - optimized compile, no asserts
-# product* - the shippable thing: optimized compile, no asserts, -DPRODUCT
-
-# This target list needs to be coordinated with the usage message
-# in the build.sh script:
-TARGETS = debug fastdebug optimized product
-
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- SUBDIR_DOCS = $(OSNAME)_$(VARIANTARCH)_docs
-else
- SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs
-endif
-SUBDIRS_C1 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS))
-SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS))
-SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS))
-SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS))
-SUBDIRS_ZERO = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS))
-SUBDIRS_SHARK = $(addprefix $(OSNAME)_$(VARIANTARCH)_shark/,$(TARGETS))
-SUBDIRS_MINIMAL1 = $(addprefix $(OSNAME)_$(BUILDARCH)_minimal1/,$(TARGETS))
-
-TARGETS_C2 = $(TARGETS)
-TARGETS_C1 = $(addsuffix 1,$(TARGETS))
-TARGETS_TIERED = $(addsuffix tiered,$(TARGETS))
-TARGETS_CORE = $(addsuffix core,$(TARGETS))
-TARGETS_ZERO = $(addsuffix zero,$(TARGETS))
-TARGETS_SHARK = $(addsuffix shark,$(TARGETS))
-TARGETS_MINIMAL1 = $(addsuffix minimal1,$(TARGETS))
-
-BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make
-BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH)
-BUILDTREE_VARS += HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) VERSION_STRING=$(VERSION_STRING)
-BUILDTREE_VARS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) OBJCOPY=$(OBJCOPY) STRIP_POLICY=$(STRIP_POLICY) ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) ZIPEXE=$(ZIPEXE)
-
-BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS)
-
-#-------------------------------------------------------------------------------
-
-# Could make everything by default, but that would take a while.
-all:
- @echo "Try '$(MAKE) <target> ...' where <target> is one or more of"
- @echo " $(TARGETS_C2)"
- @echo " $(TARGETS_C1)"
- @echo " $(TARGETS_CORE)"
- @echo " $(TARGETS_ZERO)"
- @echo " $(TARGETS_SHARK)"
- @echo " $(TARGETS_MINIMAL1)"
-
-checks: check_os_version check_j2se_version
-
-# We do not want people accidentally building on old systems (e.g. Linux 2.2.x,
-# Solaris 2.5.1, 2.6).
-# Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok.
-
-SUPPORTED_OS_VERSION = AIX
-OS_VERSION := $(shell uname -a)
-EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION))
-
-check_os_version:
-ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),)
- $(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1;
-endif
-
-# jvmti.make requires XSLT (J2SE 1.4.x or newer):
-XSLT_CHECK = $(REMOTE) $(RUN.JAVAP) javax.xml.transform.TransformerFactory
-# If not found then fail fast.
-check_j2se_version:
- $(QUIETLY) if ! $(XSLT_CHECK) > /dev/null 2>&1; then \
- $(REMOTE) $(RUN.JAVA) -version; \
- echo "*** An XSLT processor (J2SE 1.4.x or newer) is required" \
- "to bootstrap this build" 1>&2; \
- exit 1; \
- fi
-
-$(SUBDIRS_TIERED): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=tiered
-
-$(SUBDIRS_C2): $(BUILDTREE_MAKE)
-ifeq ($(FORCE_TIERED),1)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=tiered FORCE_TIERED=1
-else
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=compiler2
-endif
-
-$(SUBDIRS_C1): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=compiler1
-
-$(SUBDIRS_CORE): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=core
-
-$(SUBDIRS_ZERO): $(BUILDTREE_MAKE) platform_zero
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=zero VARIANTARCH=$(VARIANTARCH)
-
-$(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH)
-
-$(SUBDIRS_MINIMAL1): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=minimal1
-
-
-platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in
- $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@
-
-# Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME
-
-$(TARGETS_C2): $(SUBDIRS_C2)
- cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_TIERED): $(SUBDIRS_TIERED)
- cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_C1): $(SUBDIRS_C1)
- cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_CORE): $(SUBDIRS_CORE)
- cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_ZERO): $(SUBDIRS_ZERO)
- cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_SHARK): $(SUBDIRS_SHARK)
- cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_MINIMAL1): $(SUBDIRS_MINIMAL1)
- cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-# Just build the tree, and nothing else:
-tree: $(SUBDIRS_C2)
-tree1: $(SUBDIRS_C1)
-treecore: $(SUBDIRS_CORE)
-treezero: $(SUBDIRS_ZERO)
-treeshark: $(SUBDIRS_SHARK)
-treeminimal1: $(SUBDIRS_MINIMAL1)
-
-# Doc target. This is the same for all build options.
-# Hence create a docs directory beside ...$(ARCH)_[...]
-# We specify 'BUILD_FLAVOR=product' so that the proper
-# ENABLE_FULL_DEBUG_SYMBOLS value is used.
-docs: checks
- $(QUIETLY) mkdir -p $(SUBDIR_DOCS)
- $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) BUILD_FLAVOR=product jvmtidocs
-
-# Synonyms for win32-like targets.
-compiler2: debug product
-
-compiler1: debug1 product1
-
-core: debugcore productcore
-
-zero: debugzero productzero
-
-shark: debugshark productshark
-
-clean_docs:
- rm -rf $(SUBDIR_DOCS)
-
-clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark clean_minimal1:
- rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@)
-
-clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_minimal1 clean_docs
-
-include $(GAMMADIR)/make/cscope.make
-
-#-------------------------------------------------------------------------------
-
-.PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) $(TARGETS_MINIMAL1)
-.PHONY: tree tree1 treecore treezero treeshark
-.PHONY: all compiler1 compiler2 core zero shark
-.PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs
-.PHONY: checks check_os_version check_j2se_version
-
-.NOTPARALLEL:
--- a/hotspot/make/aix/adlc_updater Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-#! /bin/sh
-#
-# This file is used by adlc.make to selectively update generated
-# adlc files. Because source and target diretories are relative
-# paths, this file is copied to the target build directory before
-# use.
-#
-# adlc-updater <file> <source-dir> <target-dir>
-#
-fix_lines() {
- # repair bare #line directives in $1 to refer to $2
- # and add an override of __FILE__ with just the basename on the
- # first line of the file.
- awk < $1 > $1+ -v F2=$2 '
- BEGIN { print "#line 1 \"" F2 "\""; }
- /^#line 999999$/ {print "#line " (NR+1) " \"" F2 "\""; next}
- {print}
- '
- mv $1+ $1
-}
-fix_lines $2/$1 $1
-[ -f $3/$1 ] && cmp -s $2/$1 $3/$1 || \
-( [ -f $3/$1 ] && echo Updating $3/$1 ; touch $2/made-change ; mv $2/$1 $3/$1 )
--- a/hotspot/make/aix/makefiles/adjust-mflags.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-#! /bin/sh
-#
-# Copyright (c) 1999, 2014, 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.
-#
-# 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.
-#
-#
-
-# This script is used only from top.make.
-# The macro $(MFLAGS-adjusted) calls this script to
-# adjust the "-j" arguments to take into account
-# the HOTSPOT_BUILD_JOBS variable. The default
-# handling of the "-j" argument by gnumake does
-# not meet our needs, so we must adjust it ourselves.
-
-# This argument adjustment applies to two recursive
-# calls to "$(MAKE) $(MFLAGS-adjusted)" in top.make.
-# One invokes adlc.make, and the other invokes vm.make.
-# The adjustment propagates the desired concurrency
-# level down to the sub-make (of the adlc or vm).
-# The default behavior of gnumake is to run all
-# sub-makes without concurrency ("-j1").
-
-# Also, we use a make variable rather than an explicit
-# "-j<N>" argument to control this setting, so that
-# the concurrency setting (which must be tuned separately
-# for each MP system) can be set via an environment variable.
-# The recommended setting is 1.5x to 2x the number of available
-# CPUs on the MP system, which is large enough to keep the CPUs
-# busy (even though some jobs may be I/O bound) but not too large,
-# we may presume, to overflow the system's swap space.
-
-set -eu
-
-default_build_jobs=4
-
-case $# in
-[12]) true;;
-*) >&2 echo "Usage: $0 ${MFLAGS} ${HOTSPOT_BUILD_JOBS}"; exit 2;;
-esac
-
-MFLAGS=$1
-HOTSPOT_BUILD_JOBS=${2-}
-
-# Normalize any -jN argument to the form " -j${HBJ}"
-MFLAGS=`
- echo "$MFLAGS" \
- | sed '
- s/^-/ -/
- s/ -\([^ I][^ I]*\)j/ -\1 -j/
- s/ -j[0-9][0-9]*/ -j/
- s/ -j\([^ ]\)/ -j -\1/
- s/ -j/ -j'${HOTSPOT_BUILD_JOBS:-${default_build_jobs}}'/
- ' `
-
-case ${HOTSPOT_BUILD_JOBS} in \
-
-'') case ${MFLAGS} in
- *\ -j*)
- >&2 echo "# Note: -jN is ineffective for setting parallelism in this makefile."
- >&2 echo "# please set HOTSPOT_BUILD_JOBS=${default_build_jobs} in the command line or environment."
- esac;;
-
-?*) case ${MFLAGS} in
- *\ -j*) true;;
- *) MFLAGS="-j${HOTSPOT_BUILD_JOBS} ${MFLAGS}";;
- esac;;
-esac
-
-echo "${MFLAGS}"
--- a/hotspot/make/aix/makefiles/adlc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,225 +0,0 @@
-#
-# Copyright (c) 1999, 2015, 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.
-#
-# 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.
-#
-#
-
-# This makefile (adlc.make) is included from the adlc.make in the
-# build directories.
-# It knows how to compile, link, and run the adlc.
-
-include $(GAMMADIR)/make/$(Platform_os_family)/makefiles/rules.make
-
-# #########################################################################
-
-# OUTDIR must be the same as AD_Dir = $(GENERATED)/adfiles in top.make:
-GENERATED = ../generated
-OUTDIR = $(GENERATED)/adfiles
-
-ARCH = $(Platform_arch)
-OS = $(Platform_os_family)
-
-SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
-
-ifeq ("${Platform_arch_model}", "${Platform_arch}")
- SOURCES.AD = \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad)
-else
- SOURCES.AD = \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch).ad)
-endif
-
-EXEC = $(OUTDIR)/adlc
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(GAMMADIR)/src/share/vm/adlc
-VPATH += $(Src_Dirs_V:%=%:)
-
-# set INCLUDES for C preprocessor
-Src_Dirs_I += $(GAMMADIR)/src/share/vm/adlc $(GENERATED)
-INCLUDES += $(Src_Dirs_I:%=-I%)
-
-# set flags for adlc compilation
-CXXFLAGS = $(SYSDEFS) $(INCLUDES)
-
-# Force assertions on.
-CXXFLAGS += -DASSERT
-
-# CFLAGS_WARN holds compiler options to suppress/enable warnings.
-# Suppress warnings (for now)
-CFLAGS_WARN = -w
-CFLAGS += $(CFLAGS_WARN)
-
-OBJECTNAMES = \
- adlparse.o \
- archDesc.o \
- arena.o \
- dfa.o \
- dict2.o \
- filebuff.o \
- forms.o \
- formsopt.o \
- formssel.o \
- main.o \
- adlc-opcodes.o \
- output_c.o \
- output_h.o \
-
-OBJECTS = $(OBJECTNAMES:%=$(OUTDIR)/%)
-
-GENERATEDNAMES = \
- ad_$(Platform_arch_model).cpp \
- ad_$(Platform_arch_model).hpp \
- ad_$(Platform_arch_model)_clone.cpp \
- ad_$(Platform_arch_model)_expand.cpp \
- ad_$(Platform_arch_model)_format.cpp \
- ad_$(Platform_arch_model)_gen.cpp \
- ad_$(Platform_arch_model)_misc.cpp \
- ad_$(Platform_arch_model)_peephole.cpp \
- ad_$(Platform_arch_model)_pipeline.cpp \
- adGlobals_$(Platform_arch_model).hpp \
- dfa_$(Platform_arch_model).cpp \
-
-GENERATEDFILES = $(GENERATEDNAMES:%=$(OUTDIR)/%)
-
-# #########################################################################
-
-all: $(EXEC)
-
-$(EXEC) : $(OBJECTS)
- @echo $(LOG_INFO) Making adlc
- $(QUIETLY) $(HOST.LINK_NOPROF.CXX) -o $(EXEC) $(OBJECTS)
-
-# Random dependencies:
-$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
-
-# The source files refer to ostream.h, which sparcworks calls iostream.h
-$(OBJECTS): ostream.h
-
-ostream.h :
- @echo >$@ '#include <iostream.h>'
-
-dump:
- : OUTDIR=$(OUTDIR)
- : OBJECTS=$(OBJECTS)
- : products = $(GENERATEDFILES)
-
-all: $(GENERATEDFILES)
-
-$(GENERATEDFILES): refresh_adfiles
-
-# Get a unique temporary directory name, so multiple makes can run in parallel.
-# Note that product files are updated via "mv", which is atomic.
-TEMPDIR := $(OUTDIR)/mktmp$(shell echo $$$$)
-
-# Debuggable by default
-CFLAGS += -g
-
-# Pass -D flags into ADLC.
-ADLCFLAGS += $(SYSDEFS)
-
-# Note "+="; it is a hook so flags.make can add more flags, like -g or -DFOO.
-ADLCFLAGS += -q -T
-
-ADLCFLAGS += -g
-
-ifdef LP64
-ADLCFLAGS += -D_LP64
-else
-ADLCFLAGS += -U_LP64
-endif
-
-#
-# adlc_updater is a simple sh script, under sccs control. It is
-# used to selectively update generated adlc files. This should
-# provide a nice compilation speed improvement.
-#
-ADLC_UPDATER_DIRECTORY = $(GAMMADIR)/make/$(OS)
-ADLC_UPDATER = adlc_updater
-$(ADLC_UPDATER): $(ADLC_UPDATER_DIRECTORY)/$(ADLC_UPDATER)
- $(QUIETLY) cp $< $@; chmod +x $@
-
-# This action refreshes all generated adlc files simultaneously.
-# The way it works is this:
-# 1) create a scratch directory to work in.
-# 2) if the current working directory does not have $(ADLC_UPDATER), copy it.
-# 3) run the compiled adlc executable. This will create new adlc files in the scratch directory.
-# 4) call $(ADLC_UPDATER) on each generated adlc file. It will selectively update changed or missing files.
-# 5) If we actually updated any files, echo a notice.
-#
-refresh_adfiles: $(EXEC) $(SOURCE.AD) $(ADLC_UPDATER)
- @rm -rf $(TEMPDIR); mkdir $(TEMPDIR)
- $(QUIETLY) $(EXEC) $(ADLCFLAGS) $(SOURCE.AD) \
- -c$(TEMPDIR)/ad_$(Platform_arch_model).cpp -h$(TEMPDIR)/ad_$(Platform_arch_model).hpp -a$(TEMPDIR)/dfa_$(Platform_arch_model).cpp -v$(TEMPDIR)/adGlobals_$(Platform_arch_model).hpp \
- || { rm -rf $(TEMPDIR); exit 1; }
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model).cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model).hpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_clone.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_expand.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_format.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_gen.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_misc.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_peephole.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_pipeline.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) adGlobals_$(Platform_arch_model).hpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) dfa_$(Platform_arch_model).cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) [ -f $(TEMPDIR)/made-change ] \
- || echo $(LOG_INFO) "Rescanned $(SOURCE.AD) but encountered no changes."
- $(QUIETLY) rm -rf $(TEMPDIR)
-
-
-# #########################################################################
-
-$(SOURCE.AD): $(SOURCES.AD)
- $(QUIETLY) $(PROCESS_AD_FILES) $(SOURCES.AD) > $(SOURCE.AD)
-
-#PROCESS_AD_FILES = cat
-# Pass through #line directives, in case user enables -g option above:
-PROCESS_AD_FILES = awk '{ \
- if (CUR_FN != FILENAME) { CUR_FN=FILENAME; NR_BASE=NR-1; need_lineno=1 } \
- if (need_lineno && $$0 !~ /\/\//) \
- { print "\n\n\#line " (NR-NR_BASE) " \"" FILENAME "\""; need_lineno=0 }; \
- print }'
-
-$(OUTDIR)/%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
-
-# Some object files are given a prefix, to disambiguate
-# them from objects of the same name built for the VM.
-$(OUTDIR)/adlc-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
-
-# #########################################################################
-
-clean:
- rm $(OBJECTS)
-
-cleanall:
- rm $(OBJECTS) $(EXEC)
-
-# #########################################################################
-
-.PHONY: all dump refresh_adfiles clean cleanall
--- a/hotspot/make/aix/makefiles/build_vm_def.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-#!/bin/sh
-
-# If we're cross compiling use that path for nm
-if [ "$CROSS_COMPILE_ARCH" != "" ]; then
-NM=$ALT_COMPILER_PATH/nm
-else
-# On AIX we have to prevent that we pick up the 'nm' version from the GNU binutils
-# which may be installed under /opt/freeware/bin. So better use an absolute path here!
-NM=/usr/bin/nm
-fi
-
-$NM -X64 -B -C $* \
- | awk '{
- if (($2="d" || $2="D") && ($3 ~ /^__vft/ || $3 ~ /^gHotSpotVM/)) print "\t" $3 ";"
- if ($3 ~ /^UseSharedSpaces$/) print "\t" $3 ";"
- if ($3 ~ /^SharedArchivePath__9Arguments$/) print "\t" $3 ";"
- }' \
- | sort -u
--- a/hotspot/make/aix/makefiles/buildtree.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,351 +0,0 @@
-#
-# Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# Usage:
-#
-# $(MAKE) -f buildtree.make SRCARCH=srcarch BUILDARCH=buildarch LIBARCH=libarch
-# GAMMADIR=dir OS_FAMILY=os VARIANT=variant
-#
-# The macros ARCH, GAMMADIR, OS_FAMILY and VARIANT must be defined in the
-# environment or on the command-line:
-#
-# ARCH - sparc, i486, ... HotSpot cpu and os_cpu source directory
-# BUILDARCH - build directory
-# LIBARCH - the corresponding directory in JDK/JRE
-# GAMMADIR - top of workspace
-# OS_FAMILY - operating system
-# VARIANT - core, compiler1, compiler2, or tiered
-# VERSION_STRING - the JDK version string as specified by JEP-223
-# HOTSPOT_VERSION_STRING - the same as VERSION_STRING, unless overridden by a standalone build
-#
-# Builds the directory trees with makefiles plus some convenience files in
-# each directory:
-#
-# Makefile - for "make foo"
-# flags.make - with macro settings
-# vm.make - to support making "$(MAKE) -v vm.make" in makefiles
-# adlc.make -
-# trace.make - generate tracing event and type definitions
-# jvmti.make - generate JVMTI bindings from the spec (JSR-163)
-#
-# The makefiles are split this way so that "make foo" will run faster by not
-# having to read the dependency files for the vm.
-
--include $(SPEC)
-include $(GAMMADIR)/make/scm.make
-include $(GAMMADIR)/make/defs.make
-include $(GAMMADIR)/make/altsrc.make
-
-
-# 'gmake MAKE_VERBOSE=y' or 'gmake QUIETLY=' gives all the gory details.
-QUIETLY$(MAKE_VERBOSE) = @
-
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- PLATFORM_FILE = $(shell dirname $(shell dirname $(shell pwd)))/platform_zero
-else
- ifdef USE_SUNCC
- PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH).suncc
- else
- PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH)
- endif
-endif
-
-# Allow overriding of the arch part of the directory but default
-# to BUILDARCH if nothing is specified
-ifeq ($(VARIANTARCH),)
- VARIANTARCH=$(BUILDARCH)
-endif
-
-ifdef FORCE_TIERED
-ifeq ($(VARIANT),tiered)
-PLATFORM_DIR = $(OS_FAMILY)_$(VARIANTARCH)_compiler2
-else
-PLATFORM_DIR = $(OS_FAMILY)_$(VARIANTARCH)_$(VARIANT)
-endif
-else
-PLATFORM_DIR = $(OS_FAMILY)_$(VARIANTARCH)_$(VARIANT)
-endif
-
-#
-# We do two levels of exclusion in the shared directory.
-# TOPLEVEL excludes are pruned, they are not recursively searched,
-# but lower level directories can be named without fear of collision.
-# ALWAYS excludes are excluded at any level in the directory tree.
-#
-
-ALWAYS_EXCLUDE_DIRS = $(SCM_DIRS)
-
-ifeq ($(VARIANT),tiered)
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name agent
-else
-ifeq ($(VARIANT),compiler2)
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name c1 -o -name agent
-else
-# compiler1 and core use the same exclude list
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name opto -o -name libadt -o -name agent
-endif
-endif
-
-# Get things from the platform file.
-COMPILER = $(shell sed -n 's/^compiler[ ]*=[ ]*//p' $(PLATFORM_FILE))
-
-SIMPLE_DIRS = \
- $(PLATFORM_DIR)/generated/dependencies \
- $(PLATFORM_DIR)/generated/adfiles \
- $(PLATFORM_DIR)/generated/jvmtifiles \
- $(PLATFORM_DIR)/generated/tracefiles
-
-TARGETS = debug fastdebug optimized product
-SUBMAKE_DIRS = $(addprefix $(PLATFORM_DIR)/,$(TARGETS))
-
-# For dependencies and recursive makes.
-BUILDTREE_MAKE = $(GAMMADIR)/make/$(OS_FAMILY)/makefiles/buildtree.make
-
-BUILDTREE_TARGETS = Makefile flags.make flags_vm.make vm.make adlc.make jvmti.make trace.make
-
-BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OS_FAMILY) \
- SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) VARIANT=$(VARIANT)
-
-# Define variables to be set in flags.make.
-# Default values are set in make/defs.make.
-
-# Set BUILD_USER from system-dependent hints: $LOGNAME, $(whoami)
-ifndef HOTSPOT_BUILD_USER
- HOTSPOT_BUILD_USER := $(shell echo $$LOGNAME)
-endif
-ifndef HOTSPOT_BUILD_USER
- HOTSPOT_BUILD_USER := $(shell whoami)
-endif
-# Define HOTSPOT_VM_DISTRO based on settings in make/openjdk_distro
-# or make/hotspot_distro.
-ifndef HOTSPOT_VM_DISTRO
- ifeq ($(call if-has-altsrc,$(HS_COMMON_SRC)/,true,false),true)
- include $(GAMMADIR)/make/hotspot_distro
- else
- include $(GAMMADIR)/make/openjdk_distro
- endif
-endif
-
-# if hotspot-only build and/or OPENJDK isn't passed down, need to set OPENJDK
-ifndef OPENJDK
- ifneq ($(call if-has-altsrc,$(HS_COMMON_SRC)/,true,false),true)
- OPENJDK=true
- endif
-endif
-
-BUILDTREE_VARS += HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) VERSION_STRING=$(VERSION_STRING)
-
-BUILDTREE = \
- $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_TARGETS) $(BUILDTREE_VARS)
-
-BUILDTREE_COMMENT = echo "\# Generated by $(BUILDTREE_MAKE)"
-
-all: $(SUBMAKE_DIRS)
-
-# Run make in each subdirectory recursively.
-$(SUBMAKE_DIRS): $(SIMPLE_DIRS) FORCE
- $(QUIETLY) [ -d $@ ] || { mkdir -p $@; }
- +$(QUIETLY) cd $@ && $(BUILDTREE) TARGET=$(@F)
- $(QUIETLY) touch $@
-
-$(SIMPLE_DIRS):
- $(QUIETLY) mkdir -p $@
-
-# Convenience macro which takes a source relative path, applies $(1) to the
-# absolute path, and then replaces $(GAMMADIR) in the result with a
-# literal "$(GAMMADIR)/" suitable for inclusion in a Makefile.
-gamma-path=$(subst $(GAMMADIR),\$$(GAMMADIR),$(call $(1),$(HS_COMMON_SRC)/$(2)))
-
-# This bit is needed to enable local rebuilds.
-# Unless the makefile itself sets LP64, any environmental
-# setting of LP64 will interfere with the build.
-LP64_SETTING/32 = LP64 = \#empty
-LP64_SETTING/64 = LP64 = 1
-
-DATA_MODE/ppc64 = 64
-
-DATA_MODE = $(DATA_MODE/$(BUILDARCH))
-
-flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo "Platform_file = $(PLATFORM_FILE)" | sed 's|$(GAMMADIR)|$$(GAMMADIR)|'; \
- sed -n '/=/s/^ */Platform_/p' < $(PLATFORM_FILE); \
- echo; \
- echo "GAMMADIR = $(GAMMADIR)"; \
- echo "HS_ALT_MAKE = $(HS_ALT_MAKE)"; \
- echo "OSNAME = $(OSNAME)"; \
- echo "SYSDEFS = \$$(Platform_sysdefs)"; \
- echo "SRCARCH = $(SRCARCH)"; \
- echo "BUILDARCH = $(BUILDARCH)"; \
- echo "LIBARCH = $(LIBARCH)"; \
- echo "TARGET = $(TARGET)"; \
- echo "HOTSPOT_VERSION_STRING = $(HOTSPOT_VERSION_STRING)"; \
- echo "VERSION_STRING = $(VERSION_STRING)"; \
- echo "HOTSPOT_BUILD_USER = $(HOTSPOT_BUILD_USER)"; \
- echo "HOTSPOT_VM_DISTRO = $(HOTSPOT_VM_DISTRO)"; \
- echo "OPENJDK = $(OPENJDK)"; \
- echo "$(LP64_SETTING/$(DATA_MODE))"; \
- echo; \
- echo "# Used for platform dispatching"; \
- echo "TARGET_DEFINES = -DTARGET_OS_FAMILY_\$$(Platform_os_family)"; \
- echo "TARGET_DEFINES += -DTARGET_ARCH_\$$(Platform_arch)"; \
- echo "TARGET_DEFINES += -DTARGET_ARCH_MODEL_\$$(Platform_arch_model)"; \
- echo "TARGET_DEFINES += -DTARGET_OS_ARCH_\$$(Platform_os_arch)"; \
- echo "TARGET_DEFINES += -DTARGET_OS_ARCH_MODEL_\$$(Platform_os_arch_model)"; \
- echo "TARGET_DEFINES += -DTARGET_COMPILER_\$$(Platform_compiler)"; \
- echo "CFLAGS += \$$(TARGET_DEFINES)"; \
- echo; \
- echo "Src_Dirs_V = \\"; \
- sed 's/$$/ \\/;s|$(GAMMADIR)|$$(GAMMADIR)|' ../shared_dirs.lst; \
- echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/posix/vm)"; \
- echo; \
- echo "Src_Dirs_I = \\"; \
- echo "$(call gamma-path,altsrc,share/vm/prims) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
- echo "$(call gamma-path,altsrc,share/vm) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm) \\"; \
- echo "$(call gamma-path,altsrc,share/vm/precompiled) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm/precompiled) \\"; \
- echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/posix/vm)"; \
- [ -n "$(CFLAGS_BROWSE)" ] && \
- echo && echo "CFLAGS_BROWSE = $(CFLAGS_BROWSE)"; \
- [ -n "$(ENABLE_FULL_DEBUG_SYMBOLS)" ] && \
- echo && echo "ENABLE_FULL_DEBUG_SYMBOLS = $(ENABLE_FULL_DEBUG_SYMBOLS)"; \
- [ -n "$(OBJCOPY)" ] && \
- echo && echo "OBJCOPY = $(OBJCOPY)"; \
- [ -n "$(STRIP_POLICY)" ] && \
- echo && echo "STRIP_POLICY = $(STRIP_POLICY)"; \
- [ -n "$(ZIP_DEBUGINFO_FILES)" ] && \
- echo && echo "ZIP_DEBUGINFO_FILES = $(ZIP_DEBUGINFO_FILES)"; \
- [ -n "$(ZIPEXE)" ] && \
- echo && echo "ZIPEXE = $(ZIPEXE)"; \
- [ -n "$(HOTSPOT_EXTRA_SYSDEFS)" ] && \
- echo && \
- echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
- echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
- [ -n "$(INCLUDE_TRACE)" ] && \
- echo && echo "INCLUDE_TRACE = $(INCLUDE_TRACE)"; \
- echo; \
- [ -n "$(SPEC)" ] && \
- echo "include $(SPEC)"; \
- echo "CP ?= cp"; \
- echo "MV ?= mv"; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
- echo "include \$$(GAMMADIR)/make/excludeSrc.make"; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
- ) > $@
-
-flags_vm.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(TARGET).make"; \
- ) > $@
-
-../shared_dirs.lst: $(BUILDTREE_MAKE) $(GAMMADIR)/src/share/vm
- @echo $(LOG_INFO) Creating directory list $@
- $(QUIETLY) if [ -d $(HS_ALT_SRC)/share/vm ]; then \
- find $(HS_ALT_SRC)/share/vm/* -prune \
- -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
- \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; > $@; \
- fi;
- $(QUIETLY) find $(HS_COMMON_SRC)/share/vm/* -prune \
- -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
- \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; >> $@
-
-Makefile: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/top.make"; \
- ) > $@
-
-vm.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo include flags_vm.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-adlc.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-jvmti.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-trace.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-FORCE:
-
-.PHONY: all FORCE
-
-.NOTPARALLEL:
--- a/hotspot/make/aix/makefiles/compiler2.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-#
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making server version of VM
-
-TYPE=COMPILER2
-
-VM_SUBDIR = server
-
-CFLAGS += -DCOMPILER2
--- a/hotspot/make/aix/makefiles/core.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making core version of VM
-
-# Select which files to use (in top.make)
-TYPE=CORE
-
-# There is no "core" directory in JDK. Install core build in server directory.
-VM_SUBDIR = server
-
-# Note: macros.hpp defines CORE
--- a/hotspot/make/aix/makefiles/debug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-#
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making debug version of VM
-
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-DEBUG_CFLAGS/DEFAULT= $(DEBUG_CFLAGS)
-DEBUG_CFLAGS/BYFILE = $(DEBUG_CFLAGS/$@)$(DEBUG_CFLAGS/DEFAULT$(DEBUG_CFLAGS/$@))
-CFLAGS += $(DEBUG_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/aix/makefiles/mapfile-vers-debug
-
-VERSION = debug
-SYSDEFS += -DASSERT -DDEBUG
-PICFLAGS = DEFAULT
--- a/hotspot/make/aix/makefiles/defs.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,204 +0,0 @@
-#
-# Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# The common definitions for hotspot AIX builds.
-# Include the top level defs.make under make directory instead of this one.
-# This file is included into make/defs.make.
-
-SLASH_JAVA ?= /java
-
-define print_info
- ifneq ($$(LOG_LEVEL), warn)
- $$(shell echo >&2 "INFO: $1")
- endif
-endef
-
-# Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name
-#ARCH:=$(shell uname -m)
-PATH_SEP = :
-ifeq ($(LP64), 1)
- ARCH_DATA_MODEL ?= 64
-else
- ARCH_DATA_MODEL ?= 32
-endif
-
-ifeq ($(ARCH_DATA_MODEL), 64)
- ARCH = ppc64
-else
- ARCH = ppc
-endif
-
-# PPC
-ifeq ($(ARCH), ppc)
- #ARCH_DATA_MODEL = 32
- PLATFORM = aix-ppc
- VM_PLATFORM = aix_ppc
- HS_ARCH = ppc
-endif
-
-# PPC64
-ifeq ($(ARCH), ppc64)
- #ARCH_DATA_MODEL = 64
- MAKE_ARGS += LP64=1
- PLATFORM = aix-ppc64
- VM_PLATFORM = aix_ppc64
- HS_ARCH = ppc
-endif
-
-# On 32 bit aix we build server and client, on 64 bit just server.
-ifeq ($(JVM_VARIANTS),)
- ifeq ($(ARCH_DATA_MODEL), 32)
- JVM_VARIANTS:=client,server
- JVM_VARIANT_CLIENT:=true
- JVM_VARIANT_SERVER:=true
- else
- JVM_VARIANTS:=server
- JVM_VARIANT_SERVER:=true
- endif
-endif
-
-# The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product
-# builds is enabled with debug info files ZIP'ed to save space. For
-# BUILD_FLAVOR != product builds, FDS is always enabled, after all a
-# debug build without debug info isn't very useful.
-# The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled.
-#
-# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
-# disabled for a BUILD_FLAVOR == product build.
-#
-# Note: Use of a different variable name for the FDS override option
-# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
-# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
-# in options via environment variables, use of distinct variables
-# prevents strange behaviours. For example, in a BUILD_FLAVOR !=
-# product build, the FULL_DEBUG_SYMBOLS environment variable will be
-# 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If
-# the same variable name is used, then different values can be picked
-# up by different parts of the build. Just to be clear, we only need
-# two variable names because the incoming option value can be
-# overridden in some situations, e.g., a BUILD_FLAVOR != product
-# build.
-
-# Due to the multiple sub-make processes that occur this logic gets
-# executed multiple times. We reduce the noise by at least checking that
-# BUILD_FLAVOR has been set.
-ifneq ($(BUILD_FLAVOR),)
- ifeq ($(BUILD_FLAVOR), product)
- FULL_DEBUG_SYMBOLS ?= 1
- ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
- else
- # debug variants always get Full Debug Symbols (if available)
- ENABLE_FULL_DEBUG_SYMBOLS = 1
- endif
- $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
- # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- # Default OBJCOPY comes from GNU Binutils on Linux
- ifeq ($(CROSS_COMPILE_ARCH),)
- DEF_OBJCOPY=/usr/bin/objcopy
- else
- # Assume objcopy is part of the cross-compilation toolset
- ifneq ($(ALT_COMPILER_PATH),)
- DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy
- endif
- endif
- OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
- ifneq ($(ALT_OBJCOPY),)
- $(eval $(call print_info, "ALT_OBJCOPY=$(ALT_OBJCOPY)"))
- OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
- endif
-
- ifeq ($(OBJCOPY),)
- $(eval $(call print_info, "no objcopy cmd found so cannot create .debuginfo files. You may need to set ALT_OBJCOPY."))
- ENABLE_FULL_DEBUG_SYMBOLS=0
- $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
- else
- $(eval $(call print_info, "$(OBJCOPY) cmd found so will create .debuginfo files."))
-
- # Library stripping policies for .debuginfo configs:
- # all_strip - strips everything from the library
- # min_strip - strips most stuff from the library; leaves minimum symbols
- # no_strip - does not strip the library at all
- #
- # Oracle security policy requires "all_strip". A waiver was granted on
- # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
- #
- # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled.
- #
- STRIP_POLICY ?= min_strip
-
- $(eval $(call print_info, "STRIP_POLICY=$(STRIP_POLICY)"))
-
- ZIP_DEBUGINFO_FILES ?= 1
-
- $(eval $(call print_info, "ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)"))
- endif
- endif # ENABLE_FULL_DEBUG_SYMBOLS=1
-endif # BUILD_FLAVOR
-
-# unused JDK_INCLUDE_SUBDIR=aix
-
-# Library suffix
-LIBRARY_SUFFIX=so
-
-EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
-
-# client and server subdirectories have symbolic links to ../libjsig.so
-EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
-#ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
-# ifeq ($(ZIP_DEBUGINFO_FILES),1)
-# EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz
-# else
-# EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo
-# endif
-#endif
-EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client
-EXPORT_MINIMAL_DIR = $(EXPORT_LIB_ARCH_DIR)/minimal
-
-ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK) $(JVM_VARIANT_CORE)), true)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
-# ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
-# ifeq ($(ZIP_DEBUGINFO_FILES),1)
-# EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz
-# else
-# EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo
-# endif
-# endif
-endif
-
-ifeq ($(JVM_VARIANT_CLIENT),true)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
-# ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
-# ifeq ($(ZIP_DEBUGINFO_FILES),1)
-# EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz
-# else
-# EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo
-# endif
-# endif
-endif
--- a/hotspot/make/aix/makefiles/dtrace.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-#
-# Copyright (c) 2005, 2013, 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.
-#
-# 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.
-#
-#
-
-# Linux does not build jvm_db
-LIBJVM_DB =
-
--- a/hotspot/make/aix/makefiles/fastdebug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-#
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making debug version of VM
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-# Pare down optimization to -O2 if xlCV10.1 is in use.
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS) $(QV10_OPT_CONSERVATIVE)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-
-ifeq ($(BUILDARCH), ia64)
- # Bug in GCC, causes hang. -O1 will override the -O3 specified earlier
- OPT_CFLAGS/callGenerator.o += -O1
- OPT_CFLAGS/ciTypeFlow.o += -O1
- OPT_CFLAGS/compile.o += -O1
- OPT_CFLAGS/concurrentMarkSweepGeneration.o += -O1
- OPT_CFLAGS/doCall.o += -O1
- OPT_CFLAGS/generateOopMap.o += -O1
- OPT_CFLAGS/generateOptoStub.o += -O1
- OPT_CFLAGS/graphKit.o += -O1
- OPT_CFLAGS/instanceKlass.o += -O1
- OPT_CFLAGS/interpreterRT_ia64.o += -O1
- OPT_CFLAGS/output.o += -O1
- OPT_CFLAGS/parse1.o += -O1
- OPT_CFLAGS/runtime.o += -O1
- OPT_CFLAGS/synchronizer.o += -O1
-endif
-
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/aix/makefiles/mapfile-vers-debug
-
-# xlc 10.1 parameters for ipa linkage.
-# - remove ipa linkage altogether. Does not seem to benefit performance,
-# but increases code footprint.
-# - this is a debug build in the end. Extra effort for ipa linkage is thus
-# not justified.
-LFLAGS_QIPA=
-
-VERSION = optimized
-SYSDEFS += -DASSERT
-PICFLAGS = DEFAULT
--- a/hotspot/make/aix/makefiles/jsig.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-#
-# Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# Rules to build signal interposition library, used by vm.make
-
-# libjsig.so: signal interposition library
-JSIG = jsig
-LIBJSIG = lib$(JSIG).so
-
-LIBJSIG_DEBUGINFO = lib$(JSIG).debuginfo
-LIBJSIG_DIZ = lib$(JSIG).diz
-
-JSIGSRCDIR = $(GAMMADIR)/src/os/$(Platform_os_family)/vm
-
-DEST_JSIG = $(JDK_LIBDIR)/$(LIBJSIG)
-DEST_JSIG_DEBUGINFO = $(JDK_LIBDIR)/$(LIBJSIG_DEBUGINFO)
-DEST_JSIG_DIZ = $(JDK_LIBDIR)/$(LIBJSIG_DIZ)
-
-LIBJSIG_MAPFILE = $(MAKEFILES_DIR)/mapfile-vers-jsig
-
-# On Linux we really dont want a mapfile, as this library is small
-# and preloaded using LD_PRELOAD, making functions private will
-# cause problems with interposing. See CR: 6466665
-# LFLAGS_JSIG += $(MAPFLAG:FILENAME=$(LIBJSIG_MAPFILE))
-
-LFLAGS_JSIG += -D_GNU_SOURCE -D_REENTRANT $(LDFLAGS_HASH_STYLE)
-
-LFLAGS_JSIG += $(BIN_UTILS)
-
-# DEBUG_BINARIES overrides everything, use full -g debug information
-ifeq ($(DEBUG_BINARIES), true)
- JSIG_DEBUG_CFLAGS = -g
-endif
-
-$(LIBJSIG): $(JSIGSRCDIR)/jsig.c $(LIBJSIG_MAPFILE)
- @echo $(LOG_INFO) Making signal interposition lib...
- $(QUIETLY) $(CXX) $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
- $(LFLAGS_JSIG) $(JSIG_DEBUG_CFLAGS) -o $@ $< -ldl
-
-#ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
-# $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO)
-# $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@
-# ifeq ($(STRIP_POLICY),all_strip)
-# $(QUIETLY) $(STRIP) $@
-# else
-# ifeq ($(STRIP_POLICY),min_strip)
-# $(QUIETLY) $(STRIP) -g $@
-# # implied else here is no stripping at all
-# endif
-# endif
-# ifeq ($(ZIP_DEBUGINFO_FILES),1)
-# $(ZIPEXE) -q -y $(LIBJSIG_DIZ) $(LIBJSIG_DEBUGINFO)
-# $(RM) $(LIBJSIG_DEBUGINFO)
-# endif
-#endif
-
-install_jsig: $(LIBJSIG)
- @echo "Copying $(LIBJSIG) to $(DEST_JSIG)"
- $(QUIETLY) test -f $(LIBJSIG_DEBUGINFO) && \
- $(CP) -f $(LIBJSIG_DEBUGINFO) $(DEST_JSIG_DEBUGINFO)
- $(QUIETLY) test -f $(LIBJSIG_DIZ) && \
- $(CP) -f $(LIBJSIG_DIZ) $(DEST_JSIG_DIZ)
- $(QUIETLY) $(CP) -f $(LIBJSIG) $(DEST_JSIG) && echo "Done"
-
-.PHONY: install_jsig
--- a/hotspot/make/aix/makefiles/jvmti.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,117 +0,0 @@
-#
-# Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# This makefile (jvmti.make) is included from the jvmti.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate jvmti.
-
-include $(GAMMADIR)/make/aix/makefiles/rules.make
-
-# #########################################################################
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-JvmtiOutDir = $(GENERATED)/jvmtifiles
-
-JvmtiSrcDir = $(GAMMADIR)/src/share/vm/prims
-InterpreterSrcDir = $(GAMMADIR)/src/share/vm/interpreter
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(JvmtiSrcDir)
-VPATH += $(Src_Dirs_V:%=%:)
-
-JvmtiGeneratedNames = \
- jvmtiEnv.hpp \
- jvmtiEnter.cpp \
- jvmtiEnterTrace.cpp \
- jvmtiEnvRecommended.cpp \
- bytecodeInterpreterWithChecks.cpp \
- jvmti.h \
-
-JvmtiEnvFillSource = $(JvmtiSrcDir)/jvmtiEnvFill.java
-JvmtiEnvFillClass = $(JvmtiOutDir)/jvmtiEnvFill.class
-
-JvmtiGenSource = $(JvmtiSrcDir)/jvmtiGen.java
-JvmtiGenClass = $(JvmtiOutDir)/jvmtiGen.class
-
-JvmtiGeneratedFiles = $(JvmtiGeneratedNames:%=$(JvmtiOutDir)/%)
-
-XSLT = $(QUIETLY) $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-.PHONY: all jvmtidocs clean cleanall
-
-# #########################################################################
-
-all: $(JvmtiGeneratedFiles)
-
-both = $(JvmtiGenClass) $(JvmtiSrcDir)/jvmti.xml $(JvmtiSrcDir)/jvmtiLib.xsl
-
-$(JvmtiGenClass): $(JvmtiGenSource)
- $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiGenSource)
-
-$(JvmtiEnvFillClass): $(JvmtiEnvFillSource)
- $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiEnvFillSource)
-
-$(JvmtiOutDir)/jvmtiEnter.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnter.cpp -PARAM interface jvmti
-
-$(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp: $(JvmtiGenClass) $(InterpreterSrcDir)/bytecodeInterpreter.cpp $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml -XSL $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl -OUT $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp
-
-$(JvmtiOutDir)/jvmtiEnterTrace.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnterTrace.cpp -PARAM interface jvmti -PARAM trace Trace
-
-$(JvmtiOutDir)/jvmtiEnvRecommended.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnv.xsl $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiEnvFillClass)
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnv.xsl -OUT $(JvmtiOutDir)/jvmtiEnvStub.cpp
- $(QUIETLY) $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiEnvFill $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiOutDir)/jvmtiEnvStub.cpp $(JvmtiOutDir)/jvmtiEnvRecommended.cpp
-
-$(JvmtiOutDir)/jvmtiEnv.hpp: $(both) $(JvmtiSrcDir)/jvmtiHpp.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiHpp.xsl -OUT $(JvmtiOutDir)/jvmtiEnv.hpp
-
-$(JvmtiOutDir)/jvmti.h: $(both) $(JvmtiSrcDir)/jvmtiH.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiH.xsl -OUT $(JvmtiOutDir)/jvmti.h
-
-jvmtidocs: $(JvmtiOutDir)/jvmti.html
-
-$(JvmtiOutDir)/jvmti.html: $(both) $(JvmtiSrcDir)/jvmti.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmti.xsl -OUT $(JvmtiOutDir)/jvmti.html
-
-# #########################################################################
-
-clean :
- rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles)
-
-cleanall :
- rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles)
-
-# #########################################################################
--- a/hotspot/make/aix/makefiles/mapfile-vers-debug Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-#
-# Copyright (c) 2002, 2015, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_handle_linux_signal;
-
- # debug JVM
- JVM_AccessVMBooleanFlag;
- JVM_AccessVMIntFlag;
- JVM_VMBreakPoint;
-
- # miscellaneous functions
- jio_fprintf;
- jio_printf;
- jio_snprintf;
- jio_vfprintf;
- jio_vsnprintf;
- numa_warn;
- numa_error;
-
- # Needed because there is no JVM interface for this.
- sysThreadAvailableStackWithSlack;
-
- # This is for Forte Analyzer profiling support.
- AsyncGetCallTrace;
-
- # INSERT VTABLE SYMBOLS HERE
-
- local:
- *;
-};
-
--- a/hotspot/make/aix/makefiles/mapfile-vers-jsig Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-#
-# Copyright (c) 2005, 2013, 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.
-#
-# 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.
-#
-#
-
-# Define library interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_begin_signal_setting;
- JVM_end_signal_setting;
- JVM_get_libjsig_version;
- JVM_get_signal_action;
- sigaction;
- signal;
- sigset;
- local:
- *;
-};
--- a/hotspot/make/aix/makefiles/mapfile-vers-product Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-#
-# Copyright (c) 2002, 2015, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_handle_linux_signal;
-
- # miscellaneous functions
- jio_fprintf;
- jio_printf;
- jio_snprintf;
- jio_vfprintf;
- jio_vsnprintf;
- numa_warn;
- numa_error;
-
- # Needed because there is no JVM interface for this.
- sysThreadAvailableStackWithSlack;
-
- # This is for Forte Analyzer profiling support.
- AsyncGetCallTrace;
-
- # INSERT VTABLE SYMBOLS HERE
-
- local:
- *;
-};
-
--- a/hotspot/make/aix/makefiles/ppc64.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,93 +0,0 @@
-#
-# Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2015 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# Produce 64 bits object files.
-CFLAGS += -q64
-
-# Balanced tuning for recent versions of the POWER architecture (if supported by xlc).
-QTUNE=$(if $(CXX_SUPPORTS_BALANCED_TUNING),balanced,pwr5)
-
-# Try to speed up the interpreter: use ppc64 instructions and inline
-# glue code for external functions.
-OPT_CFLAGS += -qarch=ppc64 -qtune=$(QTUNE) -qinlglue
-
-# We need variable length arrays
-CFLAGS += -qlanglvl=c99vla
-# Just to check for unwanted macro redefinitions
-CFLAGS += -qlanglvl=noredefmac
-
-# Suppress those "implicit private" warnings xlc gives.
-# - The omitted keyword "private" is assumed for base class "...".
-CFLAGS += -qsuppress=1540-0198
-
-# Suppress the following numerous warning:
-# - 1540-1090 (I) The destructor of "..." might not be called.
-# - 1500-010: (W) WARNING in ...: Infinite loop. Program may not stop.
-# There are several infinite loops in the vm, suppress.
-# - 1540-1639 (I) The behavior of long type bit fields has changed ...
-# ... long type bit fields now default to long, not int.
-CFLAGS += -qsuppress=1540-1090 -qsuppress=1500-010 -qsuppress=1540-1639
-
-# Suppress
-# - 540-1088 (W) The exception specification is being ignored.
-# caused by throw() in declaration of new() in nmethod.hpp.
-CFLAGS += -qsuppress=1540-1088
-
-# Turn off floating-point optimizations that may alter program semantics
-OPT_CFLAGS += -qstrict
-
-# Disable aggressive optimizations for functions in sharedRuntimeTrig.cpp
-# and sharedRuntimeTrans.cpp on ppc64.
-# -qstrict turns off the following optimizations:
-# * Performing code motion and scheduling on computations such as loads
-# and floating-point computations that may trigger an exception.
-# * Relaxing conformance to IEEE rules.
-# * Reassociating floating-point expressions.
-# When using '-qstrict' there still remains one problem
-# in javasoft.sqe.tests.api.java.lang.Math.sin5Tests when run in compile-all
-# mode, so don't optimize sharedRuntimeTrig.cpp at all.
-OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
-OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT)
-
-# Xlc 10.1 parameters for aggressive optimization:
-# - qhot=level=1: Most aggressive loop optimizations.
-# - qignerrno: Assume errno is not modified by system calls.
-# - qinline: Inline method calls. No suboptions for c++ compiles.
-# - qxflag=ASMMIDCOALFIX: Activate fix for -O3 problem in interpreter loop.
-# - qxflag=asmfastsync: Activate fix for performance problem with inline assembler with memory clobber.
-QV10_OPT=$(if $(CXX_IS_V10),-qxflag=ASMMIDCOALFIX -qxflag=asmfastsync)
-QV10_OPT_AGGRESSIVE=$(if $(CXX_IS_V10),-qhot=level=1 -qignerrno -qinline)
-QV10_OPT_CONSERVATIVE=$(if $(CXX_IS_V10),-qhot=level=1 -qignerrno -qinline)
-
-# Disallow inlining for synchronizer.cpp, but perform O3 optimizations.
-OPT_CFLAGS/synchronizer.o = $(OPT_CFLAGS) -qnoinline
-
-# Set all the xlC V10.1 options here.
-OPT_CFLAGS += $(QV10_OPT) $(QV10_OPT_AGGRESSIVE)
-
-export OBJECT_MODE=64
-
-# Also build launcher as 64 bit executable.
-LAUNCHERFLAGS += -q64
--- a/hotspot/make/aix/makefiles/product.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-#
-# Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making optimized version of Gamma VM
-# (This is the "product", not the "release" version.)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/aix/makefiles/mapfile-vers-product
-
-# Remove ipa linkage altogether. Does not seem to benfit performance, but increases code footprint.
-LFLAGS_QIPA=
-
-SYSDEFS += -DPRODUCT
-VERSION = optimized
-
-# use -g to strip library as -x will discard its symbol table; -x is fine for
-# executables.
-# Note: these macros are not used in .debuginfo configs
-STRIP_LIBJVM = $(STRIP) -g $@ || exit 1;
-STRIP_AOUT = $(STRIP) -x $@ || exit 1;
-
-# If we can create .debuginfo files, then the VM is stripped in vm.make
-# and this macro is not used.
-# LINK_LIB.CXX/POST_HOOK += $(STRIP_$(LINK_INTO))
--- a/hotspot/make/aix/makefiles/rules.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,208 +0,0 @@
-#
-# Copyright (c) 2003, 2014, 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.
-#
-# 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.
-#
-#
-
-# Common rules/macros for the vm, adlc.
-
-# Tell make that .cpp is important
-.SUFFIXES: .cpp $(SUFFIXES)
-
-DEMANGLER = c++filt
-DEMANGLE = $(DEMANGLER) < $@ > .$@ && $(MV) -f .$@ $@
-
-# $(CC) is the c compiler (cc/gcc), $(CXX) is the c++ compiler (CC/g++).
-CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS)
-CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS)
-
-AS.S = $(AS) $(ASFLAGS)
-
-COMPILE.CC = $(CC_COMPILE) -c
-GENASM.CC = $(CC_COMPILE) -S
-LINK.CC = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
-LINK_LIB.CC = $(CC) $(LFLAGS) $(SHARED_FLAG)
-PREPROCESS.CC = $(CC_COMPILE) -E
-
-COMPILE.CXX = $(CXX_COMPILE) -c
-GENASM.CXX = $(CXX_COMPILE) -S
-LINK.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
-LINK_NOPROF.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS)
-LINK_LIB.CXX = $(CXX) $(LFLAGS) $(SHARED_FLAG)
-PREPROCESS.CXX = $(CXX_COMPILE) -E
-
-# cross compiling the jvm with c2 requires host compilers to build
-# adlc tool
-
-HOST.CXX_COMPILE = $(HOSTCXX) $(CXXFLAGS) $(CFLAGS)
-HOST.COMPILE.CXX = $(HOST.CXX_COMPILE) -c
-HOST.LINK_NOPROF.CXX = $(HOSTCXX) $(LFLAGS) $(AOUT_FLAGS)
-
-
-# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
-REMOVE_TARGET = rm -f $@
-
-# Note use of ALT_BOOTDIR to explicitly specify location of java and
-# javac; this is the same environment variable used in the J2SE build
-# process for overriding the default spec, which is BOOTDIR.
-# Note also that we fall back to using JAVA_HOME if neither of these is
-# specified.
-
-ifdef ALT_BOOTDIR
-
-RUN.JAVA = $(ALT_BOOTDIR)/bin/java
-RUN.JAVAP = $(ALT_BOOTDIR)/bin/javap
-RUN.JAVAH = $(ALT_BOOTDIR)/bin/javah
-RUN.JAR = $(ALT_BOOTDIR)/bin/jar
-COMPILE.JAVAC = $(ALT_BOOTDIR)/bin/javac
-COMPILE.RMIC = $(ALT_BOOTDIR)/bin/rmic
-BOOT_JAVA_HOME = $(ALT_BOOTDIR)
-
-else
-
-ifdef BOOTDIR
-
-RUN.JAVA = $(BOOTDIR)/bin/java
-RUN.JAVAP = $(BOOTDIR)/bin/javap
-RUN.JAVAH = $(BOOTDIR)/bin/javah
-RUN.JAR = $(BOOTDIR)/bin/jar
-COMPILE.JAVAC = $(BOOTDIR)/bin/javac
-COMPILE.RMIC = $(BOOTDIR)/bin/rmic
-BOOT_JAVA_HOME = $(BOOTDIR)
-
-else
-
-ifdef JAVA_HOME
-
-RUN.JAVA = $(JAVA_HOME)/bin/java
-RUN.JAVAP = $(JAVA_HOME)/bin/javap
-RUN.JAVAH = $(JAVA_HOME)/bin/javah
-RUN.JAR = $(JAVA_HOME)/bin/jar
-COMPILE.JAVAC = $(JAVA_HOME)/bin/javac
-COMPILE.RMIC = $(JAVA_HOME)/bin/rmic
-BOOT_JAVA_HOME = $(JAVA_HOME)
-
-else
-
-# take from the PATH, if ALT_BOOTDIR, BOOTDIR and JAVA_HOME are not defined
-
-RUN.JAVA = java
-RUN.JAVAP = javap
-RUN.JAVAH = javah
-RUN.JAR = jar
-COMPILE.JAVAC = javac
-COMPILE.RMIC = rmic
-
-endif
-endif
-endif
-
-COMPILE.JAVAC += $(BOOTSTRAP_JAVAC_FLAGS)
-
-SUM = /usr/bin/sum
-
-# 'gmake MAKE_VERBOSE=y' gives all the gory details.
-QUIETLY$(MAKE_VERBOSE) = @
-RUN.JAR$(MAKE_VERBOSE) += >/dev/null
-
-# Settings for javac
-JAVAC_FLAGS = -g -encoding ascii
-
-# Prefer BOOT_JDK_SOURCETARGET if it's set (typically by the top build system)
-# Fall back to the values here if it's not set (hotspot only builds)
-ifeq ($(BOOT_JDK_SOURCETARGET),)
-BOOTSTRAP_SOURCETARGET := -source 8 -target 8
-else
-BOOTSTRAP_SOURCETARGET := $(BOOT_JDK_SOURCETARGET)
-endif
-
-BOOTSTRAP_JAVAC_FLAGS = $(JAVAC_FLAGS) $(BOOTSTRAP_SOURCETARGET)
-
-# With parallel makes, print a message at the end of compilation.
-ifeq ($(findstring j,$(MFLAGS)),j)
-COMPILE_DONE = && { echo Done with $<; }
-endif
-
-# Include $(NONPIC_OBJ_FILES) definition
-ifndef LP64
-include $(GAMMADIR)/make/pic.make
-endif
-
-include $(GAMMADIR)/make/altsrc.make
-
-# The non-PIC object files are only generated for 32 bit platforms.
-ifdef LP64
-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
-else
-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
- $(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
- $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
-endif
-
-%.o: %.s
- @echo $(LOG_INFO) Assembling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(AS.S) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
-
-%.s: %.cpp
- @echo $(LOG_INFO) Generating assembly for $<
- $(QUIETLY) $(GENASM.CXX) -o $@ $<
- $(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
-
-# Intermediate files (for debugging macros)
-%.i: %.cpp
- @echo $(LOG_INFO) Preprocessing $< to $@
- $(QUIETLY) $(PREPROCESS.CXX) $< > $@ $(COMPILE_DONE)
-
-# Override gnumake built-in rules which do sccs get operations badly.
-# (They put the checked out code in the current directory, not in the
-# directory of the original file.) Since this is a symptom of a teamware
-# failure, and since not all problems can be detected by gnumake due
-# to incomplete dependency checking... just complain and stop.
-%:: s.%
- @echo "========================================================="
- @echo File $@
- @echo is out of date with respect to its SCCS file.
- @echo This file may be from an unresolved Teamware conflict.
- @echo This is also a symptom of a Teamware bringover/putback failure
- @echo in which SCCS files are updated but not checked out.
- @echo Check for other out of date files in your workspace.
- @echo "========================================================="
- @exit 666
-
-%:: SCCS/s.%
- @echo "========================================================="
- @echo File $@
- @echo is out of date with respect to its SCCS file.
- @echo This file may be from an unresolved Teamware conflict.
- @echo This is also a symptom of a Teamware bringover/putback failure
- @echo in which SCCS files are updated but not checked out.
- @echo Check for other out of date files in your workspace.
- @echo "========================================================="
- @exit 666
-
-.PHONY: default
--- a/hotspot/make/aix/makefiles/tiered.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-#
-# Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2015 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making tiered version of VM
-
-TYPE=TIERED
-
-VM_SUBDIR = server
-
-CFLAGS += -DCOMPILER2 -DCOMPILER1
--- a/hotspot/make/aix/makefiles/top.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,147 +0,0 @@
-#
-# Copyright (c) 1999, 2014, 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.
-#
-# 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.
-#
-#
-
-# top.make is included in the Makefile in the build directories.
-# It DOES NOT include the vm dependency info in order to be faster.
-# Its main job is to implement the incremental form of make lists.
-# It also:
-# -builds and runs adlc via adlc.make
-# -generates JVMTI source and docs via jvmti.make (JSR-163)
-
-# It assumes the following flags are set:
-# CFLAGS Platform_file, Src_Dirs_I, Src_Dirs_V, SYSDEFS, AOUT, Obj_Files
-
-# -- D. Ungar (5/97) from a file by Bill Bush
-
-# Don't override the built-in $(MAKE).
-# Instead, use "gmake" (or "gnumake") from the command line. --Rose
-#MAKE = gmake
-
-include $(GAMMADIR)/make/altsrc.make
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-VM = $(GAMMADIR)/src/share/vm
-Plat_File = $(Platform_file)
-CDG = cd $(GENERATED);
-
-ifneq ($(USE_PRECOMPILED_HEADER),0)
-UpdatePCH = $(MAKE) -f vm.make $(PRECOMPILED_HEADER) $(MFLAGS)
-else
-UpdatePCH = \# precompiled header is not used
-endif
-
-Cached_plat = $(GENERATED)/platform.current
-
-AD_Dir = $(GENERATED)/adfiles
-ADLC = $(AD_Dir)/adlc
-AD_Spec = $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad)
-AD_Src = $(call altsrc-replace,$(HS_COMMON_SRC)/share/vm/adlc)
-AD_Names = ad_$(Platform_arch_model).hpp ad_$(Platform_arch_model).cpp
-AD_Files = $(AD_Names:%=$(AD_Dir)/%)
-
-# AD_Files_If_Required/COMPILER1 = ad_stuff
-AD_Files_If_Required/COMPILER2 = ad_stuff
-AD_Files_If_Required/TIERED = ad_stuff
-AD_Files_If_Required = $(AD_Files_If_Required/$(TYPE))
-
-# Wierd argument adjustment for "gnumake -j..."
-adjust-mflags = $(GENERATED)/adjust-mflags
-# If SPEC is set, it's from configure and it's already controlling concurrency
-# for us. Skip setting -j with HOTSPOT_BUILD_JOBS.
-ifeq ($(SPEC), )
- MFLAGS-adjusted = -r `$(adjust-mflags) "$(MFLAGS)" "$(HOTSPOT_BUILD_JOBS)"`
-else
- MFLAGS-adjusted = -r $(MFLAGS)
-endif
-
-
-# default target: update lists, make vm
-# done in stages to force sequential order with parallel make
-#
-
-default: vm_build_preliminaries the_vm
- @echo All done.
-
-# This is an explicit dependency for the sake of parallel makes.
-vm_build_preliminaries: checks $(Cached_plat) $(AD_Files_If_Required) trace_stuff jvmti_stuff
- @# We need a null action here, so implicit rules don't get consulted.
-
-$(Cached_plat): $(Plat_File)
- $(CDG) $(CP) $(Plat_File) $(Cached_plat)
-
-# make AD files as necessary
-ad_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f adlc.make $(MFLAGS-adjusted)
-
-# generate JVMTI files from the spec
-jvmti_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f jvmti.make $(MFLAGS-adjusted)
-
-# generate trace files
-trace_stuff: jvmti_stuff $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f trace.make $(MFLAGS-adjusted)
-
-# and the VM: must use other makefile with dependencies included
-
-# We have to go to great lengths to get control over the -jN argument
-# to the recursive invocation of vm.make. The problem is that gnumake
-# resets -jN to -j1 for recursive runs. (How helpful.)
-# Note that the user must specify the desired parallelism level via a
-# command-line or environment variable name HOTSPOT_BUILD_JOBS.
-$(adjust-mflags): $(GAMMADIR)/make/$(Platform_os_family)/makefiles/adjust-mflags.sh
- @+rm -f $@ $@+
- @+cat $< > $@+
- @+chmod +x $@+
- @+mv $@+ $@
-
-the_vm: vm_build_preliminaries $(adjust-mflags)
- +@$(UpdatePCH)
- @$(MAKE) -f vm.make $(MFLAGS-adjusted)
-
-install gamma: the_vm
- @$(MAKE) -f vm.make $@
-
-# next rules support "make foo.[ois]"
-
-%.o %.i %.s:
- +$(UpdatePCH)
- $(MAKE) -f vm.make $(MFLAGS) $@
- #$(MAKE) -f vm.make $@
-
-# this should force everything to be rebuilt
-clean:
- rm -f $(GENERATED)/*.class
- $(MAKE) -f vm.make $(MFLAGS) clean
-
-# just in case it doesn't, this should do it
-realclean:
- $(MAKE) -f vm.make $(MFLAGS) clean
- rm -fr $(GENERATED)
-
-.PHONY: default vm_build_preliminaries
-.PHONY: lists ad_stuff jvmti_stuff the_vm clean realclean
-.PHONY: checks check_os_version install
-
-.NOTPARALLEL:
--- a/hotspot/make/aix/makefiles/trace.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-#
-# Copyright (c) 2003, 2016, 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.
-#
-# 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.
-#
-#
-
-# This makefile (trace.make) is included from the trace.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate trace files.
-
-include $(GAMMADIR)/make/aix/makefiles/rules.make
-include $(GAMMADIR)/make/altsrc.make
-
-# #########################################################################
-
-HAS_ALT_SRC := false
-ifndef OPENJDK
- ifneq ($(wildcard $(HS_ALT_SRC)/share/vm/trace), )
- HAS_ALT_SRC := true
- endif
-endif
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-JvmtiOutDir = $(GENERATED)/jvmtifiles
-TraceOutDir = $(GENERATED)/tracefiles
-
-TraceAltSrcDir = $(HS_ALT_SRC)/share/vm/trace
-TraceSrcDir = $(HS_COMMON_SRC)/share/vm/trace
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(TraceSrcDir) $(TraceAltSrcDir)
-VPATH += $(Src_Dirs_V:%=%:)
-
-TraceGeneratedNames = \
- traceEventClasses.hpp \
- traceEventIds.hpp \
- traceTypes.hpp
-
-ifeq ($(HAS_ALT_SRC), true)
-TraceGeneratedNames += \
- traceRequestables.hpp \
- traceEventControl.hpp
-endif
-
-TraceGeneratedFiles = $(TraceGeneratedNames:%=$(TraceOutDir)/%)
-
-XSLT = $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-TraceXml = $(TraceSrcDir)/trace.xml
-ifeq ($(HAS_ALT_SRC), true)
- TraceXml = $(TraceAltSrcDir)/trace.xml
-endif
-
-XML_DEPS = $(TraceXml) $(TraceSrcDir)/tracetypes.xml \
- $(TraceSrcDir)/trace.dtd $(TraceSrcDir)/xinclude.mod \
- $(TraceSrcDir)/tracerelationdecls.xml $(TraceSrcDir)/traceevents.xml
-ifeq ($(HAS_ALT_SRC), true)
- XML_DEPS += $(TraceAltSrcDir)/traceeventscustom.xml \
- $(TraceAltSrcDir)/traceeventtypes.xml
-endif
-
-.PHONY: all clean cleanall
-
-# #########################################################################
-
-all: $(TraceGeneratedFiles)
-
-GENERATE_CODE= \
- $(QUIETLY) echo $(LOG_INFO) Generating $@; \
- $(XSLT) -IN $(word 1,$^) -XSL $(word 2,$^) -OUT $@
-
-$(TraceOutDir)/traceEventIds.hpp: $(TraceXml) $(TraceSrcDir)/traceEventIds.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceTypes.hpp: $(TraceXml) $(TraceSrcDir)/traceTypes.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-ifeq ($(HAS_ALT_SRC), false)
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceXml) $(TraceSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-else
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceXml) $(TraceAltSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceRequestables.hpp: $(TraceXml) $(TraceAltSrcDir)/traceRequestables.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceEventControl.hpp: $(TraceXml) $(TraceAltSrcDir)/traceEventControl.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-endif
-
-# #########################################################################
-
-clean cleanall:
- rm $(TraceGeneratedFiles)
--- a/hotspot/make/aix/makefiles/vm.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,370 +0,0 @@
-#
-# Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# Rules to build JVM and related libraries, included from vm.make in the build
-# directory.
-
-# Common build rules.
-MAKEFILES_DIR=$(GAMMADIR)/make/$(Platform_os_family)/makefiles
-include $(MAKEFILES_DIR)/rules.make
-include $(GAMMADIR)/make/altsrc.make
-
-default: build
-
-#----------------------------------------------------------------------
-# Defs
-
-GENERATED = ../generated
-DEP_DIR = $(GENERATED)/dependencies
-
-# reads the generated files defining the set of .o's and the .o .h dependencies
--include $(DEP_DIR)/*.d
-
-# read machine-specific adjustments (%%% should do this via buildtree.make?)
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- include $(MAKEFILES_DIR)/zeroshark.make
-else
- include $(MAKEFILES_DIR)/$(BUILDARCH).make
-endif
-
-# set VPATH so make knows where to look for source files
-# Src_Dirs_V is everything in src/share/vm/*, plus the right os/*/vm and cpu/*/vm
-# The adfiles directory contains ad_<arch>.[ch]pp.
-# The jvmtifiles directory contains jvmti*.[ch]pp
-Src_Dirs_V += $(GENERATED)/adfiles $(GENERATED)/jvmtifiles $(GENERATED)/tracefiles
-VPATH += $(Src_Dirs_V:%=%:)
-
-# set INCLUDES for C preprocessor.
-Src_Dirs_I += $(GENERATED)
-# The order is important for the precompiled headers to work.
-INCLUDES += $(PRECOMPILED_HEADER_DIR:%=-I%) $(Src_Dirs_I:%=-I%)
-
-# SYMFLAG is used by jsig.make
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- # always build with debug info when we can create .debuginfo files
- SYMFLAG = -g
-else
- ifeq (${VERSION}, debug)
- SYMFLAG = -g
- else
- SYMFLAG =
- endif
-endif
-
-# The following variables are defined in the generated flags.make file.
-JDK_VER_DEFS = -DVERSION_MAJOR=$(VERSION_MAJOR) \
- -DVERSION_MINOR=$(VERSION_MINOR) \
- -DVERSION_SECURITY=$(VERSION_SECURITY) \
- -DVERSION_PATCH=$(VERSION_PATCH) \
- -DVERSION_BUILD=$(VERSION_BUILD)
-VM_VER_DEFS = -DHOTSPOT_VERSION_STRING="\"$(HOTSPOT_VERSION_STRING)\"" \
- -DVERSION_STRING="\"$(VERSION_STRING)\"" \
- -DDEBUG_LEVEL="\"$(DEBUG_LEVEL)\"" \
- $(JDK_VER_DEFS)
-HS_LIB_ARCH = -DHOTSPOT_LIB_ARCH=\"$(LIBARCH)\"
-BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
-VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
-
-CXXFLAGS = \
- ${SYSDEFS} \
- ${INCLUDES} \
- ${BUILD_USER} \
- ${HS_LIB_ARCH} \
- ${VM_DISTRO}
-
-# This is VERY important! The version define must only be supplied to vm_version.o
-# If not, ccache will not re-use the cache at all, since the version string might contain
-# a time and date.
-CXXFLAGS/vm_version.o += ${VM_VER_DEFS}
-
-CXXFLAGS/BYFILE = $(CXXFLAGS/$@)
-
-# File specific flags
-CXXFLAGS += $(CXXFLAGS/BYFILE)
-
-
-# CFLAGS_WARN holds compiler options to suppress/enable warnings.
-CFLAGS += $(CFLAGS_WARN/BYFILE)
-
-# Do not use C++ exception handling
-CFLAGS += $(CFLAGS/NOEX)
-
-# Extra flags from gnumake's invocation or environment
-CFLAGS += $(EXTRA_CFLAGS)
-LFLAGS += $(EXTRA_CFLAGS)
-
-# Don't set excutable bit on stack segment
-# the same could be done by separate execstack command
-#LFLAGS += -Xlinker -z -Xlinker noexecstack
-
-LIBS += -lm -ldl -lpthread
-
-# By default, link the *.o into the library, not the executable.
-LINK_INTO$(LINK_INTO) = LIBJVM
-
-JDK_LIBDIR = $(JAVA_HOME)/lib/$(LIBARCH)
-
-#----------------------------------------------------------------------
-# jvm_db & dtrace
-include $(MAKEFILES_DIR)/dtrace.make
-
-#----------------------------------------------------------------------
-# JVM
-
-JVM = jvm
-LIBJVM = lib$(JVM).so
-
-LIBJVM_DEBUGINFO = lib$(JVM).debuginfo
-LIBJVM_DIZ = lib$(JVM).diz
-
-SPECIAL_PATHS:=adlc c1 gc opto shark libadt
-
-SOURCE_PATHS=\
- $(shell find $(HS_COMMON_SRC)/share/vm/* -type d \! \
- \( -name DUMMY $(foreach dir,$(SPECIAL_PATHS),-o -name $(dir)) \))
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os/$(Platform_os_family)/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os/posix/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(SRCARCH)/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_family)_$(SRCARCH)/vm
-
-CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
-CORE_PATHS+=$(GENERATED)/jvmtifiles $(GENERATED)/tracefiles
-
-ifneq ($(INCLUDE_TRACE), false)
-CORE_PATHS+=$(shell if [ -d $(HS_ALT_SRC)/share/vm/jfr ]; then \
- find $(HS_ALT_SRC)/share/vm/jfr -type d; \
- fi)
-endif
-
-COMPILER1_PATHS := $(call altsrc,$(HS_COMMON_SRC)/share/vm/c1)
-COMPILER1_PATHS += $(HS_COMMON_SRC)/share/vm/c1
-
-COMPILER2_PATHS := $(call altsrc,$(HS_COMMON_SRC)/share/vm/opto)
-COMPILER2_PATHS += $(call altsrc,$(HS_COMMON_SRC)/share/vm/libadt)
-COMPILER2_PATHS += $(HS_COMMON_SRC)/share/vm/opto
-COMPILER2_PATHS += $(HS_COMMON_SRC)/share/vm/libadt
-COMPILER2_PATHS += $(GENERATED)/adfiles
-
-SHARK_PATHS := $(GAMMADIR)/src/share/vm/shark
-
-# Include dirs per type.
-Src_Dirs/CORE := $(CORE_PATHS)
-Src_Dirs/COMPILER1 := $(CORE_PATHS) $(COMPILER1_PATHS)
-Src_Dirs/COMPILER2 := $(CORE_PATHS) $(COMPILER2_PATHS)
-Src_Dirs/TIERED := $(CORE_PATHS) $(COMPILER1_PATHS) $(COMPILER2_PATHS)
-Src_Dirs/ZERO := $(CORE_PATHS)
-Src_Dirs/SHARK := $(CORE_PATHS) $(SHARK_PATHS)
-Src_Dirs := $(Src_Dirs/$(TYPE))
-
-COMPILER2_SPECIFIC_FILES := opto libadt bcEscapeAnalyzer.cpp c2_\* runtime_\*
-COMPILER1_SPECIFIC_FILES := c1_\*
-SHARK_SPECIFIC_FILES := shark
-ZERO_SPECIFIC_FILES := zero
-
-# Always exclude these.
-Src_Files_EXCLUDE += jsig.c jvmtiEnvRecommended.cpp jvmtiEnvStub.cpp
-
-# Exclude per type.
-Src_Files_EXCLUDE/CORE := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/COMPILER1 := $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/COMPILER2 := $(COMPILER1_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES)
-Src_Files_EXCLUDE/TIERED := $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES)
-Src_Files_EXCLUDE/ZERO := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/SHARK := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES)
-
-Src_Files_EXCLUDE += $(Src_Files_EXCLUDE/$(TYPE))
-
-# Disable ELF decoder on AIX (AIX uses XCOFF).
-Src_Files_EXCLUDE += decoder_elf.cpp elfFile.cpp elfStringTable.cpp elfSymbolTable.cpp elfFuncDescTable.cpp
-
-# Special handling of arch model.
-ifeq ($(Platform_arch_model), x86_32)
-Src_Files_EXCLUDE += \*x86_64\*
-endif
-ifeq ($(Platform_arch_model), x86_64)
-Src_Files_EXCLUDE += \*x86_32\*
-endif
-
-# Locate all source files in the given directory, excluding files in Src_Files_EXCLUDE.
-define findsrc
- $(notdir $(shell find $(1)/. ! -name . -prune \
- -a \( -name \*.c -o -name \*.cpp -o -name \*.s \) \
- -a ! \( -name DUMMY $(addprefix -o -name ,$(Src_Files_EXCLUDE)) \)))
-endef
-
-Src_Files := $(foreach e,$(Src_Dirs),$(call findsrc,$(e)))
-
-Obj_Files = $(sort $(addsuffix .o,$(basename $(Src_Files))))
-
-JVM_OBJ_FILES = $(Obj_Files)
-
-vm_version.o: $(filter-out vm_version.o,$(JVM_OBJ_FILES))
-
-MAPFILE_SHARE := $(GAMMADIR)/make/share/makefiles/mapfile-vers
-
-mapfile : $(MAPFILE) $(MAPFILE_SHARE) vm.def
- rm -f $@
- awk '{ if ($$0 ~ "INSERT VTABLE SYMBOLS HERE") \
- { system ("cat ${MAPFILE_SHARE} vm.def"); } \
- else \
- { print $$0 } \
- }' > $@ < $(MAPFILE)
-
-mapfile_reorder : mapfile $(REORDERFILE)
- rm -f $@
- cat $^ > $@
-
-vm.def: $(Res_Files) $(Obj_Files)
- sh $(GAMMADIR)/make/aix/makefiles/build_vm_def.sh *.o > $@
-
-ifeq ($(JVM_VARIANT_ZEROSHARK), true)
- STATIC_CXX = false
-else
- ifeq ($(ZERO_LIBARCH), ppc64)
- STATIC_CXX = false
- else
- STATIC_CXX = true
- endif
-endif
-
-ifeq ($(LINK_INTO),AOUT)
- LIBJVM.o =
- LIBJVM_MAPFILE =
- LIBS_VM = $(LIBS)
-else
- LIBJVM.o = $(JVM_OBJ_FILES)
- LIBJVM_MAPFILE$(LDNOMAP) = mapfile_reorder
- LFLAGS_VM$(LDNOMAP) += $(MAPFLAG:FILENAME=$(LIBJVM_MAPFILE))
-# xlC_r ignores the -o= syntax
-# LFLAGS_VM += $(SONAMEFLAG:SONAME=$(LIBJVM))
-
- # JVM is statically linked with libgcc[_s] and libstdc++; this is needed to
- # get around library dependency and compatibility issues. Must use gcc not
- # g++ to link.
- LIBS_VM += $(STATIC_STDCXX) $(LIBS)
-endif
-
-LINK_VM = $(LINK_LIB.CXX)
-
-# create loadmap for libjvm.so by default. Helps in diagnosing some problems.
-LFLAGS_VM += -bloadmap:libjvm.loadmap
-
-# rule for building precompiled header
-$(PRECOMPILED_HEADER):
- $(QUIETLY) echo $(LOG_INFO) Generating precompiled header $@
- $(QUIETLY) mkdir -p $(PRECOMPILED_HEADER_DIR)
- $(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -x c++-header $(PRECOMPILED_HEADER_SRC) -o $@ $(COMPILE_DONE)
-
-# making the library:
-
-ifneq ($(JVM_BASE_ADDR),)
-# By default shared library is linked at base address == 0. Modify the
-# linker script if JVM prefers a different base location. It can also be
-# implemented with 'prelink -r'. But 'prelink' is not (yet) available on
-# our build platform (AS-2.1).
-LD_SCRIPT = libjvm.so.lds
-$(LD_SCRIPT): $(LIBJVM_MAPFILE)
- $(QUIETLY) { \
- rm -rf $@; \
- $(LINK_VM) -Wl,--verbose $(LFLAGS_VM) 2>&1 | \
- sed -e '/^======/,/^======/!d' \
- -e '/^======/d' \
- -e 's/0\( + SIZEOF_HEADERS\)/$(JVM_BASE_ADDR)\1/' \
- > $@; \
- }
-LD_SCRIPT_FLAG = -Wl,-T,$(LD_SCRIPT)
-endif
-
-# With more recent Redhat releases (or the cutting edge version Fedora), if
-# SELinux is configured to be enabled, the runtime linker will fail to apply
-# the text relocation to libjvm.so considering that it is built as a non-PIC
-# DSO. To workaround that, we run chcon to libjvm.so after it is built. See
-# details in bug 6538311.
-$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
- $(QUIETLY) { \
- echo $(LOG_INFO) Linking vm...; \
- $(LINK_LIB.CXX/PRE_HOOK) \
- $(LINK_VM) $(LD_SCRIPT_FLAG) \
- $(LFLAGS_VM) -o $@ $(sort $(LIBJVM.o)) $(LIBS_VM); \
- $(LINK_LIB.CXX/POST_HOOK) \
- rm -f $@.1; ln -s $@ $@.1; \
- }
-# No security contexts on AIX
-# if [ \"$(CROSS_COMPILE_ARCH)\" = \"\" ] ; then \
-# if [ -x /usr/sbin/selinuxenabled ] ; then \
-# /usr/sbin/selinuxenabled; \
-# if [ $$? = 0 ] ; then \
-# /usr/bin/chcon -t textrel_shlib_t $@; \
-# if [ $$? != 0 ]; then \
-# echo "ERROR: Cannot chcon $@"; \
-# fi \
-# fi \
-# fi \
-# fi \
-# }
-
-#ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
-# $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO)
-# $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@
-# ifeq ($(STRIP_POLICY),all_strip)
-# $(QUIETLY) $(STRIP) $@
-# else
-# ifeq ($(STRIP_POLICY),min_strip)
-# $(QUIETLY) $(STRIP) -g $@
-# # implied else here is no stripping at all
-# endif
-# endif
-# ifeq ($(ZIP_DEBUGINFO_FILES),1)
-# $(ZIPEXE) -q -y $(LIBJVM_DIZ) $(LIBJVM_DEBUGINFO)
-# $(RM) $(LIBJVM_DEBUGINFO)
-# endif
-#endif
-
-DEST_SUBDIR = $(JDK_LIBDIR)/$(VM_SUBDIR)
-DEST_JVM = $(DEST_SUBDIR)/$(LIBJVM)
-DEST_JVM_DEBUGINFO = $(DEST_SUBDIR)/$(LIBJVM_DEBUGINFO)
-DEST_JVM_DIZ = $(DEST_SUBDIR)/$(LIBJVM_DIZ)
-
-install_jvm: $(LIBJVM)
- @echo "Copying $(LIBJVM) to $(DEST_JVM)"
- $(QUIETLY) test -f $(LIBJVM_DEBUGINFO) && \
- $(CP) -f $(LIBJVM_DEBUGINFO) $(DEST_JVM_DEBUGINFO)
- $(QUIETLY) test -f $(LIBJVM_DIZ) && \
- $(CP) -f $(LIBJVM_DIZ) $(DEST_JVM_DIZ)
- $(QUIETLY) $(CP) -f $(LIBJVM) $(DEST_JVM) && echo "Done"
-
-#----------------------------------------------------------------------
-# Other files
-
-# Signal interposition library
-include $(MAKEFILES_DIR)/jsig.make
-
-#----------------------------------------------------------------------
-
-build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(LIBJVM_DB)
-
-install: install_jvm install_jsig
-
-.PHONY: default build install install_jvm
--- a/hotspot/make/aix/makefiles/xlc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,172 +0,0 @@
-#
-# Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2015 SAP SE. 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.
-#
-# 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.
-#
-#
-
-#------------------------------------------------------------------------
-# CC, CXX & AS
-
-# Set compiler explicitly
-CXX = $(COMPILER_PATH)xlC_r
-CC = $(COMPILER_PATH)xlc_r
-HOSTCXX = $(CXX)
-HOSTCC = $(CC)
-
-AS = $(CC) -c
-
-# get xlc version which comes as VV.RR.MMMM.LLLL where 'VV' is the version,
-# 'RR' is the release, 'MMMM' is the modification and 'LLLL' is the level.
-# We only use 'VV.RR.LLLL' to avoid integer overflows in bash when comparing
-# the version numbers (some shells only support 32-bit integer compares!).
-CXX_VERSION := $(shell $(CXX) -qversion 2>&1 | \
- sed -n 's/.*Version: \([0-9]\{2\}\).\([0-9]\{2\}\).[0-9]\{4\}.\([0-9]\{4\}\)/\1\2\3/p')
-
-# xlc 08.00.0000.0023 and higher supports -qtune=balanced
-CXX_SUPPORTS_BALANCED_TUNING := $(shell if [ $(CXX_VERSION) -ge 08000023 ] ; then echo "true" ; fi)
-# xlc 10.01 is used with aggressive optimizations to boost performance
-CXX_IS_V10 := $(shell if [ $(CXX_VERSION) -ge 10010000 ] ; then echo "true" ; fi)
-
-# check for precompiled headers support
-
-# Switch off the precompiled header support. Neither xlC 8.0 nor xlC 10.0
-# support precompiled headers. Both "understand" the command line switches "-qusepcomp" and
-# "-qgenpcomp" but when we specify them the following message is printed:
-# "1506-755 (W) The -qusepcomp option is not supported in this release."
-USE_PRECOMPILED_HEADER = 0
-ifneq ($(USE_PRECOMPILED_HEADER),0)
-PRECOMPILED_HEADER_DIR=.
-PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp
-PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
-endif
-
-
-#------------------------------------------------------------------------
-# Compiler flags
-
-# position-independent code
-PICFLAG = -qpic=large
-
-VM_PICFLAG/LIBJVM = $(PICFLAG)
-VM_PICFLAG/AOUT =
-VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
-
-CFLAGS += $(VM_PICFLAG)
-CFLAGS += -qnortti
-CFLAGS += -qnoeh
-
-# for compiler-level tls
-CFLAGS += -qtls=default
-
-CFLAGS += -D_REENTRANT
-# no xlc counterpart for -fcheck-new
-# CFLAGS += -fcheck-new
-
-# We need to define this on the command line if we want to use the the
-# predefined format specifiers from "inttypes.h". Otherwise system headrs
-# can indirectly include inttypes.h before we define __STDC_FORMAT_MACROS
-# in globalDefinitions.hpp
-CFLAGS += -D__STDC_FORMAT_MACROS
-
-ARCHFLAG = -q64
-
-CFLAGS += $(ARCHFLAG)
-AOUT_FLAGS += $(ARCHFLAG)
-LFLAGS += $(ARCHFLAG)
-ASFLAGS += $(ARCHFLAG)
-
-# Use C++ Interpreter
-ifdef CC_INTERP
- CFLAGS += -DCC_INTERP
-endif
-
-# Keep temporary files (.ii, .s)
-# no counterpart on xlc for -save-temps, -pipe
-
-# Compiler warnings are treated as errors
-# Do not treat warnings as errors
-# WARNINGS_ARE_ERRORS = -Werror
-# Except for a few acceptable ones
-# ACCEPTABLE_WARNINGS = -Wpointer-arith -Wconversion -Wsign-compare
-# CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(ACCEPTABLE_WARNINGS)
-CFLAGS_WARN/COMMON =
-CFLAGS_WARN/DEFAULT = $(CFLAGS_WARN/COMMON) $(EXTRA_WARNINGS)
-# Special cases
-CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
-
-# The flags to use for an optimized build
-OPT_CFLAGS += -O3
-
-# Hotspot uses very unstrict aliasing turn this optimization off
-OPT_CFLAGS += -qalias=noansi
-
-OPT_CFLAGS/NOOPT=-qnoopt
-
-DEPFLAGS = -qmakedep=gcc -MF $(DEP_DIR)/$(@:%=%.d)
-
-#------------------------------------------------------------------------
-# Linker flags
-
-# statically link libstdc++.so, work with gcc but ignored by g++
-STATIC_STDCXX = -Wl,-lC_r
-
-# Enable linker optimization
-# no counterpart on xlc for this
-# LFLAGS += -Xlinker -O1
-
-# Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
-# MAPFLAG = -Xlinker --version-script=FILENAME
-
-# Build shared library
-SHARED_FLAG = -q64 -b64 -bexpall -G -bnoentry -qmkshrobj -brtl -bnolibpath -bernotok
-
-#------------------------------------------------------------------------
-# Debug flags
-
-# Always compile with '-g' to get symbols in the stacktraces in the hs_err file
-DEBUG_CFLAGS += -g
-FASTDEBUG_CFLAGS += -g
-OPT_CFLAGS += -g
-
-# DEBUG_BINARIES overrides everything, use full -g debug information
-ifeq ($(DEBUG_BINARIES), true)
- DEBUG_CFLAGS = -g
- CFLAGS += $(DEBUG_CFLAGS)
-endif
-
-# If we are building HEADLESS, pass on to VM
-# so it can set the java.awt.headless property
-ifdef HEADLESS
-CFLAGS += -DHEADLESS
-endif
-
-# We are building Embedded for a small device
-# favor code space over speed
-ifdef MINIMIZE_RAM_USAGE
-CFLAGS += -DMINIMIZE_RAM_USAGE
-endif
-
-ifdef CROSS_COMPILE_ARCH
- STRIP = $(ALT_COMPILER_PATH)/strip
-else
- STRIP = strip
-endif
--- a/hotspot/make/aix/platform_ppc64 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-os_family = aix
-
-arch = ppc
-
-arch_model = ppc_64
-
-os_arch = aix_ppc
-
-os_arch_model = aix_ppc_64
-
-lib_arch = ppc64
-
-compiler = xlc
-
-gnu_dis_arch = ppc64
-
-sysdefs = -DAIX -DPPC64
--- a/hotspot/make/altsrc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,96 +0,0 @@
-#
-# Copyright (c) 2011, 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.
-#
-# 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.
-#
-#
-
-# This file defines variables and macros which are used in the makefiles to
-# allow distributions to augment or replace common hotspot code with
-# distribution-specific source files. This capability is disabled when
-# an OPENJDK build is requested, unless HS_ALT_SRC_REL has been set externally.
-
-# Requires: GAMMADIR
-# Provides:
-# variables: HS_COMMON_SRC, HS_ALT_SRC, HS_COMMON_SRC_REL, and HS_ALT_SRC_REL
-# functions: altsrc-equiv, if-has-altsrc, altsrc, altsrc-replace
-
-HS_COMMON_SRC_REL=src
-
-ifneq ($(OPENJDK),true)
- # This needs to be changed to a more generic location, but we keep it
- # as this for now for compatibility
- HS_ALT_SRC_REL=src/closed
-else
- HS_ALT_SRC_REL=NO_SUCH_PATH
-endif
-
-HS_COMMON_SRC=$(GAMMADIR)/$(HS_COMMON_SRC_REL)
-HS_ALT_SRC=$(GAMMADIR)/$(HS_ALT_SRC_REL)
-
-## altsrc-equiv
-#
-# Convert a common source path to an alternative source path
-#
-# Parameter: An absolute path into the common sources
-# Result: The matching path to the alternate-source location
-#
-altsrc-equiv=$(subst $(HS_COMMON_SRC)/,$(HS_ALT_SRC)/,$(1))
-
-
-## if-has-altsrc
-#
-# Conditional macro to test for the existence of an alternate source path
-#
-# Parameter: An absolute path into the common sources
-# Parameter: Result if the alternative-source location exists
-# Parameter: Result if the alternative-source location does not exist
-# Result: expands to parameter 2 or 3 depending on existence of alternate source
-#
-if-has-altsrc=$(if $(wildcard $(call altsrc-equiv,$(1))),$(2),$(3))
-
-
-## altsrc
-#
-# Converts common source path to alternate source path if the alternate
-# path exists, otherwise evaluates to nul (empty string)
-#
-# Parameter: An absolute path into the common sources
-# Result: The equivalent path to the alternate-source location, if such a
-# location exists on the filesystem. Otherwise it expands to empty.
-#
-altsrc=$(call if-has-altsrc,$(1),$(call altsrc-equiv,$(1)))
-
-## commonsrc
-#
-# Returns parameter.
-#
-commonsrc=$(1)
-
-
-## altsrc-replace
-#
-# Converts a common source path to an alternate source path if the alternate
-# source path exists. Otherwise it evaluates to the input common source path.
-#
-# Parameter: An absolute path into the common sources
-# Result: A path to either the common or alternate sources
-#
-altsrc-replace=$(call if-has-altsrc,$(1),$(call altsrc-equiv,$(1)),$(1))
--- a/hotspot/make/bsd/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,386 +0,0 @@
-#
-# Copyright (c) 1999, 2015, 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.
-#
-# 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.
-#
-#
-
-# This makefile creates a build tree and lights off a build.
-# You can go back into the build tree and perform rebuilds or
-# incremental builds as desired. Be sure to reestablish
-# environment variable settings for LD_LIBRARY_PATH and JAVA_HOME.
-
-# The make process now relies on java and javac. These can be
-# specified either implicitly on the PATH, by setting the
-# (JDK-inherited) ALT_BOOTDIR environment variable to full path to a
-# JDK in which bin/java and bin/javac are present and working (e.g.,
-# /usr/local/java/jdk1.3/solaris), or via the (JDK-inherited)
-# default BOOTDIR path value. Note that one of ALT_BOOTDIR
-# or BOOTDIR has to be set. We do *not* search javac, javah, rmic etc.
-# from the PATH.
-#
-# One can set ALT_BOOTDIR or BOOTDIR to point to a jdk that runs on
-# an architecture that differs from the target architecture, as long
-# as the bootstrap jdk runs under the same flavor of OS as the target
-# (i.e., if the target is linux, point to a jdk that runs on a linux
-# box). In order to use such a bootstrap jdk, set the make variable
-# REMOTE to the desired remote command mechanism, e.g.,
-#
-# make REMOTE="rsh -l me myotherlinuxbox"
-
-ifeq ($(GAMMADIR),)
-include ../../make/defs.make
-else
-include $(GAMMADIR)/make/defs.make
-endif
-include $(GAMMADIR)/make/$(OSNAME)/makefiles/rules.make
-
-ifndef CC_INTERP
- ifndef FORCE_TIERED
- FORCE_TIERED=1
- endif
-endif
-
-ifdef LP64
- ifeq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
- _JUNK_ := $(shell echo >&2 \
- $(OSNAME) $(ARCH) "*** ERROR: this platform does not support 64-bit compilers!")
- @exit 1
- endif
-endif
-
-# we need to set up LP64 correctly to satisfy sanity checks in adlc
-ifneq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
- MFLAGS += " LP64=1 "
-endif
-
-# pass USE_SUNCC further, through MFLAGS
-ifdef USE_SUNCC
- MFLAGS += " USE_SUNCC=1 "
-endif
-
-# The following renders pathnames in generated Makefiles valid on
-# machines other than the machine containing the build tree.
-#
-# For example, let's say my build tree lives on /files12 on
-# exact.east.sun.com. This logic will cause GAMMADIR to begin with
-# /net/exact/files12/...
-#
-# We only do this on SunOS variants, for a couple of reasons:
-# * It is extremely rare that source trees exist on other systems
-# * It has been claimed that the Linux automounter is flakey, so
-# changing GAMMADIR in a way that exercises the automounter could
-# prove to be a source of unreliability in the build process.
-# Obviously, this Makefile is only relevant on SunOS boxes to begin
-# with, but the SunOS conditionalization will make it easier to
-# combine Makefiles in the future (assuming we ever do that).
-
-ifeq ($(OSNAME),solaris)
-
- # prepend current directory to relative pathnames.
- NEW_GAMMADIR := \
- $(shell echo $(GAMMADIR) | \
- sed -e "s=^\([^/].*\)=$(shell pwd)/\1=" \
- )
- unexport NEW_GAMMADIR
-
- # If NEW_GAMMADIR doesn't already start with "/net/":
- ifeq ($(strip $(filter /net/%,$(NEW_GAMMADIR))),)
- # prepend /net/$(HOST)
- # remove /net/$(HOST) if name already began with /home/
- # remove /net/$(HOST) if name already began with /java/
- # remove /net/$(HOST) if name already began with /lab/
- NEW_GAMMADIR := \
- $(shell echo $(NEW_GAMMADIR) | \
- sed -e "s=^\(.*\)=/net/$(HOST)\1=" \
- -e "s=^/net/$(HOST)/home/=/home/=" \
- -e "s=^/net/$(HOST)/java/=/java/=" \
- -e "s=^/net/$(HOST)/lab/=/lab/=" \
- )
- # Don't use the new value for GAMMADIR unless a file with the new
- # name actually exists.
- ifneq ($(wildcard $(NEW_GAMMADIR)),)
- GAMMADIR := $(NEW_GAMMADIR)
- endif
- endif
-
-endif
-
-# BUILDARCH is set to "zero" for Zero builds. VARIANTARCH
-# is used to give the build directories meaningful names.
-VARIANTARCH = $(subst i386,i486,$(ZERO_LIBARCH))
-
-# There is a (semi-) regular correspondence between make targets and actions:
-#
-# Target Tree Type Build Dir
-#
-# debug compiler2 <os>_<arch>_compiler2/debug
-# fastdebug compiler2 <os>_<arch>_compiler2/fastdebug
-# optimized compiler2 <os>_<arch>_compiler2/optimized
-# product compiler2 <os>_<arch>_compiler2/product
-#
-# debug1 compiler1 <os>_<arch>_compiler1/debug
-# fastdebug1 compiler1 <os>_<arch>_compiler1/fastdebug
-# optimized1 compiler1 <os>_<arch>_compiler1/optimized
-# product1 compiler1 <os>_<arch>_compiler1/product
-#
-# debugcore core <os>_<arch>_core/debug
-# fastdebugcore core <os>_<arch>_core/fastdebug
-# optimizedcore core <os>_<arch>_core/optimized
-# productcore core <os>_<arch>_core/product
-#
-# debugzero zero <os>_<arch>_zero/debug
-# fastdebugzero zero <os>_<arch>_zero/fastdebug
-# optimizedzero zero <os>_<arch>_zero/optimized
-# productzero zero <os>_<arch>_zero/product
-#
-# debugshark shark <os>_<arch>_shark/debug
-# fastdebugshark shark <os>_<arch>_shark/fastdebug
-# optimizedshark shark <os>_<arch>_shark/optimized
-# productshark shark <os>_<arch>_shark/product
-#
-# fastdebugminimal1 minimal1 <os>_<arch>_minimal1/fastdebug
-# debugminimal1 minimal1 <os>_<arch>_minimal1/debug
-# productminimal1 minimal1 <os>_<arch>_minimal1/product
-#
-# What you get with each target:
-#
-# debug* - debug compile with asserts enabled
-# fastdebug* - optimized compile, but with asserts enabled
-# optimized* - optimized compile, no asserts
-# product* - the shippable thing: optimized compile, no asserts, -DPRODUCT
-
-# This target list needs to be coordinated with the usage message
-# in the build.sh script:
-TARGETS = debug fastdebug optimized product
-
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- SUBDIR_DOCS = $(OSNAME)_$(VARIANTARCH)_docs
-else
- SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs
-endif
-SUBDIRS_C1 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS))
-SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS))
-SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS))
-SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS))
-SUBDIRS_ZERO = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS))
-SUBDIRS_SHARK = $(addprefix $(OSNAME)_$(VARIANTARCH)_shark/,$(TARGETS))
-SUBDIRS_MINIMAL1 = $(addprefix $(OSNAME)_$(BUILDARCH)_minimal1/,$(TARGETS))
-
-TARGETS_C2 = $(TARGETS)
-TARGETS_C1 = $(addsuffix 1,$(TARGETS))
-TARGETS_TIERED = $(addsuffix tiered,$(TARGETS))
-TARGETS_CORE = $(addsuffix core,$(TARGETS))
-TARGETS_ZERO = $(addsuffix zero,$(TARGETS))
-TARGETS_SHARK = $(addsuffix shark,$(TARGETS))
-TARGETS_MINIMAL1 = $(addsuffix minimal1,$(TARGETS))
-
-BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make
-BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) LIBRARY_SUFFIX=$(LIBRARY_SUFFIX)
-BUILDTREE_VARS += HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) VERSION_STRING=$(VERSION_STRING)
-BUILDTREE_VARS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) OBJCOPY=$(OBJCOPY) STRIP_POLICY=$(STRIP_POLICY) ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) ZIPEXE=$(ZIPEXE)
-
-BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS)
-
-#-------------------------------------------------------------------------------
-
-# Could make everything by default, but that would take a while.
-all:
- @echo "Try '$(MAKE) <target> ...' where <target> is one or more of"
- @echo " $(TARGETS_C2)"
- @echo " $(TARGETS_C1)"
- @echo " $(TARGETS_CORE)"
- @echo " $(TARGETS_ZERO)"
- @echo " $(TARGETS_SHARK)"
- @echo " $(TARGETS_MINIMAL1)"
-
-checks: check_os_version check_j2se_version
-
-# We do not want people accidentally building on old systems (e.g. Linux 2.2.x,
-# Solaris 2.5.1, 2.6).
-# Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok.
-
-#SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 2.7%
-DISABLE_HOTSPOT_OS_VERSION_CHECK = ok
-OS_VERSION := $(shell uname -r)
-EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION))
-
-check_os_version:
-ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),)
- $(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1;
-endif
-
-# jvmti.make requires XSLT (J2SE 1.4.x or newer):
-XSLT_CHECK = $(REMOTE) $(RUN.JAVAP) javax.xml.transform.TransformerFactory
-# If not found then fail fast.
-check_j2se_version:
- $(QUIETLY) if ! $(XSLT_CHECK) > /dev/null 2>&1; then \
- $(REMOTE) $(RUN.JAVA) -version; \
- echo "*** An XSLT processor (J2SE 1.4.x or newer) is required" \
- "to bootstrap this build" 1>&2; \
- exit 1; \
- fi
-
-$(SUBDIRS_TIERED): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=tiered
-
-$(SUBDIRS_C2): $(BUILDTREE_MAKE)
-ifeq ($(FORCE_TIERED),1)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=tiered FORCE_TIERED=1
-else
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=compiler2
-endif
-
-$(SUBDIRS_C1): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=compiler1
-
-$(SUBDIRS_CORE): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=core
-
-$(SUBDIRS_ZERO): $(BUILDTREE_MAKE) platform_zero
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=zero VARIANTARCH=$(VARIANTARCH)
-
-$(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH)
-
-$(SUBDIRS_MINIMAL1): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=minimal1
-
-platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in
- $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@
-
-# Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME
-
-$(TARGETS_C2): $(SUBDIRS_C2)
- cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_TIERED): $(SUBDIRS_TIERED)
- cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_C1): $(SUBDIRS_C1)
- cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_CORE): $(SUBDIRS_CORE)
- cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_ZERO): $(SUBDIRS_ZERO)
- cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_SHARK): $(SUBDIRS_SHARK)
- cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_MINIMAL1): $(SUBDIRS_MINIMAL1)
- cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-# Just build the tree, and nothing else:
-tree: $(SUBDIRS_C2)
-tree1: $(SUBDIRS_C1)
-treecore: $(SUBDIRS_CORE)
-treezero: $(SUBDIRS_ZERO)
-treeshark: $(SUBDIRS_SHARK)
-treeminimal1: $(SUBDIRS_MINIMAL1)
-
-# Doc target. This is the same for all build options.
-# Hence create a docs directory beside ...$(ARCH)_[...]
-# We specify 'BUILD_FLAVOR=product' so that the proper
-# ENABLE_FULL_DEBUG_SYMBOLS value is used.
-docs: checks
- $(QUIETLY) mkdir -p $(SUBDIR_DOCS)
- $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) BUILD_FLAVOR=product jvmtidocs
-
-# Synonyms for win32-like targets.
-compiler2: debug product
-
-compiler1: debug1 product1
-
-core: debugcore productcore
-
-zero: debugzero productzero
-
-shark: debugshark productshark
-
-warn_jvmg_deprecated:
- echo "Warning: The jvmg target has been replaced with debug"
- echo "Warning: Please update your usage"
-
-jvmg: warn_jvmg_deprecated debug
-
-jvmg1: warn_jvmg_deprecated debug1
-
-jvmgcore: warn_jvmg_deprecated debugcore
-
-jvmgzero: warn_jvmg_deprecated debugzero
-
-jvmgshark: warn_jvmg_deprecated debugshark
-
-clean_docs:
- rm -rf $(SUBDIR_DOCS)
-
-clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark clean_minimal1:
- rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@)
-
-clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_minimal1 clean_docs
-
-include $(GAMMADIR)/make/cscope.make
-
-#
-# Include alternate Makefile if it exists.
-#
--include $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make
-
-#-------------------------------------------------------------------------------
-
-.PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) $(TARGETS_MINIMAL1)
-.PHONY: tree tree1 treecore treezero treeshark
-.PHONY: all compiler1 compiler2 core zero shark
-.PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs
-.PHONY: checks check_os_version check_j2se_version
-.PHONY: $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make
-
-.NOTPARALLEL:
--- a/hotspot/make/bsd/README Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-Copyright (c) 2007, 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.
-
-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.
-
-________________________________________________________________________
-
-Please refer to the comments in the Makefile in this directory
-for instructions how to build the Solaris versions.
-
--- a/hotspot/make/bsd/adlc_updater Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-#! /bin/sh
-#
-# This file is used by adlc.make to selectively update generated
-# adlc files. Because source and target diretories are relative
-# paths, this file is copied to the target build directory before
-# use.
-#
-# adlc-updater <file> <source-dir> <target-dir>
-#
-fix_lines() {
- # repair bare #line directives in $1 to refer to $2
- # and add an override of __FILE__ with just the basename on the
- # first line of the file.
- awk < $1 > $1+ -v F2=$2 '
- BEGIN { print "#line 1 \"" F2 "\""; }
- /^#line 999999$/ {print "#line " (NR+1) " \"" F2 "\""; next}
- {print}
- '
- mv $1+ $1
-}
-fix_lines $2/$1 $1
-[ -f $3/$1 ] && cmp -s $2/$1 $3/$1 || \
-( [ -f $3/$1 ] && echo Updating $3/$1 ; touch $2/made-change ; mv $2/$1 $3/$1 )
--- a/hotspot/make/bsd/makefiles/adjust-mflags.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-#! /bin/sh
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# This script is used only from top.make.
-# The macro $(MFLAGS-adjusted) calls this script to
-# adjust the "-j" arguments to take into account
-# the HOTSPOT_BUILD_JOBS variable. The default
-# handling of the "-j" argument by gnumake does
-# not meet our needs, so we must adjust it ourselves.
-
-# This argument adjustment applies to two recursive
-# calls to "$(MAKE) $(MFLAGS-adjusted)" in top.make.
-# One invokes adlc.make, and the other invokes vm.make.
-# The adjustment propagates the desired concurrency
-# level down to the sub-make (of the adlc or vm).
-# The default behavior of gnumake is to run all
-# sub-makes without concurrency ("-j1").
-
-# Also, we use a make variable rather than an explicit
-# "-j<N>" argument to control this setting, so that
-# the concurrency setting (which must be tuned separately
-# for each MP system) can be set via an environment variable.
-# The recommended setting is 1.5x to 2x the number of available
-# CPUs on the MP system, which is large enough to keep the CPUs
-# busy (even though some jobs may be I/O bound) but not too large,
-# we may presume, to overflow the system's swap space.
-
-set -eu
-
-default_build_jobs=4
-
-case $# in
-[12]) true;;
-*) >&2 echo "Usage: $0 ${MFLAGS} ${HOTSPOT_BUILD_JOBS}"; exit 2;;
-esac
-
-MFLAGS=$1
-HOTSPOT_BUILD_JOBS=${2-}
-
-# Normalize any -jN argument to the form " -j${HBJ}"
-MFLAGS=`
- echo "$MFLAGS" \
- | sed '
- s/^-/ -/
- s/ -\([^ I][^ I]*\)j/ -\1 -j/
- s/ -j[0-9][0-9]*/ -j/
- s/ -j\([^ ]\)/ -j -\1/
- s/ -j/ -j'${HOTSPOT_BUILD_JOBS:-${default_build_jobs}}'/
- ' `
-
-case ${HOTSPOT_BUILD_JOBS} in \
-
-'') case ${MFLAGS} in
- *\ -j*)
- >&2 echo "# Note: -jN is ineffective for setting parallelism in this makefile."
- >&2 echo "# please set HOTSPOT_BUILD_JOBS=${default_build_jobs} in the command line or environment."
- esac;;
-
-?*) case ${MFLAGS} in
- *\ -j*) true;;
- *) MFLAGS="-j${HOTSPOT_BUILD_JOBS} ${MFLAGS}";;
- esac;;
-esac
-
-echo "${MFLAGS}"
--- a/hotspot/make/bsd/makefiles/adlc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,233 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-# This makefile (adlc.make) is included from the adlc.make in the
-# build directories.
-# It knows how to compile, link, and run the adlc.
-
-include $(GAMMADIR)/make/$(Platform_os_family)/makefiles/rules.make
-
-# #########################################################################
-
-# OUTDIR must be the same as AD_Dir = $(GENERATED)/adfiles in top.make:
-GENERATED = ../generated
-OUTDIR = $(GENERATED)/adfiles
-
-ARCH = $(Platform_arch)
-OS = $(Platform_os_family)
-
-SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
-
-ifeq ("${Platform_arch_model}", "${Platform_arch}")
- SOURCES.AD = \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad)
-else
- SOURCES.AD = \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch).ad)
-endif
-
-EXEC = $(OUTDIR)/adlc
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(GAMMADIR)/src/share/vm/adlc
-VPATH += $(Src_Dirs_V:%=%:)
-
-# set INCLUDES for C preprocessor
-Src_Dirs_I += $(GAMMADIR)/src/share/vm/adlc $(GENERATED)
-INCLUDES += $(Src_Dirs_I:%=-I%)
-
-# set flags for adlc compilation
-CXXFLAGS = $(SYSDEFS) $(INCLUDES)
-
-# Force assertions on.
-CXXFLAGS += -DASSERT
-
-# CFLAGS_WARN holds compiler options to suppress/enable warnings.
-# Compiler warnings are treated as errors
-ifneq ($(COMPILER_WARNINGS_FATAL),false)
- CFLAGS_WARN = $(WARNINGS_ARE_ERRORS)
-endif
-CFLAGS += $(CFLAGS_WARN)
-
-OBJECTNAMES = \
- adlparse.o \
- archDesc.o \
- arena.o \
- dfa.o \
- dict2.o \
- filebuff.o \
- forms.o \
- formsopt.o \
- formssel.o \
- main.o \
- adlc-opcodes.o \
- output_c.o \
- output_h.o \
-
-OBJECTS = $(OBJECTNAMES:%=$(OUTDIR)/%)
-
-GENERATEDNAMES = \
- ad_$(Platform_arch_model).cpp \
- ad_$(Platform_arch_model).hpp \
- ad_$(Platform_arch_model)_clone.cpp \
- ad_$(Platform_arch_model)_expand.cpp \
- ad_$(Platform_arch_model)_format.cpp \
- ad_$(Platform_arch_model)_gen.cpp \
- ad_$(Platform_arch_model)_misc.cpp \
- ad_$(Platform_arch_model)_peephole.cpp \
- ad_$(Platform_arch_model)_pipeline.cpp \
- adGlobals_$(Platform_arch_model).hpp \
- dfa_$(Platform_arch_model).cpp \
-
-GENERATEDFILES = $(GENERATEDNAMES:%=$(OUTDIR)/%)
-
-# #########################################################################
-
-all: $(EXEC)
-
-$(EXEC) : $(OBJECTS)
- @echo $(LOG_INFO) Making adlc
- $(QUIETLY) $(HOST.LINK_NOPROF.CXX) -o $(EXEC) $(OBJECTS)
-
-# Random dependencies:
-$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
-
-# The source files refer to ostream.h, which sparcworks calls iostream.h
-$(OBJECTS): ostream.h
-
-ostream.h :
- @echo >$@ '#include <iostream.h>'
-
-dump:
- : OUTDIR=$(OUTDIR)
- : OBJECTS=$(OBJECTS)
- : products = $(GENERATEDFILES)
-
-all: $(GENERATEDFILES)
-
-$(GENERATEDFILES): refresh_adfiles
-
-# Get a unique temporary directory name, so multiple makes can run in parallel.
-# Note that product files are updated via "mv", which is atomic.
-TEMPDIR := $(OUTDIR)/mktmp$(shell echo $$$$)
-
-# Debuggable by default
-CFLAGS += -g
-
-# Pass -D flags into ADLC.
-ADLCFLAGS += $(SYSDEFS)
-
-# Note "+="; it is a hook so flags.make can add more flags, like -g or -DFOO.
-ADLCFLAGS += -q -T
-
-# Normally, debugging is done directly on the ad_<arch>*.cpp files.
-# But -g will put #line directives in those files pointing back to <arch>.ad.
-# Some builds of gcc 3.2 have a bug that gets tickled by the extra #line directives
-# so skip it for 3.2 and ealier.
-ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
-ADLCFLAGS += -g
-endif
-
-ifdef LP64
-ADLCFLAGS += -D_LP64
-else
-ADLCFLAGS += -U_LP64
-endif
-
-#
-# adlc_updater is a simple sh script, under sccs control. It is
-# used to selectively update generated adlc files. This should
-# provide a nice compilation speed improvement.
-#
-ADLC_UPDATER_DIRECTORY = $(GAMMADIR)/make/$(OS)
-ADLC_UPDATER = adlc_updater
-$(ADLC_UPDATER): $(ADLC_UPDATER_DIRECTORY)/$(ADLC_UPDATER)
- $(QUIETLY) cp $< $@; chmod +x $@
-
-# This action refreshes all generated adlc files simultaneously.
-# The way it works is this:
-# 1) create a scratch directory to work in.
-# 2) if the current working directory does not have $(ADLC_UPDATER), copy it.
-# 3) run the compiled adlc executable. This will create new adlc files in the scratch directory.
-# 4) call $(ADLC_UPDATER) on each generated adlc file. It will selectively update changed or missing files.
-# 5) If we actually updated any files, echo a notice.
-#
-refresh_adfiles: $(EXEC) $(SOURCE.AD) $(ADLC_UPDATER)
- @rm -rf $(TEMPDIR); mkdir $(TEMPDIR)
- $(QUIETLY) $(EXEC) $(ADLCFLAGS) $(SOURCE.AD) \
- -c$(TEMPDIR)/ad_$(Platform_arch_model).cpp -h$(TEMPDIR)/ad_$(Platform_arch_model).hpp -a$(TEMPDIR)/dfa_$(Platform_arch_model).cpp -v$(TEMPDIR)/adGlobals_$(Platform_arch_model).hpp \
- || { rm -rf $(TEMPDIR); exit 1; }
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model).cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model).hpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_clone.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_expand.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_format.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_gen.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_misc.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_peephole.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_pipeline.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) adGlobals_$(Platform_arch_model).hpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) dfa_$(Platform_arch_model).cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) [ -f $(TEMPDIR)/made-change ] \
- || echo $(LOG_INFO) "Rescanned $(SOURCE.AD) but encountered no changes."
- $(QUIETLY) rm -rf $(TEMPDIR)
-
-
-# #########################################################################
-
-$(SOURCE.AD): $(SOURCES.AD)
- $(QUIETLY) $(PROCESS_AD_FILES) $(SOURCES.AD) > $(SOURCE.AD)
-
-#PROCESS_AD_FILES = cat
-# Pass through #line directives, in case user enables -g option above:
-PROCESS_AD_FILES = awk '{ \
- if (CUR_FN != FILENAME) { CUR_FN=FILENAME; NR_BASE=NR-1; need_lineno=1 } \
- if (need_lineno && $$0 !~ /\/\//) \
- { print "\n\n\#line " (NR-NR_BASE) " \"" FILENAME "\""; need_lineno=0 }; \
- print }'
-
-$(OUTDIR)/%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
-
-# Some object files are given a prefix, to disambiguate
-# them from objects of the same name built for the VM.
-$(OUTDIR)/adlc-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(HOST.COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
-
-# #########################################################################
-
-clean :
- rm $(OBJECTS)
-
-cleanall :
- rm $(OBJECTS) $(EXEC)
-
-# #########################################################################
-
-.PHONY: all dump refresh_adfiles clean cleanall
--- a/hotspot/make/bsd/makefiles/amd64.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-#
-# Copyright (c) 2003, 2016, 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.
-#
-# 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.
-#
-#
-
-# The copied fdlibm routines in sharedRuntimeTrig.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
-# The copied fdlibm routines in sharedRuntimeTrans.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT)
-# Must also specify if CPU is little endian
-CFLAGS += -DVM_LITTLE_ENDIAN
-
-CFLAGS += -D_LP64=1
-
-# The serviceability agent relies on frame pointer (%rbp) to walk thread stack
-ifndef USE_SUNCC
- CFLAGS += -fno-omit-frame-pointer
-endif
-
-OPT_CFLAGS/compactingPermGenGen.o = -O1
-
-# The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
-# of OPT_CFLAGS. Restore it here.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/sharedRuntimeTrig.o += -g
- OPT_CFLAGS/sharedRuntimeTrans.o += -g
- OPT_CFLAGS/compactingPermGenGen.o += -g
-endif
--- a/hotspot/make/bsd/makefiles/arm.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-#
-# Copyright (c) 2008, 2016, 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.
-#
-# 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.
-#
-#
-
-Obj_Files += bsd_arm.o
-
-CFLAGS += -DVM_LITTLE_ENDIAN
--- a/hotspot/make/bsd/makefiles/build_vm_def.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-#!/bin/sh
-
-# If we're cross compiling use that path for nm
-if [ "$CROSS_COMPILE_ARCH" != "" ]; then
-NM=$ALT_COMPILER_PATH/nm
-else
-NM=nm
-fi
-
-$NM -Uj $* | awk '
- { if ($3 ~ /^_ZTV/ || $3 ~ /^gHotSpotVM/) print "\t" $3 }
- '
--- a/hotspot/make/bsd/makefiles/buildtree.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,370 +0,0 @@
-#
-# Copyright (c) 2005, 2015, 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.
-#
-# 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.
-#
-#
-
-# Usage:
-#
-# $(MAKE) -f buildtree.make SRCARCH=srcarch BUILDARCH=buildarch LIBARCH=libarch
-# GAMMADIR=dir OS_FAMILY=os VARIANT=variant
-#
-# The macros ARCH, GAMMADIR, OS_FAMILY and VARIANT must be defined in the
-# environment or on the command-line:
-#
-# ARCH - sparc, i486, ... HotSpot cpu and os_cpu source directory
-# BUILDARCH - build directory
-# LIBARCH - the corresponding directory in JDK/JRE
-# GAMMADIR - top of workspace
-# OS_FAMILY - operating system
-# VARIANT - core, compiler1, compiler2, or tiered
-# VERSION_STRING - the JDK version string as specified by JEP-223
-# HOTSPOT_VERSION_STRING - the same as VERSION_STRING, unless overridden by a standalone build
-#
-# Builds the directory trees with makefiles plus some convenience files in
-# each directory:
-#
-# Makefile - for "make foo"
-# flags.make - with macro settings
-# vm.make - to support making "$(MAKE) -v vm.make" in makefiles
-# adlc.make -
-# trace.make - generate tracing event and type definitions
-# jvmti.make - generate JVMTI bindings from the spec (JSR-163)
-#
-# The makefiles are split this way so that "make foo" will run faster by not
-# having to read the dependency files for the vm.
-
-# needs to be set here since this Makefile doesn't include defs.make
-OS_VENDOR:=$(shell uname -s)
-
--include $(SPEC)
-include $(GAMMADIR)/make/scm.make
-include $(GAMMADIR)/make/defs.make
-include $(GAMMADIR)/make/altsrc.make
-
-
-# 'gmake MAKE_VERBOSE=y' or 'gmake QUIETLY=' gives all the gory details.
-QUIETLY$(MAKE_VERBOSE) = @
-
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- PLATFORM_FILE = $(shell dirname $(shell dirname $(shell pwd)))/platform_zero
-else
- ifdef USE_SUNCC
- PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH).suncc
- else
- PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH)
- endif
-endif
-
-# Allow overriding of the arch part of the directory but default
-# to BUILDARCH if nothing is specified
-ifeq ($(VARIANTARCH),)
- VARIANTARCH=$(BUILDARCH)
-endif
-
-ifdef FORCE_TIERED
-ifeq ($(VARIANT),tiered)
-PLATFORM_DIR = $(OS_FAMILY)_$(VARIANTARCH)_compiler2
-else
-PLATFORM_DIR = $(OS_FAMILY)_$(VARIANTARCH)_$(VARIANT)
-endif
-else
-PLATFORM_DIR = $(OS_FAMILY)_$(VARIANTARCH)_$(VARIANT)
-endif
-
-#
-# We do two levels of exclusion in the shared directory.
-# TOPLEVEL excludes are pruned, they are not recursively searched,
-# but lower level directories can be named without fear of collision.
-# ALWAYS excludes are excluded at any level in the directory tree.
-#
-
-ALWAYS_EXCLUDE_DIRS = $(SCM_DIRS)
-
-ifeq ($(VARIANT),tiered)
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name agent
-else
-ifeq ($(VARIANT),compiler2)
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name c1 -o -name agent
-else
-# compiler1 and core use the same exclude list
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name opto -o -name libadt -o -name agent
-endif
-endif
-
-# Get things from the platform file.
-COMPILER = $(shell sed -n 's/^compiler[ ]*=[ ]*//p' $(PLATFORM_FILE))
-
-# dtracefiles is used on BSD versions that implement Dtrace (like MacOS X)
-SIMPLE_DIRS = \
- $(PLATFORM_DIR)/generated/dependencies \
- $(PLATFORM_DIR)/generated/adfiles \
- $(PLATFORM_DIR)/generated/jvmtifiles \
- $(PLATFORM_DIR)/generated/tracefiles \
- $(PLATFORM_DIR)/generated/dtracefiles
-
-TARGETS = debug fastdebug optimized product
-SUBMAKE_DIRS = $(addprefix $(PLATFORM_DIR)/,$(TARGETS))
-
-# For dependencies and recursive makes.
-BUILDTREE_MAKE = $(GAMMADIR)/make/$(OS_FAMILY)/makefiles/buildtree.make
-
-# dtrace.make is used on BSD versions that implement Dtrace (like MacOS X)
-BUILDTREE_TARGETS = Makefile flags.make flags_vm.make vm.make adlc.make jvmti.make trace.make dtrace.make
-
-BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OS_FAMILY) \
- SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) VARIANT=$(VARIANT)
-
-# Define variables to be set in flags.make.
-# Default values are set in make/defs.make.
-
-# Set BUILD_USER from system-dependent hints: $LOGNAME, $(whoami)
-ifndef HOTSPOT_BUILD_USER
- HOTSPOT_BUILD_USER := $(shell echo $$LOGNAME)
-endif
-ifndef HOTSPOT_BUILD_USER
- HOTSPOT_BUILD_USER := $(shell whoami)
-endif
-# Define HOTSPOT_VM_DISTRO based on settings in make/openjdk_distro
-# or make/hotspot_distro.
-ifndef HOTSPOT_VM_DISTRO
- ifeq ($(call if-has-altsrc,$(HS_COMMON_SRC)/,true,false),true)
- include $(GAMMADIR)/make/hotspot_distro
- else
- include $(GAMMADIR)/make/openjdk_distro
- endif
-endif
-
-# if hotspot-only build and/or OPENJDK isn't passed down, need to set OPENJDK
-ifndef OPENJDK
- ifneq ($(call if-has-altsrc,$(HS_COMMON_SRC)/,true,false),true)
- OPENJDK=true
- endif
-endif
-
-BUILDTREE_VARS += HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) VERSION_STRING=$(VERSION_STRING)
-
-BUILDTREE = \
- $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_TARGETS) $(BUILDTREE_VARS)
-
-BUILDTREE_COMMENT = echo "\# Generated by $(BUILDTREE_MAKE)"
-
-all: $(SUBMAKE_DIRS)
-
-# Run make in each subdirectory recursively.
-$(SUBMAKE_DIRS): $(SIMPLE_DIRS) FORCE
- $(QUIETLY) [ -d $@ ] || { mkdir -p $@; }
- +$(QUIETLY) cd $@ && $(BUILDTREE) TARGET=$(@F)
- $(QUIETLY) touch $@
-
-$(SIMPLE_DIRS):
- $(QUIETLY) mkdir -p $@
-
-# Convenience macro which takes a source relative path, applies $(1) to the
-# absolute path, and then replaces $(GAMMADIR) in the result with a
-# literal "$(GAMMADIR)/" suitable for inclusion in a Makefile.
-gamma-path=$(subst $(GAMMADIR),\$$(GAMMADIR),$(call $(1),$(HS_COMMON_SRC)/$(2)))
-
-# This bit is needed to enable local rebuilds.
-# Unless the makefile itself sets LP64, any environmental
-# setting of LP64 will interfere with the build.
-LP64_SETTING/32 = LP64 = \#empty
-LP64_SETTING/64 = LP64 = 1
-
-DATA_MODE/i486 = 32
-DATA_MODE/amd64 = 64
-
-DATA_MODE = $(DATA_MODE/$(BUILDARCH))
-
-flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo "Platform_file = $(PLATFORM_FILE)" | sed 's|$(GAMMADIR)|$$(GAMMADIR)|'; \
- sed -n '/=/s/^ */Platform_/p' < $(PLATFORM_FILE); \
- echo; \
- echo "GAMMADIR = $(GAMMADIR)"; \
- echo "HS_ALT_MAKE = $(HS_ALT_MAKE)"; \
- echo "OSNAME = $(OSNAME)"; \
- echo "SYSDEFS = \$$(Platform_sysdefs)"; \
- echo "SRCARCH = $(SRCARCH)"; \
- echo "BUILDARCH = $(BUILDARCH)"; \
- echo "LIBARCH = $(LIBARCH)"; \
- echo "TARGET = $(TARGET)"; \
- echo "HOTSPOT_VERSION_STRING = $(HOTSPOT_VERSION_STRING)"; \
- echo "VERSION_STRING = $(VERSION_STRING)"; \
- echo "HOTSPOT_BUILD_USER = $(HOTSPOT_BUILD_USER)"; \
- echo "HOTSPOT_VM_DISTRO = $(HOTSPOT_VM_DISTRO)"; \
- echo "OPENJDK = $(OPENJDK)"; \
- echo "$(LP64_SETTING/$(DATA_MODE))"; \
- echo; \
- echo "STATIC_BUILD = $(STATIC_BUILD)"; \
- echo "COMPILER_WARNINGS_FATAL = $(COMPILER_WARNINGS_FATAL)"; \
- echo "EXTRA_LDFLAGS = $(EXTRA_LDFLAGS)"; \
- echo "LIBRARY_SUFFIX = $(LIBRARY_SUFFIX)"; \
- echo; \
- echo "# Used for platform dispatching"; \
- echo "TARGET_DEFINES = -DTARGET_OS_FAMILY_\$$(Platform_os_family)"; \
- echo "TARGET_DEFINES += -DTARGET_ARCH_\$$(Platform_arch)"; \
- echo "TARGET_DEFINES += -DTARGET_ARCH_MODEL_\$$(Platform_arch_model)"; \
- echo "TARGET_DEFINES += -DTARGET_OS_ARCH_\$$(Platform_os_arch)"; \
- echo "TARGET_DEFINES += -DTARGET_OS_ARCH_MODEL_\$$(Platform_os_arch_model)"; \
- echo "TARGET_DEFINES += -DTARGET_COMPILER_\$$(Platform_compiler)"; \
- echo "CFLAGS += \$$(TARGET_DEFINES)"; \
- echo; \
- echo "Src_Dirs_V = \\"; \
- sed 's/$$/ \\/;s|$(GAMMADIR)|$$(GAMMADIR)|' ../shared_dirs.lst; \
- echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/posix/vm)"; \
- echo; \
- echo "Src_Dirs_I = \\"; \
- echo "$(call gamma-path,altsrc,share/vm/prims) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
- echo "$(call gamma-path,altsrc,share/vm) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm) \\"; \
- echo "$(call gamma-path,altsrc,share/vm/precompiled) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm/precompiled) \\"; \
- echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/posix/vm)"; \
- [ -n "$(CFLAGS_BROWSE)" ] && \
- echo && echo "CFLAGS_BROWSE = $(CFLAGS_BROWSE)"; \
- [ -n "$(ENABLE_FULL_DEBUG_SYMBOLS)" ] && \
- echo && echo "ENABLE_FULL_DEBUG_SYMBOLS = $(ENABLE_FULL_DEBUG_SYMBOLS)"; \
- [ -n "$(OBJCOPY)" ] && \
- echo && echo "OBJCOPY = $(OBJCOPY)"; \
- [ -n "$(STRIP_POLICY)" ] && \
- echo && echo "STRIP_POLICY = $(STRIP_POLICY)"; \
- [ -n "$(ZIP_DEBUGINFO_FILES)" ] && \
- echo && echo "ZIP_DEBUGINFO_FILES = $(ZIP_DEBUGINFO_FILES)"; \
- [ -n "$(ZIPEXE)" ] && \
- echo && echo "ZIPEXE = $(ZIPEXE)"; \
- [ -n "$(HOTSPOT_EXTRA_SYSDEFS)" ] && \
- echo && \
- echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
- echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
- echo; \
- [ -n "$(SPEC)" ] && \
- echo "include $(SPEC)"; \
- echo "CP ?= cp"; \
- echo "MV ?= mv"; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
- echo "include \$$(GAMMADIR)/make/excludeSrc.make"; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
- ) > $@
-
-flags_vm.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(TARGET).make"; \
- ) > $@
-
-../shared_dirs.lst: $(BUILDTREE_MAKE) $(GAMMADIR)/src/share/vm
- @echo $(LOG_INFO) Creating directory list $@
- $(QUIETLY) if [ -d $(HS_ALT_SRC)/share/vm ]; then \
- find $(HS_ALT_SRC)/share/vm/* -prune \
- -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
- \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; > $@; \
- fi;
- $(QUIETLY) find $(HS_COMMON_SRC)/share/vm/* -prune \
- -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
- \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; >> $@
-
-Makefile: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/top.make"; \
- ) > $@
-
-vm.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo include flags_vm.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-adlc.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-jvmti.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-trace.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-dtrace.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-FORCE:
-
-.PHONY: all FORCE
-
-.NOTPARALLEL:
--- a/hotspot/make/bsd/makefiles/compiler1.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making client version of VM
-
-TYPE=COMPILER1
-
-VM_SUBDIR = client
-
-# We don't support the JVMCI in a client VM.
-INCLUDE_JVMCI := false
-
-CFLAGS += -DCOMPILER1
--- a/hotspot/make/bsd/makefiles/compiler2.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making server version of VM
-
-TYPE=COMPILER2
-
-VM_SUBDIR = server
-
-CFLAGS += -DCOMPILER2
--- a/hotspot/make/bsd/makefiles/core.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# Sets make macros for making core version of VM
-
-# Select which files to use (in top.make)
-TYPE=CORE
-
-# There is no "core" directory in JDK. Install core build in server directory.
-VM_SUBDIR = server
-
-# Note: macros.hpp defines CORE
--- a/hotspot/make/bsd/makefiles/cscope.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,160 +0,0 @@
-#
-# Copyright (c) 2005, 2008, 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.
-#
-# 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.
-#
-#
-
-#
-# The cscope.out file is made in the current directory and spans the entire
-# source tree.
-#
-# Things to note:
-# 1. We use relative names for cscope.
-# 2. We *don't* remove the old cscope.out file, because cscope is smart
-# enough to only build what has changed. It can be confused, however,
-# if files are renamed or removed, so it may be necessary to manually
-# remove cscope.out if a lot of reorganization has occurred.
-#
-
-include $(GAMMADIR)/make/scm.make
-
-NAWK = awk
-RM = rm -f
-HG = hg
-CS_TOP = ../..
-
-CSDIRS = $(CS_TOP)/src $(CS_TOP)/build
-CSINCS = $(CSDIRS:%=-I%)
-
-CSCOPE = cscope
-CSCOPE_FLAGS = -b
-
-# Allow .java files to be added from the environment (CSCLASSES=yes).
-ifdef CSCLASSES
-ADDCLASSES= -o -name '*.java'
-endif
-
-# Adding CClassHeaders also pushes the file count of a full workspace up about
-# 200 files (these files also don't exist in a new workspace, and thus will
-# cause the recreation of the database as they get created, which might seem
-# a little confusing). Thus allow these files to be added from the environment
-# (CSHEADERS=yes).
-ifndef CSHEADERS
-RMCCHEADERS= -o -name CClassHeaders
-endif
-
-# Use CS_GENERATED=x to include auto-generated files in the build directories.
-ifdef CS_GENERATED
-CS_ADD_GENERATED = -o -name '*.incl'
-else
-CS_PRUNE_GENERATED = -o -name '${OS}_*_core' -o -name '${OS}_*_compiler?'
-endif
-
-# OS-specific files for other systems are excluded by default. Use CS_OS=yes
-# to include platform-specific files for other platforms.
-ifndef CS_OS
-CS_OS = linux macos solaris win32 bsd
-CS_PRUNE_OS = $(patsubst %,-o -name '*%*',$(filter-out ${OS},${CS_OS}))
-endif
-
-# Processor-specific files for other processors are excluded by default. Use
-# CS_CPU=x to include platform-specific files for other platforms.
-ifndef CS_CPU
-CS_CPU = i486 sparc amd64 ia64
-CS_PRUNE_CPU = $(patsubst %,-o -name '*%*',$(filter-out ${SRCARCH},${CS_CPU}))
-endif
-
-# What files should we include? A simple rule might be just those files under
-# SCCS control, however this would miss files we create like the opcodes and
-# CClassHeaders. The following attempts to find everything that is *useful*.
-# (.del files are created by sccsrm, demo directories contain many .java files
-# that probably aren't useful for development, and the pkgarchive may contain
-# duplicates of files within the source hierarchy).
-
-# Directories to exclude.
-CS_PRUNE_STD = $(SCM_DIRS) \
- -o -name '.del-*' \
- -o -name '*demo' \
- -o -name pkgarchive
-
-CS_PRUNE = $(CS_PRUNE_STD) \
- $(CS_PRUNE_OS) \
- $(CS_PRUNE_CPU) \
- $(CS_PRUNE_GENERATED) \
- $(RMCCHEADERS)
-
-# File names to include.
-CSFILENAMES = -name '*.[ch]pp' \
- -o -name '*.[Ccshlxy]' \
- $(CS_ADD_GENERATED) \
- -o -name '*.il' \
- -o -name '*.cc' \
- -o -name '*[Mm]akefile*' \
- -o -name '*.gmk' \
- -o -name '*.make' \
- -o -name '*.ad' \
- $(ADDCLASSES)
-
-.PRECIOUS: cscope.out
-
-cscope cscope.out: cscope.files FORCE
- $(CSCOPE) $(CSCOPE_FLAGS)
-
-# The .raw file is reordered here in an attempt to make cscope display the most
-# relevant files first.
-cscope.files: .cscope.files.raw
- echo "$(CSINCS)" > $@
- -egrep -v "\.java|\/make\/" $< >> $@
- -fgrep ".java" $< >> $@
- -fgrep "/make/" $< >> $@
-
-.cscope.files.raw: .nametable.files
- -find $(CSDIRS) -type d \( $(CS_PRUNE) \) -prune -o \
- -type f \( $(CSFILENAMES) \) -print > $@
-
-cscope.clean: nametable.clean
- -$(RM) cscope.out cscope.files .cscope.files.raw
-
-TAGS: cscope.files FORCE
- egrep -v '^-|^$$' $< | etags --members -
-
-TAGS.clean: nametable.clean
- -$(RM) TAGS
-
-# .nametable.files and .nametable.files.tmp are used to determine if any files
-# were added to/deleted from/renamed in the workspace. If not, then there's
-# normally no need to rebuild the cscope database. To force a rebuild of
-# the cscope database: gmake nametable.clean.
-.nametable.files: .nametable.files.tmp
- ( cmp -s $@ $< ) || ( cp $< $@ )
- -$(RM) $<
-
-# `hg status' is slightly faster than `hg fstatus'. Both are
-# quite a bit slower on an NFS mounted file system, so this is
-# really geared towards repos on local file systems.
-.nametable.files.tmp:
- -$(HG) fstatus -acmn > $@
-nametable.clean:
- -$(RM) .nametable.files .nametable.files.tmp
-
-FORCE:
-
-.PHONY: cscope cscope.clean TAGS.clean nametable.clean FORCE
--- a/hotspot/make/bsd/makefiles/debug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making debug version of VM
-
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-DEBUG_CFLAGS/DEFAULT= $(DEBUG_CFLAGS)
-DEBUG_CFLAGS/BYFILE = $(DEBUG_CFLAGS/$@)$(DEBUG_CFLAGS/DEFAULT$(DEBUG_CFLAGS/$@))
-
-# _NMT_NOINLINE_ informs NMT that no inlining by Compiler
-CFLAGS += $(DEBUG_CFLAGS/BYFILE) -D_NMT_NOINLINE_
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-debug
-ifeq ($(OS_VENDOR), Darwin)
-MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-darwin-debug
-endif
-
-VERSION = debug
-SYSDEFS += -DASSERT
-PICFLAGS = DEFAULT
--- a/hotspot/make/bsd/makefiles/defs.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,382 +0,0 @@
-#
-# Copyright (c) 2006, 2015, 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.
-#
-# 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.
-#
-#
-
-# The common definitions for hotspot bsd builds.
-# Include the top level defs.make under make directory instead of this one.
-# This file is included into make/defs.make.
-
-SLASH_JAVA ?= /java
-
-define print_info
- ifneq ($$(LOG_LEVEL), warn)
- $$(shell echo >&2 "INFO: $1")
- endif
-endef
-
-# Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name
-ARCH:=$(shell uname -m)
-PATH_SEP = :
-ifeq ($(LP64), 1)
- ARCH_DATA_MODEL ?= 64
-else
- ARCH_DATA_MODEL ?= 32
-endif
-
-# zero
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- ifeq ($(ARCH_DATA_MODEL), 64)
- MAKE_ARGS += LP64=1
- endif
- PLATFORM = bsd-zero
- VM_PLATFORM = bsd_$(subst i386,i486,$(ZERO_LIBARCH))
- HS_ARCH = zero
- ARCH = zero
-endif
-
-# ia64
-ifeq ($(ARCH), ia64)
- ARCH_DATA_MODEL = 64
- MAKE_ARGS += LP64=1
- PLATFORM = bsd-ia64
- VM_PLATFORM = bsd_ia64
- HS_ARCH = ia64
-endif
-
-# sparc
-ifeq ($(ARCH), sparc64)
- ifeq ($(ARCH_DATA_MODEL), 64)
- ARCH_DATA_MODEL = 64
- MAKE_ARGS += LP64=1
- PLATFORM = bsd-sparcv9
- VM_PLATFORM = bsd_sparcv9
- else
- ARCH_DATA_MODEL = 32
- PLATFORM = bsd-sparc
- VM_PLATFORM = bsd_sparc
- endif
- HS_ARCH = sparc
-endif
-
-# amd64
-ifneq (,$(findstring $(ARCH), amd64 x86_64))
- ifeq ($(ARCH_DATA_MODEL), 64)
- ARCH_DATA_MODEL = 64
- MAKE_ARGS += LP64=1
- PLATFORM = bsd-amd64
- VM_PLATFORM = bsd_amd64
- HS_ARCH = x86
- else
- ARCH_DATA_MODEL = 32
- PLATFORM = bsd-i586
- VM_PLATFORM = bsd_i486
- HS_ARCH = x86
- # We have to reset ARCH to i386 since SRCARCH relies on it
- ARCH = i386
- endif
-endif
-
-# i386
-ifeq ($(ARCH), i386)
- ifeq ($(ARCH_DATA_MODEL), 64)
- ARCH_DATA_MODEL = 64
- MAKE_ARGS += LP64=1
- PLATFORM = bsd-amd64
- VM_PLATFORM = bsd_amd64
- HS_ARCH = x86
- # We have to reset ARCH to amd64 since SRCARCH relies on it
- ARCH = amd64
- else
- ARCH_DATA_MODEL = 32
- PLATFORM = bsd-i586
- VM_PLATFORM = bsd_i486
- HS_ARCH = x86
- endif
-endif
-
-# ARM
-ifeq ($(ARCH), arm)
- ARCH_DATA_MODEL = 32
- PLATFORM = bsd-arm
- VM_PLATFORM = bsd_arm
- HS_ARCH = arm
-endif
-
-# PPC
-ifeq ($(ARCH), ppc)
- ARCH_DATA_MODEL = 32
- PLATFORM = bsd-ppc
- VM_PLATFORM = bsd_ppc
- HS_ARCH = ppc
-endif
-
-# On 32 bit bsd we build server and client, on 64 bit just server.
-ifeq ($(JVM_VARIANTS),)
- ifeq ($(ARCH_DATA_MODEL), 32)
- JVM_VARIANTS:=client,server
- JVM_VARIANT_CLIENT:=true
- JVM_VARIANT_SERVER:=true
- else
- JVM_VARIANTS:=server
- JVM_VARIANT_SERVER:=true
- endif
-endif
-
-OS_VENDOR:=$(shell uname -s)
-
-# The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product
-# builds is enabled with debug info files ZIP'ed to save space. For
-# BUILD_FLAVOR != product builds, FDS is always enabled, after all a
-# debug build without debug info isn't very useful.
-# The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled.
-#
-# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
-# disabled for a BUILD_FLAVOR == product build.
-#
-# Note: Use of a different variable name for the FDS override option
-# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
-# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
-# in options via environment variables, use of distinct variables
-# prevents strange behaviours. For example, in a BUILD_FLAVOR !=
-# product build, the FULL_DEBUG_SYMBOLS environment variable will be
-# 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If
-# the same variable name is used, then different values can be picked
-# up by different parts of the build. Just to be clear, we only need
-# two variable names because the incoming option value can be
-# overridden in some situations, e.g., a BUILD_FLAVOR != product
-# build.
-
-# Due to the multiple sub-make processes that occur this logic gets
-# executed multiple times. We reduce the noise by at least checking that
-# BUILD_FLAVOR has been set.
-ifneq ($(BUILD_FLAVOR),)
- # FULL_DEBUG_SYMBOLS not created for individual static libraries
- ifeq ($(STATIC_BUILD),false)
- ifeq ($(BUILD_FLAVOR), product)
- FULL_DEBUG_SYMBOLS ?= 1
- ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
- else
- # debug variants always get Full Debug Symbols (if available)
- ENABLE_FULL_DEBUG_SYMBOLS = 1
- endif
- endif
- $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
- # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(OS_VENDOR), Darwin)
- # MacOS X doesn't use OBJCOPY or STRIP_POLICY
- OBJCOPY=
- STRIP_POLICY=
- ZIP_DEBUGINFO_FILES ?= 1
- else
- # Default OBJCOPY comes from GNU Binutils on BSD
- ifeq ($(CROSS_COMPILE_ARCH),)
- DEF_OBJCOPY=/usr/bin/objcopy
- else
- # Assume objcopy is part of the cross-compilation toolset
- ifneq ($(ALT_COMPILER_PATH),)
- DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy
- endif
- endif
- OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
- ifneq ($(ALT_OBJCOPY),)
- $(eval $(call print_info, "ALT_OBJCOPY=$(ALT_OBJCOPY)"))
- OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
- endif
-
- ifeq ($(OBJCOPY),)
- $(eval $(call print_info, "no objcopy cmd found so cannot create .debuginfo" \
- "files. You may need to set ALT_OBJCOPY."))
- ENABLE_FULL_DEBUG_SYMBOLS=0
- $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
- else
- $(eval $(call print_info, "$(OBJCOPY) cmd found so will create .debuginfo" \
- "files."))
-
- # Library stripping policies for .debuginfo configs:
- # all_strip - strips everything from the library
- # min_strip - strips most stuff from the library; leaves
- # minimum symbols
- # no_strip - does not strip the library at all
- #
- # Oracle security policy requires "all_strip". A waiver was
- # granted on 2011.09.01 that permits using "min_strip" in the
- # Java JDK and Java JRE.
- #
- # Currently, STRIP_POLICY is only used when Full Debug Symbols
- # is enabled.
- #
- STRIP_POLICY ?= min_strip
-
- $(eval $(call print_info, "STRIP_POLICY=$(STRIP_POLICY)"))
-
- ZIP_DEBUGINFO_FILES ?= 1
- endif
-
- $(eval $(call print_info, "ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)"))
- endif
- endif # ENABLE_FULL_DEBUG_SYMBOLS=1
-endif # BUILD_FLAVOR
-
-JDK_INCLUDE_SUBDIR=bsd
-
-# Library suffix
-ifneq ($(STATIC_BUILD),true)
-ifeq ($(OS_VENDOR),Darwin)
- LIBRARY_SUFFIX=dylib
-else
- LIBRARY_SUFFIX=so
-endif
-else
- LIBRARY_SUFFIX=a
-endif
-
-
-EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
-
-# jsig library not needed for static builds
-ifneq ($(STATIC_BUILD),true)
- # client and server subdirectories have symbolic links to ../libjsig.so
- EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
-endif
-
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz
- else
- ifeq ($(OS_VENDOR), Darwin)
- EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX).dSYM
- else
- EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo
- endif
- endif
-endif
-
-EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client
-EXPORT_MINIMAL_DIR = $(EXPORT_LIB_ARCH_DIR)/minimal
-
-ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
- ifeq ($(STATIC_BUILD),true)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.symbols
- endif
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz
- else
- ifeq ($(OS_VENDOR), Darwin)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX).dSYM
- else
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo
- endif
- endif
- endif
-endif
-
-ifeq ($(JVM_VARIANT_CLIENT),true)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
- ifeq ($(STATIC_BUILD),true)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.symbols
- endif
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz
- else
- ifeq ($(OS_VENDOR), Darwin)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX).dSYM
- else
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo
- endif
- endif
- endif
-endif
-
-ifeq ($(JVM_VARIANT_MINIMAL1),true)
- EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX)
- ifeq ($(STATIC_BUILD),true)
- EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.symbols
- endif
-endif
-
-# Universal build settings
-ifeq ($(OS_VENDOR), Darwin)
- # Build universal binaries by default on Mac OS X
- MACOSX_UNIVERSAL = true
- ifneq ($(ALT_MACOSX_UNIVERSAL),)
- MACOSX_UNIVERSAL = $(ALT_MACOSX_UNIVERSAL)
- endif
- MAKE_ARGS += MACOSX_UNIVERSAL=$(MACOSX_UNIVERSAL)
-
- # Universal settings
- ifeq ($(MACOSX_UNIVERSAL), true)
-
- # Set universal export path but avoid using ARCH or PLATFORM subdirs
- EXPORT_PATH=$(OUTPUTDIR)/export-universal$(EXPORT_SUBDIR)
- ifneq ($(ALT_EXPORT_PATH),)
- EXPORT_PATH=$(ALT_EXPORT_PATH)
- endif
-
- # Set universal image dir
- JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-universal$(EXPORT_SUBDIR)
- ifneq ($(ALT_JDK_IMAGE_DIR),)
- JDK_IMAGE_DIR=$(ALT_JDK_IMAGE_DIR)
- endif
-
- # Binaries to 'universalize' if built
- ifneq ($(STATIC_BUILD),true)
- UNIVERSAL_LIPO_LIST += $(EXPORT_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX)
- endif
- UNIVERSAL_LIPO_LIST += $(EXPORT_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX)
- UNIVERSAL_LIPO_LIST += $(EXPORT_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX)
-
- # Files to simply copy in place
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/server/Xusage.txt
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/client/Xusage.txt
-
- ifeq ($(STATIC_BUILD),true)
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/server/libjvm.symbols
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/client/libjvm.symbols
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/minimal/libjvm.symbols
- endif
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/server/libjvm.diz
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/client/libjvm.diz
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/libjsig.diz
- else
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX).dSYM
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX).dSYM
- UNIVERSAL_COPY_LIST += $(EXPORT_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX).dSYM
- endif
- endif
-
- endif
-endif
--- a/hotspot/make/bsd/makefiles/dtrace.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,333 +0,0 @@
-#
-# Copyright (c) 2005, 2015, 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.
-#
-# 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.
-#
-#
-
-# Rules to build jvm_db/dtrace, used by vm.make
-
-# We build libjvm_dtrace/libjvm_db/dtrace for COMPILER1 and COMPILER2
-# but not for CORE configuration.
-
-ifneq ("${TYPE}", "CORE")
-
-ifeq ($(OS_VENDOR), Darwin)
-# we build dtrace for macosx using USDT2 probes
-
-DtraceOutDir = $(GENERATED)/dtracefiles
-
-# Bsd does not build libjvm_db, does not compile on macosx
-# disabled in build: rule in vm.make
-JVM_DB = libjvm_db
-LIBJVM_DB = libjvm_db.$(LIBRARY_SUFFIX)
-
-LIBJVM_DB_DEBUGINFO = libjvm_db.$(LIBRARY_SUFFIX).dSYM
-LIBJVM_DB_DIZ = libjvm_db.diz
-
-JVM_DTRACE = jvm_dtrace
-LIBJVM_DTRACE = libjvm_dtrace.$(LIBRARY_SUFFIX)
-
-LIBJVM_DTRACE_DEBUGINFO = libjvm_dtrace.$(LIBRARY_SUFFIX).dSYM
-LIBJVM_DTRACE_DIZ = libjvm_dtrace.diz
-
-JVMOFFS = JvmOffsets
-JVMOFFS.o = $(JVMOFFS).o
-GENOFFS = generate$(JVMOFFS)
-
-DTRACE_SRCDIR = $(GAMMADIR)/src/os/$(Platform_os_family)/dtrace
-DTRACE_COMMON_SRCDIR = $(GAMMADIR)/src/os/posix/dtrace
-DTRACE = dtrace
-DTRACE.o = $(DTRACE).o
-
-# to remove '-g' option which causes link problems
-# also '-z nodefs' is used as workaround
-GENOFFS_CFLAGS = $(shell echo $(CFLAGS) | sed -e 's/ -g / /g' -e 's/ -g0 / /g';)
-
-ifdef LP64
-DTRACE_OPTS = -D_LP64
-endif
-
-# making libjvm_db
-
-# Use mapfile with libjvm_db.so
-LIBJVM_DB_MAPFILE = # no mapfile for usdt2 # $(MAKEFILES_DIR)/mapfile-vers-jvm_db
-
-# Use mapfile with libjvm_dtrace.so
-LIBJVM_DTRACE_MAPFILE = # no mapfile for usdt2 # $(MAKEFILES_DIR)/mapfile-vers-jvm_dtrace
-
-LFLAGS_JVM_DB += $(PICFLAG) # -D_REENTRANT
-LFLAGS_JVM_DTRACE += $(PICFLAG) # -D_REENTRANT
-
-ISA = $(subst i386,i486,$(BUILDARCH))
-
-# Making 64/libjvm_db.so: 64-bit version of libjvm_db.so which handles 32-bit libjvm.so
-ifneq ("${ISA}","${BUILDARCH}")
-
-XLIBJVM_DIR = 64
-XLIBJVM_DB = $(XLIBJVM_DIR)/$(LIBJVM_DB)
-XLIBJVM_DTRACE = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE)
-XARCH = $(subst sparcv9,v9,$(shell echo $(ISA)))
-
-XLIBJVM_DB_DEBUGINFO = $(XLIBJVM_DIR)/$(LIBJVM_DB_DEBUGINFO)
-XLIBJVM_DB_DIZ = $(XLIBJVM_DIR)/$(LIBJVM_DB_DIZ)
-XLIBJVM_DTRACE_DEBUGINFO = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE_DEBUGINFO)
-XLIBJVM_DTRACE_DIZ = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE_DIZ)
-
-$(XLIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS).h $(LIBJVM_DB_MAPFILE)
- @echo $(LOG_INFO) Making $@
- $(QUIETLY) mkdir -p $(XLIBJVM_DIR) ; \
- $(CC) $(SYMFLAG) -xarch=$(XARCH) -D$(TYPE) -I. -I$(GENERATED) \
- $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c #-lc
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(OS_VENDOR), Darwin)
- $(DSYMUTIL) $@
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- # Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR)
- # is not in the archived name:
- ( cd $(XLIBJVM_DIR) && $(ZIPEXE) -q -r -y $(LIBJVM_DB_DIZ) $(LIBJVM_DB_DEBUGINFO) )
- $(RM) -r $(XLIBJVM_DB_DEBUGINFO)
- endif
- else
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DB_DEBUGINFO)
- # Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR)
- # is not in the link name:
- $(QUIETLY) ( cd $(XLIBJVM_DIR) && $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DB_DEBUGINFO) $(LIBJVM_DB) )
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- # Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR)
- # is not in the archived name:
- ( cd $(XLIBJVM_DIR) && $(ZIPEXE) -q -y $(LIBJVM_DB_DIZ) $(LIBJVM_DB_DEBUGINFO) )
- $(RM) $(XLIBJVM_DB_DEBUGINFO)
- endif
- endif
-endif
-
-$(XLIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
- @echo $(LOG_INFO) Making $@
- $(QUIETLY) mkdir -p $(XLIBJVM_DIR) ; \
- $(CC) $(SYMFLAG) -xarch=$(XARCH) -D$(TYPE) -I. \
- $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c #-lc -lthread -ldoor
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(OS_VENDOR), Darwin)
- $(DSYMUTIL) $@
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- # Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR)
- # is not in the archived name:
- ( cd $(XLIBJVM_DIR) && $(ZIPEXE) -q -r -y $(LIBJVM_DTRACE_DIZ) $(LIBJVM_DTRACE_DEBUGINFO) )
- $(RM) -r $(XLIBJVM_DTRACE_DEBUGINFO)
- endif
- else
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DTRACE_DEBUGINFO)
- # Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR)
- # is not in the link name:
- ( cd $(XLIBJVM_DIR) && $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DTRACE_DEBUGINFO) $(LIBJVM_DTRACE) )
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- # Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR)
- # is not in the archived name:
- ( cd $(XLIBJVM_DIR) && $(ZIPEXE) -q -y $(LIBJVM_DTRACE_DIZ) $(LIBJVM_DTRACE_DEBUGINFO) )
- $(RM) $(XLIBJVM_DTRACE_DEBUGINFO)
- endif
- endif
-endif
-
-endif # ifneq ("${ISA}","${BUILDARCH}")
-
-LFLAGS_GENOFFS += -L.
-
-lib$(GENOFFS).$(LIBRARY_SUFFIX): $(DTRACE_SRCDIR)/$(GENOFFS).cpp $(DTRACE_SRCDIR)/$(GENOFFS).h \
- $(LIBJVM.o)
- $(QUIETLY) $(CXX) $(CXXFLAGS) $(GENOFFS_CFLAGS) $(SHARED_FLAG) $(PICFLAG) \
- $(LFLAGS_GENOFFS) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS).cpp -ljvm
-
-$(GENOFFS): $(DTRACE_SRCDIR)/$(GENOFFS)Main.c lib$(GENOFFS).$(LIBRARY_SUFFIX)
- $(QUIETLY) $(LINK.CXX) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS)Main.c \
- ./lib$(GENOFFS).$(LIBRARY_SUFFIX)
-
-# $@.tmp is created first to avoid an empty $(JVMOFFS).h if an error occurs.
-$(JVMOFFS).h: $(GENOFFS)
- $(QUIETLY) DYLD_LIBRARY_PATH=.:$(DYLD_LIBRARY_PATH) ./$(GENOFFS) -header > $@.tmp; touch $@; \
- if diff $@.tmp $@ > /dev/null 2>&1 ; \
- then rm -f $@.tmp; \
- else rm -f $@; mv $@.tmp $@; \
- fi
-
-$(JVMOFFS)Index.h: $(GENOFFS)
- $(QUIETLY) DYLD_LIBRARY_PATH=.:$(DYLD_LIBRARY_PATH) ./$(GENOFFS) -index > $@.tmp; touch $@; \
- if diff $@.tmp $@ > /dev/null 2>&1 ; \
- then rm -f $@.tmp; \
- else rm -f $@; mv $@.tmp $@; \
- fi
-
-$(JVMOFFS).cpp: $(GENOFFS) $(JVMOFFS).h $(JVMOFFS)Index.h
- $(QUIETLY) DYLD_LIBRARY_PATH=.:$(DYLD_LIBRARY_PATH) ./$(GENOFFS) -table > $@.tmp; touch $@; \
- if diff $@.tmp $@ > /dev/null 2>&1; \
- then rm -f $@.tmp; \
- else rm -f $@; mv $@.tmp $@; \
- fi
-
-$(JVMOFFS.o): $(JVMOFFS).h $(JVMOFFS).cpp
- $(QUIETLY) $(CXX) -c -I. -o $@ $(ARCHFLAG) -D$(TYPE) $(JVMOFFS).cpp
-
-$(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE)
- @echo $(LOG_INFO) Making $@
- $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. -I$(GENERATED) \
- $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -Wall # -lc
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(OS_VENDOR), Darwin)
- $(DSYMUTIL) $@
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -r -y $(LIBJVM_DB_DIZ) $(LIBJVM_DB_DEBUGINFO)
- $(RM) -r $(LIBJVM_DB_DEBUGINFO)
- endif
- else
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DB_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DB_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJVM_DB_DIZ) $(LIBJVM_DB_DEBUGINFO)
- $(RM) $(LIBJVM_DB_DEBUGINFO)
- endif
- endif
-endif
-
-$(LIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(XLIBJVM_DTRACE) $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
- @echo $(LOG_INFO) Making $@
- $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. \
- $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c #-lc -lthread -ldoor
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(OS_VENDOR), Darwin)
- $(DSYMUTIL) $@
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -r -y $(LIBJVM_DTRACE_DIZ) $(LIBJVM_DTRACE_DEBUGINFO)
- $(RM) -r $(LIBJVM_DTRACE_DEBUGINFO)
- endif
- else
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DTRACE_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DTRACE_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJVM_DTRACE_DIZ) $(LIBJVM_DTRACE_DEBUGINFO)
- $(RM) $(LIBJVM_DTRACE_DEBUGINFO)
- endif
- endif
-endif
-
-
-$(DtraceOutDir):
- mkdir $(DtraceOutDir)
-
-# When building using a devkit, dtrace cannot find the correct preprocessor so
-# we run it explicitly before runing dtrace.
-$(DtraceOutDir)/hotspot.h: $(DTRACE_COMMON_SRCDIR)/hotspot.d | $(DtraceOutDir)
- $(QUIETLY) $(CC) -E $(DTRACE_OPTS) -I. -x c $(DTRACE_COMMON_SRCDIR)/hotspot.d > $(DtraceOutDir)/hotspot.d
- $(QUIETLY) $(DTRACE_PROG) -h -o $@ -s $(DtraceOutDir)/hotspot.d
-
-$(DtraceOutDir)/hotspot_jni.h: $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d | $(DtraceOutDir)
- $(QUIETLY) $(CC) -E $(DTRACE_OPTS) -I. -x c $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d > $(DtraceOutDir)/hotspot_jni.d
- $(QUIETLY) $(DTRACE_PROG) -h -o $@ -s $(DtraceOutDir)/hotspot_jni.d
-
-$(DtraceOutDir)/hs_private.h: $(DTRACE_COMMON_SRCDIR)/hs_private.d | $(DtraceOutDir)
- $(QUIETLY) $(CC) -E $(DTRACE_OPTS) -I. -x c $(DTRACE_COMMON_SRCDIR)/hs_private.d > $(DtraceOutDir)/hs_private.d
- $(QUIETLY) $(DTRACE_PROG) -h -o $@ -s $(DtraceOutDir)/hs_private.d
-
-dtrace_gen_headers: $(DtraceOutDir)/hotspot.h $(DtraceOutDir)/hotspot_jni.h $(DtraceOutDir)/hs_private.h
-
-
-.PHONY: dtraceCheck
-
-SYSTEM_DTRACE_PROG = /usr/sbin/dtrace
-systemDtraceFound := $(wildcard ${SYSTEM_DTRACE_PROG})
-
-ifneq ("$(systemDtraceFound)", "")
-DTRACE_PROG=$(SYSTEM_DTRACE_PROG)
-else
-
-endif
-
-ifneq ("${DTRACE_PROG}", "")
-ifeq ("${HOTSPOT_DISABLE_DTRACE_PROBES}", "")
-
-DTRACE_OBJS = $(DTRACE.o) #$(JVMOFFS.o)
-CFLAGS += -DDTRACE_ENABLED #$(DTRACE_INCL)
-
-
-dtraceCheck:
-
-dtrace_stuff: dtrace_gen_headers
- $(QUIETLY) echo $(LOG_INFO) "dtrace headers generated"
-
-
-else # manually disabled
-
-dtraceCheck:
- $(QUIETLY) echo $(LOG_INFO) "**NOTICE** Dtrace support disabled via environment variable"
-
-dtrace_stuff:
-
-endif # ifeq ("${HOTSPOT_DISABLE_DTRACE_PROBES}", "")
-
-else # No dtrace program found
-
-dtraceCheck:
- $(QUIETLY) echo $(LOG_INFO) "**NOTICE** Dtrace support disabled: not supported by system"
-
-dtrace_stuff:
-
-endif # ifneq ("${dtraceFound}", "")
-
-endif # ifeq ($(OS_VENDOR), Darwin)
-
-
-else # CORE build
-
-dtraceCheck:
- $(QUIETLY) echo $(LOG_INFO) "**NOTICE** Dtrace support disabled for CORE builds"
-
-endif # ifneq ("${TYPE}", "CORE")
--- a/hotspot/make/bsd/makefiles/fastdebug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making debug version of VM
-
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-# They may also specify FASTDEBUG_CFLAGS, but it defaults to DEBUG_CFLAGS.
-
-FASTDEBUG_CFLAGS$(FASTDEBUG_CFLAGS) = $(DEBUG_CFLAGS)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# The following lines are copied from debug.make, except that we
-# consult FASTDEBUG_CFLAGS instead of DEBUG_CFLAGS.
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-DEBUG_CFLAGS/DEFAULT= $(FASTDEBUG_CFLAGS)
-DEBUG_CFLAGS/BYFILE = $(DEBUG_CFLAGS/$@)$(DEBUG_CFLAGS/DEFAULT$(DEBUG_CFLAGS/$@))
-CFLAGS += $(DEBUG_CFLAGS/BYFILE)
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-debug
-ifeq ($(OS_VENDOR), Darwin)
-MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-darwin-debug
-endif
-
-VERSION = fastdebug
-SYSDEFS += -DASSERT -DCHECK_UNHANDLED_OOPS
-PICFLAGS = DEFAULT
--- a/hotspot/make/bsd/makefiles/gcc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,543 +0,0 @@
-#
-# Copyright (c) 1999, 2016, 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.
-#
-# 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.
-#
-#
-
-OS_VENDOR = $(shell uname -s)
-
-#------------------------------------------------------------------------
-# CC, CXX & AS
-
-# If a SPEC is not set already, then use these defaults.
-ifeq ($(SPEC),)
- # When cross-compiling the ALT_COMPILER_PATH points
- # to the cross-compilation toolset
- ifdef CROSS_COMPILE_ARCH
- CXX = $(ALT_COMPILER_PATH)/g++
- CC = $(ALT_COMPILER_PATH)/gcc
- HOSTCXX = g++
- HOSTCC = gcc
- else ifneq ($(OS_VENDOR), Darwin)
- CXX = g++
- CC = gcc
- HOSTCXX = $(CXX)
- HOSTCC = $(CC)
- endif
-
- # i486 hotspot requires -mstackrealign on Darwin.
- # llvm-gcc supports this in Xcode 3.2.6 and 4.0.
- # gcc-4.0 supports this on earlier versions.
- # Prefer llvm-gcc where available.
- ifeq ($(OS_VENDOR), Darwin)
- ifeq ($(origin CXX), default)
- CXX = llvm-g++
- endif
- ifeq ($(origin CC), default)
- CC = llvm-gcc
- endif
-
- ifeq ($(ARCH), i486)
- LLVM_SUPPORTS_STACKREALIGN := $(shell \
- [ "0"`llvm-gcc -v 2>&1 | grep LLVM | sed -E "s/.*LLVM build ([0-9]+).*/\1/"` -gt "2333" ] \
- && echo true || echo false)
-
- ifeq ($(LLVM_SUPPORTS_STACKREALIGN), true)
- CXX32 ?= llvm-g++
- CC32 ?= llvm-gcc
- else
- CXX32 ?= g++-4.0
- CC32 ?= gcc-4.0
- endif
- CXX = $(CXX32)
- CC = $(CC32)
- endif
-
- ifeq ($(USE_CLANG), true)
- CXX = clang++
- CC = clang
- endif
-
- HOSTCXX = $(CXX)
- HOSTCC = $(CC)
- endif
-
- AS = $(CC) -c
-endif
-
-ifeq ($(OS_VENDOR), Darwin)
- ifeq ($(DSYMUTIL),)
- DSYMUTIL=dsymutil
- endif
-endif
-
-ifeq ($(USE_CLANG), true)
- CC_VER_MAJOR := $(shell $(CC) -v 2>&1 | grep version | sed "s/.*version \([0-9]*\.[0-9]*\).*/\1/" | cut -d'.' -f1)
- CC_VER_MINOR := $(shell $(CC) -v 2>&1 | grep version | sed "s/.*version \([0-9]*\.[0-9]*\).*/\1/" | cut -d'.' -f2)
-else
- # -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
- # prints the numbers (e.g. "2.95", "3.2.1")
- CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
- CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
- CC_VER_MICRO := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f3)
-endif
-
-ifeq ($(USE_CLANG), true)
- # Clang has precompiled headers support by default, but the user can switch
- # it off by using 'USE_PRECOMPILED_HEADER=0'.
- ifdef LP64
- ifeq ($(USE_PRECOMPILED_HEADER),)
- USE_PRECOMPILED_HEADER=1
- endif
- else
- # We don't support precompiled headers on 32-bit builds because there some files are
- # compiled with -fPIC while others are compiled without (see 'NONPIC_OBJ_FILES' rules.make)
- # Clang produces an error if the PCH file was compiled with other options than the actual compilation unit.
- USE_PRECOMPILED_HEADER=0
- endif
-
- ifeq ($(USE_PRECOMPILED_HEADER),1)
-
- ifndef LP64
- $(error " Precompiled Headers only supported on 64-bit platforms!")
- endif
-
- PRECOMPILED_HEADER_DIR=.
- PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp
- PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.pch
-
- PCH_FLAG = -include precompiled.hpp
- PCH_FLAG/DEFAULT = $(PCH_FLAG)
- PCH_FLAG/NO_PCH = -DNO_PCH
- PCH_FLAG/BY_FILE = $(PCH_FLAG/$@)$(PCH_FLAG/DEFAULT$(PCH_FLAG/$@))
-
- VM_PCH_FLAG/LIBJVM = $(PCH_FLAG/BY_FILE)
- VM_PCH_FLAG/AOUT =
- VM_PCH_FLAG = $(VM_PCH_FLAG/$(LINK_INTO))
-
- # We only use precompiled headers for the JVM build
- CFLAGS += $(VM_PCH_FLAG)
-
- # The following files are compiled at various optimization
- # levels due to optimization issues encountered at the
- # 'OPT_CFLAGS_DEFAULT' level. The Clang compiler issues a compile
- # time error if there is an optimization level specification
- # skew between the PCH file and the C++ file. Especially if the
- # PCH file is compiled at a higher optimization level than
- # the C++ file. One solution might be to prepare extra optimization
- # level specific PCH files for the opt build and use them here, but
- # it's probably not worth the effort as long as only a few files
- # need this special handling.
- PCH_FLAG/loopTransform.o = $(PCH_FLAG/NO_PCH)
- PCH_FLAG/sharedRuntimeTrig.o = $(PCH_FLAG/NO_PCH)
- PCH_FLAG/sharedRuntimeTrans.o = $(PCH_FLAG/NO_PCH)
- PCH_FLAG/unsafe.o = $(PCH_FLAG/NO_PCH)
- PCH_FLAG/jvmciCompilerToVM.o = $(PCH_FLAG/NO_PCH)
-
- endif
-else # ($(USE_CLANG), true)
- # check for precompiled headers support
- ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
- # Allow the user to turn off precompiled headers from the command line.
- ifneq ($(USE_PRECOMPILED_HEADER),0)
- PRECOMPILED_HEADER_DIR=.
- PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp
- PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
- endif
- endif
-endif
-
-# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
-ifeq ($(USE_PRECOMPILED_HEADER),0)
- CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
-endif
-
-#------------------------------------------------------------------------
-# Compiler flags
-
-# position-independent code
-PICFLAG = -fPIC
-
-VM_PICFLAG/LIBJVM = $(PICFLAG)
-VM_PICFLAG/AOUT =
-VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
-
-ifeq ($(JVM_VARIANT_ZERO), true)
- CFLAGS += $(LIBFFI_CFLAGS)
-endif
-ifeq ($(JVM_VARIANT_ZEROSHARK), true)
- CFLAGS += $(LIBFFI_CFLAGS)
- CFLAGS += $(LLVM_CFLAGS)
-endif
-
-ifeq ($(STATIC_BUILD),true)
-CXXFLAGS += -DSTATIC_BUILD
-CFLAGS += -DSTATIC_BUILD
-else
-CFLAGS += $(VM_PICFLAG)
-endif
-
-CFLAGS += -fno-rtti
-CFLAGS += -fno-exceptions
-ifeq ($(USE_CLANG),)
- CFLAGS += -pthread
- CFLAGS += -fcheck-new
- # version 4 and above support fvisibility=hidden (matches jni_x86.h file)
- # except 4.1.2 gives pointless warnings that can't be disabled (afaik)
- ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
- CFLAGS += -fvisibility=hidden
- endif
-else
- CFLAGS += -fvisibility=hidden
-endif
-
-ifeq ($(USE_CLANG), true)
- # Before Clang 3.1, we had to pass the stack alignment specification directly to llvm with the help of '-mllvm'
- # Starting with version 3.1, Clang understands the '-mstack-alignment' (and rejects '-mllvm -stack-alignment')
- ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 1 \) \))" "0"
- STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mstack-alignment=16
- else
- STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mllvm -stack-alignment=16
- endif
-endif
-
-ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
-ARCHFLAG/i486 = -m32 -march=i586
-ARCHFLAG/amd64 = -m64 $(STACK_ALIGNMENT_OPT)
-ARCHFLAG/ia64 =
-ARCHFLAG/sparc = -m32 -mcpu=v9
-ARCHFLAG/sparcv9 = -m64 -mcpu=v9
-ARCHFLAG/zero = $(ZERO_ARCHFLAG)
-
-# Darwin-specific build flags
-ifeq ($(OS_VENDOR), Darwin)
- # Ineffecient 16-byte stack re-alignment on Darwin/IA32
- ARCHFLAG/i486 += -mstackrealign
-endif
-
-CFLAGS += $(ARCHFLAG)
-AOUT_FLAGS += $(ARCHFLAG)
-LFLAGS += $(ARCHFLAG)
-ASFLAGS += $(ARCHFLAG)
-
-ifdef E500V2
-CFLAGS += -DE500V2
-endif
-
-# Use C++ Interpreter
-ifdef CC_INTERP
- CFLAGS += -DCC_INTERP
-endif
-
-# Keep temporary files (.ii, .s)
-ifdef NEED_ASM
- CFLAGS += -save-temps
-else
- CFLAGS += -pipe
-endif
-
-# Compiler warnings are treated as errors
-ifneq ($(COMPILER_WARNINGS_FATAL),false)
- WARNINGS_ARE_ERRORS ?= -Werror
-endif
-
-ifeq ($(USE_CLANG), true)
- # However we need to clean the code up before we can unrestrictedly enable this option with Clang
- WARNINGS_ARE_ERRORS += -Wno-logical-op-parentheses -Wno-parentheses-equality -Wno-parentheses
- WARNINGS_ARE_ERRORS += -Wno-switch -Wno-tautological-compare
-# Not yet supported by clang in Xcode 4.6.2
-# WARNINGS_ARE_ERRORS += -Wno-tautological-constant-out-of-range-compare
- WARNINGS_ARE_ERRORS += -Wno-delete-non-virtual-dtor -Wno-deprecated -Wno-format -Wno-dynamic-class-memaccess
- WARNINGS_ARE_ERRORS += -Wno-empty-body
-endif
-
-WARNING_FLAGS = -Wpointer-arith -Wsign-compare -Wundef -Wunused-function -Wformat=2
-
-ifeq ($(USE_CLANG),)
- # Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit
- # conversions which might affect the values. Only enable it in earlier versions.
- ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
- WARNINGS_FLAGS += -Wconversion
- endif
-endif
-
-CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(WARNING_FLAGS)
-# Special cases
-CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
-# XXXDARWIN: for _dyld_bind_fully_image_containing_address
-ifeq ($(OS_VENDOR), Darwin)
- CFLAGS_WARN/os_bsd.o = $(CFLAGS_WARN/DEFAULT) -Wno-deprecated-declarations
-endif
-
-# optimization control flags (Used by fastdebug and release variants)
-OPT_CFLAGS/NOOPT=-O0
-OPT_CFLAGS/DEBUG=-O0
-OPT_CFLAGS/SIZE=-Os
-OPT_CFLAGS/SPEED=-O3
-
-ifeq ($(OS_VENDOR), Darwin)
- # use -Os by default, unless -O3 can be proved to be worth the cost, as per policy
- # <https://wiki.openjdk.java.net/display/MacOSXPort/Compiler+Errata>
- OPT_CFLAGS_DEFAULT ?= SIZE
-else
- OPT_CFLAGS_DEFAULT ?= SPEED
-endif
-
-# Hotspot uses very unstrict aliasing turn this optimization off
-# This option is added to CFLAGS rather than OPT_CFLAGS
-# so that OPT_CFLAGS overrides get this option too.
-CFLAGS += -fno-strict-aliasing
-
-ifdef OPT_CFLAGS
- ifneq ("$(origin OPT_CFLAGS)", "command line")
- $(error " Use OPT_EXTRAS instead of OPT_CFLAGS to add extra flags to OPT_CFLAGS.")
- endif
-endif
-
-OPT_CFLAGS = $(OPT_CFLAGS/$(OPT_CFLAGS_DEFAULT)) $(OPT_EXTRAS)
-
-# The gcc compiler segv's on ia64 when compiling bytecodeInterpreter.cpp
-# if we use expensive-optimizations
-ifeq ($(BUILDARCH), ia64)
-OPT_CFLAGS += -fno-expensive-optimizations
-endif
-
-# Work around some compiler bugs.
-ifeq ($(USE_CLANG), true)
- # Clang < 6 | <= 6.1 | <= 7.0
- ifeq ($(shell expr \
- $(CC_VER_MAJOR) \< 6 \| \
- \( $(CC_VER_MAJOR) = 6 \& $(CC_VER_MINOR) \<= 1 \) \| \
- \( $(CC_VER_MAJOR) = 7 \& $(CC_VER_MINOR) \<= 0 \) \
- ), 1)
- OPT_CFLAGS/loopTransform.o += $(OPT_CFLAGS/NOOPT)
- OPT_CFLAGS/unsafe.o += -O1
-
- # The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
- # of OPT_CFLAGS. Restore it here.
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/loopTransform.o += -g
- OPT_CFLAGS/unsafe.o += -g
- endif
- else
- $(error "Update compiler workarounds for Clang $(CC_VER_MAJOR).$(CC_VER_MINOR)")
- endif
-else
- # Do not allow GCC 4.1.1
- ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 1 \& $(CC_VER_MICRO) = 1), 1)
- $(error "GCC $(CC_VER_MAJOR).$(CC_VER_MINOR).$(CC_VER_MICRO) not supported because of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=27724")
- endif
- # 6835796. Problem in GCC 4.3.0 with mulnode.o optimized compilation.
- ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 3), 1)
- OPT_CFLAGS/mulnode.o += $(OPT_CFLAGS/NOOPT)
- endif
-endif
-
-# Flags for generating make dependency flags.
-DEPFLAGS = -MMD -MP -MF $(DEP_DIR)/$(@:%=%.d)
-ifeq ($(USE_CLANG),)
- ifneq ($(CC_VER_MAJOR), 2)
- DEPFLAGS += -fpch-deps
- endif
-endif
-
-# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
-ifeq ($(USE_PRECOMPILED_HEADER),0)
-CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
-endif
-
-ifeq ($(OS_VENDOR), Darwin)
- # Setting these parameters makes it an error to link to macosx APIs that are
- # newer than the given OS version and makes the linked binaries compatible even
- # if built on a newer version of the OS.
- # The expected format is X.Y.Z
- ifeq ($(MACOSX_VERSION_MIN),)
- MACOSX_VERSION_MIN=10.7.0
- endif
- # The macro takes the version with no dots, ex: 1070
- CFLAGS += -DMAC_OS_X_VERSION_MAX_ALLOWED=$(subst .,,$(MACOSX_VERSION_MIN)) \
- -mmacosx-version-min=$(MACOSX_VERSION_MIN)
- LDFLAGS += -mmacosx-version-min=$(MACOSX_VERSION_MIN)
-endif
-
-
-#------------------------------------------------------------------------
-# Assembler flags
-
-# Enforce prerpocessing of .s files
-ASFLAGS += -x assembler-with-cpp
-
-#------------------------------------------------------------------------
-# Linker flags
-
-# statically link libstdc++.so, work with gcc but ignored by g++
-STATIC_STDCXX = -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic
-
-# Ensure use libstdc++ on clang, not libc++
-ifeq ($(USE_CLANG), true)
- LFLAGS += -stdlib=libstdc++
-endif
-
-ifeq ($(USE_CLANG),)
- # statically link libgcc and/or libgcc_s, libgcc does not exist before gcc-3.x.
- ifneq ($(CC_VER_MAJOR), 2)
- STATIC_LIBGCC += -static-libgcc
- endif
-
- ifneq ($(OS_VENDOR), Darwin)
- ifneq (, findstring(debug,$(BUILD_FLAVOR)))
- # for relocations read-only
- LFLAGS += -Xlinker -z -Xlinker relro
-
- ifeq ($(BUILD_FLAVOR), debug)
- # disable incremental relocations linking
- LFLAGS += -Xlinker -z -Xlinker now
- endif
- endif
- endif
-
- ifeq ($(BUILDARCH), ia64)
- LFLAGS += -Wl,-relax
- endif
-endif
-
-# Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
-MAPFLAG = -Xlinker --version-script=FILENAME
-
-#
-# Shared Library
-#
-ifeq ($(OS_VENDOR), Darwin)
- # Standard linker flags
- LFLAGS +=
-
- # The apple linker has its own variant of mapfiles/version-scripts
- MAPFLAG = -Xlinker -exported_symbols_list -Xlinker FILENAME
-
- # Use $(SONAMEFLAG:SONAME=soname) to specify the intrinsic name of a shared obj
- SONAMEFLAG =
-
- # Build shared library
- SHARED_FLAG = -Wl,-install_name,@rpath/$(@F) -dynamiclib -compatibility_version 1.0.0 -current_version 1.0.0 $(VM_PICFLAG)
-
- # Keep symbols even they are not used
- #AOUT_FLAGS += -Xlinker -export-dynamic
-else
- # Enable linker optimization
- LFLAGS += -Xlinker -O1
-
- # Use $(SONAMEFLAG:SONAME=soname) to specify the intrinsic name of a shared obj
- SONAMEFLAG = -Xlinker -soname=SONAME
-
- # Build shared library
- SHARED_FLAG = -shared $(VM_PICFLAG)
-
- # Keep symbols even they are not used
- AOUT_FLAGS += -Xlinker -export-dynamic
-endif
-
-#------------------------------------------------------------------------
-# Debug flags
-
-ifeq ($(USE_CLANG), true)
- # Restrict the debug information created by Clang to avoid
- # too big object files and speed the build up a little bit
- # (see http://llvm.org/bugs/show_bug.cgi?id=7554)
- CFLAGS += -flimit-debug-info
-endif
-
-# Allow no optimizations.
-DEBUG_CFLAGS=-O0
-
-# DEBUG_BINARIES uses full -g debug information for all configs
-ifeq ($(DEBUG_BINARIES), true)
- CFLAGS += -g
-else
- # Use the stabs format for debugging information (this is the default
- # on gcc-2.91). It's good enough, has all the information about line
- # numbers and local variables, and libjvm.so is only about 16M.
- # Change this back to "-g" if you want the most expressive format.
- # (warning: that could easily inflate libjvm.so to 150M!)
- # Note: The Itanium gcc compiler crashes when using -gstabs.
- DEBUG_CFLAGS/ia64 = -g
- DEBUG_CFLAGS/amd64 = -g
- DEBUG_CFLAGS/arm = -g
- DEBUG_CFLAGS/ppc = -g
- DEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH))
- ifeq ($(DEBUG_CFLAGS/$(BUILDARCH)),)
- ifeq ($(USE_CLANG), true)
- # Clang doesn't understand -gstabs
- DEBUG_CFLAGS += -g
- else
- DEBUG_CFLAGS += -gstabs
- endif
- endif
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- FASTDEBUG_CFLAGS/ia64 = -g
- FASTDEBUG_CFLAGS/amd64 = -g
- FASTDEBUG_CFLAGS/arm = -g
- FASTDEBUG_CFLAGS/ppc = -g
- FASTDEBUG_CFLAGS += $(FASTDEBUG_CFLAGS/$(BUILDARCH))
- ifeq ($(FASTDEBUG_CFLAGS/$(BUILDARCH)),)
- ifeq ($(USE_CLANG), true)
- # Clang doesn't understand -gstabs
- FASTDEBUG_CFLAGS += -g
- else
- FASTDEBUG_CFLAGS += -gstabs
- endif
- endif
-
- OPT_CFLAGS/ia64 = -g
- OPT_CFLAGS/amd64 = -g
- OPT_CFLAGS/arm = -g
- OPT_CFLAGS/ppc = -g
- OPT_CFLAGS += $(OPT_CFLAGS/$(BUILDARCH))
- ifeq ($(OPT_CFLAGS/$(BUILDARCH)),)
- ifeq ($(USE_CLANG), true)
- # Clang doesn't understand -gstabs
- OPT_CFLAGS += -g
- else
- OPT_CFLAGS += -gstabs
- endif
- endif
- endif
-endif
-
-ifeq ($(USE_CLANG),)
- # Enable bounds checking.
- ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) )" "1"
- # stack smashing checks.
- DEBUG_CFLAGS += -fstack-protector-all --param ssp-buffer-size=1
- endif
-endif
-
-# If we are building HEADLESS, pass on to VM
-# so it can set the java.awt.headless property
-ifdef HEADLESS
-CFLAGS += -DHEADLESS
-endif
-
-# We are building Embedded for a small device
-# favor code space over speed
-ifdef MINIMIZE_RAM_USAGE
-CFLAGS += -DMINIMIZE_RAM_USAGE
-endif
--- a/hotspot/make/bsd/makefiles/hp.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making premium version of VM
-
-TYPE=HP
-
-CFLAGS += -DCOMPILER2
--- a/hotspot/make/bsd/makefiles/hp1.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making premium version of VM
-
-TYPE=HP1
-
-CFLAGS += -DCOMPILER1
--- a/hotspot/make/bsd/makefiles/i486.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# TLS helper, assembled from .s file
-
-# The copied fdlibm routines in sharedRuntimeTrig.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
-# The copied fdlibm routines in sharedRuntimeTrans.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT)
-# Must also specify if CPU is little endian
-CFLAGS += -DVM_LITTLE_ENDIAN
-
-OPT_CFLAGS/compactingPermGenGen.o = -O1
--- a/hotspot/make/bsd/makefiles/ia64.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-#
-# Copyright (c) 2005, 2012, 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.
-#
-# 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.
-#
-#
-
-#
-# IA64 only uses c++ based interpreter
-CFLAGS += -DCC_INTERP -D_LP64=1 -DVM_LITTLE_ENDIAN
-ifeq ($(VERSION),debug)
-ASM_FLAGS= -DDEBUG
-else
-ASM_FLAGS=
-endif
-# workaround gcc bug in compiling varargs
-OPT_CFLAGS/jni.o = -O0
-
-# gcc/ia64 has a bug that internal gcc functions linked with libjvm.so
-# are made public. Hiding those symbols will cause undefined symbol error
-# when VM is dropped into older JDK. We probably will need an IA64
-# mapfile to include those symbols as a workaround. Disable linker mapfile
-# for now.
-LDNOMAP=true
--- a/hotspot/make/bsd/makefiles/jsig.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,110 +0,0 @@
-#
-# Copyright (c) 2005, 2015, 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.
-#
-# 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.
-#
-#
-
-# Rules to build signal interposition library, used by vm.make
-
-# libjsig.so: signal interposition library
-JSIG = jsig
-
-ifeq ($(OS_VENDOR), Darwin)
- LIBJSIG = lib$(JSIG).$(LIBRARY_SUFFIX)
-
- LIBJSIG_DEBUGINFO = lib$(JSIG).$(LIBRARY_SUFFIX).dSYM
- LIBJSIG_DIZ = lib$(JSIG).diz
-else
- LIBJSIG = lib$(JSIG).so
-
- LIBJSIG_DEBUGINFO = lib$(JSIG).debuginfo
- LIBJSIG_DIZ = lib$(JSIG).diz
-endif
-
-JSIGSRCDIR = $(GAMMADIR)/src/os/$(Platform_os_family)/vm
-
-DEST_JSIG = $(JDK_LIBDIR)/$(LIBJSIG)
-DEST_JSIG_DEBUGINFO = $(JDK_LIBDIR)/$(LIBJSIG_DEBUGINFO)
-DEST_JSIG_DIZ = $(JDK_LIBDIR)/$(LIBJSIG_DIZ)
-
-LIBJSIG_MAPFILE = $(MAKEFILES_DIR)/mapfile-vers-jsig
-
-# On Bsd we really dont want a mapfile, as this library is small
-# and preloaded using LD_PRELOAD, making functions private will
-# cause problems with interposing. See CR: 6466665
-# LFLAGS_JSIG += $(MAPFLAG:FILENAME=$(LIBJSIG_MAPFILE))
-
-LFLAGS_JSIG += -D_GNU_SOURCE -pthread $(LDFLAGS_HASH_STYLE)
-
-# DEBUG_BINARIES overrides everything, use full -g debug information
-ifeq ($(DEBUG_BINARIES), true)
- JSIG_DEBUG_CFLAGS = -g
-endif
-
-$(LIBJSIG): $(JSIGSRCDIR)/jsig.c $(LIBJSIG_MAPFILE)
- @echo $(LOG_INFO) Making signal interposition lib...
-ifeq ($(STATIC_BUILD),true)
- $(QUIETLY) $(CC) -c $(SYMFLAG) $(EXTRA_CFLAGS) $(ARCHFLAG) $(PICFLAG) \
- $(LFLAGS_JSIG) $(JSIG_DEBUG_CFLAGS) -o $(JSIG).o $<
- $(QUIETLY) $(AR) $(ARFLAGS) $@ $(JSIG).o
-else
- $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
- $(LFLAGS_JSIG) $(JSIG_DEBUG_CFLAGS) $(EXTRA_CFLAGS) -o $@ $<
-endif
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(OS_VENDOR), Darwin)
- $(DSYMUTIL) $@
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -r -y $(LIBJSIG_DIZ) $(LIBJSIG_DEBUGINFO)
- $(RM) -r $(LIBJSIG_DEBUGINFO)
- endif
- else
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -g $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJSIG_DIZ) $(LIBJSIG_DEBUGINFO)
- $(RM) $(LIBJSIG_DEBUGINFO)
- endif
- endif
-endif
-
-install_jsig: $(LIBJSIG)
- @echo "Copying $(LIBJSIG) to $(DEST_JSIG)"
-ifeq ($(OS_VENDOR), Darwin)
- $(QUIETLY) test ! -d $(LIBJSIG_DEBUGINFO) || \
- $(CP) -f -r $(LIBJSIG_DEBUGINFO) $(DEST_JSIG_DEBUGINFO)
-else
- $(QUIETLY) test ! -f $(LIBJSIG_DEBUGINFO) || \
- $(CP) -f $(LIBJSIG_DEBUGINFO) $(DEST_JSIG_DEBUGINFO)
-endif
- $(QUIETLY) test ! -f $(LIBJSIG_DIZ) || \
- $(CP) -f $(LIBJSIG_DIZ) $(DEST_JSIG_DIZ)
- $(QUIETLY) $(CP) -f $(LIBJSIG) $(DEST_JSIG) && echo "Done"
-
-.PHONY: install_jsig
--- a/hotspot/make/bsd/makefiles/jvmti.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,116 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# This makefile (jvmti.make) is included from the jvmti.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate jvmti.
-
-include $(GAMMADIR)/make/bsd/makefiles/rules.make
-
-# #########################################################################
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-JvmtiOutDir = $(GENERATED)/jvmtifiles
-
-JvmtiSrcDir = $(GAMMADIR)/src/share/vm/prims
-InterpreterSrcDir = $(GAMMADIR)/src/share/vm/interpreter
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(JvmtiSrcDir)
-VPATH += $(Src_Dirs_V:%=%:)
-
-JvmtiGeneratedNames = \
- jvmtiEnv.hpp \
- jvmtiEnter.cpp \
- jvmtiEnterTrace.cpp \
- jvmtiEnvRecommended.cpp \
- bytecodeInterpreterWithChecks.cpp \
- jvmti.h \
-
-JvmtiEnvFillSource = $(JvmtiSrcDir)/jvmtiEnvFill.java
-JvmtiEnvFillClass = $(JvmtiOutDir)/jvmtiEnvFill.class
-
-JvmtiGenSource = $(JvmtiSrcDir)/jvmtiGen.java
-JvmtiGenClass = $(JvmtiOutDir)/jvmtiGen.class
-
-JvmtiGeneratedFiles = $(JvmtiGeneratedNames:%=$(JvmtiOutDir)/%)
-
-XSLT = $(QUIETLY) $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-.PHONY: all jvmtidocs clean cleanall
-
-# #########################################################################
-
-all: $(JvmtiGeneratedFiles)
-
-both = $(JvmtiGenClass) $(JvmtiSrcDir)/jvmti.xml $(JvmtiSrcDir)/jvmtiLib.xsl
-
-$(JvmtiGenClass): $(JvmtiGenSource)
- $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiGenSource)
-
-$(JvmtiEnvFillClass): $(JvmtiEnvFillSource)
- $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiEnvFillSource)
-
-$(JvmtiOutDir)/jvmtiEnter.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnter.cpp -PARAM interface jvmti
-
-$(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp: $(JvmtiGenClass) $(InterpreterSrcDir)/bytecodeInterpreter.cpp $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml -XSL $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl -OUT $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp
-
-$(JvmtiOutDir)/jvmtiEnterTrace.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnterTrace.cpp -PARAM interface jvmti -PARAM trace Trace
-
-$(JvmtiOutDir)/jvmtiEnvRecommended.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnv.xsl $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiEnvFillClass)
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnv.xsl -OUT $(JvmtiOutDir)/jvmtiEnvStub.cpp
- $(QUIETLY) $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiEnvFill $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiOutDir)/jvmtiEnvStub.cpp $(JvmtiOutDir)/jvmtiEnvRecommended.cpp
-
-$(JvmtiOutDir)/jvmtiEnv.hpp: $(both) $(JvmtiSrcDir)/jvmtiHpp.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiHpp.xsl -OUT $(JvmtiOutDir)/jvmtiEnv.hpp
-
-$(JvmtiOutDir)/jvmti.h: $(both) $(JvmtiSrcDir)/jvmtiH.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiH.xsl -OUT $(JvmtiOutDir)/jvmti.h
-
-jvmtidocs: $(JvmtiOutDir)/jvmti.html
-
-$(JvmtiOutDir)/jvmti.html: $(both) $(JvmtiSrcDir)/jvmti.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmti.xsl -OUT $(JvmtiOutDir)/jvmti.html
-
-# #########################################################################
-
-clean :
- rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles)
-
-cleanall :
- rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles)
-
-# #########################################################################
--- a/hotspot/make/bsd/makefiles/mapfile-vers-darwin-debug Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-#
-# Copyright (c) 2002, 2015, 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.
-#
-# 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.
-#
-#
-# Only used for OSX/Darwin builds
-
-# Define public interface.
- _JVM_handle_bsd_signal
-
- # miscellaneous functions
- _jio_fprintf
- _jio_printf
- _jio_snprintf
- _jio_vfprintf
- _jio_vsnprintf
-
- # This is for Forte Analyzer profiling support.
- _AsyncGetCallTrace
-
- # INSERT VTABLE SYMBOLS HERE
-
--- a/hotspot/make/bsd/makefiles/mapfile-vers-darwin-product Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-#
-# Copyright (c) 2002, 2015, 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.
-#
-# 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.
-#
-#
-# Only used for OSX/Darwin builds
-
-# Define public interface.
- _JVM_handle_bsd_signal
-
- # miscellaneous functions
- _jio_fprintf
- _jio_printf
- _jio_snprintf
- _jio_vfprintf
- _jio_vsnprintf
-
- # This is for Forte Analyzer profiling support.
- _AsyncGetCallTrace
-
- # INSERT VTABLE SYMBOLS HERE
-
--- a/hotspot/make/bsd/makefiles/mapfile-vers-debug Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-#
-# Copyright (c) 2002, 2015, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_handle_linux_signal;
-
- # miscellaneous functions
- jio_fprintf;
- jio_printf;
- jio_snprintf;
- jio_vfprintf;
- jio_vsnprintf;
- numa_warn;
- numa_error;
-
- # Needed because there is no JVM interface for this.
- sysThreadAvailableStackWithSlack;
-
- # This is for Forte Analyzer profiling support.
- AsyncGetCallTrace;
-
- # INSERT VTABLE SYMBOLS HERE
-
- local:
- *;
-};
-
--- a/hotspot/make/bsd/makefiles/mapfile-vers-jsig Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-#
-
-#
-# Copyright (c) 2005, 2008, 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.
-#
-# 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.
-#
-#
-
-# Define library interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_begin_signal_setting;
- JVM_end_signal_setting;
- JVM_get_libjsig_version;
- JVM_get_signal_action;
- sigaction;
- signal;
- sigset;
- local:
- *;
-};
--- a/hotspot/make/bsd/makefiles/mapfile-vers-product Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-#
-# Copyright (c) 2002, 2015, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_handle_linux_signal;
-
- # miscellaneous functions
- jio_fprintf;
- jio_printf;
- jio_snprintf;
- jio_vfprintf;
- jio_vsnprintf;
- numa_warn;
- numa_error;
-
- # Needed because there is no JVM interface for this.
- sysThreadAvailableStackWithSlack;
-
- # This is for Forte Analyzer profiling support.
- AsyncGetCallTrace;
-
- # INSERT VTABLE SYMBOLS HERE
-
- local:
- *;
-};
-
--- a/hotspot/make/bsd/makefiles/minimal1.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-#
-# Copyright (c) 2012, 2013, 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.
-#
-# 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.
-#
-#
-
-TYPE=MINIMAL1
-
-# Force all variables to false, overriding any other
-# setting that may have occurred in the makefiles. These
-# can still be overridden by passing the variable as an
-# argument to 'make'
-INCLUDE_JVMTI := false
-INCLUDE_FPROF := false
-INCLUDE_VM_STRUCTS := false
-INCLUDE_JNI_CHECK := false
-INCLUDE_SERVICES := false
-INCLUDE_MANAGEMENT := false
-INCLUDE_ALL_GCS := false
-INCLUDE_NMT := false
-INCLUDE_TRACE := false
-INCLUDE_CDS := false
-INCLUDE_JVMCI := false
-
-CXXFLAGS += -DMINIMAL_JVM -DCOMPILER1 -DVMTYPE=\"Minimal\"
-CFLAGS += -DMINIMAL_JVM -DCOMPILER1 -DVMTYPE=\"Minimal\"
-
-Src_Dirs/MINIMAL1 = $(CORE_PATHS) $(COMPILER1_PATHS)
-
-Src_Files_EXCLUDE/MINIMAL1 += $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-
--include $(HS_ALT_MAKE)/$(OSNAME)/makefiles/minimal1.make
-
-.PHONY: $(HS_ALT_MAKE)/$(OSNAME)/makefiles/minimal1.make
--- a/hotspot/make/bsd/makefiles/optimized.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-#
-# Copyright (c) 1999, 2012, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making optimized version of HotSpot VM
-# (This is the "product", not the "release" version.)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-debug
-ifeq ($(OS_VENDOR), Darwin)
-MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-darwin-debug
-endif
-
-VERSION = optimized
--- a/hotspot/make/bsd/makefiles/ppc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-#
-# Copyright (c) 2004, 2011, 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.
-#
-# 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.
-#
-#
-
-# The copied fdlibm routines in sharedRuntimeTrig.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
-
-# Must also specify if CPU is big endian
-CFLAGS += -DVM_BIG_ENDIAN
-
--- a/hotspot/make/bsd/makefiles/product.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making optimized version of HotSpot VM
-# (This is the "product", not the "release" version.)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-product
-ifeq ($(OS_VENDOR), Darwin)
-MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-darwin-product
-endif
-
-SYSDEFS += -DPRODUCT
-VERSION = optimized
-
-ifneq ($(OS_VENDOR), Darwin)
- # use -g to strip library as -x will discard its symbol table; -x is fine for
- # executables.
- ifdef CROSS_COMPILE_ARCH
- STRIP = $(ALT_COMPILER_PATH)/strip
- else
- STRIP = strip
- endif
- STRIP_LIBJVM = $(STRIP) -g $@ || exit 1;
- STRIP_AOUT = $(STRIP) -x $@ || exit 1;
-
- # Don't strip in VM build; JDK build will strip libraries later
- # LINK_LIB.CXX/POST_HOOK += $(STRIP_$(LINK_INTO))
-endif
--- a/hotspot/make/bsd/makefiles/rules.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,212 +0,0 @@
-#
-# Copyright (c) 2003, 2015, 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.
-#
-# 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.
-#
-#
-
-# Common rules/macros for the vm, adlc.
-
-# Tell make that .cpp is important
-.SUFFIXES: .cpp $(SUFFIXES)
-
-DEMANGLER = c++filt
-DEMANGLE = $(DEMANGLER) < $@ > .$@ && $(MV) -f .$@ $@
-
-# $(CC) is the c compiler (cc/gcc), $(CXX) is the c++ compiler (CC/g++).
-CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS)
-CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS)
-
-AS.S = $(AS) $(ASFLAGS)
-
-COMPILE.CC = $(CC_COMPILE) -c
-GENASM.CC = $(CC_COMPILE) -S
-LINK.CC = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
-ifeq ($(STATIC_BUILD),true)
-LINK_LIB.CC = $(AR) $(ARFLAGS)
-else
-LINK_LIB.CC = $(CC) $(LFLAGS) $(SHARED_FLAG)
-endif
-PREPROCESS.CC = $(CC_COMPILE) -E
-
-COMPILE.CXX = $(CXX_COMPILE) -c
-GENASM.CXX = $(CXX_COMPILE) -S
-LINK.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
-LINK_NOPROF.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS)
-LINK_LIB.CXX = $(CXX) $(LFLAGS) $(SHARED_FLAG)
-PREPROCESS.CXX = $(CXX_COMPILE) -E
-
-# cross compiling the jvm with c2 requires host compilers to build
-# adlc tool
-
-HOST.CXX_COMPILE = $(HOSTCXX) $(CXXFLAGS) $(CFLAGS)
-HOST.COMPILE.CXX = $(HOST.CXX_COMPILE) -c
-HOST.LINK_NOPROF.CXX = $(HOSTCXX) $(LFLAGS) $(AOUT_FLAGS)
-
-
-# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
-REMOVE_TARGET = rm -f $@
-
-# Note use of ALT_BOOTDIR to explicitly specify location of java and
-# javac; this is the same environment variable used in the J2SE build
-# process for overriding the default spec, which is BOOTDIR.
-# Note also that we fall back to using JAVA_HOME if neither of these is
-# specified.
-
-ifdef ALT_BOOTDIR
-
-RUN.JAVA = $(ALT_BOOTDIR)/bin/java
-RUN.JAVAP = $(ALT_BOOTDIR)/bin/javap
-RUN.JAVAH = $(ALT_BOOTDIR)/bin/javah
-RUN.JAR = $(ALT_BOOTDIR)/bin/jar
-COMPILE.JAVAC = $(ALT_BOOTDIR)/bin/javac
-COMPILE.RMIC = $(ALT_BOOTDIR)/bin/rmic
-BOOT_JAVA_HOME = $(ALT_BOOTDIR)
-
-else
-
-ifdef BOOTDIR
-
-RUN.JAVA = $(BOOTDIR)/bin/java
-RUN.JAVAP = $(BOOTDIR)/bin/javap
-RUN.JAVAH = $(BOOTDIR)/bin/javah
-RUN.JAR = $(BOOTDIR)/bin/jar
-COMPILE.JAVAC = $(BOOTDIR)/bin/javac
-COMPILE.RMIC = $(BOOTDIR)/bin/rmic
-BOOT_JAVA_HOME = $(BOOTDIR)
-
-else
-
-ifdef JAVA_HOME
-
-RUN.JAVA = $(JAVA_HOME)/bin/java
-RUN.JAVAP = $(JAVA_HOME)/bin/javap
-RUN.JAVAH = $(JAVA_HOME)/bin/javah
-RUN.JAR = $(JAVA_HOME)/bin/jar
-COMPILE.JAVAC = $(JAVA_HOME)/bin/javac
-COMPILE.RMIC = $(JAVA_HOME)/bin/rmic
-BOOT_JAVA_HOME = $(JAVA_HOME)
-
-else
-
-# take from the PATH, if ALT_BOOTDIR, BOOTDIR and JAVA_HOME are not defined
-
-RUN.JAVA = java
-RUN.JAVAP = javap
-RUN.JAVAH = javah
-RUN.JAR = jar
-COMPILE.JAVAC = javac
-COMPILE.RMIC = rmic
-
-endif
-endif
-endif
-
-COMPILE.JAVAC += $(BOOTSTRAP_JAVAC_FLAGS)
-
-SUM = /usr/bin/sum
-
-# 'gmake MAKE_VERBOSE=y' gives all the gory details.
-QUIETLY$(MAKE_VERBOSE) = @
-RUN.JAR$(MAKE_VERBOSE) += >/dev/null
-
-# Settings for javac
-JAVAC_FLAGS = -g -encoding ascii
-
-# Prefer BOOT_JDK_SOURCETARGET if it's set (typically by the top build system)
-# Fall back to the values here if it's not set (hotspot only builds)
-ifeq ($(BOOT_JDK_SOURCETARGET),)
-BOOTSTRAP_SOURCETARGET := -source 8 -target 8
-else
-BOOTSTRAP_SOURCETARGET := $(BOOT_JDK_SOURCETARGET)
-endif
-
-BOOTSTRAP_JAVAC_FLAGS = $(JAVAC_FLAGS) $(BOOTSTRAP_SOURCETARGET)
-
-# With parallel makes, print a message at the end of compilation.
-ifeq ($(findstring j,$(MFLAGS)),j)
-COMPILE_DONE = && { echo Done with $<; }
-endif
-
-# Include $(NONPIC_OBJ_FILES) definition
-ifndef LP64
-include $(GAMMADIR)/make/pic.make
-endif
-
-include $(GAMMADIR)/make/altsrc.make
-
-# The non-PIC object files are only generated for 32 bit platforms.
-ifdef LP64
-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
-else
-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
- $(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
- $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
-endif
-
-%.o: %.s
- @echo $(LOG_INFO) Assembling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(AS.S) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
-
-%.s: %.cpp
- @echo $(LOG_INFO) Generating assembly for $<
- $(QUIETLY) $(GENASM.CXX) -o $@ $<
- $(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
-
-# Intermediate files (for debugging macros)
-%.i: %.cpp
- @echo $(LOG_INFO) Preprocessing $< to $@
- $(QUIETLY) $(PREPROCESS.CXX) $< > $@ $(COMPILE_DONE)
-
-# Override gnumake built-in rules which do sccs get operations badly.
-# (They put the checked out code in the current directory, not in the
-# directory of the original file.) Since this is a symptom of a teamware
-# failure, and since not all problems can be detected by gnumake due
-# to incomplete dependency checking... just complain and stop.
-%:: s.%
- @echo "========================================================="
- @echo File $@
- @echo is out of date with respect to its SCCS file.
- @echo This file may be from an unresolved Teamware conflict.
- @echo This is also a symptom of a Teamware bringover/putback failure
- @echo in which SCCS files are updated but not checked out.
- @echo Check for other out of date files in your workspace.
- @echo "========================================================="
- @exit 666
-
-%:: SCCS/s.%
- @echo "========================================================="
- @echo File $@
- @echo is out of date with respect to its SCCS file.
- @echo This file may be from an unresolved Teamware conflict.
- @echo This is also a symptom of a Teamware bringover/putback failure
- @echo in which SCCS files are updated but not checked out.
- @echo Check for other out of date files in your workspace.
- @echo "========================================================="
- @exit 666
-
-.PHONY: default
--- a/hotspot/make/bsd/makefiles/shark.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-#
-# 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.
-#
-# 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making Shark version of VM
-
-TYPE = SHARK
-
-VM_SUBDIR = server
-
-CFLAGS += -DSHARK
--- a/hotspot/make/bsd/makefiles/sparc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
--- a/hotspot/make/bsd/makefiles/sparcWorks.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,107 +0,0 @@
-#
-# Copyright (c) 1999, 2012, 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.
-#
-# 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.
-#
-#
-
-#------------------------------------------------------------------------
-# CC, CXX & AS
-
-# If a SPEC is not set already, then use these defaults.
-ifeq ($(SPEC),)
- CXX = CC
- CC = cc
- AS = $(CC) -c
-
- HOSTCXX = $(CXX)
- HOSTCC = $(CC)
-endif
-
-ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
-ARCHFLAG/i486 = -m32
-ARCHFLAG/amd64 = -m64
-
-CFLAGS += $(ARCHFLAG)
-AOUT_FLAGS += $(ARCHFLAG)
-LFLAGS += $(ARCHFLAG)
-ASFLAGS += $(ARCHFLAG)
-
-#------------------------------------------------------------------------
-# Compiler flags
-
-# position-independent code
-PICFLAG = -KPIC
-
-CFLAGS += $(PICFLAG)
-# no more exceptions
-CFLAGS += -features=no%except
-# Reduce code bloat by reverting back to 5.0 behavior for static initializers
-CFLAGS += -features=no%split_init
-# allow zero sized arrays
-CFLAGS += -features=zla
-
-# Use C++ Interpreter
-ifdef CC_INTERP
- CFLAGS += -DCC_INTERP
-endif
-
-# We don't need libCstd.so and librwtools7.so, only libCrun.so
-CFLAGS += -library=Crun
-LIBS += -lCrun
-
-CFLAGS += -mt
-LFLAGS += -mt
-
-# Compiler warnings are treated as errors
-#WARNINGS_ARE_ERRORS = -errwarn=%all
-CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS)
-# Special cases
-CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
-
-# The flags to use for an Optimized build
-OPT_CFLAGS+=-xO4
-OPT_CFLAGS/NOOPT=-xO0
-
-# Flags for creating the dependency files.
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1)
-DEPFLAGS = -xMMD -xMF $(DEP_DIR)/$(@:%=%.d)
-endif
-
-# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
-CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
-
-#------------------------------------------------------------------------
-# Linker flags
-
-# Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
-MAPFLAG = -Wl,--version-script=FILENAME
-
-# Use $(SONAMEFLAG:SONAME=soname) to specify the intrinsic name of a shared obj
-SONAMEFLAG = -h SONAME
-
-# Build shared library
-SHARED_FLAG = -G
-
-#------------------------------------------------------------------------
-# Debug flags
-DEBUG_CFLAGS += -g
-FASTDEBUG_CFLAGS = -g0
-
--- a/hotspot/make/bsd/makefiles/sparcv9.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-
-# gcc 4.0 miscompiles this code in -m64
-OPT_CFLAGS/macro.o = -O0
-
-CFLAGS += -D_LP64=1
--- a/hotspot/make/bsd/makefiles/tiered.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-#
-# Copyright (c) 2006, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making tiered version of VM
-
-TYPE=TIERED
-
-VM_SUBDIR = server
-
-CFLAGS += -DCOMPILER2 -DCOMPILER1
--- a/hotspot/make/bsd/makefiles/top.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,156 +0,0 @@
-#
-# Copyright (c) 1999, 2014, 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.
-#
-# 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.
-#
-#
-
-# top.make is included in the Makefile in the build directories.
-# It DOES NOT include the vm dependency info in order to be faster.
-# Its main job is to implement the incremental form of make lists.
-# It also:
-# -builds and runs adlc via adlc.make
-# -generates JVMTI source and docs via jvmti.make (JSR-163)
-
-# It assumes the following flags are set:
-# CFLAGS Platform_file, Src_Dirs_I, Src_Dirs_V, SYSDEFS, AOUT, Obj_Files
-
-# -- D. Ungar (5/97) from a file by Bill Bush
-
-# Don't override the built-in $(MAKE).
-# Instead, use "gmake" (or "gnumake") from the command line. --Rose
-#MAKE = gmake
-
-include $(GAMMADIR)/make/altsrc.make
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-VM = $(GAMMADIR)/src/share/vm
-Plat_File = $(Platform_file)
-CDG = cd $(GENERATED);
-
-ifneq ($(USE_PRECOMPILED_HEADER),0)
-UpdatePCH = $(MAKE) -f vm.make $(PRECOMPILED_HEADER) $(MFLAGS)
-else
-UpdatePCH = \# precompiled header is not used
-endif
-
-Cached_plat = $(GENERATED)/platform.current
-
-AD_Dir = $(GENERATED)/adfiles
-ADLC = $(AD_Dir)/adlc
-AD_Spec = $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad)
-AD_Src = $(call altsrc-replace,$(HS_COMMON_SRC)/share/vm/adlc)
-AD_Names = ad_$(Platform_arch_model).hpp ad_$(Platform_arch_model).cpp
-AD_Files = $(AD_Names:%=$(AD_Dir)/%)
-
-# AD_Files_If_Required/COMPILER1 = ad_stuff
-AD_Files_If_Required/COMPILER2 = ad_stuff
-AD_Files_If_Required/TIERED = ad_stuff
-AD_Files_If_Required = $(AD_Files_If_Required/$(TYPE))
-
-# Wierd argument adjustment for "gnumake -j..."
-adjust-mflags = $(GENERATED)/adjust-mflags
-# If SPEC is set, it's from configure and it's already controlling concurrency
-# for us. Skip setting -j with HOTSPOT_BUILD_JOBS.
-ifeq ($(SPEC), )
- MFLAGS-adjusted = -r `$(adjust-mflags) "$(MFLAGS)" "$(HOTSPOT_BUILD_JOBS)"`
-else
- MFLAGS-adjusted = -r $(MFLAGS)
-endif
-
-
-# default target: update lists, make vm
-# done in stages to force sequential order with parallel make
-#
-
-default: vm_build_preliminaries the_vm
- @echo All done.
-
-# This is an explicit dependency for the sake of parallel makes.
-vm_build_preliminaries: checks $(Cached_plat) $(AD_Files_If_Required) jvmti_stuff trace_stuff dtrace_stuff
- @# We need a null action here, so implicit rules don't get consulted.
-
-$(Cached_plat): $(Plat_File)
- $(CDG) $(CP) $(Plat_File) $(Cached_plat)
-
-# make AD files as necessary
-ad_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f adlc.make $(MFLAGS-adjusted)
-
-# generate JVMTI files from the spec
-jvmti_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f jvmti.make $(MFLAGS-adjusted)
-
-# generate trace files
-trace_stuff: jvmti_stuff $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f trace.make $(MFLAGS-adjusted)
-
-ifeq ($(OS_VENDOR), Darwin)
-# generate dtrace header files
-dtrace_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f dtrace.make dtrace_stuff $(MFLAGS-adjusted) GENERATED=$(GENERATED)
-else
-dtrace_stuff:
- @# We need a null action here, so implicit rules don't get consulted.
-endif
-
-# and the VM: must use other makefile with dependencies included
-
-# We have to go to great lengths to get control over the -jN argument
-# to the recursive invocation of vm.make. The problem is that gnumake
-# resets -jN to -j1 for recursive runs. (How helpful.)
-# Note that the user must specify the desired parallelism level via a
-# command-line or environment variable name HOTSPOT_BUILD_JOBS.
-$(adjust-mflags): $(GAMMADIR)/make/$(Platform_os_family)/makefiles/adjust-mflags.sh
- @+rm -f $@ $@+
- @+cat $< > $@+
- @+chmod +x $@+
- @+mv $@+ $@
-
-the_vm: vm_build_preliminaries $(adjust-mflags)
- +@$(UpdatePCH)
- @$(MAKE) -f vm.make $(MFLAGS-adjusted)
-
-install : the_vm
- @$(MAKE) -f vm.make $@
-
-# next rules support "make foo.[ois]"
-
-%.o %.i %.s:
- +$(UpdatePCH)
- $(MAKE) -f vm.make $(MFLAGS) $@
- #$(MAKE) -f vm.make $@
-
-# this should force everything to be rebuilt
-clean:
- rm -f $(GENERATED)/*.class
- $(MAKE) -f vm.make $(MFLAGS) clean
-
-# just in case it doesn't, this should do it
-realclean:
- $(MAKE) -f vm.make $(MFLAGS) clean
- rm -fr $(GENERATED)
-
-.PHONY: default vm_build_preliminaries
-.PHONY: lists ad_stuff jvmti_stuff the_vm clean realclean
-.PHONY: checks check_os_version install
-
-.NOTPARALLEL:
--- a/hotspot/make/bsd/makefiles/trace.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-#
-# Copyright (c) 2003, 2016, 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.
-#
-# 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.
-#
-#
-
-# This makefile (trace.make) is included from the trace.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate trace files.
-
-include $(GAMMADIR)/make/bsd/makefiles/rules.make
-include $(GAMMADIR)/make/altsrc.make
-
-# #########################################################################
-
-HAS_ALT_SRC := false
-ifndef OPENJDK
- ifneq ($(wildcard $(HS_ALT_SRC)/share/vm/trace), )
- HAS_ALT_SRC := true
- endif
-endif
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-JvmtiOutDir = $(GENERATED)/jvmtifiles
-TraceOutDir = $(GENERATED)/tracefiles
-
-TraceAltSrcDir = $(HS_ALT_SRC)/share/vm/trace
-TraceSrcDir = $(HS_COMMON_SRC)/share/vm/trace
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(TraceSrcDir) $(TraceAltSrcDir)
-VPATH += $(Src_Dirs_V:%=%:)
-
-TraceGeneratedNames = \
- traceEventClasses.hpp \
- traceEventIds.hpp \
- traceTypes.hpp
-
-ifeq ($(HAS_ALT_SRC), true)
-TraceGeneratedNames += \
- traceRequestables.hpp \
- traceEventControl.hpp
-endif
-
-TraceGeneratedFiles = $(TraceGeneratedNames:%=$(TraceOutDir)/%)
-
-XSLT = $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-TraceXml = $(TraceSrcDir)/trace.xml
-ifeq ($(HAS_ALT_SRC), true)
- TraceXml = $(TraceAltSrcDir)/trace.xml
-endif
-
-XML_DEPS = $(TraceXml) $(TraceSrcDir)/tracetypes.xml \
- $(TraceSrcDir)/trace.dtd $(TraceSrcDir)/xinclude.mod \
- $(TraceSrcDir)/tracerelationdecls.xml $(TraceSrcDir)/traceevents.xml
-ifeq ($(HAS_ALT_SRC), true)
- XML_DEPS += $(TraceAltSrcDir)/traceeventscustom.xml \
- $(TraceAltSrcDir)/traceeventtypes.xml
-endif
-
-.PHONY: all clean cleanall
-
-# #########################################################################
-
-all: $(TraceGeneratedFiles)
-
-GENERATE_CODE= \
- $(QUIETLY) echo $(LOG_INFO) Generating $@; \
- $(XSLT) -IN $(word 1,$^) -XSL $(word 2,$^) -OUT $@
-
-$(TraceOutDir)/traceEventIds.hpp: $(TraceXml) $(TraceSrcDir)/traceEventIds.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceTypes.hpp: $(TraceXml) $(TraceSrcDir)/traceTypes.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-ifeq ($(HAS_ALT_SRC), false)
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceXml) $(TraceSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-else
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceXml) $(TraceAltSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceRequestables.hpp: $(TraceXml) $(TraceAltSrcDir)/traceRequestables.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceEventControl.hpp: $(TraceXml) $(TraceAltSrcDir)/traceEventControl.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-endif
-
-# #########################################################################
-
-clean cleanall:
- rm $(TraceGeneratedFiles)
--- a/hotspot/make/bsd/makefiles/universal.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,126 +0,0 @@
-#
-# Copyright (c) 2006, 2013, 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.
-#
-# 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.
-#
-#
-
-# macosx universal builds
-universal_product:
- $(MAKE) MACOSX_UNIVERSAL=true all_product_universal
-universal_optimized:
- $(MAKE) MACOSX_UNIVERSAL=true all_optimized_universal
-universal_fastdebug:
- $(MAKE) MACOSX_UNIVERSAL=true all_fastdebug_universal
-universal_debug:
- $(MAKE) MACOSX_UNIVERSAL=true all_debug_universal
-
-
-# Universal builds include 1 or more architectures in a single binary
-all_product_universal:
-# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_PRODUCT_TARGETS)
- $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_PRODUCT_TARGETS)
- $(QUIETLY) $(MAKE) BUILD_FLAVOR=product EXPORT_SUBDIR= universalize
-all_optimized_universal:
-# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_OPTIMIZED_TARGETS)
- $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_OPTIMIZED_TARGETS)
- $(QUIETLY) $(MAKE) BUILD_FLAVOR=optimized EXPORT_SUBDIR=/optimized universalize
-all_fastdebug_universal:
-# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_FASTDEBUG_TARGETS)
- $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_FASTDEBUG_TARGETS)
- $(QUIETLY) $(MAKE) BUILD_FLAVOR=fastdebug EXPORT_SUBDIR=/fastdebug universalize
-all_debug_universal:
-# $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=32 $(COMMON_VM_DEBUG_TARGETS)
- $(QUIETLY) $(MAKE) ARCH_DATA_MODEL=64 $(COMMON_VM_DEBUG_TARGETS)
- $(QUIETLY) $(MAKE) BUILD_FLAVOR=debug EXPORT_SUBDIR=/debug universalize
-
-
-# Consolidate architecture builds into a single Universal binary
-universalize: $(UNIVERSAL_LIPO_LIST) $(UNIVERSAL_COPY_LIST)
- $(RM) -r $(EXPORT_PATH)/lib/{i386,amd64}
-
-LIPO ?= lipo
-
-# Package built libraries in a universal binary
-$(UNIVERSAL_LIPO_LIST):
- BUILT_LIPO_FILES="`find $(EXPORT_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_LIB_DIR)/,,$@) 2>/dev/null`" || test $$? = "1"; \
- if [ -n "$${BUILT_LIPO_FILES}" ]; then \
- $(MKDIR) -p $(shell dirname $@); \
- $(LIPO) -create -output $@ $${BUILT_LIPO_FILES}; \
- fi
-
-
-# Copy built non-universal binaries in place
-# - copies directories; including empty dirs
-# - copies files, symlinks, other non-directory files
-$(UNIVERSAL_COPY_LIST):
- BUILT_COPY_FILES="`find $(EXPORT_LIB_DIR)/{i386,amd64}/$(subst $(EXPORT_LIB_DIR)/,,$@) -prune 2>/dev/null`" || test $$? = "1"; \
- if [ -n "$${BUILT_COPY_FILES}" ]; then \
- for i in $${BUILT_COPY_FILES}; do \
- $(MKDIR) -p $(shell dirname $@); \
- $(CP) -R $${i} $@; \
- done; \
- fi
-
-
-# Replace arch specific binaries with universal binaries
-# Do not touch lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
-# That symbolic link belongs to the 'jdk' build.
-export_universal:
- $(RM) -r $(EXPORT_PATH)/lib/{i386,amd64}
- $(RM) -r $(JDK_IMAGE_DIR)/lib/{i386,amd64}
- ($(CD) $(EXPORT_PATH) && \
- $(TAR) -cf - *) | \
- ($(CD) $(JDK_IMAGE_DIR) && $(TAR) -xpf -)
-
-
-# Overlay universal binaries
-# Do not touch lib/{client,server}/libjsig.$(LIBRARY_SUFFIX)
-# That symbolic link belongs to the 'jdk' build.
-copy_universal:
- $(RM) -r $(JDK_IMAGE_DIR)$(COPY_SUBDIR)/lib/{i386,amd64}
- ($(CD) $(EXPORT_PATH)$(COPY_SUBDIR) && \
- $(TAR) -cf - *) | \
- ($(CD) $(JDK_IMAGE_DIR)$(COPY_SUBDIR) && $(TAR) -xpf -)
-
-
-# Additional processing for universal builds
-export_product_jdk::
- $(MAKE) EXPORT_SUBDIR= export_universal
-export_optimized_jdk::
- $(MAKE) EXPORT_SUBDIR=/optimized export_universal
-export_fastdebug_jdk::
- $(MAKE) EXPORT_SUBDIR=/fastdebug export_universal
-export_debug_jdk::
- $(MAKE) EXPORT_SUBDIR=/debug export_universal
-copy_product_jdk::
- $(MAKE) COPY_SUBDIR= copy_universal
-copy_optimized_jdk::
- $(MAKE) COPY_SUBDIR=/optimized copy_universal
-copy_fastdebug_jdk::
- $(MAKE) COPY_SUBDIR=/fastdebug copy_universal
-copy_debug_jdk::
- $(MAKE) COPY_SUBDIR=/debug copy_universal
-
-.PHONY: universal_product universal_fastdebug universal_debug \
- all_product_universal all_fastdebug_universal all_debug_universal \
- universal_optimized all_optimized_universal \
- universalize export_universal copy_universal \
- $(UNIVERSAL_LIPO_LIST) $(UNIVERSAL_COPY_LIST)
--- a/hotspot/make/bsd/makefiles/vm.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,438 +0,0 @@
-#
-# Copyright (c) 1999, 2015, 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.
-#
-# 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.
-#
-#
-
-# Rules to build JVM and related libraries, included from vm.make in the build
-# directory.
-
-# Common build rules.
-MAKEFILES_DIR=$(GAMMADIR)/make/$(Platform_os_family)/makefiles
-include $(MAKEFILES_DIR)/rules.make
-include $(GAMMADIR)/make/altsrc.make
-
-default: build
-
-#----------------------------------------------------------------------
-# Defs
-
-GENERATED = ../generated
-DEP_DIR = $(GENERATED)/dependencies
-
-# reads the generated files defining the set of .o's and the .o .h dependencies
--include $(DEP_DIR)/*.d
-
-# read machine-specific adjustments (%%% should do this via buildtree.make?)
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- include $(MAKEFILES_DIR)/zeroshark.make
-else
- include $(MAKEFILES_DIR)/$(BUILDARCH).make
-endif
-
-# set VPATH so make knows where to look for source files
-# Src_Dirs_V is everything in src/share/vm/*, plus the right os/*/vm and cpu/*/vm
-# The adfiles directory contains ad_<arch>.[ch]pp.
-# The jvmtifiles directory contains jvmti*.[ch]pp
-Src_Dirs_V += $(GENERATED)/adfiles $(GENERATED)/jvmtifiles $(GENERATED)/tracefiles
-VPATH += $(Src_Dirs_V:%=%:)
-
-# set INCLUDES for C preprocessor.
-Src_Dirs_I += $(GENERATED)
-# The order is important for the precompiled headers to work.
-INCLUDES += $(PRECOMPILED_HEADER_DIR:%=-I%) $(Src_Dirs_I:%=-I%)
-
-# SYMFLAG is used by jsig.make
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- # always build with debug info when we can create .dSYM/.debuginfo files
- SYMFLAG = -g
-else
- ifeq (${VERSION}, debug)
- SYMFLAG = -g
- else
- SYMFLAG =
- endif
-endif
-
-# The following variables are defined in the generated flags.make file.
-JDK_VER_DEFS = -DVERSION_MAJOR=$(VERSION_MAJOR) \
- -DVERSION_MINOR=$(VERSION_MINOR) \
- -DVERSION_SECURITY=$(VERSION_SECURITY) \
- -DVERSION_PATCH=$(VERSION_PATCH) \
- -DVERSION_BUILD=$(VERSION_BUILD)
-VM_VER_DEFS = -DHOTSPOT_VERSION_STRING="\"$(HOTSPOT_VERSION_STRING)\"" \
- -DVERSION_STRING="\"$(VERSION_STRING)\"" \
- -DDEBUG_LEVEL="\"$(DEBUG_LEVEL)\"" \
- $(JDK_VER_DEFS)
-HS_LIB_ARCH = -DHOTSPOT_LIB_ARCH=\"$(LIBARCH)\"
-BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
-VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
-
-CXXFLAGS = \
- ${SYSDEFS} \
- ${INCLUDES} \
- ${BUILD_USER} \
- ${HS_LIB_ARCH} \
- ${VM_DISTRO}
-
-# This is VERY important! The version define must only be supplied to vm_version.o
-# If not, ccache will not re-use the cache at all, since the version string might contain
-# a time and date.
-CXXFLAGS/vm_version.o += ${VM_VER_DEFS}
-
-CXXFLAGS/BYFILE = $(CXXFLAGS/$@)
-
-# File specific flags
-CXXFLAGS += $(CXXFLAGS/BYFILE)
-
-ifdef DEFAULT_LIBPATH
-CXXFLAGS += -DDEFAULT_LIBPATH="\"$(DEFAULT_LIBPATH)\""
-endif
-
-# CFLAGS_WARN holds compiler options to suppress/enable warnings.
-CFLAGS += $(CFLAGS_WARN/BYFILE)
-
-# Do not use C++ exception handling
-CFLAGS += $(CFLAGS/NOEX)
-
-# Extra flags from gnumake's invocation or environment
-CFLAGS += $(EXTRA_CFLAGS)
-LFLAGS += $(EXTRA_CFLAGS)
-
-# Don't set excutable bit on stack segment
-# the same could be done by separate execstack command
-# Darwin is non-executable-stack by default
-ifneq ($(OS_VENDOR), Darwin)
-LFLAGS += -Xlinker -z -Xlinker noexecstack
-endif
-
-LIBS += -lm
-
-ifeq ($(USE_CLANG),)
- LIBS += -pthread
-endif
-
-# By default, link the *.o into the library, not the executable.
-LINK_INTO$(LINK_INTO) = LIBJVM
-
-JDK_LIBDIR = $(JAVA_HOME)/lib/$(LIBARCH)
-
-#----------------------------------------------------------------------
-# jvm_db & dtrace
-include $(MAKEFILES_DIR)/dtrace.make
-
-#----------------------------------------------------------------------
-# JVM
-
-JVM = jvm
-ifeq ($(OS_VENDOR), Darwin)
- LIBJVM = lib$(JVM).$(LIBRARY_SUFFIX)
- CFLAGS += -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE
-
- LIBJVM_DEBUGINFO = lib$(JVM).$(LIBRARY_SUFFIX).dSYM
- LIBJVM_DIZ = lib$(JVM).diz
-else
- LIBJVM = lib$(JVM).so
-
- LIBJVM_DEBUGINFO = lib$(JVM).debuginfo
- LIBJVM_DIZ = lib$(JVM).diz
-endif
-
-SPECIAL_PATHS:=adlc c1 gc opto shark libadt
-
-SOURCE_PATHS=\
- $(shell find $(HS_COMMON_SRC)/share/vm/* -type d \! \
- \( -name DUMMY $(foreach dir,$(SPECIAL_PATHS),-o -name $(dir)) \))
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os/$(Platform_os_family)/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os/posix/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
-
-CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
-CORE_PATHS+=$(GENERATED)/jvmtifiles $(GENERATED)/tracefiles
-
-ifneq ($(INCLUDE_TRACE), false)
-CORE_PATHS+=$(shell if [ -d $(HS_ALT_SRC)/share/vm/jfr ]; then \
- find $(HS_ALT_SRC)/share/vm/jfr -type d; \
- fi)
-endif
-
-COMPILER1_PATHS := $(call altsrc,$(HS_COMMON_SRC)/share/vm/c1)
-COMPILER1_PATHS += $(HS_COMMON_SRC)/share/vm/c1
-
-COMPILER2_PATHS := $(call altsrc,$(HS_COMMON_SRC)/share/vm/opto)
-COMPILER2_PATHS += $(call altsrc,$(HS_COMMON_SRC)/share/vm/libadt)
-COMPILER2_PATHS += $(HS_COMMON_SRC)/share/vm/opto
-COMPILER2_PATHS += $(HS_COMMON_SRC)/share/vm/libadt
-COMPILER2_PATHS += $(GENERATED)/adfiles
-
-SHARK_PATHS := $(GAMMADIR)/src/share/vm/shark
-
-# Include dirs per type.
-Src_Dirs/CORE := $(CORE_PATHS)
-Src_Dirs/COMPILER1 := $(CORE_PATHS) $(COMPILER1_PATHS)
-Src_Dirs/COMPILER2 := $(CORE_PATHS) $(COMPILER2_PATHS)
-Src_Dirs/TIERED := $(CORE_PATHS) $(COMPILER1_PATHS) $(COMPILER2_PATHS)
-Src_Dirs/ZERO := $(CORE_PATHS)
-Src_Dirs/SHARK := $(CORE_PATHS) $(SHARK_PATHS)
-Src_Dirs := $(Src_Dirs/$(TYPE))
-
-COMPILER2_SPECIFIC_FILES := opto libadt bcEscapeAnalyzer.cpp c2_\* runtime_\*
-COMPILER1_SPECIFIC_FILES := c1_\*
-SHARK_SPECIFIC_FILES := shark
-ZERO_SPECIFIC_FILES := zero
-
-# Always exclude these.
-Src_Files_EXCLUDE += jsig.c jvmtiEnvRecommended.cpp jvmtiEnvStub.cpp
-
-# Exclude per type.
-Src_Files_EXCLUDE/CORE := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/COMPILER1 := $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/COMPILER2 := $(COMPILER1_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES)
-Src_Files_EXCLUDE/TIERED := $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES)
-Src_Files_EXCLUDE/ZERO := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/SHARK := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES)
-
-Src_Files_EXCLUDE += $(Src_Files_EXCLUDE/$(TYPE))
-
-# Special handling of arch model.
-ifeq ($(Platform_arch_model), x86_32)
-Src_Files_EXCLUDE += \*x86_64\*
-endif
-ifeq ($(Platform_arch_model), x86_64)
-Src_Files_EXCLUDE += \*x86_32\*
-endif
-
-# Locate all source files in the given directory, excluding files in Src_Files_EXCLUDE.
-define findsrc
- $(notdir $(shell find $(1)/. ! -name . -prune \
- -a \( -name \*.c -o -name \*.cpp -o -name \*.s \) \
- -a ! \( -name DUMMY $(addprefix -o -name ,$(Src_Files_EXCLUDE)) \)))
-endef
-
-Src_Files := $(foreach e,$(Src_Dirs),$(call findsrc,$(e)))
-
-Obj_Files = $(sort $(addsuffix .o,$(basename $(Src_Files))))
-
-JVM_OBJ_FILES = $(Obj_Files)
-
-vm_version.o: $(filter-out vm_version.o,$(JVM_OBJ_FILES))
-
-MAPFILE_SHARE := $(GAMMADIR)/make/share/makefiles/mapfile-vers
-
-MAPFILE_EXT_SRC := $(HS_ALT_MAKE)/share/makefiles/mapfile-ext
-ifneq ("$(wildcard $(MAPFILE_EXT_SRC))","")
-MAPFILE_EXT := $(MAPFILE_EXT_SRC)
-endif
-
-# For Darwin: add _ prefix and remove trailing ;
-mapfile_extra: $(MAPFILE_SHARE) $(MAPFILE_EXT)
- rm -f $@
-ifeq ($(OS_VENDOR), Darwin)
- cat $(MAPFILE_SHARE) $(MAPFILE_EXT) | \
- sed -e 's/#.*//g' -e 's/[ ]*//g' -e 's/;//g' | \
- awk '{ if ($$0 ~ ".") { print "\t\t_" $$0 } }' \
- > $@
-else
- cat $(MAPFILE_SHARE) $(MAPFILE_EXT) > $@
-endif
-
-mapfile : $(MAPFILE) mapfile_extra vm.def
- rm -f $@
- awk '{ if ($$0 ~ "INSERT VTABLE SYMBOLS HERE") \
- { system ("cat mapfile_extra vm.def"); } \
- else \
- { print $$0 } \
- }' > $@ < $(MAPFILE)
-
-ifeq ($(STATIC_BUILD),true)
-EXPORTED_SYMBOLS = libjvm.symbols
-
-libjvm.symbols : mapfile
- $(CP) mapfile libjvm.symbols
-
-else
-EXPORTED_SYMBOLS =
-endif
-
-mapfile_reorder : mapfile $(REORDERFILE)
- rm -f $@
- cat $^ > $@
-
-vm.def: $(Res_Files) $(Obj_Files)
- sh $(GAMMADIR)/make/bsd/makefiles/build_vm_def.sh *.o > $@
-
-mapfile_ext:
- rm -f $@
- touch $@
- if [ -f $(HS_ALT_MAKE)/bsd/makefiles/mapfile-ext ]; then \
- cat $(HS_ALT_MAKE)/bsd/makefiles/mapfile-ext > $@; \
- fi
-
-STATIC_CXX = false
-
-ifeq ($(LINK_INTO),AOUT)
- LIBJVM.o =
- LIBJVM_MAPFILE =
- LIBS_VM = $(LIBS)
-else
- LIBJVM.o = $(JVM_OBJ_FILES)
- LIBJVM_MAPFILE$(LDNOMAP) = mapfile_reorder
- LFLAGS_VM$(LDNOMAP) += $(MAPFLAG:FILENAME=$(LIBJVM_MAPFILE))
- LFLAGS_VM += $(SONAMEFLAG:SONAME=$(LIBJVM))
-
- ifeq ($(OS_VENDOR), Darwin)
- ifneq ($(STATIC_BUILD),true)
- LFLAGS_VM += -Xlinker -rpath -Xlinker @loader_path/.
- LFLAGS_VM += -Xlinker -rpath -Xlinker @loader_path/..
- LFLAGS_VM += -Xlinker -install_name -Xlinker @rpath/$(@F)
- endif
- else
- LFLAGS_VM += -Wl,-z,defs
- endif
-
- # JVM is statically linked with libgcc[_s] and libstdc++; this is needed to
- # get around library dependency and compatibility issues. Must use gcc not
- # g++ to link.
- ifeq ($(STATIC_CXX), true)
- LFLAGS_VM += $(STATIC_LIBGCC)
- LIBS_VM += $(STATIC_STDCXX)
- LINK_VM = $(LINK_LIB.CC)
- else
- LINK_VM = $(LINK_LIB.CXX)
- endif
-
- LIBS_VM += $(LIBS)
-endif
-ifeq ($(JVM_VARIANT_ZERO), true)
- LIBS_VM += $(LIBFFI_LIBS)
-endif
-ifeq ($(JVM_VARIANT_ZEROSHARK), true)
- LIBS_VM += $(LIBFFI_LIBS) $(LLVM_LIBS)
- LFLAGS_VM += $(LLVM_LDFLAGS)
-endif
-
-
-# rule for building precompiled header
-$(PRECOMPILED_HEADER):
- $(QUIETLY) echo $(LOG_INFO) Generating precompiled header $@
- $(QUIETLY) mkdir -p $(PRECOMPILED_HEADER_DIR)
- $(QUIETLY) rm -f $@
- $(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -x c++-header $(PRECOMPILED_HEADER_SRC) -o $@ $(COMPILE_DONE)
-
-# making the library:
-
-ifneq ($(JVM_BASE_ADDR),)
-# By default shared library is linked at base address == 0. Modify the
-# linker script if JVM prefers a different base location. It can also be
-# implemented with 'prelink -r'. But 'prelink' is not (yet) available on
-# our build platform (AS-2.1).
-LD_SCRIPT = libjvm.so.lds
-$(LD_SCRIPT): $(LIBJVM_MAPFILE)
- $(QUIETLY) { \
- rm -rf $@; \
- $(LINK_VM) -Wl,--verbose $(LFLAGS_VM) 2>&1 | \
- sed -e '/^======/,/^======/!d' \
- -e '/^======/d' \
- -e 's/0\( + SIZEOF_HEADERS\)/$(JVM_BASE_ADDR)\1/' \
- > $@; \
- }
-LD_SCRIPT_FLAG = -Wl,-T,$(LD_SCRIPT)
-endif
-
-$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
-ifeq ($(STATIC_BUILD),true)
- echo Linking static vm...;
- $(LINK_LIB.CC) $@ $(LIBJVM.o)
-else
- $(QUIETLY) { \
- echo $(LOG_INFO) Linking vm...; \
- $(LINK_LIB.CXX/PRE_HOOK) \
- $(LINK_VM) $(LD_SCRIPT_FLAG) \
- $(LFLAGS_VM) -o $@ $(sort $(LIBJVM.o)) $(LIBS_VM); \
- $(LINK_LIB.CXX/POST_HOOK) \
- rm -f $@.1; ln -s $@ $@.1; \
- }
-
-endif
-
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(OS_VENDOR), Darwin)
- $(DSYMUTIL) $@
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -r -y $(LIBJVM_DIZ) $(LIBJVM_DEBUGINFO)
- $(RM) -r $(LIBJVM_DEBUGINFO)
- endif
- else
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -g $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJVM_DIZ) $(LIBJVM_DEBUGINFO)
- $(RM) $(LIBJVM_DEBUGINFO)
- endif
- endif
-endif
-
-DEST_SUBDIR = $(JDK_LIBDIR)/$(VM_SUBDIR)
-DEST_JVM = $(DEST_SUBDIR)/$(LIBJVM)
-DEST_JVM_DEBUGINFO = $(DEST_SUBDIR)/$(LIBJVM_DEBUGINFO)
-DEST_JVM_DIZ = $(DEST_SUBDIR)/$(LIBJVM_DIZ)
-
-install_jvm: $(LIBJVM)
- @echo "Copying $(LIBJVM) to $(DEST_JVM)"
-ifeq ($(OS_VENDOR), Darwin)
- $(QUIETLY) test ! -d $(LIBJVM_DEBUGINFO) || \
- $(CP) -f -r $(LIBJVM_DEBUGINFO) $(DEST_JVM_DEBUGINFO)
-else
- $(QUIETLY) test ! -f $(LIBJVM_DEBUGINFO) || \
- $(CP) -f $(LIBJVM_DEBUGINFO) $(DEST_JVM_DEBUGINFO)
-endif
- $(QUIETLY) test ! -f $(LIBJVM_DIZ) || \
- $(CP) -f $(LIBJVM_DIZ) $(DEST_JVM_DIZ)
- $(QUIETLY) $(CP) -f $(LIBJVM) $(DEST_JVM) && echo "Done"
-
-#----------------------------------------------------------------------
-# Other files
-
-# Signal interposition library
-include $(MAKEFILES_DIR)/jsig.make
-
-#----------------------------------------------------------------------
-
-ifeq ($(OS_VENDOR), Darwin)
-# no libjvm_db for macosx
-build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) dtraceCheck $(EXPORTED_SYMBOLS)
- echo "Doing vm.make build:"
-else
-build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(LIBJVM_DB) $(EXPORTED_SYMBOLS)
-endif
-
-install: install_jvm install_jsigs
-
-.PHONY: default build install install_jvm
--- a/hotspot/make/bsd/makefiles/zero.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-#
-# Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
-# Copyright 2009 Red Hat, Inc.
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# This code is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# Setup for Zero (non-Shark) version of VM
-
-# Select which files to use (in top.make)
-TYPE = ZERO
-
-# Install libjvm.so, etc in in server directory.
-VM_SUBDIR = server
--- a/hotspot/make/bsd/makefiles/zeroshark.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-#
-# Copyright (c) 2003, 2005, Oracle and/or its affiliates. All rights reserved.
-# Copyright 2007, 2008 Red Hat, Inc.
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# This code is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# Setup common to Zero (non-Shark) and Shark versions of VM
-
-# The copied fdlibm routines in sharedRuntimeTrig.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
-# The copied fdlibm routines in sharedRuntimeTrans.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT)
-
-# Specify that the CPU is little endian, if necessary
-ifeq ($(ZERO_ENDIANNESS), little)
- CFLAGS += -DVM_LITTLE_ENDIAN
-endif
-
-# Specify that the CPU is 64 bit, if necessary
-ifeq ($(ARCH_DATA_MODEL), 64)
- CFLAGS += -D_LP64=1
-endif
-
-# Specify the path to the FFI headers
-ifdef ALT_PACKAGE_PATH
- PACKAGE_PATH = $(ALT_PACKAGE_PATH)
-else
- ifeq ($(OS_VENDOR),Apple)
- PACKAGE_PATH = /opt/local
- else
- ifeq ($(OS_VENDOR),NetBSD)
- PACKAGE_PATH = /usr/pkg
- LIBS += -Wl,-R${PACKAGE_PATH}/lib
- else
- PACKAGE_PATH = /usr/local
- endif
- endif
-endif
-
-CFLAGS += -I$(PACKAGE_PATH)/include
-LIBS += -L$(PACKAGE_PATH)/lib -lffi
-
-OPT_CFLAGS/compactingPermGenGen.o = -O1
--- a/hotspot/make/bsd/platform_amd64 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = bsd
-
-arch = x86
-
-arch_model = x86_64
-
-os_arch = bsd_x86
-
-os_arch_model = bsd_x86_64
-
-lib_arch = amd64
-
-compiler = gcc
-
-sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DAMD64
--- a/hotspot/make/bsd/platform_amd64.suncc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-os_family = bsd
-
-arch = x86
-
-arch_model = x86_64
-
-os_arch = bsd_x86
-
-os_arch_model = bsd_x86_64
-
-lib_arch = amd64
-
-compiler = sparcWorks
-
-gnu_dis_arch = amd64
-
-sysdefs = -D_ALLBSD_SOURCE -DSPARC_WORKS -D_GNU_SOURCE -DAMD64
--- a/hotspot/make/bsd/platform_i486 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = bsd
-
-arch = x86
-
-arch_model = x86_32
-
-os_arch = bsd_x86
-
-os_arch_model = bsd_x86_32
-
-lib_arch = i386
-
-compiler = gcc
-
-sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DIA32
--- a/hotspot/make/bsd/platform_i486.suncc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-os_family = bsd
-
-arch = x86
-
-arch_model = x86_32
-
-os_arch = bsd_x86
-
-os_arch_model = bsd_x86_32
-
-lib_arch = i386
-
-compiler = sparcWorks
-
-gnu_dis_arch = i386
-
-sysdefs = -D_ALLBSD_SOURCE -DSPARC_WORKS -D_GNU_SOURCE -DIA32
--- a/hotspot/make/bsd/platform_ia64 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = bsd
-
-arch = ia64
-
-os_arch = bsd_ia64
-
-lib_arch = ia64
-
-compiler = gcc
-
-gnu_dis_arch = ia64
-
-sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DIA64 -DCC_INTERP
-
-mark_style = alignment
--- a/hotspot/make/bsd/platform_sparc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = bsd
-
-arch = sparc
-
-arch_model = sparc
-
-os_arch = bsd_sparc
-
-os_arch_model = bsd_sparc
-
-lib_arch = sparc
-
-compiler = gcc
-
-sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DSPARC
--- a/hotspot/make/bsd/platform_sparcv9 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = bsd
-
-arch = sparc
-
-arch_model = sparc
-
-os_arch = bsd_sparc
-
-os_arch_model = bsd_sparc
-
-lib_arch = sparcv9
-
-compiler = gcc
-
-sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DSPARC
--- a/hotspot/make/bsd/platform_zero.in Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-os_family = bsd
-
-arch = zero
-
-arch_model = zero
-
-os_arch = bsd_zero
-
-os_arch_model = bsd_zero
-
-lib_arch = zero
-
-compiler = gcc
-
-gnu_dis_arch = zero
-
-sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DCC_INTERP -DZERO -D@ZERO_ARCHDEF@ -DZERO_LIBARCH=\"@ZERO_LIBARCH@\"
--- a/hotspot/make/build.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,92 +0,0 @@
-#! /bin/sh
-#
-# Copyright (c) 1998, 2013, 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.
-#
-# 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.
-#
-#
-
-# Make sure the variable JAVA_HOME is set before running this script.
-
-set -u
-
-
-if [ $# -lt 1 ]; then
- echo "Usage : $0 BuildTarget [LP64=1] [BuildOptions]"
- echo " Server VM | Client VM"
- echo "BuildTarget : debug | debug1"
- echo " fastdebug | fastdebug1"
- echo " jvmg | jvmg1"
- echo " optimized | optimized1"
- echo " profiled | profiled1"
- echo " product | product1"
- exit 1
-fi
-
-if [ "${JAVA_HOME-}" = "" -o ! -d "${JAVA_HOME-}" ]; then
- echo "JAVA_HOME needs to be set to a valid JDK path"
- echo "JAVA_HOME: ${JAVA_HOME-}"
- exit 1
-fi
-
-# Just in case:
-JAVA_HOME=`( cd $JAVA_HOME; pwd )`
-
-if [ "${ALT_BOOTDIR-}" = "" -o ! -d "${ALT_BOOTDIR-}" -o ! -d ${ALT_BOOTDIR-}/lib/ ]; then
- ALT_BOOTDIR=${JAVA_HOME}
-fi
-
-# build in current directory by default
-if [ "${ALT_OUTPUTDIR-}" = "" -o ! -d "${ALT_OUTPUTDIR-}" ]; then
- ALT_OUTPUTDIR=`(pwd)`
-fi
-
-HOTSPOT_SRC=`(dirname $0)`/..
-HOTSPOT_SRC=`(cd ${HOTSPOT_SRC}; pwd)`
-
-for gm in gmake gnumake
-do
- if [ "${GNUMAKE-}" != "" ]; then break; fi
- ($gm --version >/dev/null) 2>/dev/null && GNUMAKE=$gm
-done
-: ${GNUMAKE:?'Cannot locate the gnumake program. Stop.'}
-
-# quiet build by default
-Quiet="MAKE_VERBOSE="
-
-# no debug info by default
-NoDebugInfo="ENABLE_FULL_DEBUG_SYMBOLS="
-
-LANG=C
-
-echo "### ENVIRONMENT SETTINGS:"
-export HOTSPOT_SRC ; echo "HOTSPOT_SRC=$HOTSPOT_SRC"
-export JAVA_HOME ; echo "JAVA_HOME=$JAVA_HOME"
-export ALT_BOOTDIR ; echo "ALT_BOOTDIR=$ALT_BOOTDIR"
-export ALT_OUTPUTDIR ; echo "ALT_OUTPUTDIR=$ALT_OUTPUTDIR"
-export GNUMAKE ; echo "GNUMAKE=$GNUMAKE"
-export LANG ; echo "LANG=$LANG"
-echo "###"
-
-BuildOptions="$Quiet $NoDebugInfo $*"
-
-echo \
-${GNUMAKE} -f ${HOTSPOT_SRC}/make/Makefile $BuildOptions GAMMADIR=${HOTSPOT_SRC}
-${GNUMAKE} -f ${HOTSPOT_SRC}/make/Makefile $BuildOptions GAMMADIR=${HOTSPOT_SRC}
--- a/hotspot/make/cscope.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,141 +0,0 @@
-#
-# Copyright (c) 2000, 2008, 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.
-#
-# 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.
-#
-#
-
-# The cscope.out file is generated in the current directory. The old cscope.out
-# file is *not* removed because cscope is smart enough to only build what has
-# changed. cscope can be confused if files are renamed or removed, so it may be
-# necessary to remove cscope.out (gmake cscope.clean) if a lot of reorganization
-# has occurred.
-
-include $(GAMMADIR)/make/scm.make
-
-RM = rm -f
-HG = hg
-CS_TOP = $(GAMMADIR)
-
-CSDIRS = $(CS_TOP)/src $(CS_TOP)/make
-CSINCS = $(CSDIRS:%=-I%)
-
-CSCOPE = cscope
-CSCOPE_OUT = cscope.out
-CSCOPE_FLAGS = -b
-
-# Allow .java files to be added from the environment (CSCLASSES=yes).
-ifdef CSCLASSES
-ADDCLASSES= -o -name '*.java'
-endif
-
-# Adding CClassHeaders also pushes the file count of a full workspace up about
-# 200 files (these files also don't exist in a new workspace, and thus will
-# cause the recreation of the database as they get created, which might seem
-# a little confusing). Thus allow these files to be added from the environment
-# (CSHEADERS=yes).
-ifndef CSHEADERS
-RMCCHEADERS= -o -name CClassHeaders
-endif
-
-# Ignore build products.
-CS_PRUNE_GENERATED = -o -name '${OSNAME}_*_core' -o \
- -name '${OSNAME}_*_compiler?'
-
-# O/S-specific files for all systems are included by default. Set CS_OS to a
-# space-separated list of identifiers to include only those systems.
-ifdef CS_OS
-CS_PRUNE_OS = $(patsubst %,-o -name '*%*',\
- $(filter-out ${CS_OS},bsd linux macos solaris windows))
-endif
-
-# CPU-specific files for all processors are included by default. Set CS_CPU
-# space-separated list identifiers to include only those CPUs.
-ifdef CS_CPU
-CS_PRUNE_CPU = $(patsubst %,-o -name '*%*',\
- $(filter-out ${CS_CPU},arm ppc sparc x86 zero))
-endif
-
-# What files should we include? A simple rule might be just those files under
-# SCCS control, however this would miss files we create like the opcodes and
-# CClassHeaders. The following attempts to find everything that is *useful*.
-# (.del files are created by sccsrm, demo directories contain many .java files
-# that probably aren't useful for development, and the pkgarchive may contain
-# duplicates of files within the source hierarchy).
-
-# Directories to exclude.
-CS_PRUNE_STD = $(SCM_DIRS) \
- -o -name '.del-*' \
- -o -name '*demo' \
- -o -name pkgarchive
-
-# Placeholder for user-defined excludes.
-CS_PRUNE_EX =
-
-CS_PRUNE = $(CS_PRUNE_STD) \
- $(CS_PRUNE_OS) \
- $(CS_PRUNE_CPU) \
- $(CS_PRUNE_GENERATED) \
- $(CS_PRUNE_EX) \
- $(RMCCHEADERS)
-
-# File names to include.
-CSFILENAMES = -name '*.[ch]pp' \
- -o -name '*.[Ccshlxy]' \
- $(CS_ADD_GENERATED) \
- -o -name '*.d' \
- -o -name '*.il' \
- -o -name '*.cc' \
- -o -name '*[Mm]akefile*' \
- -o -name '*.gmk' \
- -o -name '*.make' \
- -o -name '*.ad' \
- $(ADDCLASSES)
-
-.PHONY: cscope cscope.clean cscope.scratch TAGS.clean FORCE
-.PRECIOUS: cscope.out
-
-cscope $(CSCOPE_OUT): cscope.files FORCE
- $(CSCOPE) -f $(CSCOPE_OUT) $(CSCOPE_FLAGS)
-
-cscope.clean:
- $(QUIETLY) $(RM) $(CSCOPE_OUT) cscope.files
-
-cscope.scratch: cscope.clean cscope
-
-# The raw list is reordered so cscope displays the most relevant files first.
-cscope.files:
- $(QUIETLY) \
- raw=cscope.$$$$; \
- find $(CSDIRS) -type d \( $(CS_PRUNE) \) -prune -o \
- -type f \( $(CSFILENAMES) \) -print > $$raw; \
- { \
- echo "$(CSINCS)"; \
- egrep -v "\.java|/make/" $$raw; \
- fgrep ".java" $$raw; \
- fgrep "/make/" $$raw; \
- } > $@; \
- rm -f $$raw
-
-TAGS: cscope.files FORCE
- egrep -v '^-|^$$' $< | etags --members -
-
-TAGS.clean:
- $(RM) TAGS
--- a/hotspot/make/defs.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,362 +0,0 @@
-#
-# Copyright (c) 2006, 2015, 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.
-#
-# 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.
-#
-#
-
-# The common definitions for hotspot builds.
-
-# Optionally include SPEC file generated by configure.
-ifneq ($(SPEC),)
- include $(SPEC)
-endif
-
-ifeq ($(LOG_LEVEL),warn)
- LOG_INFO := > /dev/null
-else
- LOG_INFO :=
-endif
-
-# Directory paths and user name
-# Unless GAMMADIR is set on the command line, search upward from
-# the current directory for a parent directory containing "src/share/vm".
-# If that fails, look for $GAMMADIR in the environment.
-# When the tree of subdirs is built, this setting is stored in each flags.make.
-GAMMADIR := $(shell until ([ -d dev ]&&echo $${GAMMADIR:-/GAMMADIR/}) || ([ -d src/share/vm ]&&pwd); do cd ..; done)
-HS_SRC_DIR=$(GAMMADIR)/src
-HS_MAKE_DIR=$(GAMMADIR)/make
-HS_BUILD_DIR=$(GAMMADIR)/build
-
-ifeq ($(USER),)
- USER=$(USERNAME)
-endif
-
-ifeq ($(HS_ALT_MAKE),)
- ifneq ($(OPENJDK),true)
- HS_ALT_MAKE=$(GAMMADIR)/make/closed
- else
- HS_ALT_MAKE=NO_SUCH_PATH
- endif
-endif
-
-#
-# Include alternate defs.make if it exists
-#
--include $(HS_ALT_MAKE)/defs.make
-
-# Default to verbose build logs (show all compile lines):
-MAKE_VERBOSE=y
-
-# Make macros for install files or preparing targets
-CD=cd
-CP=cp
-ECHO=echo
-GREP=grep
-MKDIR=mkdir
-MV=mv
-PWD=pwd
-RM=rm -f
-SED=sed
-TAR=tar
-ZIPEXE=zip
-
-define install-file
-@$(MKDIR) -p $(@D)
-@$(RM) $@
-$(CP) $< $@
-endef
-
-# MacOS X strongly discourages 'cp -r' and provides 'cp -R' instead.
-# May need to have a MacOS X specific definition of install-dir
-# sometime in the future.
-define install-dir
-@$(MKDIR) -p $(@D)
-@$(RM) -r $@
-$(CP) -r $< $@
-endef
-
-define prep-target
-@$(MKDIR) -p $(@D)
-@$(RM) $@
-endef
-
-# Default values for JVM_VARIANT* variables if configure hasn't set
-# it already.
-ifeq ($(JVM_VARIANTS),)
- ifeq ($(ZERO_BUILD), true)
- ifeq ($(SHARK_BUILD), true)
- JVM_VARIANTS:=zeroshark
- JVM_VARIANT_ZEROSHARK:=true
- else
- JVM_VARIANTS:=zero
- JVM_VARIANT_ZERO:=true
- endif
- else
- # A default is needed
- ifeq ($(BUILD_CLIENT_ONLY), true)
- JVM_VARIANTS:=client
- JVM_VARIANT_CLIENT:=true
- endif
- # Further defaults are platform and arch specific
- endif
-endif
-
-# hotspot version definitions
-include $(GAMMADIR)/make/jdk_version
-
-# JDK_PREVIOUS_VERSION is only needed to facilitate standalone builds
-ifeq ($(JDK_PREVIOUS_VERSION),)
- export JDK_PREVIOUS_VERSION=$(STANDALONE_JDK_PREVIOUS_VERSION)
-endif
-# Java versions needed
-ifeq ($(VERSION_MAJOR),)
- export VERSION_MAJOR=$(STANDALONE_JDK_MAJOR_VER)
-endif
-ifeq ($(VERSION_MINOR),)
- export VERSION_MINOR=$(STANDALONE_JDK_MINOR_VER)
-endif
-ifeq ($(VERSION_SECURITY),)
- export VERSION_SECURITY=$(STANDALONE_JDK_SECURITY_VER)
-endif
-ifeq ($(VERSION_PATCH),)
- export VERSION_PATCH=$(STANDALONE_JDK_PATCH_VER)
-endif
-ifeq ($(VERSION_BUILD),)
- export VERSION_BUILD=0
-endif
-ifeq ($(VERSION_SHORT),)
- export VERSION_SHORT=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_SECURITY)
-endif
-ifeq ($(VERSION_STRING),)
- # Note that this is an extremely rough and incorrect approximation of a correct version string.
- export VERSION_STRING=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_SECURITY)-internal
-endif
-
-ifneq ($(HOTSPOT_RELEASE_VERSION),)
- # Allow old command-line overrides
- HOTSPOT_VERSION_STRING := $(HOTSPOT_RELEASE_VERSION)
-else
- # Normally get from surrounding JDK build
- HOTSPOT_VERSION_STRING := $(VERSION_STRING)
-endif
-
-ifneq ($(HOTSPOT_BUILD_VERSION),)
- # If old command-lines variable exists, append to version string
- HOTSPOT_VERSION_STRING := $(HOTSPOT_VERSION_STRING)-$(HOTSPOT_BUILD_VERSION)
-else
- ifeq ($(SPEC),)
- # If building standalone, add -internal.
- HOTSPOT_VERSION_STRING := $(HOTSPOT_VERSION_STRING)-internal
- endif
-endif
-
-# Windows should have OS predefined
-ifeq ($(OS),)
- OS := $(shell uname -s)
- ifneq ($(findstring BSD,$(OS)),)
- OS=bsd
- endif
- ifeq ($(OS), Darwin)
- OS=bsd
- endif
- HOST := $(shell uname -n)
-endif
-
-# If not SunOS, not Linux not BSD and not AIX, assume Windows
-ifneq ($(OS), Linux)
- ifneq ($(OS), SunOS)
- ifneq ($(OS), bsd)
- ifneq ($(OS), AIX)
- OSNAME=windows
- else
- OSNAME=aix
- endif
- else
- OSNAME=bsd
- endif
- else
- OSNAME=solaris
- endif
-else
- OSNAME=linux
-endif
-
-# Determinations of default make arguments and platform specific settings
-MAKE_ARGS=
-
-# ARCH_DATA_MODEL==64 is equivalent to LP64=1
-ifeq ($(ARCH_DATA_MODEL), 64)
- ifndef LP64
- LP64 := 1
- endif
-endif
-
-# Defaults set for product build
-EXPORT_SUBDIR=
-
-# Change default /java path if requested
-ifneq ($(ALT_SLASH_JAVA),)
- SLASH_JAVA=$(ALT_SLASH_JAVA)
-endif
-
-# Default OUTPUTDIR
-OUTPUTDIR=$(HS_BUILD_DIR)/$(OSNAME)
-ifneq ($(ALT_OUTPUTDIR),)
- OUTPUTDIR=$(ALT_OUTPUTDIR)
-endif
-
-# Find latest promoted JDK area
-JDK_IMPORT_PATH=$(SLASH_JAVA)/re/j2se/$(VERSION_STRING)/promoted/latest/binaries/$(PLATFORM)
-ifneq ($(ALT_JDK_IMPORT_PATH),)
- JDK_IMPORT_PATH=$(ALT_JDK_IMPORT_PATH)
-endif
-
-# Other parts of JDK build may require an import JDK that can be executed
-# on the build host. For cross-compile builds we also need an import JDK
-# that matches the target arch, so for that we set ALT_JDK_TARGET_IMPORT_PATH
-ifneq ($(ALT_JDK_TARGET_IMPORT_PATH),)
- JDK_IMPORT_PATH=$(ALT_JDK_TARGET_IMPORT_PATH)
-endif
-
-# Find JDK used for javac compiles
-BOOTDIR=$(SLASH_JAVA)/re/j2se/$(JDK_PREVIOUS_VERSION)/latest/binaries/$(PLATFORM)
-ifneq ($(ALT_BOOTDIR),)
- BOOTDIR=$(ALT_BOOTDIR)
-endif
-
-# Select name of the export directory and honor ALT overrides
-EXPORT_PATH=$(OUTPUTDIR)/export-$(PLATFORM)$(EXPORT_SUBDIR)
-ifneq ($(ALT_EXPORT_PATH),)
- EXPORT_PATH=$(ALT_EXPORT_PATH)
-endif
-
-# Default jdk image if one is created for you with create_jdk
-JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-$(PLATFORM)
-ifneq ($(ALT_JDK_IMAGE_DIR),)
- JDK_IMAGE_DIR=$(ALT_JDK_IMAGE_DIR)
-endif
-
-# The platform dependent defs.make defines platform specific variable such
-# as ARCH, EXPORT_LIST etc. We must place the include here after BOOTDIR is defined.
-include $(GAMMADIR)/make/$(OSNAME)/makefiles/defs.make
-
-# We are trying to put platform specific defintions
-# files to make/$(OSNAME)/makefiles dictory. However
-# some definitions are common for both linux and solaris,
-# so we put them here.
-ifneq ($(OSNAME),windows)
- ABS_OUTPUTDIR := $(shell mkdir -p $(OUTPUTDIR); $(CD) $(OUTPUTDIR); $(PWD))
- ABS_BOOTDIR := $(shell $(CD) $(BOOTDIR); $(PWD))
- ABS_GAMMADIR := $(shell $(CD) $(GAMMADIR); $(PWD))
- ABS_OS_MAKEFILE := $(shell $(CD) $(HS_MAKE_DIR)/$(OSNAME); $(PWD))/Makefile
-
- # uname, HotSpot source directory, build directory and JDK use different names
- # for CPU architectures.
- # ARCH - uname output
- # SRCARCH - where to find HotSpot cpu and os_cpu source files
- # BUILDARCH - build directory
- # LIBARCH - directory name in JDK/JRE
-
- # Use uname output for SRCARCH, but deal with platform differences. If ARCH
- # is not explicitly listed below, it is treated as x86.
- SRCARCH ?= $(ARCH/$(filter sparc sparc64 ia64 amd64 x86_64 ppc ppc64 ppc64le aarch64 zero,$(ARCH)))
- ARCH/ = x86
- ARCH/sparc = sparc
- ARCH/sparc64= sparc
- ARCH/ia64 = ia64
- ARCH/amd64 = x86
- ARCH/x86_64 = x86
- ARCH/ppc64 = ppc
- ARCH/ppc64le= ppc
- ARCH/ppc = ppc
- ARCH/aarch64= aarch64
- ARCH/zero = zero
-
- # BUILDARCH is usually the same as SRCARCH, except for sparcv9
- BUILDARCH ?= $(SRCARCH)
- ifeq ($(BUILDARCH), x86)
- ifdef LP64
- BUILDARCH = amd64
- else
- BUILDARCH = i486
- endif
- endif
- ifeq ($(BUILDARCH), sparc)
- ifdef LP64
- BUILDARCH = sparcv9
- endif
- endif
- ifeq ($(BUILDARCH), ppc)
- ifdef LP64
- BUILDARCH = ppc64
- endif
- endif
-
- # LIBARCH is 1:1 mapping from BUILDARCH, except for ARCH=ppc64le
- ifeq ($(ARCH),ppc64le)
- LIBARCH ?= ppc64le
- else
- LIBARCH ?= $(LIBARCH/$(BUILDARCH))
- endif
-
- LIBARCH/i486 = i386
- LIBARCH/amd64 = amd64
- LIBARCH/sparc = sparc
- LIBARCH/sparcv9 = sparcv9
- LIBARCH/ia64 = ia64
- LIBARCH/ppc64 = ppc64
- LIBARCH/aarch64 = aarch64
- LIBARCH/zero = $(ZERO_LIBARCH)
-
- LP64_ARCH = sparcv9 amd64 ia64 ppc64 aarch64 zero
-endif
-
-# Required make macro settings for all platforms
-MAKE_ARGS += BOOTDIR=$(ABS_BOOTDIR)
-MAKE_ARGS += OUTPUTDIR=$(ABS_OUTPUTDIR)
-MAKE_ARGS += GAMMADIR=$(ABS_GAMMADIR)
-MAKE_ARGS += MAKE_VERBOSE=$(MAKE_VERBOSE)
-MAKE_ARGS += VERSION_STRING=$(VERSION_STRING)
-
-MAKE_ARGS += BOOT_JDK_SOURCETARGET="$(BOOT_JDK_SOURCETARGET)"
-
-# Various export sub directories
-EXPORT_INCLUDE_DIR = $(EXPORT_PATH)/include
-EXPORT_DOCS_DIR = $(EXPORT_PATH)/docs
-EXPORT_LIB_DIR = $(EXPORT_PATH)/lib
-EXPORT_BIN_DIR = $(EXPORT_PATH)/bin
-EXPORT_LIB_ARCH_DIR = $(EXPORT_LIB_DIR)/$(LIBARCH)
-
-# non-universal macosx builds need to appear universal
-ifeq ($(OS_VENDOR), Darwin)
- ifneq ($(MACOSX_UNIVERSAL), true)
- EXPORT_LIB_ARCH_DIR = $(EXPORT_LIB_DIR)
- endif
-endif
-
-# Common export list of files
-EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jvmti.h
-EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jvmticmlr.h
-EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jni.h
-EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/$(JDK_INCLUDE_SUBDIR)/jni_md.h
-EXPORT_LIST += $(EXPORT_INCLUDE_DIR)/jmm.h
-
-.PHONY: $(HS_ALT_MAKE)/defs.make
--- a/hotspot/make/excludeSrc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,131 +0,0 @@
-#
-# Copyright (c) 2014, 2015, 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.
-#
-# 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.
-#
-#
-
-include $(GAMMADIR)/make/altsrc.make
-
-ifeq ($(INCLUDE_JVMTI), false)
- CXXFLAGS += -DINCLUDE_JVMTI=0
- CFLAGS += -DINCLUDE_JVMTI=0
-
- Src_Files_EXCLUDE += jvmtiGetLoadedClasses.cpp jvmtiThreadState.cpp jvmtiExtensions.cpp \
- jvmtiImpl.cpp jvmtiManageCapabilities.cpp jvmtiRawMonitor.cpp jvmtiUtil.cpp jvmtiTrace.cpp \
- jvmtiCodeBlobEvents.cpp jvmtiEnv.cpp jvmtiRedefineClasses.cpp jvmtiEnvBase.cpp jvmtiEnvThreadState.cpp \
- jvmtiTagMap.cpp jvmtiEventController.cpp evmCompat.cpp jvmtiEnter.xsl jvmtiExport.cpp \
- jvmtiClassFileReconstituter.cpp
-endif
-
-ifeq ($(INCLUDE_FPROF), false)
- CXXFLAGS += -DINCLUDE_FPROF=0
- CFLAGS += -DINCLUDE_FPROF=0
-
- Src_Files_EXCLUDE += fprofiler.cpp
-endif
-
-ifeq ($(INCLUDE_VM_STRUCTS), false)
- CXXFLAGS += -DINCLUDE_VM_STRUCTS=0
- CFLAGS += -DINCLUDE_VM_STRUCTS=0
-
- Src_Files_EXCLUDE += vmStructs.cpp
-endif
-
-ifeq ($(INCLUDE_JNI_CHECK), false)
- CXXFLAGS += -DINCLUDE_JNI_CHECK=0
- CFLAGS += -DINCLUDE_JNI_CHECK=0
-
- Src_Files_EXCLUDE += jniCheck.cpp
-endif
-
-ifeq ($(INCLUDE_SERVICES), false)
- CXXFLAGS += -DINCLUDE_SERVICES=0
- CFLAGS += -DINCLUDE_SERVICES=0
-
- Src_Files_EXCLUDE += heapDumper.cpp heapInspection.cpp \
- attachListener_linux.cpp attachListener.cpp
-endif
-
-ifeq ($(INCLUDE_MANAGEMENT), false)
- CXXFLAGS += -DINCLUDE_MANAGEMENT=0
- CFLAGS += -DINCLUDE_MANAGEMENT=0
-endif
-
-ifeq ($(INCLUDE_CDS), false)
- CXXFLAGS += -DINCLUDE_CDS=0
- CFLAGS += -DINCLUDE_CDS=0
-
- Src_Files_EXCLUDE += classListParser.cpp classLoaderExt.cpp \
- filemap.cpp metaspaceShared*.cpp sharedClassUtil.cpp sharedPathsMiscInfo.cpp \
- systemDictionaryShared.cpp
-endif
-
-ifeq ($(INCLUDE_ALL_GCS), false)
- CXXFLAGS += -DINCLUDE_ALL_GCS=0
- CFLAGS += -DINCLUDE_ALL_GCS=0
-
- gc_dir := $(HS_COMMON_SRC)/share/vm/gc
- gc_dir_alt := $(HS_ALT_SRC)/share/vm/gc
- gc_subdirs := cms g1 parallel
- gc_exclude := $(foreach gc,$(gc_subdirs), \
- $(notdir $(wildcard $(gc_dir)/$(gc)/*.cpp)) \
- $(notdir $(wildcard $(gc_dir_alt)/$(gc)/*.cpp)))
- Src_Files_EXCLUDE += $(gc_exclude) \
- concurrentGCThread.cpp \
- plab.cpp
-
- # src/share/vm/services
- Src_Files_EXCLUDE += \
- g1MemoryPool.cpp \
- psMemoryPool.cpp
-endif
-
-ifeq ($(INCLUDE_NMT), false)
- CXXFLAGS += -DINCLUDE_NMT=0
- CFLAGS += -DINCLUDE_NMT=0
-
- Src_Files_EXCLUDE += \
- memBaseline.cpp memReporter.cpp mallocTracker.cpp virtualMemoryTracker.cpp nmtCommon.cpp \
- memTracker.cpp nmtDCmd.cpp mallocSiteTable.cpp
-endif
-
-ifneq (,$(findstring $(Platform_arch_model), aarch64, arm_64, sparc, x86_64))
- # JVMCI is supported
-else
- INCLUDE_JVMCI := false
-endif
-
-ifeq ($(INCLUDE_JVMCI), false)
- CXXFLAGS += -DINCLUDE_JVMCI=0
- CFLAGS += -DINCLUDE_JVMCI=0
-
- jvmci_dir := $(HS_COMMON_SRC)/share/vm/jvmci
- jvmci_dir_alt := $(HS_ALT_SRC)/share/vm/jvmci
- jvmci_exclude := $(notdir $(wildcard $(jvmci_dir)/*.cpp)) \
- $(notdir $(wildcard $(jvmci_dir_alt)/*.cpp))
- Src_Files_EXCLUDE += $(jvmci_exclude) \
- jvmciCodeInstaller_aarch64.cpp jvmciCodeInstaller_ppc.cpp jvmciCodeInstaller_sparc.cpp \
- jvmciCodeInstaller_x86.cpp
-endif
-
--include $(HS_ALT_MAKE)/excludeSrc.make
-
-.PHONY: $(HS_ALT_MAKE)/excludeSrc.make
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/gensrc/GenerateSources.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,75 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include JavaCompilation.gmk
+include NativeCompilation.gmk
+include TextFileProcessing.gmk
+
+include HotspotCommon.gmk
+
+# The real work is done in these files
+
+include gensrc/GensrcAdlc.gmk
+include gensrc/GensrcDtrace.gmk
+include gensrc/GensrcJvmti.gmk
+
+$(eval $(call IncludeCustomExtension, hotspot, gensrc/GenerateSources.gmk))
+
+# While technically the rules below are "gendata" which can be done in parallel
+# with native compilation, let's keep it here for simplicity.
+
+# The Xusage.txt file needs to have platform specific path separator
+$(eval $(call SetupTextFileProcessing, CREATE_XUSAGE, \
+ SOURCE_FILES := $(HOTSPOT_TOPDIR)/src/share/vm/Xusage.txt, \
+ OUTPUT_FILE := $(JVM_SUPPORT_DIR)/misc/Xusage.txt, \
+ REPLACEMENTS := separated by ;> => separated by $(PATH_SEP)> ; , \
+))
+
+TARGETS += $(CREATE_XUSAGE)
+
+# Setup the hotspot launcher script for developer use
+$(eval $(call SetupTextFileProcessing, CREATE_HOTSPOT_LAUNCHER, \
+ SOURCE_FILES := $(HOTSPOT_TOPDIR)/make/hotspot.script, \
+ OUTPUT_FILE := $(JVM_OUTPUTDIR)/hotspot, \
+ REPLACEMENTS := \
+ @@LIBARCH@@ => $(OPENJDK_TARGET_CPU_LEGACY_LIB) ; \
+ @@JDK_IMPORT_PATH@@ => $(JDK_OUTPUTDIR) ; , \
+))
+
+CHMOD_HOTSPOT_LAUNCHER := $(JVM_VARIANT_OUTPUTDIR)/libjvm/_hotspot-script-chmod.marker
+
+$(CHMOD_HOTSPOT_LAUNCHER): $(CREATE_HOTSPOT_LAUNCHER)
+ $(CHMOD) +x $<
+ $(TOUCH) $@
+
+TARGETS += $(CREATE_HOTSPOT_LAUNCHER) $(CHMOD_HOTSPOT_LAUNCHER)
+
+all: $(TARGETS)
+
+.PHONY: all
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/gensrc/GensrcAdlc.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,191 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+$(eval $(call IncludeCustomExtension, hotspot, gensrc/GensrcAdlc.gmk))
+
+ifeq ($(call check-jvm-feature, compiler2), true)
+
+ ADLC_SUPPORT_DIR := $(JVM_SUPPORT_DIR)/adlc
+
+ ##############################################################################
+ # Build the ad compiler (the adlc build tool)
+
+ # Flags depending on the build platform/tool chain
+ # NOTE: No optimization or debug flags set here
+ ifeq ($(OPENJDK_BUILD_OS), linux)
+ ADLC_CFLAGS := -fno-exceptions -DLINUX
+ else ifeq ($(OPENJDK_BUILD_OS), solaris)
+ ADLC_LDFLAGS := -m64
+ ADLC_CFLAGS := -m64
+ ADLC_CFLAGS_WARNINGS := +w
+ else ifeq ($(OPENJDK_BUILD_OS), aix)
+ ADLC_LDFLAGS := -q64
+ ADLC_CFLAGS := -qnortti -qeh -q64 -DAIX
+ else ifeq ($(OPENJDK_BUILD_OS), windows)
+ ADLC_LDFLAGS := -nologo
+ ADLC_CFLAGS := -nologo -EHsc
+ # NOTE: The old build also have -D_CRT_SECURE_NO_DEPRECATE but it doesn't
+ # seem needed any more.
+ ADLC_CFLAGS_WARNINGS := -W3 -D_CRT_SECURE_NO_WARNINGS
+ endif
+
+ # NOTE: The old build didn't set -DASSERT for windows but it doesn't seem to
+ # hurt.
+ ADLC_CFLAGS += -DASSERT
+
+ ADLC_CFLAGS += -D$(HOTSPOT_TARGET_CPU_DEFINE)
+
+ ADLC_CFLAGS += -I$(HOTSPOT_TOPDIR)/src/share/vm
+
+ $(eval $(call SetupNativeCompilation, BUILD_ADLC, \
+ TOOLCHAIN := TOOLCHAIN_BUILD_LINK_CXX, \
+ SRC := $(HOTSPOT_TOPDIR)/src/share/vm/adlc, \
+ EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/share/vm/opto/opcodes.cpp, \
+ CFLAGS := $(ADLC_CFLAGS) $(ADLC_CFLAGS_WARNINGS), \
+ LDFLAGS := $(ADLC_LDFLAGS), \
+ LIBS := $(ADLC_LIBS), \
+ OBJECT_DIR := $(JVM_VARIANT_OUTPUTDIR)/tools/adlc/objs, \
+ OUTPUT_DIR := $(JVM_VARIANT_OUTPUTDIR)/tools/adlc, \
+ PROGRAM := adlc, \
+ DEBUG_SYMBOLS := false, \
+ DISABLED_WARNINGS_clang := parentheses tautological-compare, \
+ DISABLED_WARNINGS_solstudio := notemsource, \
+ ))
+
+ ADLC_TOOL := $(BUILD_ADLC_TARGET)
+
+ ##############################################################################
+ # Transform the ad source files into C++ source files using adlc
+
+ # Setup flags for the adlc build tool (ADLCFLAGS).
+ ADLCFLAGS += -q -T
+
+ # ADLC flags depending on target OS
+ ifeq ($(OPENJDK_TARGET_OS), linux)
+ ADLCFLAGS += -DLINUX=1 -D_GNU_SOURCE=1
+ else ifeq ($(OPENJDK_TARGET_OS), solaris)
+ ADLCFLAGS += -DSOLARIS=1 -DSPARC_WORKS=1
+ else ifeq ($(OPENJDK_TARGET_OS), aix)
+ ADLCFLAGS += -DAIX=1
+ else ifeq ($(OPENJDK_TARGET_OS), macosx)
+ ADLCFLAGS += -D_ALLBSD_SOURCE=1 -D_GNU_SOURCE=1
+ endif
+
+ ifneq ($(OPENJDK_TARGET_OS), windows)
+ # NOTE: Windows adlc flags was different in the old build. Is this really
+ # correct?
+
+ # -g makes #line directives in the generated C++ files.
+ ADLCFLAGS += -g
+
+ ADLCFLAGS += -D$(HOTSPOT_TARGET_CPU_DEFINE)=1
+ endif
+
+ # This generates checks in the generated C++ files that _LP64 is correctly
+ # (un)defined when compiling them.
+ ifeq ($(OPENJDK_TARGET_CPU_BITS), 64)
+ ADLCFLAGS += -D_LP64=1
+ else
+ ADLCFLAGS += -U_LP64
+ endif
+
+ ##############################################################################
+ # Concatenate all ad source files into a single file, which will be fed to
+ # adlc. Also include a #line directive at the start of every included file
+ # (after the initial header block), stating the original source file name.
+ #
+ # Normally, debugging is done directly on the ad_<arch>*.cpp files, but the
+ # #line directives in those files will be pointing back to <arch>.ad.
+
+ # AD_SRC_ROOTS might have been added to by a custom extension
+ AD_SRC_ROOTS += $(HOTSPOT_TOPDIR)/src
+
+ AD_SRC_FILES := $(call uniq, $(wildcard $(foreach d, $(AD_SRC_ROOTS), \
+ $d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/vm/$(HOTSPOT_TARGET_CPU).ad \
+ $d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/vm/$(HOTSPOT_TARGET_CPU_ARCH).ad \
+ $d/os_cpu/$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU_ARCH)/vm/$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU_ARCH).ad \
+ )))
+
+ SINGLE_AD_SRCFILE := $(ADLC_SUPPORT_DIR)/all-ad-src.ad
+
+ INSERT_FILENAME_AWK_SCRIPT := \
+ '{ \
+ if (CUR_FN != FILENAME) { CUR_FN=FILENAME; NR_BASE=NR-1; need_lineno=1 } \
+ if (need_lineno && $$0 !~ /\/\//) \
+ { print "\n\n\#line " (NR-NR_BASE) " \"" FILENAME "\""; need_lineno=0 }; \
+ print \
+ }'
+
+ $(SINGLE_AD_SRCFILE): $(AD_SRC_FILES)
+ $(call LogInfo, Preprocessing adlc files $(^F))
+ $(call MakeDir, $(@D))
+ $(NAWK) $(INSERT_FILENAME_AWK_SCRIPT) $^ > $@
+
+ ##############################################################################
+ # Run the adlc tool on the single concatenated ad source file, and store the
+ # output in support/adlc for further processing.
+ ADLC_RUN_MARKER := $(ADLC_SUPPORT_DIR)/_adlc_run.marker
+
+ $(ADLC_RUN_MARKER): $(BUILD_ADLC) $(SINGLE_AD_SRCFILE)
+ $(call LogInfo, Generating adlc files)
+ $(call MakeDir, $(@D))
+ $(call ExecuteWithLog, $(ADLC_SUPPORT_DIR)/adlc_run, \
+ $(FIXPATH) $(ADLC_TOOL) $(ADLCFLAGS) $(SINGLE_AD_SRCFILE) \
+ -c$(ADLC_SUPPORT_DIR)/ad_$(HOTSPOT_TARGET_CPU).cpp \
+ -h$(ADLC_SUPPORT_DIR)/ad_$(HOTSPOT_TARGET_CPU).hpp \
+ -a$(ADLC_SUPPORT_DIR)/dfa_$(HOTSPOT_TARGET_CPU).cpp \
+ -v$(ADLC_SUPPORT_DIR)/adGlobals_$(HOTSPOT_TARGET_CPU).hpp)
+ $(TOUCH) $@
+
+ ##############################################################################
+ # Finally copy the generated files from support/adlc into gensrc/adfiles,
+ # and postprocess them by fixing dummy #line directives.
+
+ ADLC_GENERATED_FILES := $(addprefix $(JVM_VARIANT_OUTPUTDIR)/gensrc/adfiles/, \
+ ad_$(HOTSPOT_TARGET_CPU).cpp \
+ ad_$(HOTSPOT_TARGET_CPU).hpp \
+ ad_$(HOTSPOT_TARGET_CPU)_clone.cpp \
+ ad_$(HOTSPOT_TARGET_CPU)_expand.cpp \
+ ad_$(HOTSPOT_TARGET_CPU)_format.cpp \
+ ad_$(HOTSPOT_TARGET_CPU)_gen.cpp \
+ ad_$(HOTSPOT_TARGET_CPU)_misc.cpp \
+ ad_$(HOTSPOT_TARGET_CPU)_peephole.cpp \
+ ad_$(HOTSPOT_TARGET_CPU)_pipeline.cpp \
+ adGlobals_$(HOTSPOT_TARGET_CPU).hpp \
+ dfa_$(HOTSPOT_TARGET_CPU).cpp \
+ )
+
+ $(JVM_VARIANT_OUTPUTDIR)/gensrc/adfiles/%: $(ADLC_RUN_MARKER)
+ $(call LogInfo, Postprocessing adlc file $*)
+ $(call MakeDir, $(@D))
+ $(NAWK) \
+ 'BEGIN { print "#line 1 \"$*\""; } \
+ /^#line 999999$$/ {print "#line " (NR+1) " \"$*\""; next} \
+ {print}' \
+ < $(ADLC_SUPPORT_DIR)/$* > $@
+
+ TARGETS := $(ADLC_GENERATED_FILES)
+
+endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/gensrc/GensrcDtrace.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,56 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+################################################################################
+# Gensrc support for dtrace. The files generated here are included by dtrace.hpp
+
+ifeq ($(call check-jvm-feature, dtrace), true)
+
+ ifeq ($(OPENJDK_TARGET_OS), solaris)
+ DTRACE_FLAGS := -64
+ DTRACE_CPP_FLAGS := -D_LP64
+ else ifeq ($(OPENJDK_TARGET_OS), macosx)
+ DTRACE_CPP_FLAGS := -D_LP64 -x c
+ else ifeq ($(OPENJDK_TARGET_OS), linux)
+ DTRACE_CPP_FLAGS := -x c
+ endif
+
+ DTRACE_SOURCE_DIR := $(HOTSPOT_TOPDIR)/src/os/posix/dtrace
+ DTRACE_GENSRC_DIR := $(JVM_VARIANT_OUTPUTDIR)/gensrc/dtracefiles
+
+ # Make sure we run our selected compiler for preprocessing instead of letting
+ # the dtrace tool pick it on it's own.
+ $(DTRACE_GENSRC_DIR)/%.h: $(DTRACE_SOURCE_DIR)/%.d
+ $(call LogInfo, Generating dtrace header file $(@F))
+ $(call MakeDir, $(@D) $(DTRACE_SUPPORT_DIR))
+ $(call ExecuteWithLog, $(DTRACE_SUPPORT_DIR)/$(@F).d, $(CC) -E $(DTRACE_CPP_FLAGS) $< > $(DTRACE_SUPPORT_DIR)/$(@F).d)
+ $(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) -h -o $@ -s $(DTRACE_SUPPORT_DIR)/$(@F).d)
+
+ # Process all .d files in DTRACE_SOURCE_DIR. They are:
+ # hotspot_jni.d hotspot.d hs_private.d
+ TARGETS += $(patsubst $(DTRACE_SOURCE_DIR)/%.d, \
+ $(DTRACE_GENSRC_DIR)/%.h, $(wildcard $(DTRACE_SOURCE_DIR)/*.d))
+
+endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/gensrc/GensrcJvmti.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,174 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+$(eval $(call IncludeCustomExtension, hotspot, gensrc/GensrcJvmti.gmk))
+
+################################################################################
+# Build tools needed for the JVMTI source code generation
+
+JVMTI_TOOLS_SRCDIR := $(HOTSPOT_TOPDIR)/src/share/vm/prims
+JVMTI_TOOLS_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/tools/jvmti
+
+$(eval $(call SetupJavaCompiler, GENERATE_OLDBYTECODE, \
+ JAVAC := $(JAVAC), \
+ FLAGS := $(DISABLE_WARNINGS), \
+ SERVER_DIR := $(SJAVAC_SERVER_DIR), \
+ SERVER_JVM := $(SJAVAC_SERVER_JAVA), \
+ DISABLE_SJAVAC := true, \
+))
+
+$(eval $(call SetupJavaCompilation, BUILD_JVMTI_TOOLS, \
+ SETUP := GENERATE_OLDBYTECODE, \
+ SRC := $(JVMTI_TOOLS_SRCDIR), \
+ INCLUDE_FILES := jvmtiGen.java jvmtiEnvFill.java, \
+ BIN := $(JVMTI_TOOLS_OUTPUTDIR), \
+))
+
+TOOL_JVMTI_GEN := $(JAVA_SMALL) -cp $(JVMTI_TOOLS_OUTPUTDIR) jvmtiGen
+TOOL_JVMTI_ENV_FILL := $(JAVA_SMALL) -cp $(JVMTI_TOOLS_OUTPUTDIR) jvmtiEnvFill
+
+################################################################################
+# Setup make rules for an xml transform for jvmti/trace file generation.
+#
+# Parameter 1 is the name of the rule. This name is used as variable prefix,
+# and the targets generated are listed in a variable by that name. This name is
+# also used as the name of the output file.
+#
+# Remaining parameters are named arguments. These include:
+# XML_FILE -- The input source file to use
+# XSL_FILE -- The xsl file to use
+# OUTPUT_DIR -- The directory to put the generated file in
+# ARGS -- Additional arguments to the jvmtiGen tool
+# DEPS -- Additional dependencies
+SetupXslTransform = $(NamedParamsMacroTemplate)
+define SetupXslTransformBody
+ $$($1_OUTPUT_DIR)/$1: $$($1_XML_FILE) $$($1_XSL_FILE) $$($1_DEPS) $$(BUILD_JVMTI_TOOLS)
+ $$(call LogInfo, Generating $$(@F))
+ $$(call MakeDir, $$(@D))
+ $$(call ExecuteWithLog, $$@, $$(TOOL_JVMTI_GEN) -IN $$($1_XML_FILE) -XSL $$($1_XSL_FILE) -OUT $$@ $$($1_ARGS))
+ # jvmtiGen does not return error code properly on fail.
+ # NOTE: We should really fix jvmtiGen.java instead.
+ test -f $$@
+
+ TARGETS += $$($1_OUTPUT_DIR)/$1
+endef
+
+################################################################################
+# Create JVMTI files in gensrc/jvmtifiles
+
+JVMTI_SRCDIR := $(HOTSPOT_TOPDIR)/src/share/vm/prims
+JVMTI_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/gensrc/jvmtifiles
+
+# Setup rule for generating a jvmti file
+#
+# $1 is generated source file name in $(JVMTI_OUTPUTDIR)
+# $2 is XSL file to use in $(JVMTI_SRCDIR)
+# $3 is optional extra arguments to jvmtiGen
+define SetupJvmtiGeneration
+ $$(eval $$(call SetupXslTransform, $1, \
+ XML_FILE := $$(JVMTI_SRCDIR)/jvmti.xml, \
+ XSL_FILE := $$(JVMTI_SRCDIR)/$(strip $2), \
+ OUTPUT_DIR := $$(JVMTI_OUTPUTDIR), \
+ ARGS := $3, \
+ DEPS := $$(JVMTI_SRCDIR)/jvmtiLib.xsl, \
+ ))
+endef
+
+$(eval $(call SetupJvmtiGeneration, jvmtiEnter.cpp, jvmtiEnter.xsl, \
+ -PARAM interface jvmti))
+$(eval $(call SetupJvmtiGeneration, jvmtiEnterTrace.cpp, jvmtiEnter.xsl, \
+ -PARAM interface jvmti -PARAM trace Trace))
+$(eval $(call SetupJvmtiGeneration, jvmtiEnv.hpp, jvmtiHpp.xsl))
+$(eval $(call SetupJvmtiGeneration, jvmti.h, jvmtiH.xsl))
+$(eval $(call SetupJvmtiGeneration, jvmti.html, jvmti.xsl))
+$(eval $(call SetupJvmtiGeneration, jvmtiEnvStub.cpp, jvmtiEnv.xsl))
+
+JVMTI_BC_SRCDIR := $(HOTSPOT_TOPDIR)/src/share/vm/interpreter
+
+$(eval $(call SetupXslTransform, bytecodeInterpreterWithChecks.cpp, \
+ XML_FILE := $(JVMTI_BC_SRCDIR)/bytecodeInterpreterWithChecks.xml, \
+ XSL_FILE := $(JVMTI_BC_SRCDIR)/bytecodeInterpreterWithChecks.xsl, \
+ OUTPUT_DIR := $(JVMTI_OUTPUTDIR), \
+ DEPS := $(JVMTI_BC_SRCDIR)/bytecodeInterpreter.cpp, \
+))
+
+# We need $(JVMTI_OUTPUTDIR)/jvmtiEnvStub.cpp (generated above) as input
+$(JVMTI_OUTPUTDIR)/jvmtiEnvRecommended.cpp: $(JVMTI_SRCDIR)/jvmtiEnv.cpp \
+ $(JVMTI_OUTPUTDIR)/jvmtiEnvStub.cpp $(BUILD_JVMTI_TOOLS)
+ $(call LogInfo, Generating $(@F))
+ $(call MakeDir, $(@D))
+ $(call ExecuteWithLog, $@, $(TOOL_JVMTI_ENV_FILL) $(JVMTI_SRCDIR)/jvmtiEnv.cpp \
+ $(JVMTI_OUTPUTDIR)/jvmtiEnvStub.cpp \
+ $(JVMTI_OUTPUTDIR)/jvmtiEnvRecommended.cpp)
+ # jvmtiEnvFill does not necessarily return an error code on failure.
+ # NOTE: We should really fix jvmtiEnvFill.java instead.
+ test -f $@
+
+TARGETS += $(JVMTI_OUTPUTDIR)/jvmtiEnvRecommended.cpp
+
+################################################################################
+# Create trace files in gensrc/tracefiles
+
+TRACE_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/gensrc/tracefiles
+TRACE_SRCDIR := $(HOTSPOT_TOPDIR)/src/share/vm/trace
+
+# Append directories to search (might have been set by custom extensions)
+TRACE_SEARCH_DIRS += $(TRACE_SRCDIR)
+
+TRACE_XML ?= $(TRACE_SRCDIR)/trace.xml
+
+# Changing these will trigger a rebuild of generated trace files.
+TRACE_DEPS += \
+ $(TRACE_XML) \
+ $(TRACE_SRCDIR)/tracetypes.xml \
+ $(TRACE_SRCDIR)/tracerelationdecls.xml \
+ $(TRACE_SRCDIR)/traceevents.xml \
+ $(TRACE_SRCDIR)/trace.dtd \
+ $(TRACE_SRCDIR)/xinclude.mod \
+ #
+
+# Setup rule for generating a trace file
+#
+# $1 is generated source file name in $(TRACE_OUTPUTDIR)
+define SetupTraceGeneration
+ $$(eval $$(call SetupXslTransform, $1, \
+ XML_FILE := $$(TRACE_XML), \
+ XSL_FILE := $$(firstword $$(wildcard $$(addsuffix /$$(basename $1).xsl, $$(TRACE_SEARCH_DIRS)))), \
+ OUTPUT_DIR := $$(TRACE_OUTPUTDIR), \
+ DEPS := $$(TRACE_DEPS), \
+ ))
+endef
+
+# Append files to generated (might have been set by custom extensions)
+TRACE_GENSRC_FILES += \
+ traceEventClasses.hpp \
+ traceEventIds.hpp \
+ traceTypes.hpp \
+ #
+
+# Call SetupTraceGeneration for all trace gensrc files
+$(foreach tracefile, $(TRACE_GENSRC_FILES), \
+ $(eval $(call SetupTraceGeneration, $(tracefile))) \
+)
--- a/hotspot/make/hotspot_distro Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-
-#
-# This file format must remain compatible with both
-# GNU Makefile and Microsoft nmake formats.
-#
-
-# Don't put quotes (fail windows build).
-HOTSPOT_VM_DISTRO=Java HotSpot(TM)
-COMPANY_NAME=Oracle Corporation
-PRODUCT_NAME=Java(TM) Platform SE
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/ide/CreateVSProject.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,153 @@
+#
+# Copyright (c) 2016, 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.
+#
+
+# This must be the first rule
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include JavaCompilation.gmk
+include SetupJavaCompilers.gmk
+
+ifeq ($(OPENJDK_TARGET_OS), windows)
+ # The next part is a bit hacky. We include the CompileJvm.gmk to be
+ # able to extact flags, but we do not wish to execute the rules.
+
+ # Use client as base for defines and includes
+ JVM_VARIANT=client
+
+ include HotspotCommon.gmk
+ include lib/CompileJvm.gmk
+
+ # Reset targets so we don't build libjvm.
+ TARGETS :=
+
+ # Helper macro to convert a unix path to a Windows path, suitable for
+ # inclusion in a command line.
+ FixPath = \
+ $(strip $(subst \,\\,$(shell $(CYGPATH) -w $1)))
+
+ JVM_DEFINES_client := $(patsubst -D%,%, $(filter -D%, $(JVM_CFLAGS)))
+ EXTRACTED_DEFINES_client := $(addprefix -define , $(JVM_DEFINES_client))
+
+ JVM_INCLUDES_client := $(patsubst -I%,%, $(filter -I%, $(JVM_CFLAGS)))
+ EXTRACTED_INCLUDES_client := $(foreach path, $(JVM_INCLUDES_client), -absoluteInclude $(call FixPath, $(path)))
+
+ # Hand-code variant-specific arguments, based on the fact that we use
+ # client for general arguments. Not optimal but other solutions require
+ # major changes in ProjectCreator.
+ ADDITIONAL_VARIANT_ARGS := \
+ -define_server COMPILER2 \
+ -ignorePath_client adfiles \
+ -ignorePath_client c2_ \
+ -ignorePath_client runtime_ \
+ -ignorePath_client libadt \
+ -ignorePath_client opto \
+ #
+
+ IGNORED_PLATFORMS_ARGS := \
+ -ignorePath aarch64 \
+ -ignorePath aix \
+ -ignorePath arm \
+ -ignorePath bsd \
+ -ignorePath linux \
+ -ignorePath posix \
+ -ignorePath ppc \
+ -ignorePath shark \
+ -ignorePath solaris \
+ -ignorePath sparc \
+ -ignorePath x86_32 \
+ -ignorePath zero \
+ #
+
+ ################################################################################
+ # Build the ProjectCreator java tool.
+
+ TOOLS_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/support/tools_classes
+
+ $(eval $(call SetupJavaCompilation, BUILD_PROJECT_CREATOR, \
+ SETUP := GENERATE_OLDBYTECODE, \
+ ADD_JAVAC_FLAGS := -Xlint:-auxiliaryclass, \
+ SRC := $(HOTSPOT_TOPDIR)/make/src/classes, \
+ BIN := $(TOOLS_OUTPUTDIR), \
+ ))
+
+ TARGETS += $(BUILD_PROJECT_CREATOR)
+
+ # Run the ProjectCreator tool
+ PROJECT_CREATOR_TOOL := $(JAVA_SMALL) -cp $(TOOLS_OUTPUTDIR) build.tools.projectcreator.ProjectCreator
+
+ IDE_OUTPUTDIR := $(BUILD_OUTPUT)/ide/hotspot-visualstudio
+
+ VCPROJ_FILE := $(IDE_OUTPUTDIR)/jvm.vcxproj
+
+ PROJECT_CREATOR_CLASS := build.tools.projectcreator.WinGammaPlatformVC10
+
+ # We hard-code gensrc dir to server (since this includes adfiles)
+ PROJECT_CREATOR_ARGS := \
+ -sourceBase $(call FixPath, $(HOTSPOT_TOPDIR)) \
+ -startAt src \
+ -relativeSrcInclude src \
+ -hidePath .hg \
+ -hidePath .jcheck \
+ -hidePath jdk.hotspot.agent \
+ -hidePath jdk.vm.ci \
+ -hidePath jdk.jfr \
+ -compiler VC10 \
+ -jdkTargetRoot $(call FixPath, $(JDK_OUTPUTDIR)) \
+ -platformName x64 \
+ -buildBase $(call FixPath, $(IDE_OUTPUTDIR)/vs-output) \
+ -buildSpace $(call FixPath, $(IDE_OUTPUTDIR)) \
+ -makeBinary $(call FixPath, $(MAKE)) \
+ -makeOutput $(call FixPath, $(HOTSPOT_OUTPUTDIR)/variant-%f/libjvm) \
+ -absoluteInclude $(call FixPath, $(HOTSPOT_OUTPUTDIR)/variant-server/gensrc) \
+ -absoluteSrcInclude $(call FixPath, $(HOTSPOT_OUTPUTDIR)/variant-server/gensrc) \
+ $(EXTRACTED_DEFINES_client) \
+ $(EXTRACTED_INCLUDES_client) \
+ $(ADDITIONAL_VARIANT_ARGS) \
+ $(IGNORED_PLATFORMS_ARGS) \
+ #
+
+ VCPROJ_VARDEPS := $(PROJECT_CREATOR_CLASS) $(PROJECT_CREATOR_ARGS)
+ VCPROJ_VARDEPS_FILE := $(call DependOnVariable, VCPROJ_VARDEPS, \
+ $(VCPROJ_FILE).vardeps)
+
+ $(VCPROJ_FILE): $(BUILD_PROJECT_CREATOR) $(VCPROJ_VARDEPS_FILE)
+ $(call MakeDir, $(@D))
+ $(call ExecuteWithLog, $@, \
+ $(PROJECT_CREATOR_TOOL) $(PROJECT_CREATOR_CLASS) \
+ $(PROJECT_CREATOR_ARGS) -projectFileName $(call FixPath, $@)) \
+ $(LOG_INFO)
+
+ TARGETS += $(VCPROJ_FILE)
+
+ all: $(TARGETS)
+
+else
+ all:
+ $(info Hotspot Visual Studio generation only supported on Windows)
+endif
+
+.PHONY: all
--- a/hotspot/make/jdk_version Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-#
-# Copyright (c) 2006, 2015, 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.
-#
-# 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.
-#
-# Master JDK version file. These values may be overridden by a control
-# workspace build. This file format must remain compatible with both
-# GNU Makefile and Microsoft nmake formats.
-#
-
-# Don't put quotes (fail windows build).
-HOTSPOT_VM_COPYRIGHT=Copyright 2015
-
-STANDALONE_JDK_MAJOR_VER=9
-STANDALONE_JDK_MINOR_VER=0
-STANDALONE_JDK_SECURITY_VER=0
-STANDALONE_JDK_PATCH_VER=0
-
-# Previous (bootdir) JDK version
-STANDALONE_JDK_PREVIOUS_VERSION=1.8.0
--- a/hotspot/make/jprt.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,77 +0,0 @@
-#
-# Copyright (c) 2006, 2011, 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.
-#
-# 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.
-#
-#
-
-# JPRT rule to build this workspace
-
-JPRT_ARCHIVE_BUNDLE=$(ABS_OUTPUTDIR)/$(JPRT_BUILD_FLAVOR)-bundle.zip
-
-ifeq ($(OSNAME),windows)
- ZIPFLAGS=-q
-else
- # store symbolic links as the link
- ZIPFLAGS=-q -y
-endif
-
-jprt_build_productEmb:
- $(MAKE) JAVASE_EMBEDDED=true MINIMIZE_RAM_USAGE=true jprt_build_product
-
-jprt_build_debugEmb:
- $(MAKE) JAVASE_EMBEDDED=true MINIMIZE_RAM_USAGE=true jprt_build_debug
-
-jprt_build_fastdebugEmb:
- $(MAKE) JAVASE_EMBEDDED=true MINIMIZE_RAM_USAGE=true jprt_build_fastdebug
-
-jprt_build_optimizedEmb:
- $(MAKE) JAVASE_EMBEDDED=true MINIMIZE_RAM_USAGE=true jprt_build_optimized
-
-jprt_build_productOpen:
- $(MAKE) OPENJDK=true jprt_build_product
-
-jprt_build_debugOpen:
- $(MAKE) OPENJDK=true jprt_build_debug
-
-jprt_build_fastdebugOpen:
- $(MAKE) OPENJDK=true jprt_build_fastdebug
-
-jprt_build_optimizedOpen:
- $(MAKE) OPENJDK=true jprt_build_optimized
-
-jprt_build_product: all_product copy_product_jdk export_product_jdk
- ( $(CD) $(JDK_IMAGE_DIR) && \
- $(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
-
-jprt_build_fastdebug: all_fastdebug copy_fastdebug_jdk export_fastdebug_jdk
- ( $(CD) $(JDK_IMAGE_DIR)/fastdebug && \
- $(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
-
-jprt_build_debug: all_debug copy_debug_jdk export_debug_jdk
- ( $(CD) $(JDK_IMAGE_DIR)/debug && \
- $(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
-
-jprt_build_optimized: all_optimized copy_optimized_jdk export_optimized_jdk
- ( $(CD) $(JDK_IMAGE_DIR)/optimized && \
- $(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
-
-.PHONY: jprt_build_product jprt_build_fastdebug jprt_build_debug jprt_build_optimized
-
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/lib/CompileDtracePostJvm.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,217 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+################################################################################
+# Support for dtrace integration with libjvm, and stand-alone dtrace library
+# compilation.
+
+ifeq ($(call check-jvm-feature, dtrace), true)
+ ##############################################################################
+
+ ifeq ($(OPENJDK_TARGET_OS), solaris)
+ ############################################################################
+ # Integrate with libjvm. Here we generate three object files which are
+ # linked with libjvm.so. This step is complicated from a dependency
+ # perspective, since it needs the rest of the compiled object files from the
+ # libjvm compilation, but the output is object files that are to be included
+ # when linking libjvm.so. So this generation must happen as a part of the
+ # libjvm compilation.
+
+ # First we need to generate the dtraceGenOffsets tool. When run, this will
+ # produce more header files and a C++ file.
+
+ # Note that generateJvmOffsets.cpp must be compiled as if it were a file
+ # in the libjvm.so, using JVM_CFLAGS as setup in CompileJvm.gmk. Otherwise
+ # this would preferrably have been done as a part of GensrcDtrace.gmk.
+ $(eval $(call SetupNativeCompilation, BUILD_DTRACE_GEN_OFFSETS, \
+ SRC := $(HOTSPOT_TOPDIR)/src/os/$(OPENJDK_TARGET_OS)/dtrace, \
+ INCLUDE_FILES := generateJvmOffsets.cpp generateJvmOffsetsMain.c, \
+ CC := $(BUILD_CXX), \
+ CXX := $(BUILD_CXX), \
+ LDEXE := $(BUILD_CXX), \
+ generateJvmOffsets.cpp_CXXFLAGS := $(JVM_CFLAGS) -mt -xnolib -norunpath, \
+ generateJvmOffsetsMain.c_CFLAGS := -library=%none -mt -m64 -norunpath -z nodefs, \
+ LDFLAGS := -m64, \
+ LIBS := -lc, \
+ OBJECT_DIR := $(JVM_VARIANT_OUTPUTDIR)/tools/dtrace-gen-offsets/objs, \
+ OUTPUT_DIR := $(JVM_VARIANT_OUTPUTDIR)/tools/dtrace-gen-offsets, \
+ PROGRAM := dtraceGenOffsets, \
+ ))
+
+ DTRACE_GEN_OFFSETS_TOOL := $(BUILD_DTRACE_GEN_OFFSETS_TARGET)
+
+ # Argument 1: Output filename
+ # Argument 2: dtrace-gen-offset tool command line option
+ define SetupDtraceOffsetsGeneration
+ $1: $$(BUILD_DTRACE_GEN_OFFSETS)
+ $$(call LogInfo, Generating dtrace $2 file $$(@F))
+ $$(call MakeDir, $$(@D))
+ $$(call ExecuteWithLog, $$@, $$(DTRACE_GEN_OFFSETS_TOOL) -$$(strip $2) > $$@)
+
+ TARGETS += $1
+ endef
+
+ JVM_OFFSETS_H := $(DTRACE_SUPPORT_DIR)/JvmOffsets.h
+ JVM_OFFSETS_CPP := $(DTRACE_SUPPORT_DIR)/JvmOffsets.cpp
+ JVM_OFFSETS_INDEX_H := $(DTRACE_SUPPORT_DIR)/JvmOffsetsIndex.h
+
+ # Run the dtrace-gen-offset tool to generate these three files.
+ $(eval $(call SetupDtraceOffsetsGeneration, $(JVM_OFFSETS_H), header))
+ $(eval $(call SetupDtraceOffsetsGeneration, $(JVM_OFFSETS_INDEX_H), index))
+ $(eval $(call SetupDtraceOffsetsGeneration, $(JVM_OFFSETS_CPP), table))
+
+ ############################################################################
+ # Compile JVM_OFFSETS_OBJ which is linked with libjvm.so.
+
+ # JvmOffsets.cpp is compiled without the common JVM_CFLAGS. Otherwise, the
+ # natural way would have been to included this source code in BUILD_LIBJVM.
+ JVM_OFFSETS_CFLAGS := -m64
+ ifeq ($(OPENJDK_TARGET_CPU), sparcv9)
+ JVM_OFFSETS_CFLAGS += -xarch=sparc
+ endif
+
+ $(JVM_OFFSETS_OBJ): $(JVM_OFFSETS_CPP) $(JVM_OFFSETS_H)
+ $(call LogInfo, Compiling dtrace file JvmOffsets.cpp (for libjvm.so))
+ $(call ExecuteWithLog, $@, $(CXX) -c -I$(<D) -o $@ $(JVM_OFFSETS_CFLAGS) $<)
+
+ ############################################################################
+ # Generate DTRACE_OBJ which is linked with libjvm.so.
+
+ # Concatenate all *.d files into a single file
+ DTRACE_SOURCE_FILES := $(addprefix $(HOTSPOT_TOPDIR)/src/os/posix/dtrace/, \
+ hotspot_jni.d \
+ hotspot.d \
+ hs_private.d \
+ )
+
+ $(JVM_OUTPUTDIR)/objs/dtrace.d: $(DTRACE_SOURCE_FILES)
+ $(call LogInfo, Generating $(@F))
+ $(call MakeDir, $(@D))
+ $(CAT) $^ > $@
+
+ DTRACE_INSTRUMENTED_OBJS := $(addprefix $(JVM_OUTPUTDIR)/objs/, \
+ ciEnv.o \
+ classLoadingService.o \
+ compileBroker.o \
+ hashtable.o \
+ instanceKlass.o \
+ java.o \
+ jni.o \
+ jvm.o \
+ memoryManager.o \
+ nmethod.o \
+ objectMonitor.o \
+ runtimeService.o \
+ sharedRuntime.o \
+ synchronizer.o \
+ thread.o \
+ unsafe.o \
+ vmThread.o \
+ vmGCOperations.o \
+ )
+
+ ifeq ($(call check-jvm-feature, all-gcs), true)
+ DTRACE_INSTRUMENTED_OBJS += $(addprefix $(JVM_OUTPUTDIR)/objs/, \
+ vmCMSOperations.o \
+ vmPSOperations.o \
+ )
+ endif
+
+ DTRACE_FLAGS := -64 -G
+ DTRACE_CPP_FLAGS := -D_LP64
+
+ # Make sure we run our selected compiler for preprocessing instead of letting
+ # the dtrace tool pick it on it's own.
+ $(DTRACE_OBJ): $(JVM_OUTPUTDIR)/objs/dtrace.d $(DTRACE_INSTRUMENTED_OBJS)
+ $(call LogInfo, Generating $(@F) from $(<F) and object files)
+ $(call MakeDir, $(DTRACE_SUPPORT_DIR))
+ $(call ExecuteWithLog, $(DTRACE_SUPPORT_DIR)/$(@F).d, $(CC) -E \
+ $(DTRACE_CPP_FLAGS) $< > $(DTRACE_SUPPORT_DIR)/$(@F).d)
+ $(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) -xlazyload -o $@ \
+ -s $(DTRACE_SUPPORT_DIR)/$(@F).d $(sort $(DTRACE_INSTRUMENTED_OBJS)))
+
+ ############################################################################
+ # Generate DTRACE_JHELPER_OBJ which is linked with libjvm.so.
+
+ # Unfortunately dtrace generates incorrect types for some symbols in
+ # dtrace_jhelper.o, resulting in "warning: symbol X has differing types"
+ # This is tracked in JDK-6890703.
+ $(DTRACE_JHELPER_OBJ): $(HOTSPOT_TOPDIR)/src/os/solaris/dtrace/jhelper.d \
+ $(JVM_OFFSETS_INDEX_H)
+ $(call LogInfo, Running dtrace for $(<F))
+ $(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) $(DTRACE_CPP_FLAGS) -C \
+ -I$(DTRACE_SUPPORT_DIR) -o $@ -s $<)
+
+ # NOTE: We should really do something like this, but unfortunately this
+ # results in a compilation error. :-(
+ # $(call MakeDir, $(DTRACE_SUPPORT_DIR))
+ # $(call ExecuteWithLog, $(DTRACE_SUPPORT_DIR)/$(@F).d, $(CC) -E \
+ # $(DTRACE_CPP_FLAGS) -I$(DTRACE_SUPPORT_DIR) $^ \
+ # > $(DTRACE_SUPPORT_DIR)/$(@F).d)
+ # $(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) -o $@ \
+ # -s $(DTRACE_SUPPORT_DIR)/$(@F).d)
+
+ ############################################################################
+ # Build the stand-alone dtrace libraries
+
+ LIBJVM_DTRACE_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/libjvm_dtrace
+
+ $(eval $(call SetupNativeCompilation, BUILD_LIBJVM_DTRACE, \
+ LIBRARY := jvm_dtrace, \
+ OUTPUT_DIR := $(LIBJVM_DTRACE_OUTPUTDIR), \
+ SRC := $(HOTSPOT_TOPDIR)/src/os/solaris/dtrace, \
+ INCLUDE_FILES := jvm_dtrace.c, \
+ CFLAGS := -m64 -G -mt -KPIC, \
+ LDFLAGS := -m64 -mt -xnolib $(SHARED_LIBRARY_FLAGS), \
+ LIBS := $(LIBDL) -lc -lthread -ldoor, \
+ MAPFILE := $(HOTSPOT_TOPDIR)/make/mapfiles/libjvm_dtrace/mapfile-vers, \
+ OBJECT_DIR := $(LIBJVM_DTRACE_OUTPUTDIR)/objs, \
+ STRIP_SYMBOLS := true, \
+ ))
+
+ LIBJVM_DB_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/libjvm_db
+
+ # Note that libjvm_db.c has tests for COMPILER2, but this was never set by
+ # the old build.
+ $(eval $(call SetupNativeCompilation, BUILD_LIBJVM_DB, \
+ LIBRARY := jvm_db, \
+ OUTPUT_DIR := $(LIBJVM_DB_OUTPUTDIR), \
+ SRC := $(HOTSPOT_TOPDIR)/src/os/solaris/dtrace, \
+ INCLUDE_FILES := libjvm_db.c, \
+ CFLAGS := -I$(JVM_VARIANT_OUTPUTDIR)/gensrc -I$(DTRACE_SUPPORT_DIR) \
+ -m64 -G -mt -KPIC, \
+ LDFLAGS := -m64 -mt -xnolib $(SHARED_LIBRARY_FLAGS), \
+ LIBS := -lc, \
+ MAPFILE := $(HOTSPOT_TOPDIR)/make/mapfiles/libjvm_db/mapfile-vers, \
+ OBJECT_DIR := $(LIBJVM_DB_OUTPUTDIR)/objs, \
+ STRIP_SYMBOLS := true, \
+ ))
+
+ # We need the generated JvmOffsets.h before we can compile the libjvm_db source code.
+ $(BUILD_LIBJVM_DB_ALL_OBJS): $(JVM_OFFSETS_H)
+
+ TARGETS += $(BUILD_LIBJVM_DTRACE) $(BUILD_LIBJVM_DB)
+ endif
+endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/lib/CompileDtracePreJvm.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,36 @@
+#
+# Copyright (c) 2016, 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.
+#
+
+ifeq ($(call check-jvm-feature, dtrace), true)
+ ifeq ($(OPENJDK_TARGET_OS), solaris)
+ # These files are are generated by CompileDtrace.gmk but consumed by
+ # CompileJvm.gmk
+ DTRACE_OBJ := $(JVM_OUTPUTDIR)/objs/dtrace.o
+ DTRACE_JHELPER_OBJ := $(JVM_OUTPUTDIR)/objs/dtrace_jhelper.o
+ JVM_OFFSETS_OBJ := $(JVM_OUTPUTDIR)/objs/JvmOffsets.o
+
+ DTRACE_EXTRA_OBJECT_FILES := $(DTRACE_OBJ) $(DTRACE_JHELPER_OBJ) $(JVM_OFFSETS_OBJ)
+ endif
+endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/lib/CompileJvm.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,242 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+# Include support files that will setup compiler flags due to the selected
+# jvm feature set, and specific file overrides.
+include lib/JvmFeatures.gmk
+include lib/JvmOverrideFiles.gmk
+
+$(eval $(call IncludeCustomExtension, hotspot, lib/CompileJvm.gmk))
+
+################################################################################
+# Setup compilation of the main Hotspot native library (libjvm).
+
+JVM_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/libjvm
+JVM_MAPFILE := $(JVM_OUTPUTDIR)/mapfile
+
+################################################################################
+# Platform independent setup
+
+# This variable may be added to by a custom extension
+JVM_SRC_ROOTS += $(HOTSPOT_TOPDIR)/src
+
+JVM_SRC_DIRS += $(call uniq, $(wildcard $(foreach d, $(JVM_SRC_ROOTS), \
+ $d/share/vm \
+ $d/os/$(HOTSPOT_TARGET_OS)/vm \
+ $d/os/$(HOTSPOT_TARGET_OS_TYPE)/vm \
+ $d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/vm \
+ $d/os_cpu/$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU_ARCH)/vm \
+ ))) \
+ $(JVM_VARIANT_OUTPUTDIR)/gensrc/jvmtifiles \
+ $(JVM_VARIANT_OUTPUTDIR)/gensrc/tracefiles \
+ #
+
+JVM_CFLAGS_INCLUDES += \
+ $(patsubst %,-I%,$(filter-out $(JVM_VARIANT_OUTPUTDIR)/gensrc/%, $(JVM_SRC_DIRS))) \
+ -I$(JVM_VARIANT_OUTPUTDIR)/gensrc \
+ -I$(HOTSPOT_TOPDIR)/src/share/vm/precompiled \
+ -I$(HOTSPOT_TOPDIR)/src/share/vm/prims \
+ #
+
+JVM_CFLAGS_TARGET_DEFINES += \
+ -DTARGET_OS_FAMILY_$(HOTSPOT_TARGET_OS) \
+ -DTARGET_ARCH_MODEL_$(HOTSPOT_TARGET_CPU) \
+ -DTARGET_ARCH_$(HOTSPOT_TARGET_CPU_ARCH) \
+ -DTARGET_OS_ARCH_MODEL_$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU) \
+ -DTARGET_OS_ARCH_$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU_ARCH) \
+ -DTARGET_COMPILER_$(HOTSPOT_TOOLCHAIN_TYPE) \
+ -D$(HOTSPOT_TARGET_CPU_DEFINE) \
+ -DHOTSPOT_LIB_ARCH='"$(OPENJDK_TARGET_CPU_LEGACY_LIB)"' \
+ #
+
+ifeq ($(DEBUG_LEVEL), release)
+ # For hotspot, release builds differ internally between "optimized" and "product"
+ # in that "optimize" does not define PRODUCT.
+ ifneq ($(HOTSPOT_DEBUG_LEVEL), optimized)
+ JVM_CFLAGS_DEBUGLEVEL := -DPRODUCT
+ endif
+else ifeq ($(DEBUG_LEVEL), fastdebug)
+ JVM_CFLAGS_DEBUGLEVEL := -DASSERT
+ ifeq ($(filter $(OPENJDK_TARGET_OS), windows aix), )
+ # NOTE: Old build did not define CHECK_UNHANDLED_OOPS on Windows and AIX.
+ JVM_CFLAGS_DEBUGLEVEL += -DCHECK_UNHANDLED_OOPS
+ endif
+else ifeq ($(DEBUG_LEVEL), slowdebug)
+ # _NMT_NOINLINE_ informs NMT that no inlining is done by the compiler
+ JVM_CFLAGS_DEBUGLEVEL := -DASSERT -D_NMT_NOINLINE_
+endif
+
+JVM_CFLAGS += \
+ $(JVM_CFLAGS_DEBUGLEVEL) \
+ $(JVM_CFLAGS_TARGET_DEFINES) \
+ $(JVM_CFLAGS_FEATURES) \
+ $(JVM_CFLAGS_INCLUDES) \
+ $(EXTRA_CFLAGS) \
+ #
+
+JVM_LDFLAGS += \
+ $(SHARED_LIBRARY_FLAGS) \
+ $(JVM_LDFLAGS_FEATURES) \
+ $(EXTRA_LDFLAGS) \
+ #
+
+JVM_LIBS += \
+ $(JVM_LIBS_FEATURES) \
+ #
+
+# These files and directories are always excluded
+JVM_EXCLUDE_FILES += jsig.c jvmtiEnvRecommended.cpp jvmtiEnvStub.cpp args.cc
+JVM_EXCLUDES += adlc
+
+# Needed by vm_version.cpp
+ifeq ($(OPENJDK_TARGET_CPU), x86_64)
+ OPENJDK_TARGET_CPU_VM_VERSION := amd64
+else ifeq ($(OPENJDK_TARGET_CPU), sparcv9)
+ OPENJDK_TARGET_CPU_VM_VERSION := sparc
+else
+ OPENJDK_TARGET_CPU_VM_VERSION := $(OPENJDK_TARGET_CPU)
+endif
+
+CFLAGS_VM_VERSION := \
+ $(VERSION_CFLAGS) \
+ -DHOTSPOT_VERSION_STRING='"$(VERSION_STRING)"' \
+ -DDEBUG_LEVEL='"$(DEBUG_LEVEL)"' \
+ -DHOTSPOT_BUILD_USER='"$(USERNAME)"' \
+ -DHOTSPOT_VM_DISTRO='"$(HOTSPOT_VM_DISTRO)"' \
+ -DCPU='"$(OPENJDK_TARGET_CPU_VM_VERSION)"' \
+ #
+
+# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
+ifeq ($(USE_PRECOMPILED_HEADER), 0)
+ JVM_CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
+endif
+
+################################################################################
+# Platform specific setup
+
+ifneq ($(filter $(OPENJDK_TARGET_OS), linux macosx windows), )
+ JVM_PRECOMPILED_HEADER := $(HOTSPOT_TOPDIR)/src/share/vm/precompiled/precompiled.hpp
+endif
+
+ifneq ($(filter $(OPENJDK_TARGET_OS), macosx aix solaris), )
+ # On macosx, aix and solaris we have to link with the C++ compiler
+ JVM_TOOLCHAIN := TOOLCHAIN_LINK_CXX
+else
+ JVM_TOOLCHAIN := TOOLCHAIN_DEFAULT
+endif
+
+ifeq ($(OPENJDK_TARGET_CPU), x86)
+ JVM_EXCLUDE_PATTERNS += x86_64
+else ifeq ($(OPENJDK_TARGET_CPU), x86_64)
+ JVM_EXCLUDE_PATTERNS += x86_32
+endif
+
+# Inline assembly for solaris
+ifeq ($(OPENJDK_TARGET_OS), solaris)
+ ifeq ($(OPENJDK_TARGET_CPU), x86_64)
+ JVM_CFLAGS += $(HOTSPOT_TOPDIR)/src/os_cpu/solaris_x86/vm/solaris_x86_64.il
+ else ifeq ($(OPENJDK_TARGET_CPU), sparcv9)
+ JVM_CFLAGS += $(HOTSPOT_TOPDIR)/src/os_cpu/solaris_sparc/vm/solaris_sparc.il
+ endif
+endif
+
+ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), solaris-sparcv9)
+ ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), false)
+ # NOTE: In the old build, we weirdly enough set -g/-g0 always, regardless
+ # of if debug symbols were needed. Without it, compilation fails on
+ # sparc! :-(
+ JVM_CFLAGS += -g0
+ endif
+endif
+
+ifeq ($(OPENJDK_TARGET_OS), windows)
+ ifeq ($(OPENJDK_TARGET_CPU_BITS), 64)
+ RC_DESC := 64-Bit$(SPACE)
+ endif
+ JVM_RCFLAGS += -D"HS_FILEDESC=$(HOTSPOT_VM_DISTRO) $(RC_DESC)$(JVM_VARIANT) VM"
+endif
+
+ifeq ($(OPENJDK_TARGET_OS), macosx)
+ # NOTE: The old build did not strip binaries on macosx.
+ JVM_STRIP_SYMBOLS := false
+else
+ JVM_STRIP_SYMBOLS := true
+endif
+
+JVM_OPTIMIZATION ?= HIGHEST_JVM
+
+################################################################################
+# Now set up the actual compilation of the main hotspot native library
+
+$(eval $(call SetupNativeCompilation, BUILD_LIBJVM, \
+ TOOLCHAIN := $(JVM_TOOLCHAIN), \
+ LIBRARY := jvm, \
+ OUTPUT_DIR := $(JVM_OUTPUTDIR), \
+ SRC := $(JVM_SRC_DIRS), \
+ EXCLUDES := $(JVM_EXCLUDES), \
+ EXCLUDE_FILES := $(JVM_EXCLUDE_FILES), \
+ EXCLUDE_PATTERNS := $(JVM_EXCLUDE_PATTERNS), \
+ EXTRA_OBJECT_FILES := $(DTRACE_EXTRA_OBJECT_FILES), \
+ CFLAGS := $(JVM_CFLAGS), \
+ CFLAGS_DEBUG_SYMBOLS := $(JVM_CFLAGS_SYMBOLS), \
+ CXXFLAGS_DEBUG_SYMBOLS := $(JVM_CFLAGS_SYMBOLS), \
+ vm_version.cpp_CXXFLAGS := $(CFLAGS_VM_VERSION), \
+ DISABLED_WARNINGS_clang := delete-non-virtual-dtor dynamic-class-memaccess \
+ empty-body format logical-op-parentheses parentheses \
+ parentheses-equality switch tautological-compare, \
+ DISABLED_WARNINGS_xlc := 1540-0216 1540-0198 1540-1090 1540-1639 \
+ 1540-1088 1500-010, \
+ ASFLAGS := $(JVM_ASFLAGS), \
+ LDFLAGS := $(JVM_LDFLAGS), \
+ LIBS := $(JVM_LIBS), \
+ OPTIMIZATION := $(JVM_OPTIMIZATION), \
+ OBJECT_DIR := $(JVM_OUTPUTDIR)/objs, \
+ MAPFILE := $(JVM_MAPFILE), \
+ USE_MAPFILE_FOR_SYMBOLS := true, \
+ STRIP_SYMBOLS := $(JVM_STRIP_SYMBOLS), \
+ EMBED_MANIFEST := true, \
+ RC_FLAGS := $(JVM_RCFLAGS), \
+ VERSIONINFO_RESOURCE := $(HOTSPOT_TOPDIR)/src/os/windows/vm/version.rc, \
+ PRECOMPILED_HEADER := $(JVM_PRECOMPILED_HEADER), \
+ PRECOMPILED_HEADER_EXCLUDE := $(JVM_PRECOMPILED_HEADER_EXCLUDE), \
+))
+
+# AIX warning explanation:
+# 1500-010 : (W) WARNING in ...: Infinite loop. Program may not stop.
+# There are several infinite loops in the vm, so better suppress.
+# 1540-0198 : (W) The omitted keyword "private" is assumed for base class "...".
+# 1540-0216 : (W) An expression of type .. cannot be converted to type ..
+# In hotspot this fires for functionpointer to pointer conversions
+# 1540-1088 : (W) The exception specification is being ignored.
+# In hotspot this is caused by throw() in declaration of new() in nmethod.hpp.
+# 1540-1090 : (I) The destructor of "..." might not be called.
+# 1540-1639 : (I) The behavior of long type bit fields has changed ...
+
+# Include mapfile generation. It relies on BUILD_LIBJVM_ALL_OBJS which is only
+# defined after the above call to BUILD_LIBJVM. Mapfile will be generated
+# after all object files are built, but before the jvm library is linked.
+include lib/JvmMapfile.gmk
+
+TARGETS += $(BUILD_LIBJVM)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/lib/CompileLibjsig.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,106 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+################################################################################
+# Create the libjsig.so shared library
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include NativeCompilation.gmk
+
+ifneq ($(OPENJDK_TARGET_OS), windows)
+ ifeq ($(STATIC_BUILD), false)
+ LIBJSIG_STRIP_SYMBOLS := true
+ ifeq ($(OPENJDK_TARGET_OS), linux)
+ LIBJSIG_CFLAGS := -fPIC -D_GNU_SOURCE -D_REENTRANT $(EXTRA_CFLAGS)
+ LIBJSIG_LDFLAGS := $(LDFLAGS_HASH_STYLE) $(EXTRA_CFLAGS)
+ LIBJSIG_LIBS := $(LIBDL)
+
+ # NOTE: The old build compiled this library without -soname.
+ # To emulate this, we need to clear out SET_SHARED_LIBRARY_NAME.
+ SET_SHARED_LIBRARY_NAME :=
+
+ # Flags for other CPUs can be provided in EXTRA_CFLAGS
+ ifeq ($(OPENJDK_TARGET_CPU), x86_64)
+ LIBJSIG_CPU_FLAGS := -m64
+ else ifeq ($(OPENJDK_TARGET_CPU), x86)
+ LIBJSIG_CPU_FLAGS := -m32 -march=i586
+ endif
+
+ else ifeq ($(OPENJDK_TARGET_OS), solaris)
+ LIBJSIG_CFLAGS := -m64 -KPIC -mt
+ LIBJSIG_LDFLAGS := -m64 -mt -xnolib
+ LIBJSIG_LIBS := $(LIBDL)
+
+ # NOTE: The old build compiled this library without -soname.
+ # To emulate this, we need to clear out SET_SHARED_LIBRARY_NAME.
+ SET_SHARED_LIBRARY_NAME :=
+
+ else ifeq ($(OPENJDK_TARGET_OS), aix)
+ LIBJSIG_CFLAGS := -q64 -D_GNU_SOURCE -D_REENTRANT -qpic=large
+ LIBJSIG_LDFLAGS := -b64 -bexpall -G -bnoentry -qmkshrobj -brtl -bnolibpath -bernotok
+ LIBJSIG_LIBS := $(LIBDL)
+
+ # NOTE: The old build compiled this library without -soname.
+ # To emulate this, we need to clear out SET_SHARED_LIBRARY_NAME.
+ SET_SHARED_LIBRARY_NAME :=
+
+ else ifeq ($(OPENJDK_TARGET_OS), macosx)
+ LIBJSIG_CFLAGS := -m64 -D_GNU_SOURCE -pthread -mno-omit-leaf-frame-pointer -mstack-alignment=16 -fPIC
+ LIBJSIG_LDFLAGS := $(LDFLAGS_HASH_STYLE)
+ # NOTE: This lib is not stripped on macosx in old build. Looks like a mistake.
+ LIBJSIG_STRIP_SYMBOLS := false
+ else
+ $(error Unknown target OS $(OPENJDK_TARGET_OS) in CompileLibjsig.gmk)
+ endif
+
+ LIBJSIG_SRC_FILE := $(HOTSPOT_TOPDIR)/src/os/$(HOTSPOT_TARGET_OS)/vm/jsig.c
+ LIBJSIG_MAPFILE := $(wildcard $(HOTSPOT_TOPDIR)/make/mapfiles/libjsig/mapfile-vers-$(OPENJDK_TARGET_OS))
+ LIBJSIG_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/libjsig
+
+ LIBJSIG_LDFLAGS += $(SHARED_LIBRARY_FLAGS)
+
+ $(eval $(call SetupNativeCompilation, BUILD_LIBJSIG, \
+ LIBRARY := jsig, \
+ EXTRA_FILES := $(LIBJSIG_SRC_FILE), \
+ OUTPUT_DIR := $(LIBJSIG_OUTPUTDIR), \
+ LANG := C, \
+ CFLAGS := $(LIBJSIG_CFLAGS) $(LIBJSIG_CPU_FLAGS), \
+ LDFLAGS := $(LIBJSIG_LDFLAGS) $(LIBJSIG_CPU_FLAGS), \
+ LIBS := $(LIBJSIG_LIBS), \
+ MAPFILE := $(LIBJSIG_MAPFILE), \
+ OBJECT_DIR := $(LIBJSIG_OUTPUTDIR)/objs, \
+ STRIP_SYMBOLS := $(LIBJSIG_STRIP_SYMBOLS), \
+ ))
+
+ TARGETS += $(BUILD_LIBJSIG)
+ endif
+endif
+
+all: $(TARGETS)
+
+.PHONY: all
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/lib/CompileLibraries.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,42 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+default: all
+
+include $(SPEC)
+include MakeBase.gmk
+include NativeCompilation.gmk
+
+include HotspotCommon.gmk
+
+# The dtrace setup must be done both before and after CompileJvm.gmk, due to
+# intricate dependencies.
+include lib/CompileDtracePreJvm.gmk
+include lib/CompileJvm.gmk
+include lib/CompileDtracePostJvm.gmk
+
+all: $(TARGETS)
+
+.PHONY: all
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/lib/JvmFeatures.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,144 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+$(eval $(call IncludeCustomExtension, hotspot, lib/JvmFeatures.gmk))
+
+################################################################################
+# Setup CFLAGS and EXCLUDES for the libjvm compilation, depending on which
+# jvm features are selected for this jvm variant.
+
+ifeq ($(call check-jvm-feature, compiler1), true)
+ JVM_CFLAGS_FEATURES += -DCOMPILER1
+else
+ JVM_EXCLUDE_PATTERNS += c1_
+endif
+
+ifeq ($(call check-jvm-feature, compiler2), true)
+ JVM_CFLAGS_FEATURES += -DCOMPILER2
+ JVM_SRC_DIRS += $(JVM_VARIANT_OUTPUTDIR)/gensrc/adfiles
+else
+ JVM_EXCLUDES += opto libadt
+ JVM_EXCLUDE_FILES += bcEscapeAnalyzer.cpp ciTypeFlow.cpp
+ JVM_EXCLUDE_PATTERNS += c2_ runtime_
+endif
+
+ifeq ($(call check-jvm-feature, zero), true)
+ JVM_CFLAGS_FEATURES += -DZERO -DCC_INTERP -DZERO_LIBARCH='"$(OPENJDK_TARGET_CPU_LEGACY_LIB)"' $(LIBFFI_CFLAGS)
+ JVM_LIBS_FEATURES += $(LIBFFI_LIBS)
+endif
+
+ifeq ($(call check-jvm-feature, shark), true)
+ JVM_CFLAGS_FEATURES += -DSHARK $(LLVM_CFLAGS)
+ JVM_LDFLAGS_FEATURES += $(LLVM_LDFLAGS)
+ JVM_LIBS_FEATURES += $(LLVM_LIBS)
+else
+ JVM_EXCLUDES += shark
+endif
+
+ifeq ($(call check-jvm-feature, minimal), true)
+ JVM_CFLAGS_FEATURES += -DMINIMAL_JVM -DVMTYPE=\"Minimal\"
+endif
+
+ifeq ($(call check-jvm-feature, dtrace), true)
+ JVM_CFLAGS_FEATURES += -DDTRACE_ENABLED
+endif
+
+ifeq ($(call check-jvm-feature, static-build), true)
+ JVM_CFLAGS_FEATURES += -DSTATIC_BUILD=1
+endif
+
+ifneq ($(call check-jvm-feature, jvmti), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_JVMTI=0
+ JVM_EXCLUDE_FILES += jvmtiGetLoadedClasses.cpp jvmtiThreadState.cpp jvmtiExtensions.cpp \
+ jvmtiImpl.cpp jvmtiManageCapabilities.cpp jvmtiRawMonitor.cpp jvmtiUtil.cpp jvmtiTrace.cpp \
+ jvmtiCodeBlobEvents.cpp jvmtiEnv.cpp jvmtiRedefineClasses.cpp jvmtiEnvBase.cpp jvmtiEnvThreadState.cpp \
+ jvmtiTagMap.cpp jvmtiEventController.cpp evmCompat.cpp jvmtiEnter.xsl jvmtiExport.cpp \
+ jvmtiClassFileReconstituter.cpp
+endif
+
+ifneq ($(call check-jvm-feature, jvmci), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_JVMCI=0
+ JVM_EXCLUDES += jvmci
+ JVM_EXCLUDE_FILES += jvmciCodeInstaller_$(HOTSPOT_TARGET_CPU_ARCH).cpp
+endif
+
+ifneq ($(call check-jvm-feature, fprof), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_FPROF=0
+ JVM_EXCLUDE_FILES += fprofiler.cpp
+endif
+
+ifneq ($(call check-jvm-feature, vm-structs), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_VM_STRUCTS=0
+ JVM_EXCLUDE_FILES += vmStructs.cpp
+endif
+
+ifneq ($(call check-jvm-feature, jni-check), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_JNI_CHECK=0
+ JVM_EXCLUDE_FILES += jniCheck.cpp
+endif
+
+ifneq ($(call check-jvm-feature, services), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_SERVICES=0
+ JVM_EXCLUDE_FILES += heapDumper.cpp heapInspection.cpp \
+ attachListener_$(HOTSPOT_TARGET_OS).cpp attachListener.cpp
+endif
+
+ifneq ($(call check-jvm-feature, management), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_MANAGEMENT=0
+endif
+
+ifneq ($(call check-jvm-feature, cds), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_CDS=0
+ JVM_EXCLUDE_FILES += \
+ classListParser.cpp \
+ classLoaderExt.cpp \
+ filemap.cpp \
+ metaspaceShared.cpp \
+ metaspaceShared_$(HOTSPOT_TARGET_CPU).cpp \
+ metaspaceShared_$(HOTSPOT_TARGET_CPU_ARCH).cpp \
+ sharedClassUtil.cpp \
+ sharedPathsMiscInfo.cpp \
+ systemDictionaryShared.cpp \
+ #
+endif
+
+ifneq ($(call check-jvm-feature, all-gcs), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_ALL_GCS=0
+ JVM_EXCLUDE_PATTERNS += \
+ cms/ g1/ parallel/
+ JVM_EXCLUDE_FILES += \
+ concurrentGCThread.cpp \
+ plab.cpp
+ JVM_EXCLUDE_FILES += \
+ g1MemoryPool.cpp \
+ psMemoryPool.cpp
+endif
+
+ifneq ($(call check-jvm-feature, nmt), true)
+ JVM_CFLAGS_FEATURES += -DINCLUDE_NMT=0
+ JVM_EXCLUDE_FILES += \
+ memBaseline.cpp memReporter.cpp mallocTracker.cpp virtualMemoryTracker.cpp nmtCommon.cpp \
+ memTracker.cpp nmtDCmd.cpp mallocSiteTable.cpp
+endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/lib/JvmMapfile.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,172 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+$(eval $(call IncludeCustomExtension, hotspot, lib/JvmMapfile.gmk))
+
+################################################################################
+# Combine a list of static symbols
+
+ifneq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), windows-x86_64)
+ # On Windows x86_64, we should not have any symbols at all, since that
+ # results in duplicate warnings from the linker (JDK-8043491).
+ SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/make/symbols/symbols-shared
+endif
+
+ifeq ($(OPENJDK_TARGET_OS_TYPE), unix)
+ SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/make/symbols/symbols-unix
+endif
+
+ifneq ($(wildcard $(HOTSPOT_TOPDIR)/make/symbols/symbols-$(OPENJDK_TARGET_OS)), )
+ SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/make/symbols/symbols-$(OPENJDK_TARGET_OS)
+endif
+
+ifneq ($(findstring debug, $(DEBUG_LEVEL)), )
+ ifneq ($(wildcard $(HOTSPOT_TOPDIR)/make/symbols/symbols-$(OPENJDK_TARGET_OS)-debug), )
+ SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/make/symbols/symbols-$(OPENJDK_TARGET_OS)-debug
+ endif
+endif
+
+ifeq ($(OPENJDK_TARGET_OS), solaris)
+ ifeq ($(call check-jvm-feature, dtrace), true)
+ # Additional mapfiles that are only used when dtrace is enabled
+ ifeq ($(call check-jvm-feature, compiler2), true)
+ # This also covers the case of compiler1+compiler2.
+ SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/make/symbols/symbols-solaris-dtrace-compiler2
+ else ifeq ($(call check-jvm-feature, compiler1), true)
+ SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/make/symbols/symbols-solaris-dtrace-compiler1
+ endif
+ endif
+endif
+
+################################################################################
+# Create a dynamic list of symbols from the built object files. This is highly
+# platform dependent.
+
+ifeq ($(OPENJDK_TARGET_OS), linux)
+ DUMP_SYMBOLS_CMD := $(NM) --defined-only *.o
+ ifneq ($(FILTER_SYMBOLS_PATTERN), )
+ FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
+ endif
+ FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^_ZTV|^gHotSpotVM|^UseSharedSpaces$$
+ FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^_ZN9Arguments17SharedArchivePathE$$
+ FILTER_SYMBOLS_AWK_SCRIPT := \
+ '{ \
+ if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
+ }'
+
+else ifeq ($(OPENJDK_TARGET_OS), solaris)
+ DUMP_SYMBOLS_CMD := $(NM) -p *.o
+ ifneq ($(FILTER_SYMBOLS_PATTERN), )
+ FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
+ endif
+ FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^__1c.*__vtbl_$$|^gHotSpotVM
+ FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^UseSharedSpaces$$
+ FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^__1cJArgumentsRSharedArchivePath_$$
+ FILTER_SYMBOLS_AWK_SCRIPT := \
+ '{ \
+ if ($$2 == "U") next; \
+ if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
+ }'
+
+else ifeq ($(OPENJDK_TARGET_OS), macosx)
+ # nm on macosx prints out "warning: nm: no name list" to stderr for
+ # files without symbols. Hide this, even at the expense of hiding real errors.
+ DUMP_SYMBOLS_CMD := $(NM) -Uj *.o 2> /dev/null
+ ifneq ($(FILTER_SYMBOLS_PATTERN), )
+ FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
+ endif
+ FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^_ZTV|^gHotSpotVM
+ FILTER_SYMBOLS_AWK_SCRIPT := \
+ '{ \
+ if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
+ }'
+
+# NOTE: The script is from the old build. It is broken and finds no symbols.
+# The script below might be what was intended, but it failes to link with tons
+# of 'cannot export hidden symbol vtable for X'.
+# '{ if ($$1 ~ /^__ZTV/ || $$1 ~ /^_gHotSpotVM/) print substr($$1, 2) }'
+else ifeq ($(OPENJDK_TARGET_OS), aix)
+ # NOTE: The old build had the solution below. This should to be fixed in
+ # configure instead.
+
+ # On AIX we have to prevent that we pick up the 'nm' version from the GNU binutils
+ # which may be installed under /opt/freeware/bin. So better use an absolute path here!
+ # NM=/usr/bin/nm
+
+ DUMP_SYMBOLS_CMD := $(NM) -X64 -B -C *.o
+ FILTER_SYMBOLS_AWK_SCRIPT := \
+ '{ \
+ if (($$2="d" || $$2="D") && ($$3 ~ /^__vft/ || $$3 ~ /^gHotSpotVM/)) print $$3; \
+ if ($$3 ~ /^UseSharedSpaces$$/) print $$3; \
+ if ($$3 ~ /^SharedArchivePath__9Arguments$$/) print $$3; \
+ }'
+
+else ifeq ($(OPENJDK_TARGET_OS), windows)
+ DUMP_SYMBOLS_CMD := $(DUMPBIN) -symbols *.obj
+ FILTER_SYMBOLS_AWK_SCRIPT := \
+ '{ \
+ if ($$7 ~ /??_7.*@@6B@/ && $$7 !~ /type_info/) print $$7; \
+ }'
+
+else
+ $(error Unknown target OS $(OPENJDK_TARGET_OS) in JvmMapfile.gmk)
+endif
+
+# A more correct solution would be to send BUILD_LIBJVM_ALL_OBJS instead of
+# cd && *.o, but this will result in very long command lines, which is
+# problematic on some platforms.
+$(JVM_OUTPUTDIR)/symbols-objects: $(BUILD_LIBJVM_ALL_OBJS)
+ $(call LogInfo, Generating symbol list from object files)
+ $(CD) $(JVM_OUTPUTDIR)/objs && \
+ $(DUMP_SYMBOLS_CMD) | $(NAWK) $(FILTER_SYMBOLS_AWK_SCRIPT) | $(SORT) -u > $@
+
+SYMBOLS_SRC += $(JVM_OUTPUTDIR)/symbols-objects
+
+################################################################################
+# Now concatenate all symbol lists into a single file and remove comments.
+
+$(JVM_OUTPUTDIR)/symbols: $(SYMBOLS_SRC)
+ $(SED) -e '/^#/d' $^ > $@
+
+################################################################################
+# Finally convert the symbol list into a platform-specific mapfile
+
+$(JVM_MAPFILE): $(JVM_OUTPUTDIR)/symbols
+ $(call LogInfo, Creating mapfile)
+ $(RM) $@
+ ifeq ($(OPENJDK_TARGET_OS), macosx)
+ # On macosx, we need to add a leading underscore
+ $(AWK) '{ if ($$0 ~ ".") { print " _" $$0 } }' < $^ > $@.tmp
+ else ifeq ($(OPENJDK_TARGET_OS), windows)
+ # On windows, add an 'EXPORTS' header
+ $(ECHO) "EXPORTS" > $@.tmp
+ $(AWK) '{ if ($$0 ~ ".") { print " " $$0 } }' < $^ >> $@.tmp
+ else
+ # Assume standard linker script
+ $(PRINTF) "SUNWprivate_1.1 { \n global: \n" > $@.tmp
+ $(AWK) '{ if ($$0 ~ ".") { print " " $$0 ";" } }' < $^ >> $@.tmp
+ $(PRINTF) " local: \n *; \n }; \n" >> $@.tmp
+ endif
+ $(MV) $@.tmp $@
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/lib/JvmOverrideFiles.gmk Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,168 @@
+#
+# Copyright (c) 2013, 2016, 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.
+#
+
+$(eval $(call IncludeCustomExtension, hotspot, lib/JvmOverrideFiles.gmk))
+
+################################################################################
+# This file contains explicit overrides of CFLAGS and/or precompiled header
+# status for individual files on specific platforms.
+
+ifeq ($(TOOLCHAIN_TYPE), gcc)
+ BUILD_LIBJVM_vmStructs.cpp_CXXFLAGS := -fno-var-tracking-assignments -O0
+endif
+
+ifeq ($(OPENJDK_TARGET_OS), linux)
+ BUILD_LIBJVM_ostream.cpp_CXXFLAGS := -D_FILE_OFFSET_BITS=64
+
+ ifeq ($(OPENJDK_TARGET_CPU_ARCH), x86)
+ BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := -DNO_PCH $(CXX_O_FLAG_NONE)
+ BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := -DNO_PCH $(CXX_O_FLAG_NONE)
+
+ ifeq ($(TOOLCHAIN_TYPE), clang)
+ JVM_PRECOMPILED_HEADER_EXCLUDE := \
+ sharedRuntimeTrig.cpp \
+ sharedRuntimeTrans.cpp \
+ #
+ endif
+ endif
+
+ ifeq ($(OPENJDK_TARGET_CPU), x86)
+ # Performance measurements show that by compiling GC related code, we could
+ # significantly reduce the GC pause time on 32 bit Linux/Unix platforms by
+ # compiling without the PIC flag (-fPIC on linux).
+ # See 6454213 for more details.
+ ALL_SRC := $(filter %.cpp, $(call CacheFind, $(HOTSPOT_TOPDIR)/src/share/vm))
+ NONPIC_FILTER := $(addsuffix %, $(addprefix $(HOTSPOT_TOPDIR)/src/share/vm/, \
+ memory oops gc))
+ # Due to what looks like a bug in the old build implementation of this, add a
+ # couple of more files that were accidentally matched as substrings of GC related
+ # files.
+ NONPIC_SRC := $(filter $(NONPIC_FILTER), $(ALL_SRC)) globals.cpp location.cpp
+ # Declare variables for each source file that needs the pic flag like this:
+ # BUILD_JVM_<srcfile>_CXXFLAGS := -fno-PIC
+ # This will get implicitly picked up by SetupNativeCompilation below.
+ $(foreach s, $(NONPIC_SRC), $(eval BUILD_LIBJVM_$(notdir $s)_CXXFLAGS := -fno-PIC))
+ endif
+
+else ifeq ($(OPENJDK_TARGET_OS), solaris)
+ ifneq ($(DEBUG_LEVEL), slowdebug)
+ # Workaround for a bug in dtrace. If ciEnv::post_compiled_method_load_event()
+ # is inlined, the resulting dtrace object file needs a reference to this
+ # function, whose symbol name is too long for dtrace. So disable inlining
+ # for this method for now. (fix this when dtrace bug 6258412 is fixed)
+ BUILD_LIBJVM_ciEnv.cpp_CXXFLAGS := \
+ -xinline=no%__1cFciEnvbFpost_compiled_method_load_event6MpnHnmethod__v_
+ # dtrace cannot handle tail call optimization (6672627, 6693876)
+ BUILD_LIBJVM_jni.cpp_CXXFLAGS := -Qoption ube -O~yz
+ BUILD_LIBJVM_stubGenerator_$(HOTSPOT_TARGET_CPU).cpp_CXXFLAGS := -xspace
+
+ ifeq ($(OPENJDK_TARGET_CPU), x86_64)
+ # Temporary until SS10 C++ compiler is fixed
+ BUILD_LIBJVM_generateOptoStub.cpp_CXXFLAGS := -xO2
+ # Temporary util SS12u1 C++ compiler is fixed
+ BUILD_LIBJVM_c1_LinearScan.cpp_CXXFLAGS := -xO2
+ endif
+ endif
+
+ # Need extra inlining to get oop_ps_push_contents functions to perform well enough.
+ ifeq ($(DEBUG_LEVEL),release)
+ BUILD_LIBJVM_psPromotionManager.cpp_CXXFLAGS := -W2,-Ainline:inc=1000
+ endif
+
+ ifeq ($(DEBUG_LEVEL), fastdebug)
+ # this hangs in iropt now (7113504)
+ BUILD_LIBJVM_compileBroker.cpp_CXXFLAGS := -xO2
+
+ # Frame size > 100k if we allow inlining via -g0!
+ BUILD_LIBJVM_bytecodeInterpreter.cpp_CXXFLAGS := +d
+ BUILD_LIBJVM_bytecodeInterpreterWithChecks.cpp_CXXFLAGS := +d
+
+ ifeq ($(OPENJDK_TARGET_CPU_ARCH), x86)
+ # ube explodes on x86
+ BUILD_LIBJVM_bytecodeInterpreter.cpp_CXXFLAGS += -xO1
+ BUILD_LIBJVM_bytecodeInterpreterWithChecks.cpp_CXXFLAGS += -xO1
+ endif
+
+ endif
+
+else ifeq ($(OPENJDK_TARGET_OS), macosx)
+ # The copied fdlibm routines in these files must not be optimized
+ BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
+ BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
+ ifeq ($(TOOLCHAIN_TYPE), clang)
+ # NOTE: The old build tested clang version to make sure this workaround
+ # for the clang bug was still needed.
+ BUILD_LIBJVM_loopTransform.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
+ ifneq ($(DEBUG_LEVEL), slowdebug)
+ BUILD_LIBJVM_unsafe.cpp_CXXFLAGS := -O1
+ endif
+
+ # The following files are compiled at various optimization
+ # levels due to optimization issues encountered at the
+ # default level. The Clang compiler issues a compile
+ # time error if there is an optimization level specification
+ # skew between the PCH file and the C++ file. Especially if the
+ # PCH file is compiled at a higher optimization level than
+ # the C++ file. One solution might be to prepare extra optimization
+ # level specific PCH files for the opt build and use them here, but
+ # it's probably not worth the effort as long as only a few files
+ # need this special handling.
+ JVM_PRECOMPILED_HEADER_EXCLUDE := \
+ sharedRuntimeTrig.cpp \
+ sharedRuntimeTrans.cpp \
+ loopTransform.cpp \
+ unsafe.cpp \
+ jvmciCompilerToVM.cpp \
+ #
+ endif
+
+else ifeq ($(OPENJDK_TARGET_OS), aix)
+ BUILD_LIBJVM_synchronizer.cpp_CXXFLAGS := -qnoinline
+ BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
+ # Disable aggressive optimizations for functions in sharedRuntimeTrig.cpp
+ # and sharedRuntimeTrans.cpp on ppc64.
+ # -qstrict turns off the following optimizations:
+ # * Performing code motion and scheduling on computations such as loads
+ # and floating-point computations that may trigger an exception.
+ # * Relaxing conformance to IEEE rules.
+ # * Reassociating floating-point expressions.
+ # When using '-qstrict' there still remains one problem
+ # in javasoft.sqe.tests.api.java.lang.Math.sin5Tests when run in compile-all
+ # mode, so don't optimize sharedRuntimeTrig.cpp at all.
+ BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
+
+ # Disable ELF decoder on AIX (AIX uses XCOFF).
+ JVM_EXCLUDE_PATTERNS += elf
+
+else ifeq ($(OPENJDK_TARGET_OS), windows)
+ JVM_PRECOMPILED_HEADER_EXCLUDE := \
+ bytecodeInterpreter.cpp \
+ bytecodeInterpreterWithChecks.cpp \
+ opcodes.cpp \
+ os_windows.cpp \
+ os_windows_x86.cpp \
+ osThread_windows.cpp \
+ #
+endif
--- a/hotspot/make/linux/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,385 +0,0 @@
-#
-# Copyright (c) 1999, 2015, 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.
-#
-# 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.
-#
-#
-
-# This makefile creates a build tree and lights off a build.
-# You can go back into the build tree and perform rebuilds or
-# incremental builds as desired. Be sure to reestablish
-# environment variable settings for LD_LIBRARY_PATH and JAVA_HOME.
-
-# The make process now relies on java and javac. These can be
-# specified either implicitly on the PATH, by setting the
-# (JDK-inherited) ALT_BOOTDIR environment variable to full path to a
-# JDK in which bin/java and bin/javac are present and working (e.g.,
-# /usr/local/java/jdk1.3/solaris), or via the (JDK-inherited)
-# default BOOTDIR path value. Note that one of ALT_BOOTDIR
-# or BOOTDIR has to be set. We do *not* search javac, javah, rmic etc.
-# from the PATH.
-#
-# One can set ALT_BOOTDIR or BOOTDIR to point to a jdk that runs on
-# an architecture that differs from the target architecture, as long
-# as the bootstrap jdk runs under the same flavor of OS as the target
-# (i.e., if the target is linux, point to a jdk that runs on a linux
-# box). In order to use such a bootstrap jdk, set the make variable
-# REMOTE to the desired remote command mechanism, e.g.,
-#
-# make REMOTE="rsh -l me myotherlinuxbox"
-
-ifeq ($(GAMMADIR),)
-include ../../make/defs.make
-else
-include $(GAMMADIR)/make/defs.make
-endif
-include $(GAMMADIR)/make/$(OSNAME)/makefiles/rules.make
-
-ifndef CC_INTERP
- ifndef FORCE_TIERED
- FORCE_TIERED=1
- endif
-endif
-
-ifdef LP64
- ifeq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
- _JUNK_ := $(shell echo >&2 \
- $(OSNAME) $(ARCH) "*** ERROR: this platform does not support 64-bit compilers!")
- @exit 1
- endif
-endif
-
-# we need to set up LP64 correctly to satisfy sanity checks in adlc
-ifneq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
- MFLAGS += " LP64=1 "
-endif
-
-# pass USE_SUNCC further, through MFLAGS
-ifdef USE_SUNCC
- MFLAGS += " USE_SUNCC=1 "
-endif
-
-# The following renders pathnames in generated Makefiles valid on
-# machines other than the machine containing the build tree.
-#
-# For example, let's say my build tree lives on /files12 on
-# exact.east.sun.com. This logic will cause GAMMADIR to begin with
-# /net/exact/files12/...
-#
-# We only do this on SunOS variants, for a couple of reasons:
-# * It is extremely rare that source trees exist on other systems
-# * It has been claimed that the Linux automounter is flakey, so
-# changing GAMMADIR in a way that exercises the automounter could
-# prove to be a source of unreliability in the build process.
-# Obviously, this Makefile is only relevant on SunOS boxes to begin
-# with, but the SunOS conditionalization will make it easier to
-# combine Makefiles in the future (assuming we ever do that).
-
-ifeq ($(OSNAME),solaris)
-
- # prepend current directory to relative pathnames.
- NEW_GAMMADIR := \
- $(shell echo $(GAMMADIR) | \
- sed -e "s=^\([^/].*\)=$(shell pwd)/\1=" \
- )
- unexport NEW_GAMMADIR
-
- # If NEW_GAMMADIR doesn't already start with "/net/":
- ifeq ($(strip $(filter /net/%,$(NEW_GAMMADIR))),)
- # prepend /net/$(HOST)
- # remove /net/$(HOST) if name already began with /home/
- # remove /net/$(HOST) if name already began with /java/
- # remove /net/$(HOST) if name already began with /lab/
- NEW_GAMMADIR := \
- $(shell echo $(NEW_GAMMADIR) | \
- sed -e "s=^\(.*\)=/net/$(HOST)\1=" \
- -e "s=^/net/$(HOST)/home/=/home/=" \
- -e "s=^/net/$(HOST)/java/=/java/=" \
- -e "s=^/net/$(HOST)/lab/=/lab/=" \
- )
- # Don't use the new value for GAMMADIR unless a file with the new
- # name actually exists.
- ifneq ($(wildcard $(NEW_GAMMADIR)),)
- GAMMADIR := $(NEW_GAMMADIR)
- endif
- endif
-
-endif
-
-# BUILDARCH is set to "zero" for Zero builds. VARIANTARCH
-# is used to give the build directories meaningful names.
-VARIANTARCH = $(subst i386,i486,$(ZERO_LIBARCH))
-
-# There is a (semi-) regular correspondence between make targets and actions:
-#
-# Target Tree Type Build Dir
-#
-# debug compiler2 <os>_<arch>_compiler2/debug
-# fastdebug compiler2 <os>_<arch>_compiler2/fastdebug
-# optimized compiler2 <os>_<arch>_compiler2/optimized
-# product compiler2 <os>_<arch>_compiler2/product
-#
-# debug1 compiler1 <os>_<arch>_compiler1/debug
-# fastdebug1 compiler1 <os>_<arch>_compiler1/fastdebug
-# optimized1 compiler1 <os>_<arch>_compiler1/optimized
-# product1 compiler1 <os>_<arch>_compiler1/product
-#
-# debugcore core <os>_<arch>_core/debug
-# fastdebugcore core <os>_<arch>_core/fastdebug
-# optimizedcore core <os>_<arch>_core/optimized
-# productcore core <os>_<arch>_core/product
-#
-# debugzero zero <os>_<arch>_zero/debug
-# fastdebugzero zero <os>_<arch>_zero/fastdebug
-# optimizedzero zero <os>_<arch>_zero/optimized
-# productzero zero <os>_<arch>_zero/product
-#
-# debugshark shark <os>_<arch>_shark/debug
-# fastdebugshark shark <os>_<arch>_shark/fastdebug
-# optimizedshark shark <os>_<arch>_shark/optimized
-# productshark shark <os>_<arch>_shark/product
-#
-# fastdebugminimal1 minimal1 <os>_<arch>_minimal1/fastdebug
-# productminimal1 minimal1 <os>_<arch>_minimal1/product
-#
-# What you get with each target:
-#
-# debug* - debug compile with asserts enabled
-# fastdebug* - optimized compile, but with asserts enabled
-# optimized* - optimized compile, no asserts
-# product* - the shippable thing: optimized compile, no asserts, -DPRODUCT
-
-# This target list needs to be coordinated with the usage message
-# in the build.sh script:
-TARGETS = debug fastdebug optimized product
-
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- SUBDIR_DOCS = $(OSNAME)_$(VARIANTARCH)_docs
-else
- SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs
-endif
-SUBDIRS_C1 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS))
-SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS))
-SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS))
-SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS))
-SUBDIRS_ZERO = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS))
-SUBDIRS_SHARK = $(addprefix $(OSNAME)_$(VARIANTARCH)_shark/,$(TARGETS))
-SUBDIRS_MINIMAL1 = $(addprefix $(OSNAME)_$(BUILDARCH)_minimal1/,$(TARGETS))
-
-TARGETS_C2 = $(TARGETS)
-TARGETS_C1 = $(addsuffix 1,$(TARGETS))
-TARGETS_TIERED = $(addsuffix tiered,$(TARGETS))
-TARGETS_CORE = $(addsuffix core,$(TARGETS))
-TARGETS_ZERO = $(addsuffix zero,$(TARGETS))
-TARGETS_SHARK = $(addsuffix shark,$(TARGETS))
-TARGETS_MINIMAL1 = $(addsuffix minimal1,$(TARGETS))
-
-BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make
-BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH)
-BUILDTREE_VARS += HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) VERSION_STRING=$(VERSION_STRING)
-BUILDTREE_VARS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) OBJCOPY=$(OBJCOPY) STRIP_POLICY=$(STRIP_POLICY) ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) ZIPEXE=$(ZIPEXE)
-
-BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS)
-
-#-------------------------------------------------------------------------------
-
-# Could make everything by default, but that would take a while.
-all:
- @echo "Try '$(MAKE) <target> ...' where <target> is one or more of"
- @echo " $(TARGETS_C2)"
- @echo " $(TARGETS_C1)"
- @echo " $(TARGETS_CORE)"
- @echo " $(TARGETS_ZERO)"
- @echo " $(TARGETS_SHARK)"
- @echo " $(TARGETS_MINIMAL1)"
-
-checks: check_os_version check_j2se_version
-
-# We do not want people accidentally building on old systems (e.g. Linux 2.2.x,
-# Solaris 2.5.1, 2.6).
-# Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok.
-
-SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3% 4%
-OS_VERSION := $(shell uname -r)
-EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION))
-
-check_os_version:
-ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),)
- $(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1;
-endif
-
-# jvmti.make requires XSLT (J2SE 1.4.x or newer):
-XSLT_CHECK = $(REMOTE) $(RUN.JAVAP) javax.xml.transform.TransformerFactory
-# If not found then fail fast.
-check_j2se_version:
- $(QUIETLY) if ! $(XSLT_CHECK) > /dev/null 2>&1; then \
- $(REMOTE) $(RUN.JAVA) -version; \
- echo "*** An XSLT processor (J2SE 1.4.x or newer) is required" \
- "to bootstrap this build" 1>&2; \
- exit 1; \
- fi
-
-$(SUBDIRS_TIERED): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=tiered
-
-$(SUBDIRS_C2): $(BUILDTREE_MAKE)
-ifeq ($(FORCE_TIERED),1)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=tiered FORCE_TIERED=1
-else
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=compiler2
-endif
-
-$(SUBDIRS_C1): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=compiler1
-
-$(SUBDIRS_CORE): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=core
-
-$(SUBDIRS_ZERO): $(BUILDTREE_MAKE) platform_zero
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=zero VARIANTARCH=$(VARIANTARCH)
-
-$(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH)
-
-$(SUBDIRS_MINIMAL1): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=minimal1
-
-
-platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in
- $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@
-
-# Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME
-
-$(TARGETS_C2): $(SUBDIRS_C2)
- cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_TIERED): $(SUBDIRS_TIERED)
- cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_C1): $(SUBDIRS_C1)
- cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_CORE): $(SUBDIRS_CORE)
- cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_ZERO): $(SUBDIRS_ZERO)
- cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_SHARK): $(SUBDIRS_SHARK)
- cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_MINIMAL1): $(SUBDIRS_MINIMAL1)
- cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-# Just build the tree, and nothing else:
-tree: $(SUBDIRS_C2)
-tree1: $(SUBDIRS_C1)
-treecore: $(SUBDIRS_CORE)
-treezero: $(SUBDIRS_ZERO)
-treeshark: $(SUBDIRS_SHARK)
-treeminimal1: $(SUBDIRS_MINIMAL1)
-
-# Doc target. This is the same for all build options.
-# Hence create a docs directory beside ...$(ARCH)_[...]
-# We specify 'BUILD_FLAVOR=product' so that the proper
-# ENABLE_FULL_DEBUG_SYMBOLS value is used.
-docs: checks
- $(QUIETLY) mkdir -p $(SUBDIR_DOCS)
- $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) BUILD_FLAVOR=product jvmtidocs
-
-# Synonyms for win32-like targets.
-compiler2: debug product
-
-compiler1: debug1 product1
-
-core: debugcore productcore
-
-zero: debugzero productzero
-
-shark: debugshark productshark
-
-warn_jvmg_deprecated:
- echo "Warning: The jvmg target has been replaced with debug"
- echo "Warning: Please update your usage"
-
-jvmg: warn_jvmg_deprecated debug
-
-jvmg1: warn_jvmg_deprecated debug1
-
-jvmgcore: warn_jvmg_deprecated debugcore
-
-jvmgzero: warn_jvmg_deprecated debugzero
-
-jvmgshark: warn_jvmg_deprecated debugshark
-
-clean_docs:
- rm -rf $(SUBDIR_DOCS)
-
-clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark clean_minimal1:
- rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@)
-
-clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_minimal1 clean_docs
-
-include $(GAMMADIR)/make/cscope.make
-
-#
-# Include alternate Makefile if it exists.
-#
--include $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make
-
-#-------------------------------------------------------------------------------
-
-.PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) $(TARGETS_MINIMAL1)
-.PHONY: tree tree1 treecore treezero treeshark
-.PHONY: all compiler1 compiler2 core zero shark
-.PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs
-.PHONY: checks check_os_version check_j2se_version
-.PHONY: $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make
-
-.NOTPARALLEL:
--- a/hotspot/make/linux/README Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-Copyright (c) 2007, 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.
-
-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.
-
-________________________________________________________________________
-
-Please refer to the comments in the Makefile in this directory
-for instructions how to build the Solaris versions.
-
--- a/hotspot/make/linux/adlc_updater Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-#! /bin/sh
-#
-# This file is used by adlc.make to selectively update generated
-# adlc files. Because source and target diretories are relative
-# paths, this file is copied to the target build directory before
-# use.
-#
-# adlc-updater <file> <source-dir> <target-dir>
-#
-fix_lines() {
- # repair bare #line directives in $1 to refer to $2
- # and add an override of __FILE__ with just the basename on the
- # first line of the file.
- awk < $1 > $1+ -v F2=$2 '
- BEGIN { print "#line 1 \"" F2 "\""; }
- /^#line 999999$/ {print "#line " (NR+1) " \"" F2 "\""; next}
- {print}
- '
- mv $1+ $1
-}
-fix_lines $2/$1 $1
-[ -f $3/$1 ] && cmp -s $2/$1 $3/$1 || \
-( [ -f $3/$1 ] && echo Updating $3/$1 ; touch $2/made-change ; mv $2/$1 $3/$1 )
--- a/hotspot/make/linux/makefiles/aarch64.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-#
-# Copyright (c) 2003, 2013, 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.
-#
-# 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.
-#
-#
-
-# The copied fdlibm routines in sharedRuntimeTrig.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
-# The copied fdlibm routines in sharedRuntimeTrans.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT)
-# Must also specify if CPU is little endian
-CFLAGS += -DVM_LITTLE_ENDIAN
-
-CFLAGS += -D_LP64=1
--- a/hotspot/make/linux/makefiles/adjust-mflags.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-#! /bin/sh
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# This script is used only from top.make.
-# The macro $(MFLAGS-adjusted) calls this script to
-# adjust the "-j" arguments to take into account
-# the HOTSPOT_BUILD_JOBS variable. The default
-# handling of the "-j" argument by gnumake does
-# not meet our needs, so we must adjust it ourselves.
-
-# This argument adjustment applies to two recursive
-# calls to "$(MAKE) $(MFLAGS-adjusted)" in top.make.
-# One invokes adlc.make, and the other invokes vm.make.
-# The adjustment propagates the desired concurrency
-# level down to the sub-make (of the adlc or vm).
-# The default behavior of gnumake is to run all
-# sub-makes without concurrency ("-j1").
-
-# Also, we use a make variable rather than an explicit
-# "-j<N>" argument to control this setting, so that
-# the concurrency setting (which must be tuned separately
-# for each MP system) can be set via an environment variable.
-# The recommended setting is 1.5x to 2x the number of available
-# CPUs on the MP system, which is large enough to keep the CPUs
-# busy (even though some jobs may be I/O bound) but not too large,
-# we may presume, to overflow the system's swap space.
-
-set -eu
-
-default_build_jobs=4
-
-case $# in
-[12]) true;;
-*) >&2 echo "Usage: $0 ${MFLAGS} ${HOTSPOT_BUILD_JOBS}"; exit 2;;
-esac
-
-MFLAGS=$1
-HOTSPOT_BUILD_JOBS=${2-}
-
-# Normalize any -jN argument to the form " -j${HBJ}"
-MFLAGS=`
- echo "$MFLAGS" \
- | sed '
- s/^-/ -/
- s/ -\([^ I][^ I]*\)j/ -\1 -j/
- s/ -j[0-9][0-9]*/ -j/
- s/ -j\([^ ]\)/ -j -\1/
- s/ -j/ -j'${HOTSPOT_BUILD_JOBS:-${default_build_jobs}}'/
- ' `
-
-case ${HOTSPOT_BUILD_JOBS} in \
-
-'') case ${MFLAGS} in
- *\ -j*)
- >&2 echo "# Note: -jN is ineffective for setting parallelism in this makefile."
- >&2 echo "# please set HOTSPOT_BUILD_JOBS=${default_build_jobs} in the command line or environment."
- esac;;
-
-?*) case ${MFLAGS} in
- *\ -j*) true;;
- *) MFLAGS="-j${HOTSPOT_BUILD_JOBS} ${MFLAGS}";;
- esac;;
-esac
-
-echo "${MFLAGS}"
--- a/hotspot/make/linux/makefiles/adlc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,233 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-# This makefile (adlc.make) is included from the adlc.make in the
-# build directories.
-# It knows how to compile, link, and run the adlc.
-
-include $(GAMMADIR)/make/$(Platform_os_family)/makefiles/rules.make
-
-# #########################################################################
-
-# OUTDIR must be the same as AD_Dir = $(GENERATED)/adfiles in top.make:
-GENERATED = ../generated
-OUTDIR = $(GENERATED)/adfiles
-
-ARCH = $(Platform_arch)
-OS = $(Platform_os_family)
-
-SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
-
-ifeq ("${Platform_arch_model}", "${Platform_arch}")
- SOURCES.AD = \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad)
-else
- SOURCES.AD = \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch).ad)
-endif
-
-EXEC = $(OUTDIR)/adlc
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(GAMMADIR)/src/share/vm/adlc
-VPATH += $(Src_Dirs_V:%=%:)
-
-# set INCLUDES for C preprocessor
-Src_Dirs_I += $(GAMMADIR)/src/share/vm/adlc $(GENERATED)
-INCLUDES += $(Src_Dirs_I:%=-I%)
-
-# set flags for adlc compilation
-CXXFLAGS = $(SYSDEFS) $(INCLUDES)
-
-# Force assertions on.
-CXXFLAGS += -DASSERT
-
-# CFLAGS_WARN holds compiler options to suppress/enable warnings.
-# Compiler warnings are treated as errors
-CFLAGS_WARN = $(WARNINGS_ARE_ERRORS)
-CFLAGS += $(CFLAGS_WARN)
-
-OBJECTNAMES = \
- adlparse.o \
- archDesc.o \
- arena.o \
- dfa.o \
- dict2.o \
- filebuff.o \
- forms.o \
- formsopt.o \
- formssel.o \
- main.o \
- adlc-opcodes.o \
- output_c.o \
- output_h.o \
-
-OBJECTS = $(OBJECTNAMES:%=$(OUTDIR)/%)
-
-GENERATEDNAMES = \
- ad_$(Platform_arch_model).cpp \
- ad_$(Platform_arch_model).hpp \
- ad_$(Platform_arch_model)_clone.cpp \
- ad_$(Platform_arch_model)_expand.cpp \
- ad_$(Platform_arch_model)_format.cpp \
- ad_$(Platform_arch_model)_gen.cpp \
- ad_$(Platform_arch_model)_misc.cpp \
- ad_$(Platform_arch_model)_peephole.cpp \
- ad_$(Platform_arch_model)_pipeline.cpp \
- adGlobals_$(Platform_arch_model).hpp \
- dfa_$(Platform_arch_model).cpp \
-
-GENERATEDFILES = $(GENERATEDNAMES:%=$(OUTDIR)/%)
-
-# #########################################################################
-
-all: $(EXEC)
-
-$(EXEC) : $(OBJECTS)
- @echo $(LOG_INFO) Making adlc
- $(QUIETLY) $(filter-out $(ARCHFLAG),$(HOST.LINK_NOPROF.CXX)) -o $(EXEC) $(OBJECTS)
-
-# Random dependencies:
-$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
-
-# The source files refer to ostream.h, which sparcworks calls iostream.h
-$(OBJECTS): ostream.h
-
-ostream.h :
- @echo >$@ '#include <iostream.h>'
-
-dump:
- : OUTDIR=$(OUTDIR)
- : OBJECTS=$(OBJECTS)
- : products = $(GENERATEDFILES)
-
-all: $(GENERATEDFILES)
-
-$(GENERATEDFILES): refresh_adfiles
-
-# Get a unique temporary directory name, so multiple makes can run in parallel.
-# Note that product files are updated via "mv", which is atomic.
-TEMPDIR := $(OUTDIR)/mktmp$(shell echo $$$$)
-
-ifneq ($(DEBUG_BINARIES), true)
- # Debuggable by default (unless already done by DEBUG_BINARIES)
- CFLAGS += -g
-endif
-
-# Pass -D flags into ADLC.
-ADLCFLAGS += $(SYSDEFS)
-
-# Note "+="; it is a hook so flags.make can add more flags, like -g or -DFOO.
-ADLCFLAGS += -q -T
-
-# Normally, debugging is done directly on the ad_<arch>*.cpp files.
-# But -g will put #line directives in those files pointing back to <arch>.ad.
-# Some builds of gcc 3.2 have a bug that gets tickled by the extra #line directives
-# so skip it for 3.2 and ealier.
-ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
-ADLCFLAGS += -g
-endif
-
-ifdef LP64
-ADLCFLAGS += -D_LP64
-else
-ADLCFLAGS += -U_LP64
-endif
-
-#
-# adlc_updater is a simple sh script, under sccs control. It is
-# used to selectively update generated adlc files. This should
-# provide a nice compilation speed improvement.
-#
-ADLC_UPDATER_DIRECTORY = $(GAMMADIR)/make/$(OS)
-ADLC_UPDATER = adlc_updater
-$(ADLC_UPDATER): $(ADLC_UPDATER_DIRECTORY)/$(ADLC_UPDATER)
- $(QUIETLY) cp $< $@; chmod +x $@
-
-# This action refreshes all generated adlc files simultaneously.
-# The way it works is this:
-# 1) create a scratch directory to work in.
-# 2) if the current working directory does not have $(ADLC_UPDATER), copy it.
-# 3) run the compiled adlc executable. This will create new adlc files in the scratch directory.
-# 4) call $(ADLC_UPDATER) on each generated adlc file. It will selectively update changed or missing files.
-# 5) If we actually updated any files, echo a notice.
-#
-refresh_adfiles: $(EXEC) $(SOURCE.AD) $(ADLC_UPDATER)
- @rm -rf $(TEMPDIR); mkdir $(TEMPDIR)
- $(QUIETLY) $(EXEC) $(ADLCFLAGS) $(SOURCE.AD) \
- -c$(TEMPDIR)/ad_$(Platform_arch_model).cpp -h$(TEMPDIR)/ad_$(Platform_arch_model).hpp -a$(TEMPDIR)/dfa_$(Platform_arch_model).cpp -v$(TEMPDIR)/adGlobals_$(Platform_arch_model).hpp \
- || { rm -rf $(TEMPDIR); exit 1; }
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model).cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model).hpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_clone.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_expand.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_format.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_gen.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_misc.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_peephole.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_pipeline.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) adGlobals_$(Platform_arch_model).hpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) dfa_$(Platform_arch_model).cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) [ -f $(TEMPDIR)/made-change ] \
- || echo $(LOG_INFO) "Rescanned $(SOURCE.AD) but encountered no changes."
- $(QUIETLY) rm -rf $(TEMPDIR)
-
-
-# #########################################################################
-
-$(SOURCE.AD): $(SOURCES.AD)
- $(QUIETLY) $(PROCESS_AD_FILES) $(SOURCES.AD) > $(SOURCE.AD)
-
-#PROCESS_AD_FILES = cat
-# Pass through #line directives, in case user enables -g option above:
-PROCESS_AD_FILES = awk '{ \
- if (CUR_FN != FILENAME) { CUR_FN=FILENAME; NR_BASE=NR-1; need_lineno=1 } \
- if (need_lineno && $$0 !~ /\/\//) \
- { print "\n\n\#line " (NR-NR_BASE) " \"" FILENAME "\""; need_lineno=0 }; \
- print }'
-
-$(OUTDIR)/%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(filter-out $(ARCHFLAG),$(HOST.COMPILE.CXX)) -o $@ $< $(COMPILE_DONE)
-
-# Some object files are given a prefix, to disambiguate
-# them from objects of the same name built for the VM.
-$(OUTDIR)/adlc-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(filter-out $(ARCHFLAG),$(HOST.COMPILE.CXX)) -o $@ $< $(COMPILE_DONE)
-
-# #########################################################################
-
-clean :
- rm $(OBJECTS)
-
-cleanall :
- rm $(OBJECTS) $(EXEC)
-
-# #########################################################################
-
-.PHONY: all dump refresh_adfiles clean cleanall
--- a/hotspot/make/linux/makefiles/amd64.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-#
-# Copyright (c) 2003, 2016, 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.
-#
-# 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.
-#
-#
-
-# The copied fdlibm routines in sharedRuntimeTrig.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
-# The copied fdlibm routines in sharedRuntimeTrans.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT)
-# Must also specify if CPU is little endian
-CFLAGS += -DVM_LITTLE_ENDIAN
-
-CFLAGS += -D_LP64=1
-
-OPT_CFLAGS/compactingPermGenGen.o = -O1
-
-# The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
-# of OPT_CFLAGS. Restore it here.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/sharedRuntimeTrig.o += -g
- OPT_CFLAGS/sharedRuntimeTrans.o += -g
- OPT_CFLAGS/compactingPermGenGen.o += -g
-endif
--- a/hotspot/make/linux/makefiles/buildtree.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,368 +0,0 @@
-#
-# Copyright (c) 2005, 2015, 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.
-#
-# 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.
-#
-#
-
-# Usage:
-#
-# $(MAKE) -f buildtree.make SRCARCH=srcarch BUILDARCH=buildarch LIBARCH=libarch
-# GAMMADIR=dir OS_FAMILY=os VARIANT=variant
-#
-# The macros ARCH, GAMMADIR, OS_FAMILY and VARIANT must be defined in the
-# environment or on the command-line:
-#
-# ARCH - sparc, i486, ... HotSpot cpu and os_cpu source directory
-# BUILDARCH - build directory
-# LIBARCH - the corresponding directory in JDK/JRE
-# GAMMADIR - top of workspace
-# OS_FAMILY - operating system
-# VARIANT - core, compiler1, compiler2, or tiered
-# VERSION_STRING - the JDK version string as specified by JEP-223
-# HOTSPOT_VERSION_STRING - the same as VERSION_STRING, unless overridden by a standalone build
-#
-# Builds the directory trees with makefiles plus some convenience files in
-# each directory:
-#
-# Makefile - for "make foo"
-# flags.make - with macro settings
-# vm.make - to support making "$(MAKE) -v vm.make" in makefiles
-# adlc.make -
-# trace.make - generate tracing event and type definitions
-# jvmti.make - generate JVMTI bindings from the spec (JSR-163)
-#
-# The makefiles are split this way so that "make foo" will run faster by not
-# having to read the dependency files for the vm.
-
--include $(SPEC)
-include $(GAMMADIR)/make/scm.make
-include $(GAMMADIR)/make/defs.make
-include $(GAMMADIR)/make/altsrc.make
-
-
-# 'gmake MAKE_VERBOSE=y' or 'gmake QUIETLY=' gives all the gory details.
-QUIETLY$(MAKE_VERBOSE) = @
-
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- PLATFORM_FILE = $(shell dirname $(shell dirname $(shell pwd)))/platform_zero
-else
- ifdef USE_SUNCC
- PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH).suncc
- else
- PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH)
- ALT_PLATFORM_FILE = $(HS_ALT_MAKE)/$(OS_FAMILY)/platform_$(BUILDARCH)
- PLATFORM_FILE := $(if $(wildcard $(ALT_PLATFORM_FILE)),$(ALT_PLATFORM_FILE),$(PLATFORM_FILE))
- endif
-endif
-
-# Allow overriding of the arch part of the directory but default
-# to BUILDARCH if nothing is specified
-ifeq ($(VARIANTARCH),)
- VARIANTARCH=$(BUILDARCH)
-endif
-
-ifdef FORCE_TIERED
-ifeq ($(VARIANT),tiered)
-PLATFORM_DIR = $(OS_FAMILY)_$(VARIANTARCH)_compiler2
-else
-PLATFORM_DIR = $(OS_FAMILY)_$(VARIANTARCH)_$(VARIANT)
-endif
-else
-PLATFORM_DIR = $(OS_FAMILY)_$(VARIANTARCH)_$(VARIANT)
-endif
-
-#
-# We do two levels of exclusion in the shared directory.
-# TOPLEVEL excludes are pruned, they are not recursively searched,
-# but lower level directories can be named without fear of collision.
-# ALWAYS excludes are excluded at any level in the directory tree.
-#
-
-ALWAYS_EXCLUDE_DIRS = $(SCM_DIRS)
-
-ifeq ($(VARIANT),tiered)
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name agent
-else
-ifeq ($(VARIANT),compiler2)
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name c1 -o -name agent
-else
-# compiler1 and core use the same exclude list
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name opto -o -name libadt -o -name agent
-endif
-endif
-
-# Get things from the platform file.
-COMPILER = $(shell sed -n 's/^compiler[ ]*=[ ]*//p' $(PLATFORM_FILE))
-
-SIMPLE_DIRS = \
- $(PLATFORM_DIR)/generated/dependencies \
- $(PLATFORM_DIR)/generated/adfiles \
- $(PLATFORM_DIR)/generated/jvmtifiles \
- $(PLATFORM_DIR)/generated/tracefiles \
- $(PLATFORM_DIR)/generated/extensions
-
-TARGETS = debug fastdebug optimized product
-SUBMAKE_DIRS = $(addprefix $(PLATFORM_DIR)/,$(TARGETS))
-
-# For dependencies and recursive makes.
-BUILDTREE_MAKE = $(GAMMADIR)/make/$(OS_FAMILY)/makefiles/buildtree.make
-
-BUILDTREE_TARGETS = Makefile flags.make flags_vm.make vm.make adlc.make jvmti.make trace.make dtrace.make
-
-BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OS_FAMILY) \
- SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) VARIANT=$(VARIANT)
-
-# Define variables to be set in flags.make.
-# Default values are set in make/defs.make.
-
-# Set BUILD_USER from system-dependent hints: $LOGNAME, $(whoami)
-ifndef HOTSPOT_BUILD_USER
- HOTSPOT_BUILD_USER := $(shell echo $$LOGNAME)
-endif
-ifndef HOTSPOT_BUILD_USER
- HOTSPOT_BUILD_USER := $(shell whoami)
-endif
-# Define HOTSPOT_VM_DISTRO based on settings in make/openjdk_distro
-# or make/hotspot_distro.
-ifndef HOTSPOT_VM_DISTRO
- ifeq ($(call if-has-altsrc,$(HS_COMMON_SRC)/,true,false),true)
- include $(GAMMADIR)/make/hotspot_distro
- else
- include $(GAMMADIR)/make/openjdk_distro
- endif
-endif
-
-# if hotspot-only build and/or OPENJDK isn't passed down, need to set OPENJDK
-ifndef OPENJDK
- ifneq ($(call if-has-altsrc,$(HS_COMMON_SRC)/,true,false),true)
- OPENJDK=true
- endif
-endif
-
-BUILDTREE_VARS += HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) VERSION_STRING=$(VERSION_STRING)
-
-BUILDTREE = \
- $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_TARGETS) $(BUILDTREE_VARS)
-
-BUILDTREE_COMMENT = echo "\# Generated by $(BUILDTREE_MAKE)"
-
-all: $(SUBMAKE_DIRS)
-
-# Run make in each subdirectory recursively.
-$(SUBMAKE_DIRS): $(SIMPLE_DIRS) FORCE
- $(QUIETLY) [ -d $@ ] || { mkdir -p $@; }
- +$(QUIETLY) cd $@ && $(BUILDTREE) TARGET=$(@F)
- $(QUIETLY) touch $@
-
-$(SIMPLE_DIRS):
- $(QUIETLY) mkdir -p $@
-
-# Convenience macro which takes a source relative path, applies $(1) to the
-# absolute path, and then replaces $(GAMMADIR) in the result with a
-# literal "$(GAMMADIR)/" suitable for inclusion in a Makefile.
-gamma-path=$(subst $(GAMMADIR),\$$(GAMMADIR),$(call $(1),$(HS_COMMON_SRC)/$(2)))
-
-# This bit is needed to enable local rebuilds.
-# Unless the makefile itself sets LP64, any environmental
-# setting of LP64 will interfere with the build.
-LP64_SETTING/32 = LP64 = \#empty
-LP64_SETTING/64 = LP64 = 1
-
-DATA_MODE/i486 = 32
-DATA_MODE/sparc = 32
-DATA_MODE/sparcv9 = 64
-DATA_MODE/amd64 = 64
-DATA_MODE/ppc64 = 64
-DATA_MODE/aarch64 = 64
-
-DATA_MODE = $(DATA_MODE/$(BUILDARCH))
-
-flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo "Platform_file = $(PLATFORM_FILE)" | sed -e 's|$(HS_ALT_MAKE)|$$(HS_ALT_MAKE)|' -e 's|$(GAMMADIR)|$$(GAMMADIR)|'; \
- sed -n '/=/s/^ */Platform_/p' < $(PLATFORM_FILE); \
- echo; \
- echo "GAMMADIR = $(GAMMADIR)"; \
- echo "HS_ALT_MAKE = $(HS_ALT_MAKE)"; \
- echo "OSNAME = $(OSNAME)"; \
- echo "SYSDEFS = \$$(Platform_sysdefs)"; \
- echo "SRCARCH = $(SRCARCH)"; \
- echo "BUILDARCH = $(BUILDARCH)"; \
- echo "LIBARCH = $(LIBARCH)"; \
- echo "TARGET = $(TARGET)"; \
- echo "HOTSPOT_VERSION_STRING = $(HOTSPOT_VERSION_STRING)"; \
- echo "VERSION_STRING = $(VERSION_STRING)"; \
- echo "HOTSPOT_BUILD_USER = $(HOTSPOT_BUILD_USER)"; \
- echo "HOTSPOT_VM_DISTRO = $(HOTSPOT_VM_DISTRO)"; \
- echo "OPENJDK = $(OPENJDK)"; \
- echo "$(LP64_SETTING/$(DATA_MODE))"; \
- echo; \
- echo "# Used for platform dispatching"; \
- echo "TARGET_DEFINES = -DTARGET_OS_FAMILY_\$$(Platform_os_family)"; \
- echo "TARGET_DEFINES += -DTARGET_ARCH_\$$(Platform_arch)"; \
- echo "TARGET_DEFINES += -DTARGET_ARCH_MODEL_\$$(Platform_arch_model)"; \
- echo "TARGET_DEFINES += -DTARGET_OS_ARCH_\$$(Platform_os_arch)"; \
- echo "TARGET_DEFINES += -DTARGET_OS_ARCH_MODEL_\$$(Platform_os_arch_model)"; \
- echo "TARGET_DEFINES += -DTARGET_COMPILER_\$$(Platform_compiler)"; \
- echo "CFLAGS += \$$(TARGET_DEFINES)"; \
- echo; \
- echo "Src_Dirs_V = \\"; \
- sed 's/$$/ \\/;s|$(GAMMADIR)|$$(GAMMADIR)|' ../shared_dirs.lst; \
- echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/posix/vm)"; \
- echo; \
- echo "Src_Dirs_I = \\"; \
- echo "$(call gamma-path,altsrc,share/vm/prims) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
- echo "$(call gamma-path,altsrc,share/vm) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm) \\"; \
- echo "$(call gamma-path,altsrc,share/vm/precompiled) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm/precompiled) \\"; \
- echo "$(call gamma-path,altsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,cpu/$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(SRCARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/posix/vm)"; \
- [ -n "$(CFLAGS_BROWSE)" ] && \
- echo && echo "CFLAGS_BROWSE = $(CFLAGS_BROWSE)"; \
- [ -n "$(ENABLE_FULL_DEBUG_SYMBOLS)" ] && \
- echo && echo "ENABLE_FULL_DEBUG_SYMBOLS = $(ENABLE_FULL_DEBUG_SYMBOLS)"; \
- [ -n "$(OBJCOPY)" ] && \
- echo && echo "OBJCOPY = $(OBJCOPY)"; \
- [ -n "$(STRIP_POLICY)" ] && \
- echo && echo "STRIP_POLICY = $(STRIP_POLICY)"; \
- [ -n "$(ZIP_DEBUGINFO_FILES)" ] && \
- echo && echo "ZIP_DEBUGINFO_FILES = $(ZIP_DEBUGINFO_FILES)"; \
- [ -n "$(ZIPEXE)" ] && \
- echo && echo "ZIPEXE = $(ZIPEXE)"; \
- [ -n "$(HOTSPOT_EXTRA_SYSDEFS)" ] && \
- echo && \
- echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
- echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
- [ -n "$(INCLUDE_TRACE)" ] && \
- echo && echo "INCLUDE_TRACE = $(INCLUDE_TRACE)"; \
- echo; \
- [ -n "$(SPEC)" ] && \
- echo "include $(SPEC)"; \
- echo "CP ?= cp"; \
- echo "MV ?= mv"; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
- echo "include \$$(GAMMADIR)/make/excludeSrc.make"; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
- ) > $@
-
-flags_vm.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(TARGET).make"; \
- ) > $@
-
-../shared_dirs.lst: $(BUILDTREE_MAKE) $(GAMMADIR)/src/share/vm
- @echo $(LOG_INFO) Creating directory list $@
- $(QUIETLY) if [ -d $(HS_ALT_SRC)/share/vm ]; then \
- find $(HS_ALT_SRC)/share/vm/* -prune \
- -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
- \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; > $@; \
- fi;
- $(QUIETLY) find $(HS_COMMON_SRC)/share/vm/* -prune \
- -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
- \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; >> $@
-
-Makefile: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/top.make"; \
- ) > $@
-
-vm.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo include flags_vm.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-adlc.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-jvmti.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-trace.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-dtrace.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-FORCE:
-
-.PHONY: all FORCE
-
-.NOTPARALLEL:
--- a/hotspot/make/linux/makefiles/compiler1.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making client version of VM
-
-TYPE=COMPILER1
-
-VM_SUBDIR = client
-
-# We don't support the JVMCI in a client VM.
-INCLUDE_JVMCI := false
-
-CFLAGS += -DCOMPILER1
--- a/hotspot/make/linux/makefiles/compiler2.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making server version of VM
-
-TYPE=COMPILER2
-
-VM_SUBDIR = server
-
-CFLAGS += -DCOMPILER2
--- a/hotspot/make/linux/makefiles/core.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# Sets make macros for making core version of VM
-
-# Select which files to use (in top.make)
-TYPE=CORE
-
-# There is no "core" directory in JDK. Install core build in server directory.
-VM_SUBDIR = server
-
-# Note: macros.hpp defines CORE
--- a/hotspot/make/linux/makefiles/debug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making debug version of VM
-
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-DEBUG_CFLAGS/DEFAULT= $(DEBUG_CFLAGS)
-DEBUG_CFLAGS/BYFILE = $(DEBUG_CFLAGS/$@)$(DEBUG_CFLAGS/DEFAULT$(DEBUG_CFLAGS/$@))
-
-# _NMT_NOINLINE_ informs NMT that no inlining by Compiler
-CFLAGS += $(DEBUG_CFLAGS/BYFILE) -D_NMT_NOINLINE_
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/linux/makefiles/mapfile-vers-debug
-
-VERSION = debug
-SYSDEFS += -DASSERT
-PICFLAGS = DEFAULT
--- a/hotspot/make/linux/makefiles/defs.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,279 +0,0 @@
-#
-# Copyright (c) 2006, 2015, 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.
-#
-# 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.
-#
-#
-
-# The common definitions for hotspot linux builds.
-# Include the top level defs.make under make directory instead of this one.
-# This file is included into make/defs.make.
-
-SLASH_JAVA ?= /java
-
-define print_info
- ifneq ($$(LOG_LEVEL), warn)
- $$(shell echo >&2 "INFO: $1")
- endif
-endef
-
-# Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name
-
-# ARCH can be set explicitly in spec.gmk
-ifndef ARCH
- ARCH := $(shell uname -m)
- # Fold little endian PowerPC64 into big-endian (if ARCH is set in
- # hotspot-spec.gmk, this will be done by the configure script).
- ifeq ($(ARCH),ppc64le)
- ARCH := ppc64
- endif
-endif
-
-PATH_SEP ?= :
-
-ifeq ($(LP64), 1)
- ARCH_DATA_MODEL ?= 64
-else
- ARCH_DATA_MODEL ?= 32
-endif
-
-# zero
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- ifeq ($(ARCH_DATA_MODEL), 64)
- MAKE_ARGS += LP64=1
- endif
- PLATFORM = linux-zero
- VM_PLATFORM = linux_$(subst i386,i486,$(ZERO_LIBARCH))
- HS_ARCH = zero
- ARCH = zero
-endif
-
-# ia64
-ifeq ($(ARCH), ia64)
- ARCH_DATA_MODEL = 64
- MAKE_ARGS += LP64=1
- PLATFORM = linux-ia64
- VM_PLATFORM = linux_ia64
- HS_ARCH = ia64
-endif
-
-# sparc
-ifneq (,$(findstring $(ARCH), sparc))
- ifeq ($(ARCH_DATA_MODEL), 64)
- ARCH_DATA_MODEL = 64
- MAKE_ARGS += LP64=1
- PLATFORM = linux-sparcv9
- VM_PLATFORM = linux_sparcv9
- else
- ARCH_DATA_MODEL = 32
- PLATFORM = linux-sparc
- VM_PLATFORM = linux_sparc
- endif
- HS_ARCH = sparc
-endif
-
-# i686/i586 and amd64/x86_64
-ifneq (,$(findstring $(ARCH), amd64 x86_64 i686 i586))
- ifeq ($(ARCH_DATA_MODEL), 64)
- ARCH_DATA_MODEL = 64
- MAKE_ARGS += LP64=1
- PLATFORM = linux-amd64
- VM_PLATFORM = linux_amd64
- else
- ARCH_DATA_MODEL = 32
- PLATFORM = linux-i586
- VM_PLATFORM = linux_i486
- endif
-
- HS_ARCH = x86
-endif
-
-# PPC
-# Notice: after 8046471 ARCH will be 'ppc' for top-level ppc64 builds but
-# 'ppc64' for HotSpot-only ppc64 builds. Need to detect both variants here!
-ifneq (,$(findstring $(ARCH), ppc ppc64))
- ifeq ($(ARCH_DATA_MODEL), 64)
- MAKE_ARGS += LP64=1
- PLATFORM = linux-ppc64
- VM_PLATFORM = linux_ppc64
- endif
-
- HS_ARCH = ppc
-endif
-
-# AARCH64
-ifeq ($(ARCH), aarch64)
- ARCH_DATA_MODEL = 64
- MAKE_ARGS += LP64=1
- PLATFORM = linux-aarch64
- VM_PLATFORM = linux_aarch64
- HS_ARCH = aarch64
-endif
-
-# On 32 bit linux we build server and client, on 64 bit just server.
-ifeq ($(JVM_VARIANTS),)
- ifeq ($(ARCH_DATA_MODEL), 32)
- JVM_VARIANTS:=client,server
- JVM_VARIANT_CLIENT:=true
- JVM_VARIANT_SERVER:=true
- else
- JVM_VARIANTS:=server
- JVM_VARIANT_SERVER:=true
- endif
-endif
-
-# The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product
-# builds is enabled with debug info files ZIP'ed to save space. For
-# BUILD_FLAVOR != product builds, FDS is always enabled, after all a
-# debug build without debug info isn't very useful.
-# The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled.
-#
-# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
-# disabled for a BUILD_FLAVOR == product build.
-#
-# Note: Use of a different variable name for the FDS override option
-# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
-# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
-# in options via environment variables, use of distinct variables
-# prevents strange behaviours. For example, in a BUILD_FLAVOR !=
-# product build, the FULL_DEBUG_SYMBOLS environment variable will be
-# 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If
-# the same variable name is used, then different values can be picked
-# up by different parts of the build. Just to be clear, we only need
-# two variable names because the incoming option value can be
-# overridden in some situations, e.g., a BUILD_FLAVOR != product
-# build.
-
-# Due to the multiple sub-make processes that occur this logic gets
-# executed multiple times. We reduce the noise by at least checking that
-# BUILD_FLAVOR has been set.
-ifneq ($(BUILD_FLAVOR),)
- ifeq ($(BUILD_FLAVOR), product)
- FULL_DEBUG_SYMBOLS ?= 1
- ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
- else
- # debug variants always get Full Debug Symbols (if available)
- ENABLE_FULL_DEBUG_SYMBOLS = 1
- endif
- $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
- # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- # Default OBJCOPY comes from GNU Binutils on Linux
- ifeq ($(CROSS_COMPILE_ARCH),)
- DEF_OBJCOPY=/usr/bin/objcopy
- else
- # Assume objcopy is part of the cross-compilation toolset
- ifneq ($(ALT_COMPILER_PATH),)
- DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy
- endif
- endif
- OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
- ifneq ($(ALT_OBJCOPY),)
- $(eval $(call print_info, "ALT_OBJCOPY=$(ALT_OBJCOPY)"))
- OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
- endif
-
- ifeq ($(OBJCOPY),)
- $(eval $(call print_info, "no objcopy cmd found so cannot create .debuginfo files. You may need to set ALT_OBJCOPY."))
- ENABLE_FULL_DEBUG_SYMBOLS=0
- $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
- else
- $(eval $(call print_info, "$(OBJCOPY) cmd found so will create .debuginfo files."))
-
- # Library stripping policies for .debuginfo configs:
- # all_strip - strips everything from the library
- # min_strip - strips most stuff from the library; leaves minimum symbols
- # no_strip - does not strip the library at all
- #
- # Oracle security policy requires "all_strip". A waiver was granted on
- # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
- #
- # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled.
- #
- STRIP_POLICY ?= min_strip
-
- $(eval $(call print_info, "STRIP_POLICY=$(STRIP_POLICY)"))
-
- ZIP_DEBUGINFO_FILES ?= 1
-
- $(eval $(call print_info, "ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)"))
- endif
- endif # ENABLE_FULL_DEBUG_SYMBOLS=1
-endif # BUILD_FLAVOR
-
-JDK_INCLUDE_SUBDIR=linux
-
-# Library suffix
-LIBRARY_SUFFIX=so
-
-EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
-
-# client and server subdirectories have symbolic links to ../libjsig.so
-EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz
- else
- EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo
- endif
-endif
-EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client
-EXPORT_MINIMAL_DIR = $(EXPORT_LIB_ARCH_DIR)/minimal
-
-ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK) $(JVM_VARIANT_CORE)), true)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz
- else
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo
- endif
- endif
-endif
-
-ifeq ($(JVM_VARIANT_CLIENT),true)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz
- else
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo
- endif
- endif
-endif
-
-ifeq ($(JVM_VARIANT_MINIMAL1),true)
- EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX)
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.diz
- else
- EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.debuginfo
- endif
- endif
-endif
-
--include $(HS_ALT_MAKE)/linux/makefiles/defs.make
--- a/hotspot/make/linux/makefiles/dtrace.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,95 +0,0 @@
-#
-# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012 Red Hat, Inc.
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# This code is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# Linux does not build jvm_db
-LIBJVM_DB =
-
-# Only OPENJDK builds test and support SDT probes currently.
-ifndef OPENJDK
-REASON = "This JDK does not support SDT probes"
-else
-
-# We need a recent GCC for the default (4.4 or later)
-ifeq "$(shell expr \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 4 \) \) \| \( $(CC_VER_MAJOR) \>= 5 \) )" "0"
-REASON = "gcc version is too old"
-else
-
-# But it does have a SystemTap dtrace compatible sys/sdt.h
-ifneq ($(ALT_SDT_H),)
- SDT_H_FILE = $(ALT_SDT_H)
-else
- ifeq ($(USE_CLANG), true)
- # Clang doesn't support the -print-sysroot option and there is no known equivalent
- # option, so fall back to using / as sysroot
- SDT_SYSROOT=
- else
- SDT_SYSROOT=$(shell $(CXX) -print-sysroot)
- endif
- SDT_H_FILE = $(SDT_SYSROOT)/usr/include/sys/sdt.h
-endif
-
-DTRACE_ENABLED = $(shell test -f $(SDT_H_FILE) && echo $(SDT_H_FILE))
-REASON = "$(SDT_H_FILE) not found"
-
-endif # GCC version
-endif # OPENJDK
-
-
-DTRACE_COMMON_SRCDIR = $(GAMMADIR)/src/os/posix/dtrace
-DTRACE_PROG = dtrace
-DtraceOutDir = $(GENERATED)/dtracefiles
-
-$(DtraceOutDir):
- mkdir $(DtraceOutDir)
-
-$(DtraceOutDir)/hotspot.h: $(DTRACE_COMMON_SRCDIR)/hotspot.d | $(DtraceOutDir)
- $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_COMMON_SRCDIR)/hotspot.d
-
-$(DtraceOutDir)/hotspot_jni.h: $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d | $(DtraceOutDir)
- $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d
-
-$(DtraceOutDir)/hs_private.h: $(DTRACE_COMMON_SRCDIR)/hs_private.d | $(DtraceOutDir)
- $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_COMMON_SRCDIR)/hs_private.d
-
-ifneq ($(DTRACE_ENABLED),)
-CFLAGS += -DDTRACE_ENABLED
-dtrace_gen_headers: $(DtraceOutDir)/hotspot.h $(DtraceOutDir)/hotspot_jni.h $(DtraceOutDir)/hs_private.h
-else
-dtrace_gen_headers:
- $(QUIETLY) $(LOG_INFO) echo "**NOTICE** Dtrace support disabled: $(REASON)"
-endif
-
-# Phony target used in vm.make build target to check whether enabled.
-ifeq ($(DTRACE_ENABLED),)
-dtraceCheck:
- $(QUIETLY) $(LOG_INFO) echo "**NOTICE** Dtrace support disabled: $(REASON)"
-else
-dtraceCheck:
-endif
-
-.PHONY: dtrace_gen_headers dtraceCheck
-
-# It doesn't support HAVE_DTRACE_H though.
-
--- a/hotspot/make/linux/makefiles/fastdebug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making debug version of VM
-
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-# They may also specify FASTDEBUG_CFLAGS, but it defaults to DEBUG_CFLAGS.
-
-FASTDEBUG_CFLAGS$(FASTDEBUG_CFLAGS) = $(DEBUG_CFLAGS)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-
-ifeq ($(BUILDARCH), ia64)
- # Bug in GCC, causes hang. -O1 will override the -O3 specified earlier
- OPT_CFLAGS/callGenerator.o += -O1
- OPT_CFLAGS/ciTypeFlow.o += -O1
- OPT_CFLAGS/compile.o += -O1
- OPT_CFLAGS/concurrentMarkSweepGeneration.o += -O1
- OPT_CFLAGS/doCall.o += -O1
- OPT_CFLAGS/generateOopMap.o += -O1
- OPT_CFLAGS/generateOptoStub.o += -O1
- OPT_CFLAGS/graphKit.o += -O1
- OPT_CFLAGS/instanceKlass.o += -O1
- OPT_CFLAGS/interpreterRT_ia64.o += -O1
- OPT_CFLAGS/output.o += -O1
- OPT_CFLAGS/parse1.o += -O1
- OPT_CFLAGS/runtime.o += -O1
- OPT_CFLAGS/synchronizer.o += -O1
-endif
-
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-# The following lines are copied from debug.make, except that we
-# consult FASTDEBUG_CFLAGS instead of DEBUG_CFLAGS.
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-DEBUG_CFLAGS/DEFAULT= $(FASTDEBUG_CFLAGS)
-DEBUG_CFLAGS/BYFILE = $(DEBUG_CFLAGS/$@)$(DEBUG_CFLAGS/DEFAULT$(DEBUG_CFLAGS/$@))
-CFLAGS += $(DEBUG_CFLAGS/BYFILE)
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/linux/makefiles/mapfile-vers-debug
-
-VERSION = optimized
-SYSDEFS += -DASSERT -DCHECK_UNHANDLED_OOPS
-PICFLAGS = DEFAULT
--- a/hotspot/make/linux/makefiles/gcc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,425 +0,0 @@
-#
-# Copyright (c) 1999, 2016, 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.
-#
-# 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.
-#
-#
-
-#------------------------------------------------------------------------
-# CC, CXX & AS
-
-# If a SPEC is not set already, then use these defaults.
-ifeq ($(SPEC),)
- # When cross-compiling the ALT_COMPILER_PATH points
- # to the cross-compilation toolset
- ifdef CROSS_COMPILE_ARCH
- CXX = $(ALT_COMPILER_PATH)/g++
- CC = $(ALT_COMPILER_PATH)/gcc
- HOSTCXX = g++
- HOSTCC = gcc
- STRIP = $(ALT_COMPILER_PATH)/strip
- else
- ifeq ($(USE_CLANG), true)
- CXX = clang++
- CC = clang
- else
- CXX = g++
- CC = gcc
- endif
-
- HOSTCXX = $(CXX)
- HOSTCC = $(CC)
- STRIP = strip
- endif
- AS = $(CC) -c
-endif
-
-
-ifeq ($(USE_CLANG), true)
- CC_VER_MAJOR := $(shell $(CC) -v 2>&1 | grep version | sed "s/.*version \([0-9]*\.[0-9]*\).*/\1/" | cut -d'.' -f1)
- CC_VER_MINOR := $(shell $(CC) -v 2>&1 | grep version | sed "s/.*version \([0-9]*\.[0-9]*\).*/\1/" | cut -d'.' -f2)
-else
- # -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
- # prints the numbers (e.g. "2.95", "3.2.1")
- CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
- CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
- CC_VER_MICRO := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f3)
- # Workaround Ubuntu bug where -dumpversion doesn't print a micro version
- # https://bugs.launchpad.net/ubuntu/+source/gcc-4.8/+bug/1360404
- ifeq ($(CC_VER_MICRO),)
- CC_VER_MICRO := "0"
- endif
-endif
-
-ifeq ($(USE_CLANG), true)
- # Clang has precompiled headers support by default, but the user can switch
- # it off by using 'USE_PRECOMPILED_HEADER=0'.
- ifdef LP64
- ifeq ($(USE_PRECOMPILED_HEADER),)
- USE_PRECOMPILED_HEADER=1
- endif
- else
- # We don't support precompiled headers on 32-bit builds because there some files are
- # compiled with -fPIC while others are compiled without (see 'NONPIC_OBJ_FILES' rules.make)
- # Clang produces an error if the PCH file was compiled with other options than the actual compilation unit.
- USE_PRECOMPILED_HEADER=0
- endif
-
- ifeq ($(USE_PRECOMPILED_HEADER),1)
-
- ifndef LP64
- $(error " Precompiled Headers only supported on 64-bit platforms!")
- endif
-
- PRECOMPILED_HEADER_DIR=.
- PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp
- PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.pch
-
- PCH_FLAG = -include precompiled.hpp
- PCH_FLAG/DEFAULT = $(PCH_FLAG)
- PCH_FLAG/NO_PCH = -DNO_PCH
- PCH_FLAG/BY_FILE = $(PCH_FLAG/$@)$(PCH_FLAG/DEFAULT$(PCH_FLAG/$@))
-
- VM_PCH_FLAG/LIBJVM = $(PCH_FLAG/BY_FILE)
- VM_PCH_FLAG/AOUT =
- VM_PCH_FLAG = $(VM_PCH_FLAG/$(LINK_INTO))
-
- # We only use precompiled headers for the JVM build
- CFLAGS += $(VM_PCH_FLAG)
-
- # There are some files which don't like precompiled headers
- # The following files are build with 'OPT_CFLAGS/NOOPT' (-O0) in the opt build.
- # But Clang doesn't support a precompiled header which was compiled with -O3
- # to be used in a compilation unit which uses '-O0'. We could also prepare an
- # extra '-O0' PCH file for the opt build and use it here, but it's probably
- # not worth the effort as long as only two files need this special handling.
- PCH_FLAG/loopTransform.o = $(PCH_FLAG/NO_PCH)
- PCH_FLAG/sharedRuntimeTrig.o = $(PCH_FLAG/NO_PCH)
- PCH_FLAG/sharedRuntimeTrans.o = $(PCH_FLAG/NO_PCH)
-
- endif
-else # ($(USE_CLANG), true)
- # check for precompiled headers support
- ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
- # Allow the user to turn off precompiled headers from the command line.
- ifneq ($(USE_PRECOMPILED_HEADER),0)
- PRECOMPILED_HEADER_DIR=.
- PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp
- PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
- endif
- endif
-endif
-
-# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
-ifeq ($(USE_PRECOMPILED_HEADER),0)
- CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
-endif
-
-
-#------------------------------------------------------------------------
-# Compiler flags
-
-# position-independent code
-PICFLAG = -fPIC
-
-VM_PICFLAG/LIBJVM = $(PICFLAG)
-VM_PICFLAG/AOUT =
-VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
-
-ifeq ($(JVM_VARIANT_ZERO), true)
-CFLAGS += $(LIBFFI_CFLAGS)
-endif
-ifeq ($(JVM_VARIANT_ZEROSHARK), true)
-CFLAGS += $(LIBFFI_CFLAGS)
-CFLAGS += $(LLVM_CFLAGS)
-endif
-CFLAGS += $(VM_PICFLAG)
-CFLAGS += -fno-rtti
-CFLAGS += -fno-exceptions
-CFLAGS += -D_REENTRANT
-ifeq ($(USE_CLANG),)
- CFLAGS += -fcheck-new
- # version 4 and above support fvisibility=hidden (matches jni_x86.h file)
- # except 4.1.2 gives pointless warnings that can't be disabled (afaik)
- ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
- CFLAGS += -fvisibility=hidden
- endif
-else
- CFLAGS += -fvisibility=hidden
-endif
-
-ifeq ($(USE_CLANG), true)
- # Before Clang 3.1, we had to pass the stack alignment specification directly to llvm with the help of '-mllvm'
- # Starting with version 3.1, Clang understands the '-mstack-alignment' (and rejects '-mllvm -stack-alignment')
- ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 1 \) \))" "0"
- STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mstack-alignment=16
- else
- STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mllvm -stack-alignment=16
- endif
-endif
-
-ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
-ARCHFLAG/i486 = -m32 -march=i586
-ARCHFLAG/amd64 = -m64 $(STACK_ALIGNMENT_OPT)
-ARCHFLAG/aarch64 =
-ARCHFLAG/ia64 =
-ARCHFLAG/sparc = -m32 -mcpu=v9
-ARCHFLAG/sparcv9 = -m64 -mcpu=v9
-ARCHFLAG/zero = $(ZERO_ARCHFLAG)
-ARCHFLAG/ppc64 = -m64
-
-CFLAGS += $(ARCHFLAG)
-AOUT_FLAGS += $(ARCHFLAG)
-LFLAGS += $(ARCHFLAG)
-ASFLAGS += $(ARCHFLAG)
-
-# Use C++ Interpreter
-ifdef CC_INTERP
- CFLAGS += -DCC_INTERP
-endif
-
-# Keep temporary files (.ii, .s)
-ifdef NEED_ASM
- CFLAGS += -save-temps
-else
- CFLAGS += -pipe
-endif
-
-# Compiler warnings are treated as errors
-WARNINGS_ARE_ERRORS ?= -Werror
-
-ifeq ($(USE_CLANG), true)
- # However we need to clean the code up before we can unrestrictedly enable this option with Clang
- WARNINGS_ARE_ERRORS += -Wno-logical-op-parentheses -Wno-parentheses-equality -Wno-parentheses
- WARNINGS_ARE_ERRORS += -Wno-switch -Wno-tautological-constant-out-of-range-compare -Wno-tautological-compare
- WARNINGS_ARE_ERRORS += -Wno-delete-non-virtual-dtor -Wno-deprecated -Wno-format -Wno-dynamic-class-memaccess
- WARNINGS_ARE_ERRORS += -Wno-return-type -Wno-empty-body
-endif
-
-WARNING_FLAGS = -Wpointer-arith -Wsign-compare -Wundef -Wunused-function -Wunused-value -Wformat=2 -Wreturn-type -Woverloaded-virtual
-
-ifeq ($(USE_CLANG),)
- # Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit
- # conversions which might affect the values. Only enable it in earlier versions.
- ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
- # GCC < 4.3
- WARNING_FLAGS += -Wconversion
- endif
- ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 8 \) \))" "1"
- # GCC >= 4.8
- # This flag is only known since GCC 4.3. Gcc 4.8 contains a fix so that with templates no
- # warnings are issued: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=11856
- WARNING_FLAGS += -Wtype-limits
- # GCC < 4.8 don't accept this flag for C++.
- WARNING_FLAGS += -Wno-format-zero-length
- # GCC 4.8 reports less false positives than the older compilers.
- WARNING_FLAGS += -Wuninitialized
- endif
-endif
-
-CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(WARNING_FLAGS)
-
-# Special cases
-CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
-
-# optimization control flags (Used by fastdebug and release variants)
-OPT_CFLAGS/NOOPT=-O0
-OPT_CFLAGS/DEBUG=-O0
-OPT_CFLAGS/SIZE=-Os
-OPT_CFLAGS/SPEED=-O3
-
-OPT_CFLAGS_DEFAULT ?= SPEED
-
-# Hotspot uses very unstrict aliasing turn this optimization off
-# This option is added to CFLAGS rather than OPT_CFLAGS
-# so that OPT_CFLAGS overrides get this option too.
-CFLAGS += -fno-strict-aliasing
-
-ifdef OPT_CFLAGS
- ifneq ("$(origin OPT_CFLAGS)", "command line")
- $(error " Use OPT_EXTRAS instead of OPT_CFLAGS to add extra flags to OPT_CFLAGS.")
- endif
-endif
-
-OPT_CFLAGS = $(OPT_CFLAGS/$(OPT_CFLAGS_DEFAULT)) $(OPT_EXTRAS)
-
-# Variable tracking size limit exceeded for VMStructs::init()
-ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "1"
- # GCC >= 4.3
- # Gcc 4.1.2 does not support this flag, nor does it have problems compiling the file.
- OPT_CFLAGS/vmStructs.o += -fno-var-tracking-assignments
- # The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
- # of OPT_CFLAGS. Restore it here.
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/vmStructs.o += -g
- endif
-endif
-
-# The gcc compiler segv's on ia64 when compiling bytecodeInterpreter.cpp
-# if we use expensive-optimizations
-ifeq ($(BUILDARCH), ia64)
-OPT_CFLAGS += -fno-expensive-optimizations
-endif
-
-# Work around some compiler bugs.
-ifeq ($(USE_CLANG), true)
- ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 2), 1)
- OPT_CFLAGS/loopTransform.o += $(OPT_CFLAGS/NOOPT)
- # The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
- # of OPT_CFLAGS. Restore it here.
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/loopTransform.o += -g
- endif
- endif
-else
- # Do not allow GCC 4.1.1
- ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 1 \& $(CC_VER_MICRO) = 1), 1)
- $(error "GCC $(CC_VER_MAJOR).$(CC_VER_MINOR).$(CC_VER_MICRO) not supported because of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=27724")
- endif
- # 6835796. Problem in GCC 4.3.0 with mulnode.o optimized compilation.
- ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 3), 1)
- OPT_CFLAGS/mulnode.o += $(OPT_CFLAGS/NOOPT)
- endif
-endif
-
-# Flags for generating make dependency flags.
-DEPFLAGS = -MMD -MP -MF $(DEP_DIR)/$(@:%=%.d)
-ifeq ($(USE_CLANG),)
- ifneq ($(CC_VER_MAJOR), 2)
- DEPFLAGS += -fpch-deps
- endif
-endif
-
-#------------------------------------------------------------------------
-# Linker flags
-
-# statically link libstdc++.so, work with gcc but ignored by g++
-STATIC_STDCXX = -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic
-
-# Enable linker optimization
-LFLAGS += -Xlinker -O1
-
-ifeq ($(USE_CLANG),)
- STATIC_LIBGCC += -static-libgcc
-
- ifneq (, findstring(debug,$(BUILD_FLAVOR)))
- # for relocations read-only
- LFLAGS += -Xlinker -z -Xlinker relro
-
- ifeq ($(BUILD_FLAVOR), debug)
- # disable incremental relocations linking
- LFLAGS += -Xlinker -z -Xlinker now
- endif
- endif
-
- ifeq ($(BUILDARCH), ia64)
- LFLAGS += -Wl,-relax
- endif
-
- # If this is a --hash-style=gnu system, use --hash-style=both
- # The gnu .hash section won't work on some Linux systems like SuSE 10.
- _HAS_HASH_STYLE_GNU:=$(shell $(CC) -dumpspecs | grep -- '--hash-style=gnu')
- ifneq ($(_HAS_HASH_STYLE_GNU),)
- LDFLAGS_HASH_STYLE = -Wl,--hash-style=both
- endif
-else
- # Don't know how to find out the 'hash style' of a system as '-dumpspecs'
- # doesn't work for Clang. So for now we'll alwys use --hash-style=both
- LDFLAGS_HASH_STYLE = -Wl,--hash-style=both
-endif
-
-LFLAGS += $(LDFLAGS_HASH_STYLE)
-
-# Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
-MAPFLAG = -Xlinker --version-script=FILENAME
-
-# Use $(SONAMEFLAG:SONAME=soname) to specify the intrinsic name of a shared obj
-SONAMEFLAG = -Xlinker -soname=SONAME
-
-# Build shared library
-SHARED_FLAG = -shared
-
-# Keep symbols even they are not used
-AOUT_FLAGS += -Xlinker -export-dynamic
-
-#------------------------------------------------------------------------
-# Debug flags
-
-ifeq ($(USE_CLANG), true)
- # Restrict the debug information created by Clang to avoid
- # too big object files and speed the build up a little bit
- # (see http://llvm.org/bugs/show_bug.cgi?id=7554)
- CFLAGS += -flimit-debug-info
-endif
-
-# Allow no optimizations.
-DEBUG_CFLAGS=-O0
-
-# DEBUG_BINARIES uses full -g debug information for all configs
-ifeq ($(DEBUG_BINARIES), true)
- CFLAGS += -g
-else
- DEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH))
- ifeq ($(DEBUG_CFLAGS/$(BUILDARCH)),)
- DEBUG_CFLAGS += -g
- endif
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- FASTDEBUG_CFLAGS += $(FASTDEBUG_CFLAGS/$(BUILDARCH))
- ifeq ($(FASTDEBUG_CFLAGS/$(BUILDARCH)),)
- FASTDEBUG_CFLAGS += -g
- endif
-
- OPT_CFLAGS += $(OPT_CFLAGS/$(BUILDARCH))
- ifeq ($(OPT_CFLAGS/$(BUILDARCH)),)
- OPT_CFLAGS += -g
- endif
- endif
-endif
-
-ifeq ($(USE_CLANG),)
- # Enable bounds checking.
- ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) )" "1"
- # stack smashing checks.
- DEBUG_CFLAGS += -fstack-protector-all --param ssp-buffer-size=1
- endif
-endif
-
-
-# If we are building HEADLESS, pass on to VM
-# so it can set the java.awt.headless property
-ifdef HEADLESS
-CFLAGS += -DHEADLESS
-endif
-
-# We are building Embedded for a small device
-# favor code space over speed
-ifdef MINIMIZE_RAM_USAGE
-CFLAGS += -DMINIMIZE_RAM_USAGE
-endif
-
-# Stack walking in the JVM relies on frame pointer (%rbp) to walk thread stack.
-# Explicitly specify -fno-omit-frame-pointer because it is off by default
-# starting with gcc 4.6.
-ifndef USE_SUNCC
- CFLAGS += -fno-omit-frame-pointer
-endif
-
--include $(HS_ALT_MAKE)/linux/makefiles/gcc.make
--- a/hotspot/make/linux/makefiles/hp.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making premium version of VM
-
-TYPE=HP
-
-CFLAGS += -DCOMPILER2
--- a/hotspot/make/linux/makefiles/hp1.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making premium version of VM
-
-TYPE=HP1
-
-CFLAGS += -DCOMPILER1
--- a/hotspot/make/linux/makefiles/i486.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-#
-# Copyright (c) 1999, 2016, 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.
-#
-# 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.
-#
-#
-
-# TLS helper, assembled from .s file
-
-# The copied fdlibm routines in sharedRuntimeTrig.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
-# The copied fdlibm routines in sharedRuntimeTrans.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT)
-# Must also specify if CPU is little endian
-CFLAGS += -DVM_LITTLE_ENDIAN
-
-OPT_CFLAGS/compactingPermGenGen.o = -O1
-
-# The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
-# of OPT_CFLAGS. Restore it here.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/sharedRuntimeTrig.o += -g
- OPT_CFLAGS/sharedRuntimeTrans.o += -g
- OPT_CFLAGS/compactingPermGenGen.o += -g
-endif
--- a/hotspot/make/linux/makefiles/ia64.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-#
-# Copyright (c) 2005, 2012, 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.
-#
-# 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.
-#
-#
-
-#
-# IA64 only uses c++ based interpreter
-CFLAGS += -DCC_INTERP -D_LP64=1 -DVM_LITTLE_ENDIAN
-ifeq ($(VERSION),debug)
-ASM_FLAGS= -DDEBUG
-else
-ASM_FLAGS=
-endif
-# workaround gcc bug in compiling varargs
-OPT_CFLAGS/jni.o = -O0
-
-# gcc/ia64 has a bug that internal gcc functions linked with libjvm.so
-# are made public. Hiding those symbols will cause undefined symbol error
-# when VM is dropped into older JDK. We probably will need an IA64
-# mapfile to include those symbols as a workaround. Disable linker mapfile
-# for now.
-LDNOMAP=true
--- a/hotspot/make/linux/makefiles/jsig.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,83 +0,0 @@
-#
-# Copyright (c) 2005, 2014, 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.
-#
-# 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.
-#
-#
-
-# Rules to build signal interposition library, used by vm.make
-
-# libjsig.so: signal interposition library
-JSIG = jsig
-LIBJSIG = lib$(JSIG).so
-
-LIBJSIG_DEBUGINFO = lib$(JSIG).debuginfo
-LIBJSIG_DIZ = lib$(JSIG).diz
-
-JSIGSRCDIR = $(GAMMADIR)/src/os/$(Platform_os_family)/vm
-
-DEST_JSIG = $(JDK_LIBDIR)/$(LIBJSIG)
-DEST_JSIG_DEBUGINFO = $(JDK_LIBDIR)/$(LIBJSIG_DEBUGINFO)
-DEST_JSIG_DIZ = $(JDK_LIBDIR)/$(LIBJSIG_DIZ)
-
-LIBJSIG_MAPFILE = $(MAKEFILES_DIR)/mapfile-vers-jsig
-
-# On Linux we really dont want a mapfile, as this library is small
-# and preloaded using LD_PRELOAD, making functions private will
-# cause problems with interposing. See CR: 6466665
-# LFLAGS_JSIG += $(MAPFLAG:FILENAME=$(LIBJSIG_MAPFILE))
-
-LFLAGS_JSIG += -D_GNU_SOURCE -D_REENTRANT $(LDFLAGS_HASH_STYLE)
-
-# DEBUG_BINARIES overrides everything, use full -g debug information
-ifeq ($(DEBUG_BINARIES), true)
- JSIG_DEBUG_CFLAGS = -g
-endif
-
-$(LIBJSIG): $(JSIGSRCDIR)/jsig.c $(LIBJSIG_MAPFILE)
- @echo $(LOG_INFO) Making signal interposition lib...
- $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
- $(LFLAGS_JSIG) $(JSIG_DEBUG_CFLAGS) $(EXTRA_CFLAGS) -o $@ $< -ldl
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -g $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJSIG_DIZ) $(LIBJSIG_DEBUGINFO)
- $(RM) $(LIBJSIG_DEBUGINFO)
- endif
-endif
-
-install_jsig: $(LIBJSIG)
- @echo "Copying $(LIBJSIG) to $(DEST_JSIG)"
- $(QUIETLY) test ! -f $(LIBJSIG_DEBUGINFO) || \
- $(CP) -f $(LIBJSIG_DEBUGINFO) $(DEST_JSIG_DEBUGINFO)
- $(QUIETLY) test ! -f $(LIBJSIG_DIZ) || \
- $(CP) -f $(LIBJSIG_DIZ) $(DEST_JSIG_DIZ)
- $(QUIETLY) $(CP) -f $(LIBJSIG) $(DEST_JSIG) && echo "Done"
-
-.PHONY: install_jsig
--- a/hotspot/make/linux/makefiles/jvmti.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,117 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# This makefile (jvmti.make) is included from the jvmti.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate jvmti.
-
-include $(GAMMADIR)/make/linux/makefiles/rules.make
-
-# #########################################################################
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-JvmtiOutDir = $(GENERATED)/jvmtifiles
-
-JvmtiSrcDir = $(GAMMADIR)/src/share/vm/prims
-InterpreterSrcDir = $(GAMMADIR)/src/share/vm/interpreter
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(JvmtiSrcDir)
-VPATH += $(Src_Dirs_V:%=%:)
-
-JvmtiGeneratedNames = \
- jvmtiEnv.hpp \
- jvmtiEnter.cpp \
- jvmtiEnterTrace.cpp \
- jvmtiEnvRecommended.cpp \
- bytecodeInterpreterWithChecks.cpp \
- jvmti.h \
-
-JvmtiEnvFillSource = $(JvmtiSrcDir)/jvmtiEnvFill.java
-JvmtiEnvFillClass = $(JvmtiOutDir)/jvmtiEnvFill.class
-
-JvmtiGenSource = $(JvmtiSrcDir)/jvmtiGen.java
-JvmtiGenClass = $(JvmtiOutDir)/jvmtiGen.class
-
-JvmtiGeneratedFiles = $(JvmtiGeneratedNames:%=$(JvmtiOutDir)/%)
-
-XSLT = $(QUIETLY) $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-.PHONY: all jvmtidocs clean cleanall
-
-# #########################################################################
-
-all: $(JvmtiGeneratedFiles)
-
-both = $(JvmtiGenClass) $(JvmtiSrcDir)/jvmti.xml $(JvmtiSrcDir)/jvmtiLib.xsl
-
-$(JvmtiGenClass): $(JvmtiGenSource)
- $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiGenSource)
-
-$(JvmtiEnvFillClass): $(JvmtiEnvFillSource)
- $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiEnvFillSource)
-
-$(JvmtiOutDir)/jvmtiEnter.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnter.cpp -PARAM interface jvmti
-
-$(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp: $(JvmtiGenClass) $(InterpreterSrcDir)/bytecodeInterpreter.cpp $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml -XSL $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl -OUT $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp
-
-$(JvmtiOutDir)/jvmtiEnterTrace.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnterTrace.cpp -PARAM interface jvmti -PARAM trace Trace
-
-$(JvmtiOutDir)/jvmtiEnvRecommended.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnv.xsl $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiEnvFillClass)
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnv.xsl -OUT $(JvmtiOutDir)/jvmtiEnvStub.cpp
- $(QUIETLY) $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiEnvFill $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiOutDir)/jvmtiEnvStub.cpp $(JvmtiOutDir)/jvmtiEnvRecommended.cpp
-
-$(JvmtiOutDir)/jvmtiEnv.hpp: $(both) $(JvmtiSrcDir)/jvmtiHpp.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiHpp.xsl -OUT $(JvmtiOutDir)/jvmtiEnv.hpp
-
-$(JvmtiOutDir)/jvmti.h: $(both) $(JvmtiSrcDir)/jvmtiH.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiH.xsl -OUT $(JvmtiOutDir)/jvmti.h
-
-jvmtidocs: $(JvmtiOutDir)/jvmti.html
-
-$(JvmtiOutDir)/jvmti.html: $(both) $(JvmtiSrcDir)/jvmti.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmti.xsl -OUT $(JvmtiOutDir)/jvmti.html
-
-# #########################################################################
-
-clean :
- rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles)
-
-cleanall :
- rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles)
-
-# #########################################################################
-
--- a/hotspot/make/linux/makefiles/mapfile-vers-debug Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-#
-# Copyright (c) 2002, 2015, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_handle_linux_signal;
-
- # miscellaneous functions
- jio_fprintf;
- jio_printf;
- jio_snprintf;
- jio_vfprintf;
- jio_vsnprintf;
- numa_warn;
- numa_error;
-
- # Needed because there is no JVM interface for this.
- sysThreadAvailableStackWithSlack;
-
- # This is for Forte Analyzer profiling support.
- AsyncGetCallTrace;
-
- # INSERT VTABLE SYMBOLS HERE
-
- local:
- *;
-};
-
--- a/hotspot/make/linux/makefiles/mapfile-vers-jsig Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-#
-
-#
-# Copyright (c) 2005, 2008, 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.
-#
-# 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.
-#
-#
-
-# Define library interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_begin_signal_setting;
- JVM_end_signal_setting;
- JVM_get_libjsig_version;
- JVM_get_signal_action;
- sigaction;
- signal;
- sigset;
- local:
- *;
-};
--- a/hotspot/make/linux/makefiles/mapfile-vers-product Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-#
-# Copyright (c) 2002, 2015, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_handle_linux_signal;
-
- # miscellaneous functions
- jio_fprintf;
- jio_printf;
- jio_snprintf;
- jio_vfprintf;
- jio_vsnprintf;
- numa_warn;
- numa_error;
-
- # Needed because there is no JVM interface for this.
- sysThreadAvailableStackWithSlack;
-
- # This is for Forte Analyzer profiling support.
- AsyncGetCallTrace;
-
- # INSERT VTABLE SYMBOLS HERE
-
- local:
- *;
-};
-
--- a/hotspot/make/linux/makefiles/minimal1.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-#
-# Copyright (c) 2012, 2013, 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.
-#
-# 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.
-#
-#
-
-TYPE=MINIMAL1
-
-# Force all variables to false, overriding any other
-# setting that may have occurred in the makefiles. These
-# can still be overridden by passing the variable as an
-# argument to 'make'
-INCLUDE_JVMTI := false
-INCLUDE_FPROF := false
-INCLUDE_VM_STRUCTS := false
-INCLUDE_JNI_CHECK := false
-INCLUDE_SERVICES := false
-INCLUDE_MANAGEMENT := false
-INCLUDE_ALL_GCS := false
-INCLUDE_NMT := false
-INCLUDE_TRACE := false
-INCLUDE_CDS := false
-INCLUDE_JVMCI := false
-
-CXXFLAGS += -DMINIMAL_JVM -DCOMPILER1 -DVMTYPE=\"Minimal\"
-CFLAGS += -DMINIMAL_JVM -DCOMPILER1 -DVMTYPE=\"Minimal\"
-
-Src_Dirs/MINIMAL1 = $(CORE_PATHS) $(COMPILER1_PATHS)
-
-Src_Files_EXCLUDE/MINIMAL1 += $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-
--include $(HS_ALT_MAKE)/$(OSNAME)/makefiles/minimal1.make
-
-.PHONY: $(HS_ALT_MAKE)/$(OSNAME)/makefiles/minimal1.make
--- a/hotspot/make/linux/makefiles/optimized.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
-#
-# Copyright (c) 1999, 2012, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making optimized version of HotSpot VM
-# (This is the "product", not the "release" version.)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/linux/makefiles/mapfile-vers-debug
-
-VERSION = optimized
--- a/hotspot/make/linux/makefiles/ppc64.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-#
-# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
-# Copyright (c) 2012, 2013 SAP SE. 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.
-#
-# 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.
-#
-#
-
-# make c code know it is on a 64 bit platform.
-CFLAGS += -D_LP64=1
-
-ifeq ($(origin OPENJDK_TARGET_CPU_ENDIAN),undefined)
- # This can happen during hotspot standalone build. Set endianness from
- # uname. We assume build and target machines are the same.
- OPENJDK_TARGET_CPU_ENDIAN:=$(if $(filter ppc64le,$(shell uname -m)),little,big)
-endif
-
-ifeq ($(filter $(OPENJDK_TARGET_CPU_ENDIAN),big little),)
- $(error OPENJDK_TARGET_CPU_ENDIAN value should be 'big' or 'little')
-endif
-
-ifeq ($(OPENJDK_TARGET_CPU_ENDIAN),big)
- # fixes `relocation truncated to fit' error for gcc 4.1.
- CFLAGS += -mminimal-toc
-
- # finds use ppc64 instructions, but schedule for power5
- CFLAGS += -mcpu=powerpc64 -mtune=power5 -minsert-sched-nops=regroup_exact -mno-multiple -mno-string
-else
- # Little endian machine uses ELFv2 ABI.
- CFLAGS += -DVM_LITTLE_ENDIAN -DABI_ELFv2
-
- # Use Power8, this is the first CPU to support PPC64 LE with ELFv2 ABI.
- CFLAGS += -mcpu=power7 -mtune=power8 -minsert-sched-nops=regroup_exact -mno-multiple -mno-string
-endif
--- a/hotspot/make/linux/makefiles/product.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-#
-# Copyright (c) 1999, 2012, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making optimized version of HotSpot VM
-# (This is the "product", not the "release" version.)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfile
-MAPFILE = $(GAMMADIR)/make/linux/makefiles/mapfile-vers-product
-
-SYSDEFS += -DPRODUCT
-VERSION = optimized
-
-# use -g to strip library as -x will discard its symbol table; -x is fine for
-# executables.
-# Note: these macros are not used in .debuginfo configs
-STRIP_LIBJVM = $(STRIP) -g $@ || exit 1;
-STRIP_AOUT = $(STRIP) -x $@ || exit 1;
-
-# If we can create .debuginfo files, then the VM is stripped in vm.make
-# and this macro is not used.
-# LINK_LIB.CXX/POST_HOOK += $(STRIP_$(LINK_INTO))
--- a/hotspot/make/linux/makefiles/rules.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,214 +0,0 @@
-#
-# Copyright (c) 2003, 2015, 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.
-#
-# 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.
-#
-#
-
-# Common rules/macros for the vm, adlc.
-
-# Tell make that .cpp is important
-.SUFFIXES: .cpp $(SUFFIXES)
-
-DEMANGLER = c++filt
-DEMANGLE = $(DEMANGLER) < $@ > .$@ && $(MV) -f .$@ $@
-
-# $(CC) is the c compiler (cc/gcc), $(CXX) is the c++ compiler (CC/g++).
-CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS)
-CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS)
-
-AS.S = $(AS) $(ASFLAGS)
-
-COMPILE.CC = $(CC_COMPILE) -c
-GENASM.CC = $(CC_COMPILE) -S
-LINK.CC = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
-LINK_LIB.CC = $(CC) $(LFLAGS) $(SHARED_FLAG)
-PREPROCESS.CC = $(CC_COMPILE) -E
-
-COMPILE.CXX = $(CXX_COMPILE) -c
-GENASM.CXX = $(CXX_COMPILE) -S
-LINK.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
-LINK_NOPROF.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS)
-LINK_LIB.CXX = $(CXX) $(LFLAGS) $(SHARED_FLAG)
-PREPROCESS.CXX = $(CXX_COMPILE) -E
-
-# cross compiling the jvm with c2 requires host compilers to build
-# adlc tool
-
-HOST.CXX_COMPILE = $(HOSTCXX) $(CXXFLAGS) $(CFLAGS)
-HOST.COMPILE.CXX = $(HOST.CXX_COMPILE) -c
-HOST.LINK_NOPROF.CXX = $(HOSTCXX) $(LFLAGS) $(AOUT_FLAGS)
-
-
-# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
-REMOVE_TARGET = rm -f $@
-
-# Note use of ALT_BOOTDIR to explicitly specify location of java and
-# javac; this is the same environment variable used in the J2SE build
-# process for overriding the default spec, which is BOOTDIR.
-# Note also that we fall back to using JAVA_HOME if neither of these is
-# specified.
-
-ifdef ALT_BOOTDIR
-
-RUN.JAVA = $(ALT_BOOTDIR)/bin/java
-RUN.JAVAP = $(ALT_BOOTDIR)/bin/javap
-RUN.JAVAH = $(ALT_BOOTDIR)/bin/javah
-RUN.JAR = $(ALT_BOOTDIR)/bin/jar
-COMPILE.JAVAC = $(ALT_BOOTDIR)/bin/javac
-COMPILE.RMIC = $(ALT_BOOTDIR)/bin/rmic
-BOOT_JAVA_HOME = $(ALT_BOOTDIR)
-
-else
-
-ifdef BOOTDIR
-
-RUN.JAVA = $(BOOTDIR)/bin/java
-RUN.JAVAP = $(BOOTDIR)/bin/javap
-RUN.JAVAH = $(BOOTDIR)/bin/javah
-RUN.JAR = $(BOOTDIR)/bin/jar
-COMPILE.JAVAC = $(BOOTDIR)/bin/javac
-COMPILE.RMIC = $(BOOTDIR)/bin/rmic
-BOOT_JAVA_HOME = $(BOOTDIR)
-
-else
-
-ifdef JAVA_HOME
-
-RUN.JAVA = $(JAVA_HOME)/bin/java
-RUN.JAVAP = $(JAVA_HOME)/bin/javap
-RUN.JAVAH = $(JAVA_HOME)/bin/javah
-RUN.JAR = $(JAVA_HOME)/bin/jar
-COMPILE.JAVAC = $(JAVA_HOME)/bin/javac
-COMPILE.RMIC = $(JAVA_HOME)/bin/rmic
-BOOT_JAVA_HOME = $(JAVA_HOME)
-
-else
-
-# take from the PATH, if ALT_BOOTDIR, BOOTDIR and JAVA_HOME are not defined
-
-RUN.JAVA = java
-RUN.JAVAP = javap
-RUN.JAVAH = javah
-RUN.JAR = jar
-COMPILE.JAVAC = javac
-COMPILE.RMIC = rmic
-
-endif
-endif
-endif
-
-COMPILE.JAVAC += $(BOOTSTRAP_JAVAC_FLAGS)
-
-SUM = /usr/bin/sum
-
-# 'gmake MAKE_VERBOSE=y' gives all the gory details.
-QUIETLY$(MAKE_VERBOSE) = @
-RUN.JAR$(MAKE_VERBOSE) += >/dev/null
-
-# Settings for javac
-JAVAC_FLAGS = -g -encoding ascii
-
-# Prefer BOOT_JDK_SOURCETARGET if it's set (typically by the top build system)
-# Fall back to the values here if it's not set (hotspot only builds)
-ifeq ($(BOOT_JDK_SOURCETARGET),)
-BOOTSTRAP_SOURCETARGET := -source 8 -target 8
-else
-BOOTSTRAP_SOURCETARGET := $(BOOT_JDK_SOURCETARGET)
-endif
-
-BOOTSTRAP_JAVAC_FLAGS = $(JAVAC_FLAGS) $(BOOTSTRAP_SOURCETARGET)
-
-# With parallel makes, print a message at the end of compilation.
-ifeq ($(findstring j,$(MFLAGS)),j)
-COMPILE_DONE = && { echo Done with $<; }
-endif
-
-# Include $(NONPIC_OBJ_FILES) definition
-ifndef LP64
-include $(GAMMADIR)/make/pic.make
-endif
-
-include $(GAMMADIR)/make/altsrc.make
-
-# The non-PIC object files are only generated for 32 bit platforms.
-ifdef LP64
-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
-else
-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
- $(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
- $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
-endif
-
-%.o: %.s
- @echo $(LOG_INFO) Assembling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(AS.S) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
-
-# gcc applies preprocessing if the file extension is .S instead of .s
-%.o: %.S
- @echo $(LOG_INFO) Preprocessing and assembling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(AS.S) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
-
-%.s: %.cpp
- @echo $(LOG_INFO) Generating assembly for $<
- $(QUIETLY) $(GENASM.CXX) -o $@ $<
- $(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
-
-# Intermediate files (for debugging macros)
-%.i: %.cpp
- @echo $(LOG_INFO) Preprocessing $< to $@
- $(QUIETLY) $(PREPROCESS.CXX) $< > $@ $(COMPILE_DONE)
-
-# Override gnumake built-in rules which do sccs get operations badly.
-# (They put the checked out code in the current directory, not in the
-# directory of the original file.) Since this is a symptom of a teamware
-# failure, and since not all problems can be detected by gnumake due
-# to incomplete dependency checking... just complain and stop.
-%:: s.%
- @echo "========================================================="
- @echo File $@
- @echo is out of date with respect to its SCCS file.
- @echo This file may be from an unresolved Teamware conflict.
- @echo This is also a symptom of a Teamware bringover/putback failure
- @echo in which SCCS files are updated but not checked out.
- @echo Check for other out of date files in your workspace.
- @echo "========================================================="
- @exit 666
-
-%:: SCCS/s.%
- @echo "========================================================="
- @echo File $@
- @echo is out of date with respect to its SCCS file.
- @echo This file may be from an unresolved Teamware conflict.
- @echo This is also a symptom of a Teamware bringover/putback failure
- @echo in which SCCS files are updated but not checked out.
- @echo Check for other out of date files in your workspace.
- @echo "========================================================="
- @exit 666
-
-.PHONY: default
--- a/hotspot/make/linux/makefiles/shark.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-#
-# 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.
-#
-# 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making Shark version of VM
-
-TYPE = SHARK
-
-VM_SUBDIR = server
-
-CFLAGS += -DSHARK
--- a/hotspot/make/linux/makefiles/sparc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
--- a/hotspot/make/linux/makefiles/sparcWorks.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,107 +0,0 @@
-#
-# Copyright (c) 1999, 2012, 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.
-#
-# 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.
-#
-#
-
-#------------------------------------------------------------------------
-# CC, CXX & AS
-
-# If a SPEC is not set already, then use these defaults.
-ifeq ($(SPEC),)
- CXX = CC
- CC = cc
- AS = $(CC) -c
-
- HOSTCXX = $(CXX)
- HOSTCC = $(CC)
-endif
-
-ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
-ARCHFLAG/i486 = -m32
-ARCHFLAG/amd64 = -m64
-
-CFLAGS += $(ARCHFLAG)
-AOUT_FLAGS += $(ARCHFLAG)
-LFLAGS += $(ARCHFLAG)
-ASFLAGS += $(ARCHFLAG)
-
-#------------------------------------------------------------------------
-# Compiler flags
-
-# position-independent code
-PICFLAG = -KPIC
-
-CFLAGS += $(PICFLAG)
-# no more exceptions
-CFLAGS += -features=no%except
-# Reduce code bloat by reverting back to 5.0 behavior for static initializers
-CFLAGS += -features=no%split_init
-# allow zero sized arrays
-CFLAGS += -features=zla
-
-# Use C++ Interpreter
-ifdef CC_INTERP
- CFLAGS += -DCC_INTERP
-endif
-
-# We don't need libCstd.so and librwtools7.so, only libCrun.so
-CFLAGS += -library=Crun
-LIBS += -lCrun
-
-CFLAGS += -mt
-LFLAGS += -mt
-
-# Compiler warnings are treated as errors
-#WARNINGS_ARE_ERRORS = -errwarn=%all
-CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS)
-# Special cases
-CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
-
-# The flags to use for an Optimized build
-OPT_CFLAGS+=-xO4
-OPT_CFLAGS/NOOPT=-xO0
-
-# Flags for creating the dependency files.
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1)
-DEPFLAGS = -xMMD -xMF $(DEP_DIR)/$(@:%=%.d)
-endif
-
-# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
-CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
-
-#------------------------------------------------------------------------
-# Linker flags
-
-# Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
-MAPFLAG = -Wl,--version-script=FILENAME
-
-# Use $(SONAMEFLAG:SONAME=soname) to specify the intrinsic name of a shared obj
-SONAMEFLAG = -h SONAME
-
-# Build shared library
-SHARED_FLAG = -G
-
-#------------------------------------------------------------------------
-# Debug flags
-DEBUG_CFLAGS += -g
-FASTDEBUG_CFLAGS = -g0
-
--- a/hotspot/make/linux/makefiles/sparcv9.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-
-# gcc 4.0 miscompiles this code in -m64
-OPT_CFLAGS/macro.o = -O0
-
-CFLAGS += -D_LP64=1
--- a/hotspot/make/linux/makefiles/tiered.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-#
-# Copyright (c) 2006, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making tiered version of VM
-
-TYPE=TIERED
-
-VM_SUBDIR = server
-
-CFLAGS += -DCOMPILER2 -DCOMPILER1
--- a/hotspot/make/linux/makefiles/top.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,150 +0,0 @@
-#
-# Copyright (c) 1999, 2014, 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.
-#
-# 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.
-#
-#
-
-# top.make is included in the Makefile in the build directories.
-# It DOES NOT include the vm dependency info in order to be faster.
-# Its main job is to implement the incremental form of make lists.
-# It also:
-# -builds and runs adlc via adlc.make
-# -generates JVMTI source and docs via jvmti.make (JSR-163)
-
-# It assumes the following flags are set:
-# CFLAGS Platform_file, Src_Dirs_I, Src_Dirs_V, SYSDEFS, AOUT, Obj_Files
-
-# -- D. Ungar (5/97) from a file by Bill Bush
-
-# Don't override the built-in $(MAKE).
-# Instead, use "gmake" (or "gnumake") from the command line. --Rose
-#MAKE = gmake
-
-include $(GAMMADIR)/make/altsrc.make
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-VM = $(GAMMADIR)/src/share/vm
-Plat_File = $(Platform_file)
-CDG = cd $(GENERATED);
-
-ifneq ($(USE_PRECOMPILED_HEADER),0)
-UpdatePCH = $(MAKE) -f vm.make $(PRECOMPILED_HEADER) $(MFLAGS)
-else
-UpdatePCH = \# precompiled header is not used
-endif
-
-Cached_plat = $(GENERATED)/platform.current
-
-AD_Dir = $(GENERATED)/adfiles
-ADLC = $(AD_Dir)/adlc
-AD_Spec = $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad)
-AD_Src = $(call altsrc-replace,$(HS_COMMON_SRC)/share/vm/adlc)
-AD_Names = ad_$(Platform_arch_model).hpp ad_$(Platform_arch_model).cpp
-AD_Files = $(AD_Names:%=$(AD_Dir)/%)
-
-# AD_Files_If_Required/COMPILER1 = ad_stuff
-AD_Files_If_Required/COMPILER2 = ad_stuff
-AD_Files_If_Required/TIERED = ad_stuff
-AD_Files_If_Required = $(AD_Files_If_Required/$(TYPE))
-
-# Wierd argument adjustment for "gnumake -j..."
-adjust-mflags = $(GENERATED)/adjust-mflags
-# If SPEC is set, it's from configure and it's already controlling concurrency
-# for us. Skip setting -j with HOTSPOT_BUILD_JOBS.
-ifeq ($(SPEC), )
- MFLAGS-adjusted = -r `$(adjust-mflags) "$(MFLAGS)" "$(HOTSPOT_BUILD_JOBS)"`
-else
- MFLAGS-adjusted = -r $(MFLAGS)
-endif
-
-
-# default target: update lists, make vm
-# done in stages to force sequential order with parallel make
-#
-
-default: vm_build_preliminaries the_vm
- @echo All done.
-
-# This is an explicit dependency for the sake of parallel makes.
-vm_build_preliminaries: checks $(Cached_plat) $(AD_Files_If_Required) trace_stuff jvmti_stuff dtrace_stuff
- @# We need a null action here, so implicit rules don't get consulted.
-
-$(Cached_plat): $(Plat_File)
- $(CDG) $(CP) $(Plat_File) $(Cached_plat)
-
-# make AD files as necessary
-ad_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f adlc.make $(MFLAGS-adjusted)
-
-# generate JVMTI files from the spec
-jvmti_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f jvmti.make $(MFLAGS-adjusted)
-
-# generate trace files
-trace_stuff: jvmti_stuff $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f trace.make $(MFLAGS-adjusted)
-
-dtrace_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f dtrace.make dtrace_gen_headers $(MFLAGS-adjusted) GENERATED=$(GENERATED)
-
-# and the VM: must use other makefile with dependencies included
-
-# We have to go to great lengths to get control over the -jN argument
-# to the recursive invocation of vm.make. The problem is that gnumake
-# resets -jN to -j1 for recursive runs. (How helpful.)
-# Note that the user must specify the desired parallelism level via a
-# command-line or environment variable name HOTSPOT_BUILD_JOBS.
-$(adjust-mflags): $(GAMMADIR)/make/$(Platform_os_family)/makefiles/adjust-mflags.sh
- @+rm -f $@ $@+
- @+cat $< > $@+
- @+chmod +x $@+
- @+mv $@+ $@
-
-the_vm: vm_build_preliminaries $(adjust-mflags)
- +@$(UpdatePCH)
- @$(MAKE) -f vm.make $(MFLAGS-adjusted)
-
-install: the_vm
- @$(MAKE) -f vm.make $@
-
-# next rules support "make foo.[ois]"
-
-%.o %.i %.s:
- +$(UpdatePCH)
- $(MAKE) -f vm.make $(MFLAGS) $@
- #$(MAKE) -f vm.make $@
-
-# this should force everything to be rebuilt
-clean:
- rm -f $(GENERATED)/*.class
- $(MAKE) -f vm.make $(MFLAGS) clean
-
-# just in case it doesn't, this should do it
-realclean:
- $(MAKE) -f vm.make $(MFLAGS) clean
- rm -fr $(GENERATED)
-
-.PHONY: default vm_build_preliminaries
-.PHONY: lists ad_stuff jvmti_stuff the_vm clean realclean
-.PHONY: checks check_os_version install
-
-.NOTPARALLEL:
--- a/hotspot/make/linux/makefiles/trace.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-#
-# Copyright (c) 2003, 2016, 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.
-#
-# 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.
-#
-#
-
-# This makefile (trace.make) is included from the trace.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate trace files.
-
-include $(GAMMADIR)/make/linux/makefiles/rules.make
-include $(GAMMADIR)/make/altsrc.make
-
-# #########################################################################
-
-HAS_ALT_SRC := false
-ifndef OPENJDK
- ifneq ($(wildcard $(HS_ALT_SRC)/share/vm/trace), )
- HAS_ALT_SRC := true
- endif
-endif
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-JvmtiOutDir = $(GENERATED)/jvmtifiles
-TraceOutDir = $(GENERATED)/tracefiles
-
-TraceAltSrcDir = $(HS_ALT_SRC)/share/vm/trace
-TraceSrcDir = $(HS_COMMON_SRC)/share/vm/trace
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(TraceSrcDir) $(TraceAltSrcDir)
-VPATH += $(Src_Dirs_V:%=%:)
-
-TraceGeneratedNames = \
- traceEventClasses.hpp \
- traceEventIds.hpp \
- traceTypes.hpp
-
-ifeq ($(HAS_ALT_SRC), true)
-TraceGeneratedNames += \
- traceRequestables.hpp \
- traceEventControl.hpp
-endif
-
-TraceGeneratedFiles = $(TraceGeneratedNames:%=$(TraceOutDir)/%)
-
-XSLT = $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-TraceXml = $(TraceSrcDir)/trace.xml
-ifeq ($(HAS_ALT_SRC), true)
- TraceXml = $(TraceAltSrcDir)/trace.xml
-endif
-
-XML_DEPS = $(TraceXml) $(TraceSrcDir)/tracetypes.xml \
- $(TraceSrcDir)/trace.dtd $(TraceSrcDir)/xinclude.mod \
- $(TraceSrcDir)/tracerelationdecls.xml $(TraceSrcDir)/traceevents.xml
-ifeq ($(HAS_ALT_SRC), true)
- XML_DEPS += $(TraceAltSrcDir)/traceeventscustom.xml \
- $(TraceAltSrcDir)/traceeventtypes.xml
-endif
-
-.PHONY: all clean cleanall
-
-# #########################################################################
-
-all: $(TraceGeneratedFiles)
-
-GENERATE_CODE= \
- $(QUIETLY) echo $(LOG_INFO) Generating $@; \
- $(XSLT) -IN $(word 1,$^) -XSL $(word 2,$^) -OUT $@
-
-$(TraceOutDir)/traceEventIds.hpp: $(TraceXml) $(TraceSrcDir)/traceEventIds.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceTypes.hpp: $(TraceXml) $(TraceSrcDir)/traceTypes.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-ifeq ($(HAS_ALT_SRC), false)
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceXml) $(TraceSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-else
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceXml) $(TraceAltSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceRequestables.hpp: $(TraceXml) $(TraceAltSrcDir)/traceRequestables.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceEventControl.hpp: $(TraceXml) $(TraceAltSrcDir)/traceEventControl.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-endif
-
-# #########################################################################
-
-clean cleanall:
- rm $(TraceGeneratedFiles)
--- a/hotspot/make/linux/makefiles/vm.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,407 +0,0 @@
-#
-# Copyright (c) 1999, 2015, 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.
-#
-# 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.
-#
-#
-
-# Rules to build JVM and related libraries, included from vm.make in the build
-# directory.
-
-# Common build rules.
-MAKEFILES_DIR=$(GAMMADIR)/make/$(Platform_os_family)/makefiles
-include $(MAKEFILES_DIR)/rules.make
-include $(GAMMADIR)/make/altsrc.make
-
-default: build
-
-#----------------------------------------------------------------------
-# Defs
-
-GENERATED = ../generated
-DEP_DIR = $(GENERATED)/dependencies
-
-# reads the generated files defining the set of .o's and the .o .h dependencies
--include $(DEP_DIR)/*.d
-
-# read machine-specific adjustments (%%% should do this via buildtree.make?)
-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
- include $(MAKEFILES_DIR)/zeroshark.make
-else
- BUILDARCH_MAKE = $(MAKEFILES_DIR)/$(BUILDARCH).make
- ALT_BUILDARCH_MAKE = $(HS_ALT_MAKE)/$(Platform_os_family)/makefiles/$(BUILDARCH).make
- include $(if $(wildcard $(ALT_BUILDARCH_MAKE)),$(ALT_BUILDARCH_MAKE),$(BUILDARCH_MAKE))
-endif
-
-# set VPATH so make knows where to look for source files
-# Src_Dirs_V is everything in src/share/vm/*, plus the right os/*/vm and cpu/*/vm
-# The adfiles directory contains ad_<arch>.[ch]pp.
-# The jvmtifiles directory contains jvmti*.[ch]pp
-Src_Dirs_V += $(GENERATED)/adfiles $(GENERATED)/jvmtifiles $(GENERATED)/tracefiles $(GENERATED)/extensions
-VPATH += $(Src_Dirs_V:%=%:)
-
-# set INCLUDES for C preprocessor.
-Src_Dirs_I += $(GENERATED)
-# The order is important for the precompiled headers to work.
-INCLUDES += $(PRECOMPILED_HEADER_DIR:%=-I%) $(Src_Dirs_I:%=-I%)
-
-# SYMFLAG is used by jsig.make
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- # always build with debug info when we can create .debuginfo files
- SYMFLAG = -g
-else
- ifeq (${VERSION}, debug)
- SYMFLAG = -g
- else
- SYMFLAG =
- endif
-endif
-
-# The following variables are defined in the generated flags.make file.
-JDK_VER_DEFS = -DVERSION_MAJOR=$(VERSION_MAJOR) \
- -DVERSION_MINOR=$(VERSION_MINOR) \
- -DVERSION_SECURITY=$(VERSION_SECURITY) \
- -DVERSION_PATCH=$(VERSION_PATCH) \
- -DVERSION_BUILD=$(VERSION_BUILD)
-VM_VER_DEFS = -DHOTSPOT_VERSION_STRING="\"$(HOTSPOT_VERSION_STRING)\"" \
- -DVERSION_STRING="\"$(VERSION_STRING)\"" \
- -DDEBUG_LEVEL="\"$(DEBUG_LEVEL)\"" \
- $(JDK_VER_DEFS)
-HS_LIB_ARCH = -DHOTSPOT_LIB_ARCH=\"$(LIBARCH)\"
-BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
-VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
-
-CXXFLAGS = \
- ${SYSDEFS} \
- ${INCLUDES} \
- ${BUILD_USER} \
- ${HS_LIB_ARCH} \
- ${VM_DISTRO}
-
-# This is VERY important! The version define must only be supplied to vm_version.o
-# If not, ccache will not re-use the cache at all, since the version string might contain
-# a time and date.
-CXXFLAGS/vm_version.o += ${VM_VER_DEFS}
-
-CXXFLAGS/BYFILE = $(CXXFLAGS/$@)
-
-# File specific flags
-CXXFLAGS += $(CXXFLAGS/BYFILE)
-
-# Large File Support
-ifneq ($(LP64), 1)
-CXXFLAGS/ostream.o += -D_FILE_OFFSET_BITS=64
-endif # ifneq ($(LP64), 1)
-
-# CFLAGS_WARN holds compiler options to suppress/enable warnings.
-CFLAGS += $(CFLAGS_WARN/BYFILE)
-
-# Do not use C++ exception handling
-CFLAGS += $(CFLAGS/NOEX)
-
-# Extra flags from gnumake's invocation or environment
-CFLAGS += $(EXTRA_CFLAGS)
-LFLAGS += $(EXTRA_CFLAGS)
-
-# Don't set excutable bit on stack segment
-# the same could be done by separate execstack command
-LFLAGS += -Xlinker -z -Xlinker noexecstack
-
-LIBS += -lm -ldl -lpthread
-
-# By default, link the *.o into the library, not the executable.
-LINK_INTO$(LINK_INTO) = LIBJVM
-
-JDK_LIBDIR = $(JAVA_HOME)/lib/$(LIBARCH)
-
-#----------------------------------------------------------------------
-# jvm_db & dtrace
-include $(MAKEFILES_DIR)/dtrace.make
-
-#----------------------------------------------------------------------
-# JVM
-
-JVM = jvm
-LIBJVM = lib$(JVM).so
-
-LIBJVM_DEBUGINFO = lib$(JVM).debuginfo
-LIBJVM_DIZ = lib$(JVM).diz
-
-SPECIAL_PATHS:=adlc c1 gc opto shark libadt
-
-SOURCE_PATHS=\
- $(shell find $(HS_COMMON_SRC)/share/vm/* -type d \! \
- \( -name DUMMY $(foreach dir,$(SPECIAL_PATHS),-o -name $(dir)) \))
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os/$(Platform_os_family)/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os/posix/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
-
-CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
-CORE_PATHS+=$(GENERATED)/jvmtifiles $(GENERATED)/tracefiles
-
-ifneq ($(INCLUDE_TRACE), false)
-CORE_PATHS+=$(shell if [ -d $(HS_ALT_SRC)/share/vm/jfr ]; then \
- find $(HS_ALT_SRC)/share/vm/jfr -type d; \
- fi)
-endif
-
-CORE_PATHS+=$(GENERATED)/extensions
-
-COMPILER1_PATHS := $(call altsrc,$(HS_COMMON_SRC)/share/vm/c1)
-COMPILER1_PATHS += $(HS_COMMON_SRC)/share/vm/c1
-
-COMPILER2_PATHS := $(call altsrc,$(HS_COMMON_SRC)/share/vm/opto)
-COMPILER2_PATHS += $(call altsrc,$(HS_COMMON_SRC)/share/vm/libadt)
-COMPILER2_PATHS += $(HS_COMMON_SRC)/share/vm/opto
-COMPILER2_PATHS += $(HS_COMMON_SRC)/share/vm/libadt
-COMPILER2_PATHS += $(GENERATED)/adfiles
-
-SHARK_PATHS := $(GAMMADIR)/src/share/vm/shark
-
-# Include dirs per type.
-Src_Dirs/CORE := $(CORE_PATHS)
-Src_Dirs/COMPILER1 := $(CORE_PATHS) $(COMPILER1_PATHS)
-Src_Dirs/COMPILER2 := $(CORE_PATHS) $(COMPILER2_PATHS)
-Src_Dirs/TIERED := $(CORE_PATHS) $(COMPILER1_PATHS) $(COMPILER2_PATHS)
-Src_Dirs/ZERO := $(CORE_PATHS)
-Src_Dirs/SHARK := $(CORE_PATHS) $(SHARK_PATHS)
-Src_Dirs := $(Src_Dirs/$(TYPE))
-
-COMPILER2_SPECIFIC_FILES := opto libadt bcEscapeAnalyzer.cpp c2_\* runtime_\*
-COMPILER1_SPECIFIC_FILES := c1_\*
-SHARK_SPECIFIC_FILES := shark
-ZERO_SPECIFIC_FILES := zero
-
-# Always exclude these.
-Src_Files_EXCLUDE += jsig.c jvmtiEnvRecommended.cpp jvmtiEnvStub.cpp
-
-# Exclude per type.
-Src_Files_EXCLUDE/CORE := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/COMPILER1 := $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/COMPILER2 := $(COMPILER1_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES)
-Src_Files_EXCLUDE/TIERED := $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES)
-Src_Files_EXCLUDE/ZERO := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/SHARK := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES)
-
-Src_Files_EXCLUDE += $(Src_Files_EXCLUDE/$(TYPE))
-
-# Special handling of arch model.
-ifeq ($(Platform_arch_model), x86_32)
-Src_Files_EXCLUDE += \*x86_64\*
-endif
-ifeq ($(Platform_arch_model), x86_64)
-Src_Files_EXCLUDE += \*x86_32\*
-endif
-
-Src_Files_BASE += \*.c \*.cpp \*.s
-
-# Alternate vm.make
-# This has to be included here to allow changes to the source
-# directories and excluded files before they are expanded
-# by the definition of Src_Files.
--include $(HS_ALT_MAKE)/$(Platform_os_family)/makefiles/vm.make
-
-# Locate all source files in the given directory, excluding files in Src_Files_EXCLUDE.
-define findsrc
- $(notdir $(shell find $(1)/. ! -name . -prune \
- -a \( -name DUMMY $(addprefix -o -name ,$(Src_Files_BASE)) \) \
- -a ! \( -name DUMMY $(addprefix -o -name ,$(Src_Files_EXCLUDE)) \)))
-endef
-
-Src_Files := $(foreach e,$(Src_Dirs),$(call findsrc,$(e)))
-
-Obj_Files = $(sort $(addsuffix .o,$(basename $(Src_Files))) $(EXTENDED_JVM_OBJ_FILES))
-
-JVM_OBJ_FILES = $(Obj_Files)
-
-vm_version.o: $(filter-out vm_version.o,$(JVM_OBJ_FILES))
-
-MAPFILE_SHARE := $(GAMMADIR)/make/share/makefiles/mapfile-vers
-
-MAPFILE_EXT_SRC := $(HS_ALT_MAKE)/share/makefiles/mapfile-ext
-ifneq ("$(wildcard $(MAPFILE_EXT_SRC))","")
-MAPFILE_EXT := $(MAPFILE_EXT_SRC)
-endif
-
-mapfile : $(MAPFILE) $(MAPFILE_SHARE) vm.def $(MAPFILE_EXT)
- rm -f $@
- awk '{ if ($$0 ~ "INSERT VTABLE SYMBOLS HERE") \
- { system ("cat ${MAPFILE_SHARE} $(MAPFILE_EXT) vm.def"); } \
- else \
- { print $$0 } \
- }' > $@ < $(MAPFILE)
-
-mapfile_reorder : mapfile $(REORDERFILE)
- rm -f $@
- cat $^ > $@
-
-VMDEF_PAT = ^_ZTV
-VMDEF_PAT := ^gHotSpotVM|$(VMDEF_PAT)
-VMDEF_PAT := ^UseSharedSpaces$$|$(VMDEF_PAT)
-VMDEF_PAT := ^_ZN9Arguments17SharedArchivePathE$$|$(VMDEF_PAT)
-ifneq ($(VMDEF_PAT_EXT),)
- VMDEF_PAT := $(VMDEF_PAT_EXT)|$(VMDEF_PAT)
-endif
-
-vm.def: $(Res_Files) $(Obj_Files) $(VM_DEF_EXT)
- $(QUIETLY) $(NM) --defined-only $(Obj_Files) | sort -k3 -u | \
- awk '$$3 ~ /$(VMDEF_PAT)/ { print "\t" $$3 ";" }' > $@
-ifneq ($(VM_DEF_EXT),)
- cat $(VM_DEF_EXT) >> $@
-endif
-
-ifeq ($(JVM_VARIANT_ZEROSHARK), true)
- STATIC_CXX = false
-else
- ifeq ($(ZERO_LIBARCH), ppc64)
- STATIC_CXX = false
- else
- STATIC_CXX = true
- endif
-endif
-
-ifeq ($(LINK_INTO),AOUT)
- LIBJVM.o =
- LIBJVM_MAPFILE =
- LIBS_VM = $(LIBS)
-else
- LIBJVM.o = $(JVM_OBJ_FILES)
- LIBJVM_MAPFILE$(LDNOMAP) = mapfile_reorder
- LFLAGS_VM$(LDNOMAP) += $(MAPFLAG:FILENAME=$(LIBJVM_MAPFILE))
- LFLAGS_VM += $(SONAMEFLAG:SONAME=$(LIBJVM))
- LFLAGS_VM += -Wl,-z,defs
-
- # JVM is statically linked with libgcc[_s] and libstdc++; this is needed to
- # get around library dependency and compatibility issues. Must use gcc not
- # g++ to link.
- ifeq ($(STATIC_CXX), true)
- LFLAGS_VM += $(STATIC_LIBGCC)
- LIBS_VM += $(STATIC_STDCXX)
- else
- LIBS_VM += -lstdc++
- endif
-
- LIBS_VM += $(LIBS)
-endif
-ifeq ($(JVM_VARIANT_ZERO), true)
- LIBS_VM += $(LIBFFI_LIBS)
-endif
-ifeq ($(JVM_VARIANT_ZEROSHARK), true)
- LIBS_VM += $(LIBFFI_LIBS) $(LLVM_LIBS)
- LFLAGS_VM += $(LLVM_LDFLAGS)
-endif
-
-LINK_VM = $(LINK_LIB.CC)
-
-# rule for building precompiled header
-$(PRECOMPILED_HEADER):
- $(QUIETLY) echo $(LOG_INFO) Generating precompiled header $@
- $(QUIETLY) mkdir -p $(PRECOMPILED_HEADER_DIR)
- $(QUIETLY) rm -f $@
- $(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -x c++-header $(PRECOMPILED_HEADER_SRC) -o $@ $(COMPILE_DONE)
-
-# making the library:
-
-ifneq ($(JVM_BASE_ADDR),)
-# By default shared library is linked at base address == 0. Modify the
-# linker script if JVM prefers a different base location. It can also be
-# implemented with 'prelink -r'. But 'prelink' is not (yet) available on
-# our build platform (AS-2.1).
-LD_SCRIPT = libjvm.so.lds
-$(LD_SCRIPT): $(LIBJVM_MAPFILE)
- $(QUIETLY) { \
- rm -rf $@; \
- $(LINK_VM) -Wl,--verbose $(LFLAGS_VM) 2>&1 | \
- sed -e '/^======/,/^======/!d' \
- -e '/^======/d' \
- -e 's/0\( + SIZEOF_HEADERS\)/$(JVM_BASE_ADDR)\1/' \
- > $@; \
- }
-LD_SCRIPT_FLAG = -Wl,-T,$(LD_SCRIPT)
-endif
-
-# With more recent Redhat releases (or the cutting edge version Fedora), if
-# SELinux is configured to be enabled, the runtime linker will fail to apply
-# the text relocation to libjvm.so considering that it is built as a non-PIC
-# DSO. To workaround that, we run chcon to libjvm.so after it is built. See
-# details in bug 6538311.
-$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT)
- $(QUIETLY) { \
- echo $(LOG_INFO) Linking vm...; \
- $(LINK_LIB.CXX/PRE_HOOK) \
- $(LINK_VM) $(LD_SCRIPT_FLAG) \
- $(LFLAGS_VM) -o $@ $(sort $(LIBJVM.o)) $(LIBS_VM); \
- $(LINK_LIB.CXX/POST_HOOK) \
- rm -f $@.1; ln -s $@ $@.1; \
- if [ \"$(CROSS_COMPILE_ARCH)\" = \"\" ] ; then \
- if [ -x /usr/sbin/selinuxenabled ] ; then \
- if /usr/sbin/selinuxenabled; then \
- if ! /usr/bin/chcon -t textrel_shlib_t $@; then \
- echo "ERROR: Cannot chcon $@"; \
- fi \
- fi \
- fi \
- fi \
- }
-
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -g $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJVM_DIZ) $(LIBJVM_DEBUGINFO)
- $(RM) $(LIBJVM_DEBUGINFO)
- endif
-endif
-
-DEST_SUBDIR = $(JDK_LIBDIR)/$(VM_SUBDIR)
-DEST_JVM = $(DEST_SUBDIR)/$(LIBJVM)
-DEST_JVM_DEBUGINFO = $(DEST_SUBDIR)/$(LIBJVM_DEBUGINFO)
-DEST_JVM_DIZ = $(DEST_SUBDIR)/$(LIBJVM_DIZ)
-
-install_jvm: $(LIBJVM)
- @echo "Copying $(LIBJVM) to $(DEST_JVM)"
- $(QUIETLY) test ! -f $(LIBJVM_DEBUGINFO) || \
- $(CP) -f $(LIBJVM_DEBUGINFO) $(DEST_JVM_DEBUGINFO)
- $(QUIETLY) test ! -f $(LIBJVM_DIZ) || \
- $(CP) -f $(LIBJVM_DIZ) $(DEST_JVM_DIZ)
- $(QUIETLY) $(CP) -f $(LIBJVM) $(DEST_JVM) && echo "Done"
-
-#----------------------------------------------------------------------
-# Other files
-
-# Signal interposition library
-include $(MAKEFILES_DIR)/jsig.make
-
-#----------------------------------------------------------------------
-
-build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(LIBJVM_DB) dtraceCheck
-
-install: install_jvm install_jsig
-
-.PHONY: default build install install_jvm $(HS_ALT_MAKE)/$(Platform_os_family)/makefiles/$(BUILDARCH).make $(HS_ALT_MAKE)/$(Platform_os_family)/makefiles/vm.make
--- a/hotspot/make/linux/makefiles/zero.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-#
-# Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
-# Copyright 2009 Red Hat, Inc.
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# This code is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# Setup for Zero (non-Shark) version of VM
-
-# Select which files to use (in top.make)
-TYPE = ZERO
-
-# Install libjvm.so, etc in in server directory.
-VM_SUBDIR = server
-
-# Disable trace for zero builds
-# NOTE: This is used for simple comparison with the new build system, and
-# should not be merged into mainline with build-infra.
-INCLUDE_TRACE := false
--- a/hotspot/make/linux/makefiles/zeroshark.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-#
-# Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
-# Copyright 2007, 2008 Red Hat, Inc.
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# This code is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# Setup common to Zero (non-Shark) and Shark versions of VM
-
-# Some versions of llvm do not like -Wundef
-ifeq ($(USE_CLANG), true)
- WARNING_FLAGS += -Wno-undef
-endif
-
-# The copied fdlibm routines in sharedRuntimeTrig.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrig.o = $(OPT_CFLAGS/NOOPT)
-# The copied fdlibm routines in sharedRuntimeTrans.o must not be optimized
-OPT_CFLAGS/sharedRuntimeTrans.o = $(OPT_CFLAGS/NOOPT)
-
-# Specify that the CPU is little endian, if necessary
-ifeq ($(ZERO_ENDIANNESS), little)
- CFLAGS += -DVM_LITTLE_ENDIAN
-endif
-
-# Specify that the CPU is 64 bit, if necessary
-ifeq ($(ARCH_DATA_MODEL), 64)
- CFLAGS += -D_LP64=1
-endif
--- a/hotspot/make/linux/platform_aarch64 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = linux
-
-arch = aarch64
-
-arch_model = aarch64
-
-os_arch = linux_aarch64
-
-os_arch_model = linux_aarch64
-
-lib_arch = aarch64
-
-compiler = gcc
-
-sysdefs = -DLINUX -D_GNU_SOURCE -DAARCH64
--- a/hotspot/make/linux/platform_amd64 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = linux
-
-arch = x86
-
-arch_model = x86_64
-
-os_arch = linux_x86
-
-os_arch_model = linux_x86_64
-
-lib_arch = amd64
-
-compiler = gcc
-
-sysdefs = -DLINUX -D_GNU_SOURCE -DAMD64
--- a/hotspot/make/linux/platform_amd64.suncc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-os_family = linux
-
-arch = x86
-
-arch_model = x86_64
-
-os_arch = linux_x86
-
-os_arch_model = linux_x86_64
-
-lib_arch = amd64
-
-compiler = sparcWorks
-
-gnu_dis_arch = amd64
-
-sysdefs = -DLINUX -DSPARC_WORKS -D_GNU_SOURCE -DAMD64
--- a/hotspot/make/linux/platform_i486 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = linux
-
-arch = x86
-
-arch_model = x86_32
-
-os_arch = linux_x86
-
-os_arch_model = linux_x86_32
-
-lib_arch = i386
-
-compiler = gcc
-
-sysdefs = -DLINUX -D_GNU_SOURCE -DIA32
--- a/hotspot/make/linux/platform_i486.suncc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-os_family = linux
-
-arch = x86
-
-arch_model = x86_32
-
-os_arch = linux_x86
-
-os_arch_model = linux_x86_32
-
-lib_arch = i386
-
-compiler = sparcWorks
-
-gnu_dis_arch = i386
-
-sysdefs = -DLINUX -DSPARC_WORKS -D_GNU_SOURCE -DIA32
--- a/hotspot/make/linux/platform_ia64 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = linux
-
-arch = ia64
-
-os_arch = linux_ia64
-
-lib_arch = ia64
-
-compiler = gcc
-
-gnu_dis_arch = ia64
-
-sysdefs = -DLINUX -D_GNU_SOURCE -DIA64 -DCC_INTERP
-
-mark_style = alignment
--- a/hotspot/make/linux/platform_ppc64 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-os_family = linux
-
-arch = ppc
-
-arch_model = ppc_64
-
-os_arch = linux_ppc
-
-os_arch_model = linux_ppc_64
-
-lib_arch = ppc64
-
-compiler = gcc
-
-gnu_dis_arch = ppc64
-
-sysdefs = -DLINUX -D_GNU_SOURCE -DPPC64
--- a/hotspot/make/linux/platform_sparc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = linux
-
-arch = sparc
-
-arch_model = sparc
-
-os_arch = linux_sparc
-
-os_arch_model = linux_sparc
-
-lib_arch = sparc
-
-compiler = gcc
-
-sysdefs = -DLINUX -D_GNU_SOURCE -DSPARC
--- a/hotspot/make/linux/platform_sparcv9 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = linux
-
-arch = sparc
-
-arch_model = sparc
-
-os_arch = linux_sparc
-
-os_arch_model = linux_sparc
-
-lib_arch = sparcv9
-
-compiler = gcc
-
-sysdefs = -DLINUX -D_GNU_SOURCE -DSPARC
--- a/hotspot/make/linux/platform_zero.in Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-os_family = linux
-
-arch = zero
-
-arch_model = zero
-
-os_arch = linux_zero
-
-os_arch_model = linux_zero
-
-lib_arch = zero
-
-compiler = gcc
-
-gnu_dis_arch = zero
-
-sysdefs = -DLINUX -D_GNU_SOURCE -DCC_INTERP -DZERO -D@ZERO_ARCHDEF@ -DZERO_LIBARCH=\"@ZERO_LIBARCH@\"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/mapfiles/libjsig/mapfile-vers-solaris Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,38 @@
+#
+# Copyright (c) 2005, 2013, 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.
+#
+# 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.
+#
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+ global:
+ JVM_begin_signal_setting;
+ JVM_end_signal_setting;
+ JVM_get_libjsig_version;
+ JVM_get_signal_action;
+ sigaction;
+ signal;
+ sigset;
+ local:
+ *;
+};
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/mapfiles/libjvm_db/mapfile-vers Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,38 @@
+#
+
+#
+# Copyright (c) 2005, 2008, 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.
+#
+# 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.
+#
+#
+
+# Define library interface.
+
+SUNWprivate_1.1 {
+ global:
+ Jagent_create;
+ Jagent_destroy;
+ Jframe_iter;
+ #Jget_vframe;
+ #Jlookup_by_regs;
+ local:
+ *;
+};
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/mapfiles/libjvm_dtrace/mapfile-vers Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,37 @@
+#
+
+#
+# Copyright (c) 2006, 2008, 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.
+#
+# 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.
+#
+#
+
+# Define library interface for JVM-DTrace interface
+
+SUNWprivate_1.1 {
+ global:
+ jvm_attach;
+ jvm_get_last_error;
+ jvm_enable_dtprobes;
+ jvm_detach;
+ local:
+ *;
+};
--- a/hotspot/make/openjdk_distro Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-#
-# Copyright (c) 2007, 2008, 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.
-#
-# 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.
-#
-
-#
-# This file format must remain compatible with both
-# GNU Makefile and Microsoft nmake formats.
-#
-
-# Don't put quotes (fail windows build).
-HOTSPOT_VM_DISTRO=OpenJDK
-COMPANY_NAME=
-PRODUCT_NAME=OpenJDK
--- a/hotspot/make/pic.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-#
-# Copyright (c) 2006, 2015, 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.
-#
-# 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.
-#
-#
-
-# A list of object files built without the platform specific PIC flags, e.g.
-# -fPIC on linux. Performance measurements show that by compiling GC related
-# code, we could significantly reduce the GC pause time on 32 bit Linux/Unix
-# platforms. See 6454213 for more details.
-include $(GAMMADIR)/make/scm.make
-
-ifneq ($(OSNAME), windows)
- ifndef LP64
- PARTIAL_NONPIC=1
- endif
- PIC_ARCH = ppc arm
- ifneq ("$(filter $(PIC_ARCH),$(BUILDARCH))","")
- PARTIAL_NONPIC=0
- endif
- ifeq ($(PARTIAL_NONPIC),1)
- NONPIC_DIRS = memory oops gc
- NONPIC_DIRS := $(foreach dir,$(NONPIC_DIRS), $(GAMMADIR)/src/share/vm/$(dir))
- # Look for source files under NONPIC_DIRS
- NONPIC_FILES := $(foreach dir,$(NONPIC_DIRS),\
- $(shell find $(dir) \( $(SCM_DIRS) \) -prune -o \
- -name '*.cpp' -print))
- NONPIC_OBJ_FILES := $(notdir $(subst .cpp,.o,$(NONPIC_FILES)))
- endif
-endif
--- a/hotspot/make/scm.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-#
-# Copyright (c) 2007, 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.
-#
-# 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.
-#
-
-# Prune out all known SCM (Source Code Management) directories
-# so they will not appear on -I PATHs, when copying directory trees,
-# packaging up .jar files, etc. This applies to all workspaces.
-#
-SCM_DIRS = -name .hg -o -name .svn -o -name CVS -o -name RCS -o -name SCCS -o -name Codemgr_wsdata -o -name deleted_files
--- a/hotspot/make/share/makefiles/mapfile-vers Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,180 +0,0 @@
- # JNI
- JNI_CreateJavaVM;
- JNI_GetCreatedJavaVMs;
- JNI_GetDefaultJavaVMInitArgs;
-
- # JVM
- JVM_ActiveProcessorCount;
- JVM_ArrayCopy;
- JVM_AssertionStatusDirectives;
- JVM_CallStackWalk;
- JVM_ClassDepth;
- JVM_ClassLoaderDepth;
- JVM_Clone;
- JVM_ConstantPoolGetClassAt;
- JVM_ConstantPoolGetClassAtIfLoaded;
- JVM_ConstantPoolGetClassRefIndexAt;
- JVM_ConstantPoolGetDoubleAt;
- JVM_ConstantPoolGetFieldAt;
- JVM_ConstantPoolGetFieldAtIfLoaded;
- JVM_ConstantPoolGetFloatAt;
- JVM_ConstantPoolGetIntAt;
- JVM_ConstantPoolGetLongAt;
- JVM_ConstantPoolGetMethodAt;
- JVM_ConstantPoolGetMethodAtIfLoaded;
- JVM_ConstantPoolGetMemberRefInfoAt;
- JVM_ConstantPoolGetNameAndTypeRefInfoAt;
- JVM_ConstantPoolGetNameAndTypeRefIndexAt;
- JVM_ConstantPoolGetSize;
- JVM_ConstantPoolGetStringAt;
- JVM_ConstantPoolGetTagAt;
- JVM_ConstantPoolGetUTF8At;
- JVM_CountStackFrames;
- JVM_CurrentClassLoader;
- JVM_CurrentLoadedClass;
- JVM_CurrentThread;
- JVM_CurrentTimeMillis;
- JVM_DefineClass;
- JVM_DefineClassWithSource;
- JVM_DesiredAssertionStatus;
- JVM_DoPrivileged;
- JVM_DumpAllStacks;
- JVM_DumpThreads;
- JVM_FillInStackTrace;
- JVM_FindClassFromCaller;
- JVM_FindClassFromClass;
- JVM_FindClassFromBootLoader;
- JVM_FindLibraryEntry;
- JVM_FindLoadedClass;
- JVM_FindPrimitiveClass;
- JVM_FindSignal;
- JVM_FreeMemory;
- JVM_GC;
- JVM_GetAllThreads;
- JVM_GetArrayElement;
- JVM_GetArrayLength;
- JVM_GetCPClassNameUTF;
- JVM_GetCPFieldClassNameUTF;
- JVM_GetCPFieldModifiers;
- JVM_GetCPFieldNameUTF;
- JVM_GetCPFieldSignatureUTF;
- JVM_GetCPMethodClassNameUTF;
- JVM_GetCPMethodModifiers;
- JVM_GetCPMethodNameUTF;
- JVM_GetCPMethodSignatureUTF;
- JVM_GetCallerClass;
- JVM_GetClassAccessFlags;
- JVM_GetClassAnnotations;
- JVM_GetClassCPEntriesCount;
- JVM_GetClassCPTypes;
- JVM_GetClassConstantPool;
- JVM_GetClassContext;
- JVM_GetClassDeclaredConstructors;
- JVM_GetClassDeclaredFields;
- JVM_GetClassDeclaredMethods;
- JVM_GetClassFieldsCount;
- JVM_GetClassInterfaces;
- JVM_GetClassMethodsCount;
- JVM_GetClassModifiers;
- JVM_GetClassName;
- JVM_GetClassNameUTF;
- JVM_GetClassSignature;
- JVM_GetClassSigners;
- JVM_GetClassTypeAnnotations;
- JVM_GetDeclaredClasses;
- JVM_GetDeclaringClass;
- JVM_GetSimpleBinaryName;
- JVM_GetEnclosingMethodInfo;
- JVM_GetFieldIxModifiers;
- JVM_GetFieldTypeAnnotations;
- JVM_GetInheritedAccessControlContext;
- JVM_GetInterfaceVersion;
- JVM_GetManagement;
- JVM_GetMethodIxArgsSize;
- JVM_GetMethodIxByteCode;
- JVM_GetMethodIxByteCodeLength;
- JVM_GetMethodIxExceptionIndexes;
- JVM_GetMethodIxExceptionTableEntry;
- JVM_GetMethodIxExceptionTableLength;
- JVM_GetMethodIxExceptionsCount;
- JVM_GetMethodIxLocalsCount;
- JVM_GetMethodIxMaxStack;
- JVM_GetMethodIxModifiers;
- JVM_GetMethodIxNameUTF;
- JVM_GetMethodIxSignatureUTF;
- JVM_GetMethodParameters;
- JVM_GetMethodTypeAnnotations;
- JVM_GetNanoTimeAdjustment;
- JVM_GetPrimitiveArrayElement;
- JVM_GetProtectionDomain;
- JVM_GetStackAccessControlContext;
- JVM_GetStackTraceElements;
- JVM_GetSystemPackage;
- JVM_GetSystemPackages;
- JVM_GetTemporaryDirectory;
- JVM_GetVersionInfo;
- JVM_GetVmArguments;
- JVM_Halt;
- JVM_HoldsLock;
- JVM_IHashCode;
- JVM_InitAgentProperties;
- JVM_InitProperties;
- JVM_InternString;
- JVM_Interrupt;
- JVM_InvokeMethod;
- JVM_IsArrayClass;
- JVM_IsConstructorIx;
- JVM_IsInterface;
- JVM_IsInterrupted;
- JVM_IsPrimitiveClass;
- JVM_IsSameClassPackage;
- JVM_IsSupportedJNIVersion;
- JVM_IsThreadAlive;
- JVM_IsVMGeneratedMethodIx;
- JVM_LatestUserDefinedLoader;
- JVM_LoadLibrary;
- JVM_MaxObjectInspectionAge;
- JVM_MaxMemory;
- JVM_MonitorNotify;
- JVM_MonitorNotifyAll;
- JVM_MonitorWait;
- JVM_MoreStackWalk;
- JVM_NanoTime;
- JVM_NativePath;
- JVM_NewArray;
- JVM_NewInstanceFromConstructor;
- JVM_NewMultiArray;
- JVM_RaiseSignal;
- JVM_RawMonitorCreate;
- JVM_RawMonitorDestroy;
- JVM_RawMonitorEnter;
- JVM_RawMonitorExit;
- JVM_RegisterSignal;
- JVM_ReleaseUTF;
- JVM_ResumeThread;
- JVM_SetArrayElement;
- JVM_SetClassSigners;
- JVM_SetNativeThreadName;
- JVM_SetPrimitiveArrayElement;
- JVM_SetThreadPriority;
- JVM_Sleep;
- JVM_StartThread;
- JVM_StopThread;
- JVM_SuspendThread;
- JVM_SupportsCX8;
- JVM_ToStackTraceElement;
- JVM_TotalMemory;
- JVM_UnloadLibrary;
- JVM_Yield;
-
- # Module related API's
- JVM_AddModuleExports;
- JVM_AddModuleExportsToAll;
- JVM_AddModuleExportsToAllUnnamed;
- JVM_AddModulePackage;
- JVM_AddReadsModule;
- JVM_CanReadModule;
- JVM_DefineModule;
- JVM_IsExportedToModule;
- JVM_SetBootLoaderUnnamedModule;
- JVM_GetModuleByPackageName;
--- a/hotspot/make/solaris/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,286 +0,0 @@
-#
-# Copyright (c) 1998, 2015, 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.
-#
-# 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.
-#
-#
-
-# This makefile creates a build tree and lights off a build.
-# You can go back into the build tree and perform rebuilds or
-# incremental builds as desired. Be sure to reestablish
-# environment variable settings for LD_LIBRARY_PATH and JAVA_HOME.
-
-# The make process now relies on java and javac. These can be
-# specified either implicitly on the PATH, by setting the
-# (JDK-inherited) ALT_BOOTDIR environment variable to full path to a
-# JDK in which bin/java and bin/javac are present and working (e.g.,
-# /usr/local/java/jdk1.3/solaris), or via the (JDK-inherited)
-# default BOOTDIR path value. Note that one of ALT_BOOTDIR
-# or BOOTDIR has to be set. We do *not* search javac, javah, rmic etc.
-# from the PATH.
-
-ifeq ($(GAMMADIR),)
-include ../../make/defs.make
-else
-include $(GAMMADIR)/make/defs.make
-endif
-include $(GAMMADIR)/make/$(OSNAME)/makefiles/rules.make
-
-ifndef CC_INTERP
- ifndef FORCE_TIERED
- FORCE_TIERED=1
- endif
-endif
-
-ifdef LP64
- ifeq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
- _JUNK_ := $(shell echo >&2 \
- $(OSNAME) $(ARCH) "*** ERROR: this platform does not support 64-bit compilers!")
- @exit 1
- endif
-endif
-
-# The following renders pathnames in generated Makefiles valid on
-# machines other than the machine containing the build tree.
-#
-# For example, let's say my build tree lives on /files12 on
-# exact.east.sun.com. This logic will cause GAMMADIR to begin with
-# /net/exact/files12/...
-#
-# We only do this on SunOS variants, for a couple of reasons:
-# * It is extremely rare that source trees exist on other systems
-# * It has been claimed that the Linux automounter is flakey, so
-# changing GAMMADIR in a way that exercises the automounter could
-# prove to be a source of unreliability in the build process.
-# Obviously, this Makefile is only relevant on SunOS boxes to begin
-# with, but the SunOS conditionalization will make it easier to
-# combine Makefiles in the future (assuming we ever do that).
-
-ifeq ($(OSNAME),solaris)
-
- # prepend current directory to relative pathnames.
- NEW_GAMMADIR := \
- $(shell echo $(GAMMADIR) | \
- sed -e "s=^\([^/].*\)=$(shell pwd)/\1=" \
- )
- unexport NEW_GAMMADIR
-
- # If NEW_GAMMADIR doesn't already start with "/net/":
- ifeq ($(strip $(filter /net/%,$(NEW_GAMMADIR))),)
- # prepend /net/$(HOST)
- # remove /net/$(HOST) if name already began with /home/
- # remove /net/$(HOST) if name already began with /java/
- # remove /net/$(HOST) if name already began with /lab/
- NEW_GAMMADIR := \
- $(shell echo $(NEW_GAMMADIR) | \
- sed -e "s=^\(.*\)=/net/$(HOST)\1=" \
- -e "s=^/net/$(HOST)/home/=/home/=" \
- -e "s=^/net/$(HOST)/java/=/java/=" \
- -e "s=^/net/$(HOST)/lab/=/lab/=" \
- )
- # Don't use the new value for GAMMADIR unless a file with the new
- # name actually exists.
- ifneq ($(wildcard $(NEW_GAMMADIR)),)
- GAMMADIR := $(NEW_GAMMADIR)
- endif
- endif
-
-endif
-
-
-# There is a (semi-) regular correspondence between make targets and actions:
-#
-# Target Tree Type Build Dir
-#
-# debug compiler2 <os>_<arch>_compiler2/debug
-# fastdebug compiler2 <os>_<arch>_compiler2/fastdebug
-# optimized compiler2 <os>_<arch>_compiler2/optimized
-# product compiler2 <os>_<arch>_compiler2/product
-#
-# debug1 compiler1 <os>_<arch>_compiler1/debug
-# fastdebug1 compiler1 <os>_<arch>_compiler1/fastdebug
-# optimized1 compiler1 <os>_<arch>_compiler1/optimized
-# product1 compiler1 <os>_<arch>_compiler1/product
-#
-# debugcore core <os>_<arch>_core/debug
-# fastdebugcore core <os>_<arch>_core/fastdebug
-# optimizedcore core <os>_<arch>_core/optimized
-# productcore core <os>_<arch>_core/product
-#
-# What you get with each target:
-#
-# debug* - debug compile with asserts enabled
-# fastdebug* - optimized compile, but with asserts enabled
-# optimized* - optimized compile, no asserts
-# product* - the shippable thing: optimized compile, no asserts, -DPRODUCT
-
-# This target list needs to be coordinated with the usage message
-# in the build.sh script:
-TARGETS = debug fastdebug optimized product
-
-SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs
-SUBDIRS_C1 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS))
-SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS))
-SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS))
-SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS))
-
-TARGETS_C2 = $(TARGETS)
-TARGETS_C1 = $(addsuffix 1,$(TARGETS))
-TARGETS_TIERED = $(addsuffix tiered,$(TARGETS))
-TARGETS_CORE = $(addsuffix core,$(TARGETS))
-
-BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make
-BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) ARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH)
-BUILDTREE_VARS += HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) VERSION_STRING=$(VERSION_STRING)
-BUILDTREE_VARS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) OBJCOPY=$(OBJCOPY) STRIP_POLICY=$(STRIP_POLICY) ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) ZIPEXE=$(ZIPEXE)
-
-BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS)
-
-#-------------------------------------------------------------------------------
-
-# Could make everything by default, but that would take a while.
-all:
- @echo "Try '$(MAKE) <target> ...' where <target> is one or more of"
- @echo " $(TARGETS_C2)"
- @echo " $(TARGETS_C1)"
- @echo " $(TARGETS_CORE)"
-
-checks: check_os_version check_j2se_version
-
-# We do not want people accidentally building on old systems (e.g. Linux 2.2.x,
-# Solaris 2.5.1, 2.6).
-# Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok.
-
-SUPPORTED_OS_VERSION = 5.7 5.8 5.9 5.10 5.11
-OS_VERSION := $(shell uname -r)
-EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION))
-
-check_os_version:
-ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),)
- $(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1;
-endif
-
-# jvmti.make requires XSLT (J2SE 1.4.x or newer):
-XSLT_CHECK = $(RUN.JAVAP) javax.xml.transform.TransformerFactory
-# If not found then fail fast.
-check_j2se_version:
- $(QUIETLY) if ! $(XSLT_CHECK) > /dev/null 2>&1; then \
- $(RUN.JAVA) -version; \
- echo "*** An XSLT processor (J2SE 1.4.x or newer) is required" \
- "to bootstrap this build" 1>&2; \
- exit 1; \
- fi
-
-$(SUBDIRS_TIERED): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=tiered
-
-$(SUBDIRS_C2): $(BUILDTREE_MAKE)
-ifeq ($(FORCE_TIERED),1)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=tiered FORCE_TIERED=1
-else
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=compiler2
-endif
-
-$(SUBDIRS_C1): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=compiler1
-
-$(SUBDIRS_CORE): $(BUILDTREE_MAKE)
- $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
- +$(BUILDTREE) VARIANT=core
-
-# Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME
-
-$(TARGETS_C2): $(SUBDIRS_C2)
- cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_TIERED): $(SUBDIRS_TIERED)
- cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_C1): $(SUBDIRS_C1)
- cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-$(TARGETS_CORE): $(SUBDIRS_CORE)
- cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS)
-ifdef INSTALL
- cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install
-endif
-
-# Just build the tree, and nothing else:
-tree: $(SUBDIRS_C2)
-tree1: $(SUBDIRS_C1)
-treecore: $(SUBDIRS_CORE)
-
-# Doc target. This is the same for all build options.
-# Hence create a docs directory beside ...$(ARCH)_[...]
-# We specify 'BUILD_FLAVOR=product' so that the proper
-# ENABLE_FULL_DEBUG_SYMBOLS value is used.
-docs: checks
- $(QUIETLY) mkdir -p $(SUBDIR_DOCS)
- $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) BUILD_FLAVOR=product jvmtidocs
-
-# Synonyms for win32-like targets.
-compiler2: debug product
-
-compiler1: debug1 product1
-
-core: debugcore productcore
-
-warn_jvmg_deprecated:
- echo "Warning: The jvmg target has been replaced with debug"
- echo "Warning: Please update your usage"
-
-jvmg: warn_jvmg_deprecated debug
-
-jvmg1: warn_jvmg_deprecated debug1
-
-jvmgcore: warn_jvmg_deprecated debugcore
-
-clean_docs:
- rm -rf $(SUBDIR_DOCS)
-
-clean_compiler1 clean_compiler2 clean_core:
- rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@)
-
-clean: clean_compiler2 clean_compiler1 clean_core clean_docs
-
-include $(GAMMADIR)/make/cscope.make
-
-#-------------------------------------------------------------------------------
-
-.PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE)
-.PHONY: tree tree1 treecore
-.PHONY: all compiler1 compiler2 core
-.PHONY: clean clean_compiler1 clean_compiler2 clean_core docs clean_docs
-.PHONY: checks check_os_version check_j2se_version
-
-.NOTPARALLEL:
--- a/hotspot/make/solaris/adlc_updater Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-#! /bin/sh
-#
-# This file is used by adlc.make to selectively update generated
-# adlc files. Because source and target diretories are relative
-# paths, this file is copied to the target build directory before
-# use.
-#
-# adlc-updater <file> <source-dir> <target-dir>
-#
-fix_lines() {
- # repair bare #line directives in $1 to refer to $2
- # and add an override of __FILE__ with just the basename on the
- # first line of the file.
- nawk < $1 > $1+ -v F2=$2 '
- BEGIN { print "#line 1 \"" F2 "\""; }
- /^#line 999999$/ {print "#line " (NR+1) " \"" F2 "\""; next}
- {print}
- '
- mv $1+ $1
-}
-fix_lines $2/$1 $1
-[ -f $3/$1 ] && cmp -s $2/$1 $3/$1 || \
-( [ -f $3/$1 ] && echo Updating $3/$1 ; touch $2/made-change ; mv $2/$1 $3/$1 )
--- a/hotspot/make/solaris/makefiles/adjust-mflags.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-#! /bin/sh
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# This script is used only from top.make.
-# The macro $(MFLAGS-adjusted) calls this script to
-# adjust the "-j" arguments to take into account
-# the HOTSPOT_BUILD_JOBS variable. The default
-# handling of the "-j" argument by gnumake does
-# not meet our needs, so we must adjust it ourselves.
-
-# This argument adjustment applies to two recursive
-# calls to "$(MAKE) $(MFLAGS-adjusted)" in top.make.
-# One invokes adlc.make, and the other invokes vm.make.
-# The adjustment propagates the desired concurrency
-# level down to the sub-make (of the adlc or vm).
-# The default behavior of gnumake is to run all
-# sub-makes without concurrency ("-j1").
-
-# Also, we use a make variable rather than an explicit
-# "-j<N>" argument to control this setting, so that
-# the concurrency setting (which must be tuned separately
-# for each MP system) can be set via an environment variable.
-# The recommended setting is 1.5x to 2x the number of available
-# CPUs on the MP system, which is large enough to keep the CPUs
-# busy (even though some jobs may be I/O bound) but not too large,
-# we may presume, to overflow the system's swap space.
-
-set -eu
-
-default_build_jobs=4
-
-case $# in
-[12]) true;;
-*) >&2 echo "Usage: $0 ${MFLAGS} ${HOTSPOT_BUILD_JOBS}"; exit 2;;
-esac
-
-MFLAGS=$1
-HOTSPOT_BUILD_JOBS=${2-}
-
-# Normalize any -jN argument to the form " -j${HBJ}"
-MFLAGS=`
- echo "$MFLAGS" \
- | sed '
- s/^-/ -/
- s/ -\([^ I][^ I]*\)j/ -\1 -j/
- s/ -j[0-9][0-9]*/ -j/
- s/ -j\([^ ]\)/ -j -\1/
- s/ -j/ -j'${HOTSPOT_BUILD_JOBS:-${default_build_jobs}}'/
- ' `
-
-case ${HOTSPOT_BUILD_JOBS} in \
-
-'') case ${MFLAGS} in
- *\ -j*)
- >&2 echo "# Note: -jN is ineffective for setting parallelism in this makefile."
- >&2 echo "# please set HOTSPOT_BUILD_JOBS=${default_build_jobs} in the command line or environment."
- esac;;
-
-?*) case ${MFLAGS} in
- *\ -j*) true;;
- *) MFLAGS="-j${HOTSPOT_BUILD_JOBS} ${MFLAGS}";;
- esac;;
-esac
-
-echo "${MFLAGS}"
--- a/hotspot/make/solaris/makefiles/adlc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,257 +0,0 @@
-#
-# Copyright (c) 1997, 2013, 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.
-#
-# 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.
-#
-#
-
-# This makefile (adlc.make) is included from the adlc.make in the
-# build directories.
-# It knows how to compile, link, and run the adlc.
-
-include $(GAMMADIR)/make/$(Platform_os_family)/makefiles/rules.make
-include $(GAMMADIR)/make/altsrc.make
-
-# #########################################################################
-
-# OUTDIR must be the same as AD_Dir = $(GENERATED)/adfiles in top.make:
-GENERATED = ../generated
-OUTDIR = $(GENERATED)/adfiles
-
-ARCH = $(Platform_arch)
-OS = $(Platform_os_family)
-
-SOURCE.AD = $(OUTDIR)/$(OS)_$(Platform_arch_model).ad
-
-ifeq ("${Platform_arch_model}", "${Platform_arch}")
- SOURCES.AD = \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad)
-else
- SOURCES.AD = \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch_model).ad) \
- $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(ARCH)/vm/$(Platform_arch).ad)
-endif
-
-EXEC = $(OUTDIR)/adlc
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(GAMMADIR)/src/share/vm/adlc
-VPATH += $(Src_Dirs_V:%=%:)
-
-# set INCLUDES for C preprocessor
-Src_Dirs_I += $(GAMMADIR)/src/share/vm/adlc $(GENERATED)
-INCLUDES += $(Src_Dirs_I:%=-I%)
-
-# set flags for adlc compilation
-CXXFLAGS = $(SYSDEFS) $(INCLUDES)
-
-# Force assertions on.
-CXXFLAGS += -DASSERT
-
-ifndef USE_GCC
- # We need libCstd.so for adlc
- CFLAGS += -library=Cstd -g
- LFLAGS += -library=Cstd -g
-endif
-
-# CFLAGS_WARN holds compiler options to suppress/enable warnings.
-CFLAGS_WARN = +w
-# Compiler warnings are treated as errors
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1)
- WARNINGS_ARE_ERRORS ?= -xwe
-endif
-
-CFLAGS_WARN += $(WARNINGS_ARE_ERRORS)
-
-# When using compiler version 5.13 (Solaris Studio 12.4), calls to explicitly
-# instantiated template functions trigger this warning when +w is active.
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 513), 1)
- CFLAGS_WARN += -erroff=notemsource
-endif
-CFLAGS += $(CFLAGS_WARN)
-
-ifeq ("${Platform_compiler}", "sparcWorks")
-# Enable the following CFLAGS addition if you need to compare the
-# built ELF objects.
-#
-# The -g option makes static data global and the "-Qoption ccfe
-# -xglobalstatic" option tells the compiler to not globalize static
-# data using a unique globalization prefix. Instead force the use
-# of a static globalization prefix based on the source filepath so
-# the objects from two identical compilations are the same.
-#CFLAGS += -Qoption ccfe -xglobalstatic
-endif # Platform_compiler == sparcWorks
-
-OBJECTNAMES = \
- adlparse.o \
- archDesc.o \
- arena.o \
- dfa.o \
- dict2.o \
- filebuff.o \
- forms.o \
- formsopt.o \
- formssel.o \
- main.o \
- adlc-opcodes.o \
- output_c.o \
- output_h.o \
-
-OBJECTS = $(OBJECTNAMES:%=$(OUTDIR)/%)
-
-GENERATEDNAMES = \
- ad_$(Platform_arch_model).cpp \
- ad_$(Platform_arch_model).hpp \
- ad_$(Platform_arch_model)_clone.cpp \
- ad_$(Platform_arch_model)_expand.cpp \
- ad_$(Platform_arch_model)_format.cpp \
- ad_$(Platform_arch_model)_gen.cpp \
- ad_$(Platform_arch_model)_misc.cpp \
- ad_$(Platform_arch_model)_peephole.cpp \
- ad_$(Platform_arch_model)_pipeline.cpp \
- adGlobals_$(Platform_arch_model).hpp \
- dfa_$(Platform_arch_model).cpp \
-
-GENERATEDFILES = $(GENERATEDNAMES:%=$(OUTDIR)/%)
-
-# #########################################################################
-
-all: $(EXEC)
-
-$(EXEC) : $(OBJECTS)
- @echo $(LOG_INFO) Making adlc
- $(QUIETLY) $(LINK_NOPROF.CXX) -o $(EXEC) $(OBJECTS)
-
-# Random dependencies:
-$(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
-
-# The source files refer to ostream.h, which sparcworks calls iostream.h
-$(OBJECTS): ostream.h
-
-ostream.h :
- @echo >$@ '#include <iostream.h>'
-
-dump:
- : OUTDIR=$(OUTDIR)
- : OBJECTS=$(OBJECTS)
- : products = $(GENERATEDFILES)
-
-all: $(GENERATEDFILES)
-
-$(GENERATEDFILES): refresh_adfiles
-
-# Get a unique temporary directory name, so multiple makes can run in parallel.
-# Note that product files are updated via "mv", which is atomic.
-TEMPDIR := $(OUTDIR)/mktmp$(shell echo $$$$)
-
-# Debuggable by default
-CFLAGS += -g
-
-# Pass -D flags into ADLC.
-ADLCFLAGS += $(SYSDEFS)
-
-# Note "+="; it is a hook so flags.make can add more flags, like -g or -DFOO.
-ADLCFLAGS += -q -T
-
-# Normally, debugging is done directly on the ad_<arch>*.cpp files.
-# But -g will put #line directives in those files pointing back to <arch>.ad.
-ADLCFLAGS += -g
-
-ifdef LP64
-ADLCFLAGS += -D_LP64
-else
-ADLCFLAGS += -U_LP64
-endif
-
-#
-# adlc_updater is a simple sh script, under sccs control. It is
-# used to selectively update generated adlc files. This should
-# provide a nice compilation speed improvement.
-#
-ADLC_UPDATER_DIRECTORY = $(GAMMADIR)/make/$(OS)
-ADLC_UPDATER = adlc_updater
-$(ADLC_UPDATER): $(ADLC_UPDATER_DIRECTORY)/$(ADLC_UPDATER)
- $(QUIETLY) cp $< $@; chmod +x $@
-
-# This action refreshes all generated adlc files simultaneously.
-# The way it works is this:
-# 1) create a scratch directory to work in.
-# 2) if the current working directory does not have $(ADLC_UPDATER), copy it.
-# 3) run the compiled adlc executable. This will create new adlc files in the scratch directory.
-# 4) call $(ADLC_UPDATER) on each generated adlc file. It will selectively update changed or missing files.
-# 5) If we actually updated any files, echo a notice.
-#
-refresh_adfiles: $(EXEC) $(SOURCE.AD) $(ADLC_UPDATER)
- @rm -rf $(TEMPDIR); mkdir $(TEMPDIR)
- $(QUIETLY) $(EXEC) $(ADLCFLAGS) $(SOURCE.AD) \
- -c$(TEMPDIR)/ad_$(Platform_arch_model).cpp -h$(TEMPDIR)/ad_$(Platform_arch_model).hpp -a$(TEMPDIR)/dfa_$(Platform_arch_model).cpp -v$(TEMPDIR)/adGlobals_$(Platform_arch_model).hpp \
- || { rm -rf $(TEMPDIR); exit 1; }
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model).cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model).hpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_clone.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_expand.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_format.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_gen.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_misc.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_peephole.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model)_pipeline.cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) adGlobals_$(Platform_arch_model).hpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) ./$(ADLC_UPDATER) dfa_$(Platform_arch_model).cpp $(TEMPDIR) $(OUTDIR)
- $(QUIETLY) [ -f $(TEMPDIR)/made-change ] \
- || echo $(LOG_INFO) "Rescanned $(SOURCE.AD) but encountered no changes."
- $(QUIETLY) rm -rf $(TEMPDIR)
-
-
-# #########################################################################
-
-$(SOURCE.AD): $(SOURCES.AD)
- $(QUIETLY) $(PROCESS_AD_FILES) $(SOURCES.AD) > $(SOURCE.AD)
-
-#PROCESS_AD_FILES = cat
-# Pass through #line directives, in case user enables -g option above:
-PROCESS_AD_FILES = awk '{ \
- if (CUR_FN != FILENAME) { CUR_FN=FILENAME; NR_BASE=NR-1; need_lineno=1 } \
- if (need_lineno && $$0 !~ /\/\//) \
- { print "\n\n\#line " (NR-NR_BASE) " \"" FILENAME "\""; need_lineno=0 }; \
- print }'
-
-$(OUTDIR)/%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
-
-# Some object files are given a prefix, to disambiguate
-# them from objects of the same name built for the VM.
-$(OUTDIR)/adlc-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(COMPILE.CXX) -o $@ $< $(COMPILE_DONE)
-
-# #########################################################################
-
-clean :
- rm $(OBJECTS)
-
-cleanall :
- rm $(OBJECTS) $(EXEC)
-
-# #########################################################################
-
-.PHONY: all dump refresh_adfiles clean cleanall
--- a/hotspot/make/solaris/makefiles/amd64.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-#
-# Copyright (c) 2004, 2016, 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.
-#
-# 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.
-#
-#
-
-# Must also specify if CPU is little endian
-CFLAGS += -DVM_LITTLE_ENDIAN
-
-#
-# Special case flags for compilers and compiler versions on amd64.
-#
-ifeq ("${Platform_compiler}", "sparcWorks")
-
-# Temporary until SS10 C++ compiler is fixed
-OPT_CFLAGS/generateOptoStub.o = -xO2
-# Temporary util SS12u1 C++ compiler is fixed
-OPT_CFLAGS/c1_LinearScan.o = -xO2
-
-# The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
-# of OPT_CFLAGS. Restore it here.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/generateOptoStub.o += -g0 -xs
- OPT_CFLAGS/c1_LinearScan.o += -g0 -xs
-endif
-
-else
-
-ifeq ("${Platform_compiler}", "gcc")
-# gcc
-# The serviceability agent relies on frame pointer (%rbp) to walk thread stack
-CFLAGS += -fno-omit-frame-pointer
-
-else
-# error
-_JUNK2_ := $(shell echo >&2 \
- "*** ERROR: this compiler is not yet supported by this code base!")
- @exit 1
-endif
-endif
--- a/hotspot/make/solaris/makefiles/build_vm_def.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,10 +0,0 @@
-#!/bin/sh
-
-/usr/ccs/bin/nm -p $* \
- | awk '{
- if ($2 == "U") next
- if ($3 ~ /^__1c.*__vtbl_$/ || $3 ~ /^gHotSpotVM/) print "\t" $3 ";"
- if ($3 ~ /^UseSharedSpaces$/) print "\t" $3 ";"
- if ($3 ~ /^__1cJArgumentsRSharedArchivePath_$/) print "\t" $3 ";"
- }' \
- | sort -u
--- a/hotspot/make/solaris/makefiles/buildtree.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,354 +0,0 @@
-#
-# Copyright (c) 2000, 2015, 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.
-#
-# 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.
-#
-#
-
-# Usage:
-#
-# $(MAKE) -f buildtree.make ARCH=arch BUILDARCH=buildarch LIBARCH=libarch
-# GAMMADIR=dir OS_FAMILY=os VARIANT=variant
-#
-# The macros ARCH, GAMMADIR, OS_FAMILY and VARIANT must be defined in the
-# environment or on the command-line:
-#
-# ARCH - sparc, i486, ... HotSpot cpu and os_cpu source directory
-# BUILDARCH - build directory
-# LIBARCH - the corresponding directory in JDK/JRE
-# GAMMADIR - top of workspace
-# OS_FAMILY - operating system
-# VARIANT - core, compiler1, compiler2, or tiered
-# VERSION_STRING - the JDK version string as specified by JEP-223
-# HOTSPOT_VERSION_STRING - the same as VERSION_STRING, unless overridden by a standalone build
-#
-# Builds the directory trees with makefiles plus some convenience files in
-# each directory:
-#
-# Makefile - for "make foo"
-# flags.make - with macro settings
-# vm.make - to support making "$(MAKE) -v vm.make" in makefiles
-# adlc.make -
-# trace.make - generate tracing event and type definitions
-# jvmti.make - generate JVMTI bindings from the spec (JSR-163)
-#
-# The makefiles are split this way so that "make foo" will run faster by not
-# having to read the dependency files for the vm.
-
--include $(SPEC)
-include $(GAMMADIR)/make/scm.make
-include $(GAMMADIR)/make/defs.make
-include $(GAMMADIR)/make/altsrc.make
-
-
-# 'gmake MAKE_VERBOSE=y' or 'gmake QUIETLY=' gives all the gory details.
-QUIETLY$(MAKE_VERBOSE) = @
-
-### maye ARCH_XXX instead?
-ifdef USE_GCC
-PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH).gcc
-GCC_LIB = /usr/local/lib
-else
-PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH)
-GCC_LIB =
-endif
-
-ifdef FORCE_TIERED
-ifeq ($(VARIANT),tiered)
-PLATFORM_DIR = $(OS_FAMILY)_$(BUILDARCH)_compiler2
-else
-PLATFORM_DIR = $(OS_FAMILY)_$(BUILDARCH)_$(VARIANT)
-endif
-else
-PLATFORM_DIR = $(OS_FAMILY)_$(BUILDARCH)_$(VARIANT)
-endif
-
-#
-# We do two levels of exclusion in the shared directory.
-# TOPLEVEL excludes are pruned, they are not recursively searched,
-# but lower level directories can be named without fear of collision.
-# ALWAYS excludes are excluded at any level in the directory tree.
-#
-
-ALWAYS_EXCLUDE_DIRS = $(SCM_DIRS)
-
-ifeq ($(VARIANT),tiered)
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name agent
-else
-ifeq ($(VARIANT),compiler2)
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name c1 -o -name agent
-else
-# compiler1 and core use the same exclude list
-TOPLEVEL_EXCLUDE_DIRS = $(ALWAYS_EXCLUDE_DIRS) -o -name adlc -o -name opto -o -name libadt -o -name agent
-endif
-endif
-
-# Get things from the platform file.
-COMPILER = $(shell sed -n 's/^compiler[ ]*=[ ]*//p' $(PLATFORM_FILE))
-
-SIMPLE_DIRS = \
- $(PLATFORM_DIR)/generated/dependencies \
- $(PLATFORM_DIR)/generated/adfiles \
- $(PLATFORM_DIR)/generated/jvmtifiles \
- $(PLATFORM_DIR)/generated/tracefiles
-
-TARGETS = debug fastdebug optimized product
-SUBMAKE_DIRS = $(addprefix $(PLATFORM_DIR)/,$(TARGETS))
-
-# For dependencies and recursive makes.
-BUILDTREE_MAKE = $(GAMMADIR)/make/$(OS_FAMILY)/makefiles/buildtree.make
-
-BUILDTREE_TARGETS = Makefile flags.make flags_vm.make vm.make adlc.make jvmti.make trace.make dtrace.make
-
-BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OS_FAMILY) \
- ARCH=$(ARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) VARIANT=$(VARIANT)
-
-# Define variables to be set in flags.make.
-# Default values are set in make/defs.make.
-
-# Set BUILD_USER from system-dependent hints: $LOGNAME, $(whoami)
-ifndef HOTSPOT_BUILD_USER
- HOTSPOT_BUILD_USER := $(shell echo $$LOGNAME)
-endif
-ifndef HOTSPOT_BUILD_USER
- HOTSPOT_BUILD_USER := $(shell whoami)
-endif
-# Define HOTSPOT_VM_DISTRO based on settings in make/openjdk_distro
-# or make/hotspot_distro.
-ifndef HOTSPOT_VM_DISTRO
- ifeq ($(call if-has-altsrc,$(HS_COMMON_SRC)/,true,false),true)
- include $(GAMMADIR)/make/hotspot_distro
- else
- include $(GAMMADIR)/make/openjdk_distro
- endif
-endif
-
-# if hotspot-only build and/or OPENJDK isn't passed down, need to set OPENJDK
-ifndef OPENJDK
- ifneq ($(call if-has-altsrc,$(HS_COMMON_SRC)/,true,false),true)
- OPENJDK=true
- endif
-endif
-
-BUILDTREE_VARS += HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) VERSION_STRING=$(VERSION_STRING)
-
-BUILDTREE = \
- $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_TARGETS) $(BUILDTREE_VARS)
-
-BUILDTREE_COMMENT = echo "\# Generated by $(BUILDTREE_MAKE)"
-
-all: $(SUBMAKE_DIRS)
-
-# Run make in each subdirectory recursively.
-$(SUBMAKE_DIRS): $(SIMPLE_DIRS) FORCE
- $(QUIETLY) [ -d $@ ] || { mkdir -p $@; }
- +$(QUIETLY) cd $@ && $(BUILDTREE) TARGET=$(@F)
- $(QUIETLY) touch $@
-
-$(SIMPLE_DIRS):
- $(QUIETLY) mkdir -p $@
-
-# Convenience macro which takes a source relative path, applies $(1) to the
-# absolute path, and then replaces $(GAMMADIR) in the result with a
-# literal "$(GAMMADIR)/" suitable for inclusion in a Makefile.
-gamma-path=$(subst $(GAMMADIR),\$$(GAMMADIR),$(call $(1),$(HS_COMMON_SRC)/$(2)))
-
-# This bit is needed to enable local rebuilds.
-# Unless the makefile itself sets LP64, any environmental
-# setting of LP64 will interfere with the build.
-LP64_SETTING/32 = LP64 = \#empty
-LP64_SETTING/64 = LP64 = 1
-
-DATA_MODE/i486 = 32
-DATA_MODE/sparc = 32
-DATA_MODE/sparcv9 = 64
-DATA_MODE/amd64 = 64
-
-DATA_MODE = $(DATA_MODE/$(BUILDARCH))
-
-flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo "Platform_file = $(PLATFORM_FILE)" | sed 's|$(GAMMADIR)|$$(GAMMADIR)|'; \
- sed -n '/=/s/^ */Platform_/p' < $(PLATFORM_FILE); \
- echo; \
- echo "GAMMADIR = $(GAMMADIR)"; \
- echo "SYSDEFS = \$$(Platform_sysdefs)"; \
- echo "SRCARCH = $(ARCH)"; \
- echo "BUILDARCH = $(BUILDARCH)"; \
- echo "LIBARCH = $(LIBARCH)"; \
- echo "TARGET = $(TARGET)"; \
- echo "HOTSPOT_VERSION_STRING = $(HOTSPOT_VERSION_STRING)"; \
- echo "VERSION_STRING = $(VERSION_STRING)"; \
- echo "HOTSPOT_BUILD_USER = $(HOTSPOT_BUILD_USER)"; \
- echo "HOTSPOT_VM_DISTRO = $(HOTSPOT_VM_DISTRO)"; \
- echo "OPENJDK = $(OPENJDK)"; \
- echo "$(LP64_SETTING/$(DATA_MODE))"; \
- echo; \
- echo "# Used for platform dispatching"; \
- echo "TARGET_DEFINES = -DTARGET_OS_FAMILY_\$$(Platform_os_family)"; \
- echo "TARGET_DEFINES += -DTARGET_ARCH_\$$(Platform_arch)"; \
- echo "TARGET_DEFINES += -DTARGET_ARCH_MODEL_\$$(Platform_arch_model)"; \
- echo "TARGET_DEFINES += -DTARGET_OS_ARCH_\$$(Platform_os_arch)"; \
- echo "TARGET_DEFINES += -DTARGET_OS_ARCH_MODEL_\$$(Platform_os_arch_model)"; \
- echo "TARGET_DEFINES += -DTARGET_COMPILER_\$$(Platform_compiler)"; \
- echo "CFLAGS += \$$(TARGET_DEFINES)"; \
- echo; \
- echo "Src_Dirs_V = \\"; \
- sed 's/$$/ \\/;s|$(GAMMADIR)|$$(GAMMADIR)|' ../shared_dirs.lst; \
- echo "$(call gamma-path,altsrc,cpu/$(ARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,cpu/$(ARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/posix/vm)"; \
- echo; \
- echo "Src_Dirs_I = \\"; \
- echo "$(call gamma-path,altsrc,share/vm/prims) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \
- echo "$(call gamma-path,altsrc,share/vm) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm) \\"; \
- echo "$(call gamma-path,altsrc,share/vm/precompiled) \\"; \
- echo "$(call gamma-path,commonsrc,share/vm/precompiled) \\"; \
- echo "$(call gamma-path,altsrc,cpu/$(ARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,cpu/$(ARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \
- echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \
- echo "$(call gamma-path,commonsrc,os/posix/vm)"; \
- [ -n "$(CFLAGS_BROWSE)" ] && \
- echo && echo "CFLAGS_BROWSE = $(CFLAGS_BROWSE)"; \
- [ -n "$(ENABLE_FULL_DEBUG_SYMBOLS)" ] && \
- echo && echo "ENABLE_FULL_DEBUG_SYMBOLS = $(ENABLE_FULL_DEBUG_SYMBOLS)"; \
- [ -n "$(OBJCOPY)" ] && \
- echo && echo "OBJCOPY = $(OBJCOPY)"; \
- [ -n "$(STRIP_POLICY)" ] && \
- echo && echo "STRIP_POLICY = $(STRIP_POLICY)"; \
- [ -n "$(ZIP_DEBUGINFO_FILES)" ] && \
- echo && echo "ZIP_DEBUGINFO_FILES = $(ZIP_DEBUGINFO_FILES)"; \
- [ -n "$(ZIPEXE)" ] && \
- echo && echo "ZIPEXE = $(ZIPEXE)"; \
- [ -n "$(HS_ALT_MAKE)" ] && \
- echo && echo "HS_ALT_MAKE = $(HS_ALT_MAKE)"; \
- [ -n "$(HOTSPOT_EXTRA_SYSDEFS)" ] && \
- echo && \
- echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
- echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
- echo; \
- [ -n "$(SPEC)" ] && \
- echo "include $(SPEC)"; \
- echo "CP ?= cp"; \
- echo "MV ?= mv"; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
- echo "include \$$(GAMMADIR)/make/excludeSrc.make"; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
- ) > $@
-
-flags_vm.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(TARGET).make"; \
- ) > $@
-
-../shared_dirs.lst: $(BUILDTREE_MAKE) $(GAMMADIR)/src/share/vm
- @echo $(LOG_INFO) Creating directory list $@
- $(QUIETLY) if [ -d $(HS_ALT_SRC)/share/vm ]; then \
- find $(HS_ALT_SRC)/share/vm/* -prune \
- -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
- \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; > $@; \
- fi;
- $(QUIETLY) find $(HS_COMMON_SRC)/share/vm/* -prune \
- -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
- \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; >> $@
-
-Makefile: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/top.make"; \
- ) > $@
-
-vm.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo include flags_vm.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-adlc.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-jvmti.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-trace.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-dtrace.make: $(BUILDTREE_MAKE)
- @echo $(LOG_INFO) Creating $@ ...
- $(QUIETLY) ( \
- $(BUILDTREE_COMMENT); \
- echo; \
- echo include flags.make; \
- echo; \
- echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(@F)"; \
- ) > $@
-
-FORCE:
-
-.PHONY: all FORCE
-
-.NOTPARALLEL:
--- a/hotspot/make/solaris/makefiles/compiler1.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making client version of VM
-
-TYPE=COMPILER1
-
-VM_SUBDIR = client
-
-# We don't support the JVMCI in a client VM.
-INCLUDE_JVMCI := false
-
-CFLAGS += -DCOMPILER1
--- a/hotspot/make/solaris/makefiles/compiler2.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making server version of VM
-
-TYPE=COMPILER2
-
-VM_SUBDIR = server
-
-CFLAGS += -DCOMPILER2
--- a/hotspot/make/solaris/makefiles/core.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# Sets make macros for making core version of VM
-
-# Select which files to use (in top.make)
-TYPE=CORE
-
-# There is no "core" directory in JDK. Install core build in server directory.
-VM_SUBDIR = server
-
-# Note: macros.hpp defines CORE
--- a/hotspot/make/solaris/makefiles/debug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making debug version of VM
-
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-DEBUG_CFLAGS/DEFAULT= $(DEBUG_CFLAGS)
-DEBUG_CFLAGS/BYFILE = $(DEBUG_CFLAGS/$@)$(DEBUG_CFLAGS/DEFAULT$(DEBUG_CFLAGS/$@))
-
-ifeq ("${Platform_compiler}", "sparcWorks")
-
-ifeq ($(COMPILER_REV_NUMERIC),508)
- # SS11 SEGV when compiling with -g and -xarch=v8, using different backend
- DEBUG_CFLAGS/compileBroker.o = $(DEBUG_CFLAGS) -xO0
- DEBUG_CFLAGS/jvmtiTagMap.o = $(DEBUG_CFLAGS) -xO0
-endif
-endif
-
-# _NMT_NOINLINE_ informs NMT that no inlining by Compiler
-CFLAGS += $(DEBUG_CFLAGS/BYFILE) -D_NMT_NOINLINE_
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfiles
-MAPFILE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers \
- $(GAMMADIR)/make/solaris/makefiles/mapfile-vers-debug
-
-# This mapfile is only needed when compiling with dtrace support,
-# and mustn't be otherwise.
-MAPFILE_DTRACE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers-$(TYPE)
-
-VERSION = debug
-SYSDEFS += -DASSERT
-PICFLAGS = DEFAULT
--- a/hotspot/make/solaris/makefiles/defs.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,279 +0,0 @@
-#
-# Copyright (c) 2006, 2015, 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.
-#
-# 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.
-#
-#
-
-# The common definitions for hotspot solaris builds.
-# Include the top level defs.make under make directory instead of this one.
-# This file is included into make/defs.make.
-
-define print_info
- ifneq ($$(LOG_LEVEL), warn)
- $$(shell echo >&2 "INFO: $1")
- endif
-endef
-
-# Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name
-SLASH_JAVA ?= /java
-ARCH:=$(shell uname -p)
-PATH_SEP = :
-ifeq ($(LP64), 1)
- ARCH_DATA_MODEL=64
-else
- ARCH_DATA_MODEL=32
-endif
-
-ifeq ($(ARCH),sparc)
- ifeq ($(ARCH_DATA_MODEL), 64)
- MAKE_ARGS += LP64=1
- PLATFORM=solaris-sparcv9
- VM_PLATFORM=solaris_sparcv9
- else
- PLATFORM=solaris-sparc
- VM_PLATFORM=solaris_sparc
- endif
- HS_ARCH=sparc
-else
- ifeq ($(ARCH_DATA_MODEL), 64)
- MAKE_ARGS += LP64=1
- PLATFORM=solaris-amd64
- VM_PLATFORM=solaris_amd64
- HS_ARCH=x86
- else
- PLATFORM=solaris-i586
- VM_PLATFORM=solaris_i486
- HS_ARCH=x86
- endif
-endif
-
-# On 32 bit solaris we build server and client, on 64 bit just server.
-ifeq ($(JVM_VARIANTS),)
- ifeq ($(ARCH_DATA_MODEL), 32)
- JVM_VARIANTS:=client,server
- JVM_VARIANT_CLIENT:=true
- JVM_VARIANT_SERVER:=true
- else
- JVM_VARIANTS:=server
- JVM_VARIANT_SERVER:=true
- endif
-endif
-
-# The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product
-# builds is enabled with debug info files ZIP'ed to save space. For
-# BUILD_FLAVOR != product builds, FDS is always enabled, after all a
-# debug build without debug info isn't very useful.
-# The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled.
-#
-# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
-# disabled for a BUILD_FLAVOR == product build.
-#
-# Note: Use of a different variable name for the FDS override option
-# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
-# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
-# in options via environment variables, use of distinct variables
-# prevents strange behaviours. For example, in a BUILD_FLAVOR !=
-# product build, the FULL_DEBUG_SYMBOLS environment variable will be
-# 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If
-# the same variable name is used, then different values can be picked
-# up by different parts of the build. Just to be clear, we only need
-# two variable names because the incoming option value can be
-# overridden in some situations, e.g., a BUILD_FLAVOR != product
-# build.
-
-# Due to the multiple sub-make processes that occur this logic gets
-# executed multiple times. We reduce the noise by at least checking that
-# BUILD_FLAVOR has been set.
-ifneq ($(BUILD_FLAVOR),)
- ifeq ($(BUILD_FLAVOR), product)
- FULL_DEBUG_SYMBOLS ?= 1
- ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
- else
- # debug variants always get Full Debug Symbols (if available)
- ENABLE_FULL_DEBUG_SYMBOLS = 1
- endif
- $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
- # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- # Default OBJCOPY comes from the SUNWbinutils package:
- DEF_OBJCOPY=/usr/sfw/bin/gobjcopy
- OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY))
- ifneq ($(ALT_OBJCOPY),)
- $(eval $(call print_info, "ALT_OBJCOPY=$(ALT_OBJCOPY)"))
- OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY))
- endif
-
- ifneq ($(OBJCOPY),)
- # OBJCOPY version check:
- # - version number is last blank separate word on first line
- # - version number formats that have been seen:
- # - <major>.<minor>
- # - <major>.<minor>.<micro>
- #
- # Full Debug Symbols on Solaris needs version 2.21.1 or newer.
- #
- OBJCOPY_VERS_CHK := $(shell \
- $(OBJCOPY) --version \
- | sed -n \
- -e 's/.* //' \
- -e '/^[01]\./b bad' \
- -e '/^2\./{' \
- -e ' s/^2\.//' \
- -e ' /^[0-9]$$/b bad' \
- -e ' /^[0-9]\./b bad' \
- -e ' /^1[0-9]$$/b bad' \
- -e ' /^1[0-9]\./b bad' \
- -e ' /^20\./b bad' \
- -e ' /^21\.0$$/b bad' \
- -e ' /^21\.0\./b bad' \
- -e '}' \
- -e ':good' \
- -e 's/.*/VALID_VERSION/p' \
- -e 'q' \
- -e ':bad' \
- -e 's/.*/BAD_VERSION/p' \
- -e 'q' \
- )
- ifeq ($(OBJCOPY_VERS_CHK),BAD_VERSION)
- _JUNK_ := $(shell \
- echo >&2 "WARNING: $(OBJCOPY) --version info:"; \
- $(OBJCOPY) --version | sed -n -e 's/^/WARNING: /p' -e 'q' >&2; \
- echo >&2 "WARNING: an objcopy version of 2.21.1 or newer" \
- "is needed to create valid .debuginfo files."; \
- echo >&2 "WARNING: ignoring above objcopy command."; \
- echo >&2 "WARNING: patch 149063-01 or newer contains the" \
- "correct Solaris 10 SPARC version."; \
- echo >&2 "WARNING: patch 149064-01 or newer contains the" \
- "correct Solaris 10 X86 version."; \
- echo >&2 "WARNING: Solaris 11 Update 1 contains the" \
- "correct version."; \
- )
- OBJCOPY=
- endif
- endif
-
- ifeq ($(OBJCOPY),)
- $(eval $(call print_info, "no objcopy cmd found so cannot create .debuginfo files."))
- ENABLE_FULL_DEBUG_SYMBOLS=0
- $(eval $(call print_info, "ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)"))
- else
- $(eval $(call print_info, "$(OBJCOPY) cmd found so will create .debuginfo files."))
-
- # Library stripping policies for .debuginfo configs:
- # all_strip - strips everything from the library
- # min_strip - strips most stuff from the library; leaves minimum symbols
- # no_strip - does not strip the library at all
- #
- # Oracle security policy requires "all_strip". A waiver was granted on
- # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE.
- #
- # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled.
- #
- STRIP_POLICY ?= min_strip
-
- $(eval $(call print_info, "STRIP_POLICY=$(STRIP_POLICY)"))
-
- ZIP_DEBUGINFO_FILES ?= 1
-
- $(eval $(call print_info, "ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)"))
- endif
- endif # ENABLE_FULL_DEBUG_SYMBOLS=1
-endif # BUILD_FLAVOR
-
-JDK_INCLUDE_SUBDIR=solaris
-
-# Library suffix
-LIBRARY_SUFFIX=so
-
-EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
-
-# client and server subdirectories have symbolic links to ../libjsig.$(LIBRARY_SUFFIX)
-EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.diz
- else
- EXPORT_LIST += $(EXPORT_LIB_ARCH_DIR)/libjsig.debuginfo
- endif
-endif
-
-EXPORT_SERVER_DIR = $(EXPORT_LIB_ARCH_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_LIB_ARCH_DIR)/client
-
-ifeq ($(JVM_VARIANT_SERVER),true)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_db.$(LIBRARY_SUFFIX)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_dtrace.$(LIBRARY_SUFFIX)
- ifeq ($(ARCH_DATA_MODEL),32)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_db.$(LIBRARY_SUFFIX)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_dtrace.$(LIBRARY_SUFFIX)
- endif
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_db.diz
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_dtrace.diz
- ifeq ($(ARCH_DATA_MODEL),32)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_db.diz
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_dtrace.diz
- endif
- else
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_db.debuginfo
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm_dtrace.debuginfo
- ifeq ($(ARCH_DATA_MODEL),32)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_db.debuginfo
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/64/libjvm_dtrace.debuginfo
- endif
- endif
- endif
-endif
-ifeq ($(JVM_VARIANT_CLIENT),true)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_db.$(LIBRARY_SUFFIX)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_dtrace.$(LIBRARY_SUFFIX)
- ifeq ($(ARCH_DATA_MODEL),32)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_db.$(LIBRARY_SUFFIX)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_dtrace.$(LIBRARY_SUFFIX)
- endif
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_db.diz
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_dtrace.diz
- ifeq ($(ARCH_DATA_MODEL),32)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_db.diz
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_dtrace.diz
- endif
- else
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_db.debuginfo
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm_dtrace.debuginfo
- ifeq ($(ARCH_DATA_MODEL),32)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_db.debuginfo
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/64/libjvm_dtrace.debuginfo
- endif
- endif
- endif
-endif
--- a/hotspot/make/solaris/makefiles/dtrace.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,387 +0,0 @@
-#
-# Copyright (c) 2005, 2014, 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.
-#
-# 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.
-#
-#
-
-# Rules to build jvm_db/dtrace, used by vm.make
-
-# We build libjvm_dtrace/libjvm_db/dtrace for COMPILER1 and COMPILER2
-# but not for CORE configuration.
-
-ifneq ("${TYPE}", "CORE")
-
-ifdef USE_GCC
-
-dtraceCheck:
- $(QUIETLY) echo $(LOG_INFO) "**NOTICE** Dtrace support disabled for gcc builds"
-
-else
-
-DtraceOutDir = $(GENERATED)/dtracefiles
-
-JVM_DB = libjvm_db
-LIBJVM_DB = libjvm_db.so
-
-LIBJVM_DB_DEBUGINFO = libjvm_db.debuginfo
-LIBJVM_DB_DIZ = libjvm_db.diz
-
-JVM_DTRACE = jvm_dtrace
-LIBJVM_DTRACE = libjvm_dtrace.so
-
-LIBJVM_DTRACE_DEBUGINFO = libjvm_dtrace.debuginfo
-LIBJVM_DTRACE_DIZ = libjvm_dtrace.diz
-
-JVMOFFS = JvmOffsets
-JVMOFFS.o = $(JVMOFFS).o
-GENOFFS = generate$(JVMOFFS)
-
-DTRACE_SRCDIR = $(GAMMADIR)/src/os/$(Platform_os_family)/dtrace
-DTRACE_COMMON_SRCDIR = $(GAMMADIR)/src/os/posix/dtrace
-DTRACE = dtrace
-DTRACE.o = $(DTRACE).o
-DTRACE_JHELPER = dtrace_jhelper
-DTRACE_JHELPER.o = $(DTRACE_JHELPER).o
-
-# to remove '-g' option which causes link problems
-# also '-z nodefs' is used as workaround
-GENOFFS_CFLAGS = $(shell echo $(CFLAGS) | sed -e 's/ -g / /g' -e 's/ -g0 / /g';)
-
-ifdef LP64
-DTRACE_OPTS = -64 -D_LP64
-endif
-
-# making libjvm_db
-
-# Use mapfile with libjvm_db.so
-LIBJVM_DB_MAPFILE = $(MAKEFILES_DIR)/mapfile-vers-jvm_db
-LFLAGS_JVM_DB += $(MAPFLAG:FILENAME=$(LIBJVM_DB_MAPFILE))
-
-# Use mapfile with libjvm_dtrace.so
-LIBJVM_DTRACE_MAPFILE = $(MAKEFILES_DIR)/mapfile-vers-jvm_dtrace
-LFLAGS_JVM_DTRACE += $(MAPFLAG:FILENAME=$(LIBJVM_DTRACE_MAPFILE))
-
-ifdef USE_GCC
-LFLAGS_JVM_DB += -D_REENTRANT $(PICFLAG)
-LFLAGS_JVM_DTRACE += -D_REENTRANT $(PICFLAG)
-else
-LFLAGS_JVM_DB += -mt $(PICFLAG) -xnolib
-LFLAGS_JVM_DTRACE += -mt $(PICFLAG) -xnolib -ldl
-endif
-
-ISA = $(subst i386,i486,$(shell isainfo -n))
-
-# Making 64/libjvm_db.so: 64-bit version of libjvm_db.so which handles 32-bit libjvm.so
-ifneq ("${ISA}","${BUILDARCH}")
-
-XLIBJVM_DIR = 64
-XLIBJVM_DB = $(XLIBJVM_DIR)/$(LIBJVM_DB)
-XLIBJVM_DTRACE = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE)
-
-XLIBJVM_DB_DEBUGINFO = $(XLIBJVM_DIR)/$(LIBJVM_DB_DEBUGINFO)
-XLIBJVM_DB_DIZ = $(XLIBJVM_DIR)/$(LIBJVM_DB_DIZ)
-XLIBJVM_DTRACE_DEBUGINFO = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE_DEBUGINFO)
-XLIBJVM_DTRACE_DIZ = $(XLIBJVM_DIR)/$(LIBJVM_DTRACE_DIZ)
-
-$(XLIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS).h $(LIBJVM_DB_MAPFILE)
- @echo $(LOG_INFO) Making $@
- $(QUIETLY) mkdir -p $(XLIBJVM_DIR) ; \
- $(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. -I$(GENERATED) \
- $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DB_DEBUGINFO)
-# Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR) is not
-# in the link name:
- ( cd $(XLIBJVM_DIR) && $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DB_DEBUGINFO) $(LIBJVM_DB) )
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
-# Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR) is not
-# in the archived name:
- ( cd $(XLIBJVM_DIR) && $(ZIPEXE) -q -y $(LIBJVM_DB_DIZ) $(LIBJVM_DB_DEBUGINFO) )
- $(RM) $(XLIBJVM_DB_DEBUGINFO)
- endif
-endif
-
-$(XLIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
- @echo $(LOG_INFO) Making $@
- $(QUIETLY) mkdir -p $(XLIBJVM_DIR) ; \
- $(CC) $(SYMFLAG) $(ARCHFLAG/$(ISA)) -D$(TYPE) -I. $(EXTRA_CFLAGS) \
- $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c \
- $(EXTRA_LDFLAGS) -lc -lthread -ldoor
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DTRACE_DEBUGINFO)
-# Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR) is not
-# in the link name:
- ( cd $(XLIBJVM_DIR) && $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DTRACE_DEBUGINFO) $(LIBJVM_DTRACE) )
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
-# Do this part in the $(XLIBJVM_DIR) subdir so $(XLIBJVM_DIR) is not
-# in the archived name:
- ( cd $(XLIBJVM_DIR) && $(ZIPEXE) -q -y $(LIBJVM_DTRACE_DIZ) $(LIBJVM_DTRACE_DEBUGINFO))
- $(RM) $(XLIBJVM_DTRACE_DEBUGINFO)
- endif
-endif
-
-endif # ifneq ("${ISA}","${BUILDARCH}")
-
-ifdef USE_GCC
-LFLAGS_GENOFFS += -D_REENTRANT
-else
-LFLAGS_GENOFFS += -mt -xnolib -norunpath
-endif
-
-lib$(GENOFFS).so: $(DTRACE_SRCDIR)/$(GENOFFS).cpp $(DTRACE_SRCDIR)/$(GENOFFS).h \
- $(LIBJVM.o)
- $(QUIETLY) $(CXX) $(CXXFLAGS) $(GENOFFS_CFLAGS) $(SHARED_FLAG) $(PICFLAG) \
- $(LFLAGS_GENOFFS) -o $@ $(DTRACE_SRCDIR)/$(GENOFFS).cpp -lc
-
-$(GENOFFS): $(DTRACE_SRCDIR)/$(GENOFFS)Main.c lib$(GENOFFS).so
- $(QUIETLY) $(LINK.CXX) -z nodefs -o $@ $(DTRACE_SRCDIR)/$(GENOFFS)Main.c \
- ./lib$(GENOFFS).so
-
-CONDITIONALLY_UPDATE_JVMOFFS_TARGET = \
- if cmp -s $@ $@.tmp; then \
- rm -f $@.tmp; \
- else \
- rm -f $@ && mv $@.tmp $@ && echo Updated $@; \
- fi
-
-# $@.tmp is created first to avoid an empty $(JVMOFFS).h if an error occurs.
-$(JVMOFFS).h: $(GENOFFS)
- $(QUIETLY) LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ./$(GENOFFS) -header > $@.tmp
- $(QUIETLY) $(CONDITIONALLY_UPDATE_JVMOFFS_TARGET)
-
-$(JVMOFFS)Index.h: $(GENOFFS)
- $(QUIETLY) LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ./$(GENOFFS) -index > $@.tmp
- $(QUIETLY) $(CONDITIONALLY_UPDATE_JVMOFFS_TARGET)
-
-$(JVMOFFS).cpp: $(GENOFFS) $(JVMOFFS).h $(JVMOFFS)Index.h
- $(QUIETLY) LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ./$(GENOFFS) -table > $@.tmp
- $(QUIETLY) $(CONDITIONALLY_UPDATE_JVMOFFS_TARGET)
-
-$(JVMOFFS.o): $(JVMOFFS).h $(JVMOFFS).cpp
- $(QUIETLY) $(CXX) -c -I. -o $@ $(ARCHFLAG) -D$(TYPE) $(JVMOFFS).cpp
-
-$(LIBJVM_DB): $(DTRACE_SRCDIR)/$(JVM_DB).c $(JVMOFFS.o) $(XLIBJVM_DB) $(LIBJVM_DB_MAPFILE)
- @echo $(LOG_INFO) Making $@
- $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. -I$(GENERATED) \
- $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DB_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DB_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJVM_DB_DIZ) $(LIBJVM_DB_DEBUGINFO)
- $(RM) $(LIBJVM_DB_DEBUGINFO)
- endif
-endif
-
-$(LIBJVM_DTRACE): $(DTRACE_SRCDIR)/$(JVM_DTRACE).c $(XLIBJVM_DTRACE) $(DTRACE_SRCDIR)/$(JVM_DTRACE).h $(LIBJVM_DTRACE_MAPFILE)
- @echo $(LOG_INFO) Making $@
- $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) -D$(TYPE) -I. $(EXTRA_CFLAGS) \
- $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c \
- $(EXTRA_LDFLAGS) -lc -lthread -ldoor
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DTRACE_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DTRACE_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJVM_DTRACE_DIZ) $(LIBJVM_DTRACE_DEBUGINFO)
- $(RM) $(LIBJVM_DTRACE_DEBUGINFO)
- endif
-endif
-
-$(DTRACE).d: $(DTRACE_COMMON_SRCDIR)/hotspot.d $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d \
- $(DTRACE_COMMON_SRCDIR)/hs_private.d
- $(QUIETLY) cat $^ > $@
-
-$(DTRACE_JHELPER).d: $(DTRACE_SRCDIR)/jhelper.d
- $(QUIETLY) cat $^ > $@
-
-DTraced_Files = ciEnv.o \
- classLoadingService.o \
- compileBroker.o \
- hashtable.o \
- instanceKlass.o \
- java.o \
- jni.o \
- jvm.o \
- memoryManager.o \
- nmethod.o \
- objectMonitor.o \
- runtimeService.o \
- sharedRuntime.o \
- synchronizer.o \
- thread.o \
- unsafe.o \
- vmThread.o \
- vmCMSOperations.o \
- vmPSOperations.o \
- vmGCOperations.o \
-
-# Dtrace is available, so we build $(DTRACE.o)
-$(DTRACE.o): $(DTRACE).d $(DTraced_Files)
- @echo $(LOG_INFO) Compiling $(DTRACE).d
-
- $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -G -xlazyload -o $@ -s $(DTRACE).d \
- $(sort $(DTraced_Files)) ||\
- STATUS=$$?;\
- if [ x"$$STATUS" = x"1" ]; then \
- if [ x`uname -r` = x"5.10" -a \
- x`uname -p` = x"sparc" ]; then\
- echo "*****************************************************************";\
- echo "* If you are building server compiler, and the error message is ";\
- echo "* \"incorrect ELF machine type...\", you have run into solaris bug ";\
- echo "* 6213962, \"dtrace -G doesn't work on sparcv8+ object files\".";\
- echo "* Either patch/upgrade your system (>= S10u1_15), or set the ";\
- echo "* environment variable HOTSPOT_DISABLE_DTRACE_PROBES to disable ";\
- echo "* dtrace probes for this build.";\
- echo "*****************************************************************";\
- elif [ x`uname -r` = x"5.10" ]; then\
- echo "*****************************************************************";\
- echo "* If you are seeing 'syntax error near \"umpiconninfo_t\"' on Solaris";\
- echo "* 10, try doing 'cd /usr/lib/dtrace && gzip mpi.d' as root, ";\
- echo "* or set the environment variable HOTSPOT_DISABLE_DTRACE_PROBES";\
- echo "* to disable dtrace probes for this build.";\
- echo "*****************************************************************";\
- else \
- echo "*****************************************************************";\
- echo "* If you cannot fix dtrace build issues, try to ";\
- echo "* set the environment variable HOTSPOT_DISABLE_DTRACE_PROBES";\
- echo "* to disable dtrace probes for this build.";\
- echo "*****************************************************************";\
- fi; \
- fi;\
- exit $$STATUS
- # Since some DTraced_Files are in LIBJVM.o and they are touched by this
- # command, and libgenerateJvmOffsets.so depends on LIBJVM.o, 'make' will
- # think it needs to rebuild libgenerateJvmOffsets.so and thus JvmOffsets*
- # files, but it doesn't, so we touch the necessary files to prevent later
- # recompilation. Note: we only touch the necessary files if they already
- # exist in order to close a race where an empty file can be created
- # before the real build rule is executed.
- # But, we can't touch the *.h files: This rule depends
- # on them, and that would cause an infinite cycle of rebuilding.
- # Neither the *.h or *.ccp files need to be touched, since they have
- # rules which do not update them when the generator file has not
- # changed their contents.
- $(QUIETLY) if [ -f lib$(GENOFFS).so ]; then touch lib$(GENOFFS).so; fi
- $(QUIETLY) if [ -f $(GENOFFS) ]; then touch $(GENOFFS); fi
- $(QUIETLY) if [ -f $(JVMOFFS.o) ]; then touch $(JVMOFFS.o); fi
-
-
-$(DtraceOutDir):
- mkdir $(DtraceOutDir)
-
-$(DtraceOutDir)/hotspot.h: $(DTRACE_COMMON_SRCDIR)/hotspot.d | $(DtraceOutDir)
- $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_COMMON_SRCDIR)/hotspot.d
-
-$(DtraceOutDir)/hotspot_jni.h: $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d | $(DtraceOutDir)
- $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d
-
-$(DtraceOutDir)/hs_private.h: $(DTRACE_COMMON_SRCDIR)/hs_private.d | $(DtraceOutDir)
- $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s $(DTRACE_COMMON_SRCDIR)/hs_private.d
-
-dtrace_gen_headers: $(DtraceOutDir)/hotspot.h $(DtraceOutDir)/hotspot_jni.h $(DtraceOutDir)/hs_private.h
-
-# The jhelper.d and hotspot probes are separated into two different SUNW_dof sections.
-# Now the jhelper.d is built without the -Xlazyload flag.
-$(DTRACE_JHELPER.o) : $(DTRACE_JHELPER).d $(JVMOFFS).h $(JVMOFFS)Index.h
- @echo $(LOG_INFO) Compiling $(DTRACE_JHELPER).d
- $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -G -o $@ -s $(DTRACE_JHELPER).d
-
-.PHONY: dtraceCheck
-
-SYSTEM_DTRACE_PROG = /usr/sbin/dtrace
-PATCH_DTRACE_PROG = /opt/SUNWdtrd/sbin/dtrace
-systemDtraceFound := $(wildcard ${SYSTEM_DTRACE_PROG})
-patchDtraceFound := $(wildcard ${PATCH_DTRACE_PROG})
-
-ifneq ("$(patchDtraceFound)", "")
-DTRACE_PROG=$(PATCH_DTRACE_PROG)
-DTRACE_INCL=-I/opt/SUNWdtrd/include
-else
-ifneq ("$(systemDtraceFound)", "")
-DTRACE_PROG=$(SYSTEM_DTRACE_PROG)
-else
-
-endif # ifneq ("$(systemDtraceFound)", "")
-endif # ifneq ("$(patchDtraceFound)", "")
-
-ifneq ("${DTRACE_PROG}", "")
-ifeq ("${HOTSPOT_DISABLE_DTRACE_PROBES}", "")
-
-DTRACE_OBJS = $(DTRACE.o) $(JVMOFFS.o) $(DTRACE_JHELPER.o)
-CFLAGS += $(DTRACE_INCL) -DDTRACE_ENABLED
-MAPFILE_DTRACE_OPT = $(MAPFILE_DTRACE)
-
-dtraceCheck:
-
-else # manually disabled
-
-dtraceCheck:
- $(QUIETLY) echo $(LOG_INFO) "**NOTICE** Dtrace support disabled via environment variable"
-
-endif # ifeq ("${HOTSPOT_DISABLE_DTRACE_PROBES}", "")
-
-else # No dtrace program found
-
-dtraceCheck:
- $(QUIETLY) echo $(LOG_INFO) "**NOTICE** Dtrace support disabled: not supported by system"
-
-endif # ifneq ("${dtraceFound}", "")
-
-endif # ifdef USE_GCC
-
-else # CORE build
-
-dtraceCheck:
- $(QUIETLY) echo $(LOG_INFO) "**NOTICE** Dtrace support disabled for CORE builds"
-
-endif # ifneq ("${TYPE}", "CORE")
--- a/hotspot/make/solaris/makefiles/fastdebug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,127 +0,0 @@
-#
-# Copyright (c) 1998, 2013, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making debug version of VM
-
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-# They may also specify FASTDEBUG_CFLAGS, but it defaults to DEBUG_CFLAGS.
-
-FASTDEBUG_CFLAGS$(FASTDEBUG_CFLAGS) = $(DEBUG_CFLAGS)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-ifeq ("${Platform_compiler}", "sparcWorks")
-OPT_CFLAGS/SLOWER = -xO2
-
-ifeq ($(COMPILER_REV_NUMERIC), 510)
-# Avoid apparent crash because of corrupted methodHandle in a tail call
-OPT_CFLAGS/simpleThresholdPolicy.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT)
-# CC 5.10 has bug XXXXX with -xO4
-OPT_CFLAGS/jvmtiClassFileReconstituter.o = $(OPT_CFLAGS/SLOWER)
-endif # COMPILER_REV_NUMERIC == 510
-
-ifeq ($(COMPILER_REV_NUMERIC), 509)
-# To avoid jvm98 crash
-OPT_CFLAGS/instanceKlass.o = $(OPT_CFLAGS/SLOWER)
-endif # COMPILER_NUMERIC_REV == 509
-
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1)
-# dtrace cannot handle tail call optimization (6672627, 6693876)
-OPT_CFLAGS/jni.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT)
-# this hangs in iropt now (7113504)
-OPT_CFLAGS/compileBroker.o = $(OPT_CFLAGS/SLOWER)
-endif # COMPILER_NUMERIC_REV >= 509
-
-ifeq ($(COMPILER_REV_NUMERIC), 505)
-# CC 5.5 has bug 4908364 with -xO4 (Fixed in 5.6)
-OPT_CFLAGS/library_call.o = $(OPT_CFLAGS/SLOWER)
-endif # COMPILER_REV_NUMERIC == 505
-
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \<= 504), 1)
-# Compilation of *_<arch>.cpp can take an hour or more at O3. Use O2
-# See comments at top of sparc.make.
-OPT_CFLAGS/ad_$(Platform_arch_model).o = $(OPT_CFLAGS/SLOWER)
-OPT_CFLAGS/dfa_$(Platform_arch_model).o = $(OPT_CFLAGS/SLOWER)
-endif # COMPILER_REV_NUMERIC <= 504
-
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \< 505), 1)
-# Same problem with Solaris/x86 compiler (both 5.0 and 5.2) on ad_x86_{32,64}.cpp.
-# CC build time is also too long for ad_$(Platform_arch_model)_{gen,misc}.o
-OPT_CFLAGS/ad_$(Platform_arch_model).o = -c
-OPT_CFLAGS/ad_$(Platform_arch_model)_gen.o = -c
-OPT_CFLAGS/ad_$(Platform_arch_model)_misc.o = -c
-ifeq ($(Platform_arch), x86)
-# Same problem for the wrapper roosts: jni.o jvm.o
-OPT_CFLAGS/jni.o = -c
-OPT_CFLAGS/jvm.o = -c
-# Same problem in parse2.o (probably the Big Switch over bytecodes)
-OPT_CFLAGS/parse2.o = -c
-endif # Platform_arch == x86
-endif
-
-# Frame size > 100k if we allow inlining via -g0!
-DEBUG_CFLAGS/bytecodeInterpreter.o = -g
-DEBUG_CFLAGS/bytecodeInterpreterWithChecks.o = -g
-ifeq ($(Platform_arch), x86)
-# ube explodes on x86
-OPT_CFLAGS/bytecodeInterpreter.o = -xO1
-OPT_CFLAGS/bytecodeInterpreterWithChecks.o = -xO1
-endif # Platform_arch == x86
-
-endif # Platform_compiler == sparcWorks
-
-# Workaround for a bug in dtrace. If ciEnv::post_compiled_method_load_event()
-# is inlined, the resulting dtrace object file needs a reference to this
-# function, whose symbol name is too long for dtrace. So disable inlining
-# for this method for now. (fix this when dtrace bug 6258412 is fixed)
-OPT_CFLAGS/ciEnv.o = $(OPT_CFLAGS) -xinline=no%__1cFciEnvbFpost_compiled_method_load_event6MpnHnmethod__v_
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# The following lines are copied from debug.make, except that we
-# consult FASTDEBUG_CFLAGS instead of DEBUG_CFLAGS.
-# Compiler specific DEBUG_CFLAGS are passed in from gcc.make, sparcWorks.make
-DEBUG_CFLAGS/DEFAULT= $(FASTDEBUG_CFLAGS)
-DEBUG_CFLAGS/BYFILE = $(DEBUG_CFLAGS/$@)$(DEBUG_CFLAGS/DEFAULT$(DEBUG_CFLAGS/$@))
-CFLAGS += $(DEBUG_CFLAGS/BYFILE)
-
-# Linker mapfiles
-MAPFILE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers \
- $(GAMMADIR)/make/solaris/makefiles/mapfile-vers-debug
-
-# This mapfile is only needed when compiling with dtrace support,
-# and mustn't be otherwise.
-MAPFILE_DTRACE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers-$(TYPE)
-
-VERSION = optimized
-SYSDEFS += -DASSERT -DCHECK_UNHANDLED_OOPS
-PICFLAGS = DEFAULT
--- a/hotspot/make/solaris/makefiles/gcc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,241 +0,0 @@
-#
-# Copyright (c) 1998, 2013, 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.
-#
-# 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.
-#
-#
-
-#------------------------------------------------------------------------
-# CC, CXX & AS
-
-# If a SPEC is not set already, then use these defaults.
-ifeq ($(SPEC),)
- CXX = g++
- CC = gcc
- AS = $(CC) -c
- MCS = /usr/ccs/bin/mcs
-endif
-
-Compiler = gcc
-
-# -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
-# prints the numbers (e.g. "2.95", "3.2.1")
-CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
-CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
-CC_VER_MICRO := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f3)
-
-# Check for the versions of C++ and C compilers ($CXX and $CC) used.
-
-# Get the last thing on the line that looks like x.x+ (x is a digit).
-COMPILER_REV := \
-$(shell $(CXX) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1)
-CC_COMPILER_REV := \
-$(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2)
-
-
-# check for precompiled headers support
-ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0"
-# Allow the user to turn off precompiled headers from the command line.
-ifneq ($(USE_PRECOMPILED_HEADER),0)
-PRECOMPILED_HEADER_DIR=.
-PRECOMPILED_HEADER_SRC=$(GAMMADIR)/src/share/vm/precompiled/precompiled.hpp
-PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/precompiled.hpp.gch
-endif
-endif
-
-
-#------------------------------------------------------------------------
-# Compiler flags
-
-# position-independent code
-PICFLAG = -fPIC
-
-VM_PICFLAG/LIBJVM = $(PICFLAG)
-VM_PICFLAG/AOUT =
-VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
-
-CFLAGS += $(VM_PICFLAG)
-CFLAGS += -fno-rtti
-CFLAGS += -fno-exceptions
-CFLAGS += -D_REENTRANT
-CFLAGS += -fcheck-new
-
-ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
-
-ARCHFLAG/sparc = -m32 -mcpu=v9
-ARCHFLAG/sparcv9 = -m64 -mcpu=v9
-ARCHFLAG/i486 = -m32 -march=i586
-ARCHFLAG/amd64 = -m64 -march=k8
-
-
-# Optional sub-directory in /usr/lib where BUILDARCH libraries are kept.
-ISA_DIR=$(ISA_DIR/$(BUILDARCH))
-ISA_DIR/amd64=/amd64
-ISA_DIR/i486=
-ISA_DIR/sparcv9=/64
-
-
-CFLAGS += $(ARCHFLAG)
-AOUT_FLAGS += $(ARCHFLAG)
-LFLAGS += $(ARCHFLAG)
-ASFLAGS += $(ARCHFLAG)
-
-ifeq ($(BUILDARCH), amd64)
-ASFLAGS += -march=k8 -march=amd64
-LFLAGS += -march=k8
-endif
-
-
-# Use C++ Interpreter
-ifdef CC_INTERP
- CFLAGS += -DCC_INTERP
-endif
-
-# Keep temporary files (.ii, .s)
-ifdef NEED_ASM
- CFLAGS += -save-temps
-else
- CFLAGS += -pipe
-endif
-
-
-# Compiler warnings are treated as errors
-WARNINGS_ARE_ERRORS ?= -Werror
-
-# Enable these warnings. See 'info gcc' about details on these options
-WARNING_FLAGS = -Wpointer-arith -Wconversion -Wsign-compare -Wundef -Wformat=2
-CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(WARNING_FLAGS)
-
-# Special cases
-CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
-
-# optimization control flags (Used by fastdebug and release variants)
-OPT_CFLAGS/NOOPT=-O0
-OPT_CFLAGS/DEBUG=-O0
-OPT_CFLAGS/SIZE=-Os
-OPT_CFLAGS/SPEED=-O3
-
-OPT_CFLAGS_DEFAULT ?= SPEED
-
-# Hotspot uses very unstrict aliasing turn this optimization off
-# This option is added to CFLAGS rather than OPT_CFLAGS
-# so that OPT_CFLAGS overrides get this option too.
-CFLAGS += -fno-strict-aliasing
-
-ifdef OPT_CFLAGS
- ifneq ("$(origin OPT_CFLAGS)", "command line")
- $(error " Use OPT_EXTRAS instead of OPT_CFLAGS to add extra flags to OPT_CFLAGS.")
- endif
-endif
-
-OPT_CFLAGS = $(OPT_CFLAGS/$(OPT_CFLAGS_DEFAULT)) $(OPT_EXTRAS)
-
-# The gcc compiler segv's on ia64 when compiling bytecodeInterpreter.cpp
-# if we use expensive-optimizations
-# Note: all ia64 setting reflect the ones for linux
-# No actial testing was performed: there is no Solaris on ia64 presently
-ifeq ($(BUILDARCH), ia64)
-OPT_CFLAGS/bytecodeInterpreter.o += -fno-expensive-optimizations
-endif
-
-# Work around some compiler bugs.
-ifeq ($(USE_CLANG), true)
- ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 2), 1)
- OPT_CFLAGS/loopTransform.o += $(OPT_CFLAGS/NOOPT)
- endif
-else
- # Do not allow GCC 4.1.1
- ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 1 \& $(CC_VER_MICRO) = 1), 1)
- $(error "GCC $(CC_VER_MAJOR).$(CC_VER_MINOR).$(CC_VER_MICRO) not supported because of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=27724")
- endif
- # 6835796. Problem in GCC 4.3.0 with mulnode.o optimized compilation.
- ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 3), 1)
- OPT_CFLAGS/mulnode.o += $(OPT_CFLAGS/NOOPT)
- endif
-endif
-
-# Flags for generating make dependency flags.
-ifneq ($(CC_VER_MAJOR), 2)
-DEPFLAGS = -fpch-deps -MMD -MP -MF $(DEP_DIR)/$(@:%=%.d)
-endif
-
-# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
-ifeq ($(USE_PRECOMPILED_HEADER),0)
-CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
-endif
-
-#------------------------------------------------------------------------
-# Linker flags
-
-# statically link libstdc++.so, work with gcc but ignored by g++
-STATIC_STDCXX = -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic
-
-
-ifdef USE_GNULD
- # statically link libgcc and/or libgcc_s, libgcc does not exist before gcc-3.x.
- ifneq ($(CC_VER_MAJOR), 2)
- STATIC_LIBGCC += -static-libgcc
- endif
-
- # Enable linker optimization
- LFLAGS += -Xlinker -O1
-
- ifneq (, findstring(debug,$(BUILD_FLAVOR)))
- # for relocations read-only
- LFLAGS += -Xlinker -z -Xlinker relro
-
- ifeq ($(BUILD_FLAVOR), debug)
- # disable incremental relocations linking
- LFLAGS += -Xlinker -z -Xlinker now
- endif
- endif
-
- ifeq ($(BUILDARCH), ia64)
- # Note: all ia64 setting reflect the ones for linux
- # No actual testing was performed: there is no Solaris on ia64 presently
- LFLAGS += -Wl,-relax
- endif
-
- # Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
- MAPFLAG = -Xlinker --version-script=FILENAME
-else
- MAPFLAG = -Xlinker -M -Xlinker FILENAME
-endif
-
-# Use $(SONAMEFLAG:SONAME=soname) to specify the intrinsic name of a shared obj
-SONAMEFLAG = -Xlinker -soname=SONAME
-
-# Build shared library
-SHARED_FLAG = -shared
-
-#------------------------------------------------------------------------
-# Debug flags
-
-# Allow no optimizations.
-DEBUG_CFLAGS=-O0
-
-# Enable debug symbols
-DEBUG_CFLAGS += -g
-
-# Enable bounds checking.
-ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) )" "1"
- # stack smashing checks.
- DEBUG_CFLAGS += -fstack-protector-all --param ssp-buffer-size=1
-endif
--- a/hotspot/make/solaris/makefiles/hp.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-#
-# Copyright (c) 1998, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making premium version of VM
-
-TYPE=HP
-
-CFLAGS += -DCOMPILER2
--- a/hotspot/make/solaris/makefiles/hp1.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-#
-# Copyright (c) 1999, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making premium version of VM
-
-TYPE=HP1
-
-CFLAGS += -DCOMPILER1
--- a/hotspot/make/solaris/makefiles/i486.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# Must also specify if CPU is little endian
-CFLAGS += -DVM_LITTLE_ENDIAN
-
-# TLS helper, assembled from .s file
-
-#
-# Special case flags for compilers and compiler versions on i486.
-#
-ifeq ("${Platform_compiler}", "sparcWorks")
-# ILD is gone as of SS11 (5.8), not supported in SS10 (5.7)
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \< 507), 1)
- #
- # Bug in ild causes it to fail randomly. Until we get a fix we can't
- # use ild.
- #
- ILDFLAG/debug = -xildoff
-endif
-endif
--- a/hotspot/make/solaris/makefiles/jsig.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,81 +0,0 @@
-#
-# Copyright (c) 2005, 2014, 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.
-#
-# 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.
-#
-#
-
-# Rules to build signal interposition library, used by vm.make
-
-# libjsig.so: signal interposition library
-JSIG = jsig
-LIBJSIG = lib$(JSIG).so
-
-LIBJSIG_DEBUGINFO = lib$(JSIG).debuginfo
-LIBJSIG_DIZ = lib$(JSIG).diz
-
-JSIGSRCDIR = $(GAMMADIR)/src/os/$(Platform_os_family)/vm
-
-DEST_JSIG = $(JDK_LIBDIR)/$(LIBJSIG)
-DEST_JSIG_DEBUGINFO = $(JDK_LIBDIR)/$(LIBJSIG_DEBUGINFO)
-DEST_JSIG_DIZ = $(JDK_LIBDIR)/$(LIBJSIG_DIZ)
-
-LIBJSIG_MAPFILE = $(MAKEFILES_DIR)/mapfile-vers-jsig
-
-LFLAGS_JSIG += $(MAPFLAG:FILENAME=$(LIBJSIG_MAPFILE))
-
-ifdef USE_GCC
-LFLAGS_JSIG += -D_REENTRANT
-else
-LFLAGS_JSIG += -mt -xnolib
-endif
-
-$(LIBJSIG): $(JSIGSRCDIR)/jsig.c $(LIBJSIG_MAPFILE)
- @echo $(LOG_INFO) Making signal interposition lib...
- $(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
- $(EXTRA_CFLAGS) \
- $(LFLAGS_JSIG) $(EXTRA_LDFLAGS) \
- -o $@ $(JSIGSRCDIR)/jsig.c -ldl
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJSIG_DIZ) $(LIBJSIG_DEBUGINFO)
- $(RM) $(LIBJSIG_DEBUGINFO)
- endif
-endif
-
-install_jsig: $(LIBJSIG)
- @echo "Copying $(LIBJSIG) to $(DEST_JSIG)"
- $(QUIETLY) test ! -f $(LIBJSIG_DEBUGINFO) || \
- $(CP) -f $(LIBJSIG_DEBUGINFO) $(DEST_JSIG_DEBUGINFO)
- $(QUIETLY) test ! -f $(LIBJSIG_DIZ) || \
- $(CP) -f $(LIBJSIG_DIZ) $(DEST_JSIG_DIZ)
- $(QUIETLY) $(CP) -f $(LIBJSIG) $(DEST_JSIG) && echo "Done"
-
-.PHONY: install_jsig
--- a/hotspot/make/solaris/makefiles/jvmti.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,115 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-# This makefile (jvmti.make) is included from the jvmti.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate jvmti.
-
-include $(GAMMADIR)/make/solaris/makefiles/rules.make
-
-# #########################################################################
-
-GENERATED = ../generated
-JvmtiOutDir = $(GENERATED)/jvmtifiles
-
-JvmtiSrcDir = $(GAMMADIR)/src/share/vm/prims
-InterpreterSrcDir = $(GAMMADIR)/src/share/vm/interpreter
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(JvmtiSrcDir)
-VPATH += $(Src_Dirs_V:%=%:)
-
-JvmtiGeneratedNames = \
- jvmtiEnv.hpp \
- jvmtiEnter.cpp \
- jvmtiEnterTrace.cpp \
- jvmtiEnvRecommended.cpp\
- bytecodeInterpreterWithChecks.cpp\
- jvmti.h \
-
-JvmtiEnvFillSource = $(JvmtiSrcDir)/jvmtiEnvFill.java
-JvmtiEnvFillClass = $(JvmtiOutDir)/jvmtiEnvFill.class
-
-JvmtiGenSource = $(JvmtiSrcDir)/jvmtiGen.java
-JvmtiGenClass = $(JvmtiOutDir)/jvmtiGen.class
-
-JvmtiGeneratedFiles = $(JvmtiGeneratedNames:%=$(JvmtiOutDir)/%)
-
-XSLT = $(QUIETLY) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-.PHONY: all jvmtidocs clean cleanall
-
-# #########################################################################
-
-all: $(JvmtiGeneratedFiles)
-
-both = $(JvmtiGenClass) $(JvmtiSrcDir)/jvmti.xml $(JvmtiSrcDir)/jvmtiLib.xsl
-
-$(JvmtiGenClass): $(JvmtiGenSource)
- $(QUIETLY) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiGenSource)
-
-$(JvmtiEnvFillClass): $(JvmtiEnvFillSource)
- $(QUIETLY) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiEnvFillSource)
-
-$(JvmtiOutDir)/jvmtiEnter.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnter.cpp -PARAM interface jvmti
-
-$(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp: $(JvmtiGenClass) $(InterpreterSrcDir)/bytecodeInterpreter.cpp $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml -XSL $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl -OUT $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp
-
-$(JvmtiOutDir)/jvmtiEnterTrace.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnterTrace.cpp -PARAM interface jvmti -PARAM trace Trace
-
-$(JvmtiOutDir)/jvmtiEnvRecommended.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnv.xsl $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiEnvFillClass)
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnv.xsl -OUT $(JvmtiOutDir)/jvmtiEnvStub.cpp
- $(QUIETLY) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiEnvFill $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiOutDir)/jvmtiEnvStub.cpp $(JvmtiOutDir)/jvmtiEnvRecommended.cpp
-
-$(JvmtiOutDir)/jvmtiEnv.hpp: $(both) $(JvmtiSrcDir)/jvmtiHpp.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiHpp.xsl -OUT $(JvmtiOutDir)/jvmtiEnv.hpp
-
-$(JvmtiOutDir)/jvmti.h: $(both) $(JvmtiSrcDir)/jvmtiH.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiH.xsl -OUT $(JvmtiOutDir)/jvmti.h
-
-jvmtidocs: $(JvmtiOutDir)/jvmti.html
-
-$(JvmtiOutDir)/jvmti.html: $(both) $(JvmtiSrcDir)/jvmti.xsl
- @echo $(LOG_INFO) Generating $@
- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmti.xsl -OUT $(JvmtiOutDir)/jvmti.html
-
-# #########################################################################
-
-clean :
- rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles)
-
-cleanall :
- rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles)
-
-# #########################################################################
--- a/hotspot/make/solaris/makefiles/mapfile-vers Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-#
-# Copyright (c) 2000, 2015, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_handle_solaris_signal;
-
- # miscellaneous functions
- jio_fprintf;
- jio_printf;
- jio_snprintf;
- jio_vfprintf;
- jio_vsnprintf;
-
- # Needed because there is no JVM interface for this.
- sysThreadAvailableStackWithSlack;
-
- # This is for Forte Analyzer profiling support.
- AsyncGetCallTrace;
-
- # INSERT VTABLE SYMBOLS HERE
-
- local:
- *;
-};
--- a/hotspot/make/solaris/makefiles/mapfile-vers-COMPILER1 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
-#
-
-#
-# Copyright (c) 2003, 2012, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- # Dtrace support
- __1cJCodeCacheG_heaps_;
- __1cIUniverseO_collectedHeap_;
- __1cGMethodG__vtbl_;
- __1cHnmethodG__vtbl_;
- __1cICodeBlobG__vtbl_;
- __1cKBufferBlobG__vtbl_;
- __1cLRuntimeStubG__vtbl_;
- __1cNSafepointBlobG__vtbl_;
- __1cSDeoptimizationBlobG__vtbl_;
-
- __JvmOffsets;
-};
--- a/hotspot/make/solaris/makefiles/mapfile-vers-COMPILER2 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-#
-
-#
-# Copyright (c) 2003, 2012, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- # Dtrace support
- __1cJCodeCacheG_heaps_;
- __1cIUniverseO_collectedHeap_;
- __1cGMethodG__vtbl_;
- __1cHnmethodG__vtbl_;
- __1cICodeBlobG__vtbl_;
- __1cKBufferBlobG__vtbl_;
- __1cLRuntimeStubG__vtbl_;
- __1cNSafepointBlobG__vtbl_;
- __1cSDeoptimizationBlobG__vtbl_;
-
- __1cNExceptionBlobG__vtbl_;
- __1cQUncommonTrapBlobG__vtbl_;
-
- __JvmOffsets;
-};
--- a/hotspot/make/solaris/makefiles/mapfile-vers-CORE Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-#
-
-#
-# Copyright (c) 2003, 2008, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
-};
--- a/hotspot/make/solaris/makefiles/mapfile-vers-TIERED Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-#
-
-#
-# Copyright (c) 2006, 2012, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
- # Dtrace support
- __1cJCodeCacheG_heaps_;
- __1cIUniverseO_collectedHeap_;
- __1cGMethodG__vtbl_;
- __1cHnmethodG__vtbl_;
- __1cICodeBlobG__vtbl_;
- __1cKBufferBlobG__vtbl_;
- __1cLRuntimeStubG__vtbl_;
- __1cNSafepointBlobG__vtbl_;
- __1cSDeoptimizationBlobG__vtbl_;
- __1cNExceptionBlobG__vtbl_;
- __1cQUncommonTrapBlobG__vtbl_;
-
- __JvmOffsets;
-};
--- a/hotspot/make/solaris/makefiles/mapfile-vers-debug Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#
-
-#
-# Copyright (c) 2000, 2008, 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.
-#
-# 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.
-#
-#
-
-# Define public interface.
-
-SUNWprivate_1.1 {
- global:
-
- # miscellaneous
-};
--- a/hotspot/make/solaris/makefiles/mapfile-vers-jsig Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-#
-
-#
-# Copyright (c) 2005, 2008, 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.
-#
-# 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.
-#
-#
-
-# Define library interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_begin_signal_setting;
- JVM_end_signal_setting;
- JVM_get_libjsig_version;
- JVM_get_signal_action;
- sigaction;
- signal;
- sigset;
- local:
- *;
-};
--- a/hotspot/make/solaris/makefiles/mapfile-vers-jvm_db Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-#
-
-#
-# Copyright (c) 2005, 2008, 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.
-#
-# 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.
-#
-#
-
-# Define library interface.
-
-SUNWprivate_1.1 {
- global:
- Jagent_create;
- Jagent_destroy;
- Jframe_iter;
- #Jget_vframe;
- #Jlookup_by_regs;
- local:
- *;
-};
--- a/hotspot/make/solaris/makefiles/mapfile-vers-jvm_dtrace Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-#
-
-#
-# Copyright (c) 2006, 2008, 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.
-#
-# 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.
-#
-#
-
-# Define library interface for JVM-DTrace interface
-
-SUNWprivate_1.1 {
- global:
- jvm_attach;
- jvm_get_last_error;
- jvm_enable_dtprobes;
- jvm_detach;
- local:
- *;
-};
--- a/hotspot/make/solaris/makefiles/optimized.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-#
-# Copyright (c) 1998, 2012, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making optimized version of HotSpot VM
-# (This is the "product", not the "release" version.)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-ifeq ("${Platform_compiler}", "sparcWorks")
-
-ifeq ($(COMPILER_REV_NUMERIC), 510)
-# CC 5.10 has bug XXXXX with -xO4
-OPT_CFLAGS/jvmtiClassFileReconstituter.o = $(OPT_CFLAGS/O2)
-endif # COMPILER_REV_NUMERIC == 510
-
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1)
-# dtrace cannot handle tail call optimization (6672627, 6693876)
-OPT_CFLAGS/jni.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT)
-endif # COMPILER_NUMERIC_REV >= 509
-
-# Workaround SS11 bug 6345274 (all platforms) (Fixed in SS11 patch and SS12)
-ifeq ($(COMPILER_REV_NUMERIC),508)
-OPT_CFLAGS/ciTypeFlow.o = $(OPT_CFLAGS/O2)
-endif # COMPILER_REV_NUMERIC == 508
-
-endif # Platform_compiler == sparcWorks
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-
-# Linker mapfiles
-MAPFILE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers
-
-# This mapfile is only needed when compiling with dtrace support,
-# and mustn't be otherwise.
-MAPFILE_DTRACE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers-$(TYPE)
-
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-VERSION = optimized
--- a/hotspot/make/solaris/makefiles/product.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,103 +0,0 @@
-#
-# Copyright (c) 1999, 2016, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making optimized version of HotSpot VM
-# (This is the "product", not the "release" version.)
-
-# Compiler specific OPT_CFLAGS are passed in from gcc.make, sparcWorks.make
-OPT_CFLAGS/DEFAULT= $(OPT_CFLAGS)
-OPT_CFLAGS/BYFILE = $(OPT_CFLAGS/$@)$(OPT_CFLAGS/DEFAULT$(OPT_CFLAGS/$@))
-
-# Workaround for a bug in dtrace. If ciEnv::post_compiled_method_load_event()
-# is inlined, the resulting dtrace object file needs a reference to this
-# function, whose symbol name is too long for dtrace. So disable inlining
-# for this method for now. (fix this when dtrace bug 6258412 is fixed)
-ifndef USE_GCC
-OPT_CFLAGS/ciEnv.o = $(OPT_CFLAGS) -xinline=no%__1cFciEnvbFpost_compiled_method_load_event6MpnHnmethod__v_
-# The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
-# of OPT_CFLAGS. Restore it here.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/ciEnv.o += -g0 -xs
-endif
-endif
-
-# Need extra inlining to get oop_ps_push_contents functions to perform well enough.
-ifndef USE_GCC
-OPT_CFLAGS/psPromotionManager.o = $(OPT_CFLAGS) -W2,-Ainline:inc=1000
-# The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
-# of OPT_CFLAGS. Restore it here.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/psPromotionManager.o += -g0 -xs
-endif
-endif
-
-# (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
-ifeq ("${Platform_compiler}", "sparcWorks")
-
-ifeq ($(COMPILER_REV_NUMERIC), 510)
-# CC 5.10 has bug XXXXX with -xO4
-OPT_CFLAGS/jvmtiClassFileReconstituter.o = $(OPT_CFLAGS/O2)
-# Avoid apparent crash because of corrupted methodHandle in a tail call
-OPT_CFLAGS/simpleThresholdPolicy.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT)
-endif # COMPILER_REV_NUMERIC == 510
-
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1)
-# dtrace cannot handle tail call optimization (6672627, 6693876)
-OPT_CFLAGS/jni.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT)
-# The -g0 -xs flag is added to OPT_CFLAGS in sparcWorks.make, but lost in case of
-# per-file overrides of OPT_CFLAGS. Restore it here. This is mainly needed
-# to provide a good baseline to compare the new build against.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/jni.o += -g0 -xs
-endif
-endif # COMPILER_NUMERIC_REV >= 509
-
-# Workaround SS11 bug 6345274 (all platforms) (Fixed in SS11 patch and SS12)
-ifeq ($(COMPILER_REV_NUMERIC),508)
-OPT_CFLAGS/ciTypeFlow.o = $(OPT_CFLAGS/O2)
-endif # COMPILER_REV_NUMERIC == 508
-
-endif # Platform_compiler == sparcWorks
-
-# If you set HOTSPARC_GENERIC=yes, you disable all OPT_CFLAGS settings
-CFLAGS$(HOTSPARC_GENERIC) += $(OPT_CFLAGS/BYFILE)
-# Set the environment variable HOTSPARC_GENERIC to "true"
-# to inhibit the effect of the previous line on CFLAGS.
-
-# Linker mapfiles
-MAPFILE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers
-
-ifndef USE_GCC
-# This mapfile is only needed when compiling with dtrace support,
-# and mustn't be otherwise.
-MAPFILE_DTRACE = $(GAMMADIR)/make/solaris/makefiles/mapfile-vers-$(TYPE)
-
-endif
-
-# If we can create .debuginfo files, then the VM is stripped in vm.make
-# and this macro is not used.
-# LINK_LIB.CXX/POST_HOOK += $(STRIP_LIB.CXX/POST_HOOK)
-
-SYSDEFS += -DPRODUCT
-VERSION = optimized
--- a/hotspot/make/solaris/makefiles/rules.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,200 +0,0 @@
-#
-# Copyright (c) 2000, 2014, 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.
-#
-# 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.
-#
-#
-
-# Common rules/macros for the vm, adlc.
-
-# Tell make that .cpp is important
-.SUFFIXES: .cpp $(SUFFIXES)
-
-DEMANGLER = c++filt
-DEMANGLE = $(DEMANGLER) < $@ > .$@ && $(MV) -f .$@ $@
-
-# $(CC) is the c compiler (cc/gcc), $(CXX) is the c++ compiler (CC/g++).
-CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS)
-CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS)
-
-AS.S = $(AS) $(ASFLAGS)
-
-COMPILE.CC = $(CC_COMPILE) -c
-GENASM.CC = $(CC_COMPILE) -S
-LINK.CC = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
-LINK_LIB.CC = $(CC) $(LFLAGS) $(SHARED_FLAG)
-PREPROCESS.CC = $(CC_COMPILE) -E
-
-COMPILE.CXX = $(CXX_COMPILE) -c
-GENASM.CXX = $(CXX_COMPILE) -S
-LINK.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS)
-LINK_NOPROF.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS)
-LINK_LIB.CXX = $(CXX) $(LFLAGS) $(SHARED_FLAG)
-PREPROCESS.CXX = $(CXX_COMPILE) -E
-
-# Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k".
-REMOVE_TARGET = rm -f $@
-
-# Note use of ALT_BOOTDIR to explicitly specify location of java and
-# javac; this is the same environment variable used in the J2SE build
-# process for overriding the default spec, which is BOOTDIR.
-# Note also that we fall back to using JAVA_HOME if neither of these is
-# specified.
-
-ifdef ALT_BOOTDIR
-
-RUN.JAVA = $(ALT_BOOTDIR)/bin/java
-RUN.JAVAP = $(ALT_BOOTDIR)/bin/javap
-RUN.JAVAH = $(ALT_BOOTDIR)/bin/javah
-RUN.JAR = $(ALT_BOOTDIR)/bin/jar
-COMPILE.JAVAC = $(ALT_BOOTDIR)/bin/javac
-COMPILE.RMIC = $(ALT_BOOTDIR)/bin/rmic
-BOOT_JAVA_HOME = $(ALT_BOOTDIR)
-
-else
-
-ifdef BOOTDIR
-
-RUN.JAVA = $(BOOTDIR)/bin/java
-RUN.JAVAP = $(BOOTDIR)/bin/javap
-RUN.JAVAH = $(BOOTDIR)/bin/javah
-RUN.JAR = $(BOOTDIR)/bin/jar
-COMPILE.JAVAC = $(BOOTDIR)/bin/javac
-COMPILE.RMIC = $(BOOTDIR)/bin/rmic
-BOOT_JAVA_HOME = $(BOOTDIR)
-
-else
-
-ifdef JAVA_HOME
-
-RUN.JAVA = $(JAVA_HOME)/bin/java
-RUN.JAVAP = $(JAVA_HOME)/bin/javap
-RUN.JAVAH = $(JAVA_HOME)/bin/javah
-RUN.JAR = $(JAVA_HOME)/bin/jar
-COMPILE.JAVAC = $(JAVA_HOME)/bin/javac
-COMPILE.RMIC = $(JAVA_HOME)/bin/rmic
-BOOT_JAVA_HOME = $(JAVA_HOME)
-
-else
-
-# take from the PATH, if ALT_BOOTDIR, BOOTDIR and JAVA_HOME are not defined
-
-RUN.JAVA = java
-RUN.JAVAP = javap
-RUN.JAVAH = javah
-RUN.JAR = jar
-COMPILE.JAVAC = javac
-COMPILE.RMIC = rmic
-
-endif
-endif
-endif
-
-COMPILE.JAVAC += $(BOOTSTRAP_JAVAC_FLAGS)
-
-SUM = /usr/bin/sum
-
-# 'gmake MAKE_VERBOSE=y' gives all the gory details.
-QUIETLY$(MAKE_VERBOSE) = @
-RUN.JAR$(MAKE_VERBOSE) += >/dev/null
-
-# Settings for javac
-JAVAC_FLAGS = -g -encoding ascii
-
-# Prefer BOOT_JDK_SOURCETARGET if it's set (typically by the top build system)
-# Fall back to the values here if it's not set (hotspot only builds)
-ifeq ($(BOOT_JDK_SOURCETARGET),)
-BOOTSTRAP_SOURCETARGET := -source 8 -target 8
-else
-BOOTSTRAP_SOURCETARGET := $(BOOT_JDK_SOURCETARGET)
-endif
-
-BOOTSTRAP_JAVAC_FLAGS = $(JAVAC_FLAGS) $(BOOTSTRAP_SOURCETARGET)
-
-# With parallel makes, print a message at the end of compilation.
-ifeq ($(findstring j,$(MFLAGS)),j)
-COMPILE_DONE = && { echo Done with $<; }
-endif
-
-# Include NONPIC_OBJ_FILES definition
-ifndef LP64
-include $(GAMMADIR)/make/pic.make
-endif
-
-include $(GAMMADIR)/make/altsrc.make
-
-# Sun compiler for 64 bit Solaris does not support building non-PIC object files.
-ifdef LP64
-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)
-else
-%.o: %.cpp
- @echo $(LOG_INFO) Compiling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \
- $(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \
- $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE))
-endif
-
-%.o: %.s
- @echo $(LOG_INFO) Assembling $<
- $(QUIETLY) $(REMOVE_TARGET)
- $(QUIETLY) $(AS.S) -o $@ $< $(COMPILE_DONE)
-
-%.s: %.cpp
- @echo $(LOG_INFO) Generating assembly for $<
- $(QUIETLY) $(GENASM.CXX) -o $@ $<
- $(QUIETLY) $(DEMANGLE) $(COMPILE_DONE)
-
-# Intermediate files (for debugging macros)
-%.i: %.cpp
- @echo $(LOG_INFO) Preprocessing $< to $@
- $(QUIETLY) $(PREPROCESS.CXX) $< > $@ $(COMPILE_DONE)
-
-# Override gnumake built-in rules which do sccs get operations badly.
-# (They put the checked out code in the current directory, not in the
-# directory of the original file.) Since this is a symptom of a teamware
-# failure, and since not all problems can be detected by gnumake due
-# to incomplete dependency checking... just complain and stop.
-%:: s.%
- @echo "========================================================="
- @echo File $@
- @echo is out of date with respect to its SCCS file.
- @echo This file may be from an unresolved Teamware conflict.
- @echo This is also a symptom of a Teamware bringover/putback failure
- @echo in which SCCS files are updated but not checked out.
- @echo Check for other out of date files in your workspace.
- @echo "========================================================="
- @exit 666
-
-%:: SCCS/s.%
- @echo "========================================================="
- @echo File $@
- @echo is out of date with respect to its SCCS file.
- @echo This file may be from an unresolved Teamware conflict.
- @echo This is also a symptom of a Teamware bringover/putback failure
- @echo in which SCCS files are updated but not checked out.
- @echo Check for other out of date files in your workspace.
- @echo "========================================================="
- @exit 666
-
-.PHONY: default
--- a/hotspot/make/solaris/makefiles/sparc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,124 +0,0 @@
-#
-# Copyright (c) 1998, 2012, 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.
-#
-# 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.
-#
-#
-
-Obj_Files += solaris_sparc.o
-ASFLAGS += $(AS_ARCHFLAG)
-
-ifeq ("${Platform_compiler}", "sparcWorks")
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \< 505), 1)
-# For 5.2 ad_sparc file is compiled with -O2 %%%% remove when adlc is fixed
-OPT_CFLAGS/ad_sparc.o = $(OPT_CFLAGS/SLOWER)
-OPT_CFLAGS/dfa_sparc.o = $(OPT_CFLAGS/SLOWER)
-# CC drops core on systemDictionary.o in -xO4 mode
-OPT_CFLAGS/systemDictionary.o = $(OPT_CFLAGS/SLOWER)
-# SC5.0 bug 4284168
-OPT_CFLAGS/carRememberedSet.o = $(OPT_CFLAGS/O2)
-# Temporarily drop the optimization level for compiling
-# jniHandles.cpp to O3 from O4; see bug 4309181
-OPT_CFLAGS/jniHandles.o = $(OPT_CFLAGS/O2)
-# CC brings an US-II to its knees compiling the vmStructs asserts under -xO4
-OPT_CFLAGS/vmStructs.o = $(OPT_CFLAGS/O2)
-endif # COMPILER_REV_NUMERIC < 505
-else
-# Options for gcc
-OPT_CFLAGS/ad_sparc.o = $(OPT_CFLAGS/SLOWER)
-OPT_CFLAGS/dfa_sparc.o = $(OPT_CFLAGS/SLOWER)
-OPT_CFLAGS/systemDictionary.o = $(OPT_CFLAGS/SLOWER)
-OPT_CFLAGS/carRememberedSet.o = $(OPT_CFLAGS/O2)
-OPT_CFLAGS/jniHandles.o = $(OPT_CFLAGS/O2)
-OPT_CFLAGS/vmStructs.o = $(OPT_CFLAGS/O2)
-endif
-
-# File-specific adjustments to the PICFLAG, applicable only to SPARC,
-# which has a very tight limit on global constant references.
-
-# Old files which seemed hot at one point or another:
-#PICFLAG/runtime.o = $(PICFLAG/BETTER)
-#PICFLAG/generateOopMap.o = $(PICFLAG/BETTER)
-#PICFLAG/thread.o = $(PICFLAG/BETTER)
-#PICFLAG/parse2.o = $(PICFLAG/BETTER)
-#PICFLAG/parse1.o = $(PICFLAG/BETTER)
-#PICFLAG/universe.o = $(PICFLAG/BETTER)
-#PICFLAG/safepoint.o = $(PICFLAG/BETTER)
-#PICFLAG/parse3.o = $(PICFLAG/BETTER)
-#PICFLAG/compile.o = $(PICFLAG/BETTER)
-#PICFLAG/codeBlob.o = $(PICFLAG/BETTER)
-#PICFLAG/mutexLocker.o = $(PICFLAG/BETTER)
-#PICFLAG/nativeInst_sparc.o = $(PICFLAG/BETTER)
-#PICFLAG/methodLiveness.o = $(PICFLAG/BETTER)
-#PICFLAG/synchronizer.o = $(PICFLAG/BETTER)
-#PICFLAG/method.o = $(PICFLAG/BETTER)
-#PICFLAG/space.o = $(PICFLAG/BETTER)
-#PICFLAG/interpreterRT_sparc.o = $(PICFLAG/BETTER)
-#PICFLAG/generation.o = $(PICFLAG/BETTER)
-#PICFLAG/markSweep.o = $(PICFLAG/BETTER)
-#PICFLAG/parseHelper.o = $(PICFLAG/BETTER)
-
-# Confirmed by function-level profiling:
-PICFLAG/scavenge.o = $(PICFLAG/BETTER)
-PICFLAG/instanceKlass.o = $(PICFLAG/BETTER)
-PICFLAG/frame.o = $(PICFLAG/BETTER)
-PICFLAG/phaseX.o = $(PICFLAG/BETTER)
-PICFLAG/lookupCache.o = $(PICFLAG/BETTER)
-PICFLAG/chaitin.o = $(PICFLAG/BETTER)
-PICFLAG/type.o = $(PICFLAG/BETTER)
-PICFLAG/jvm.o = $(PICFLAG/BETTER)
-PICFLAG/jni.o = $(PICFLAG/BETTER)
-PICFLAG/matcher.o = $(PICFLAG/BETTER)
-
-# New from module-level profiling (trustworthy?):
-PICFLAG/rememberedSet.o = $(PICFLAG/BETTER)
-PICFLAG/frame_sparc.o = $(PICFLAG/BETTER)
-PICFLAG/live.o = $(PICFLAG/BETTER)
-PICFLAG/vectset.o = $(PICFLAG/BETTER)
-PICFLAG/objArrayKlass.o = $(PICFLAG/BETTER)
-PICFLAG/do_call.o = $(PICFLAG/BETTER)
-PICFLAG/loopnode.o = $(PICFLAG/BETTER)
-PICFLAG/cfgnode.o = $(PICFLAG/BETTER)
-PICFLAG/ifg.o = $(PICFLAG/BETTER)
-PICFLAG/vframe.o = $(PICFLAG/BETTER)
-PICFLAG/postaloc.o = $(PICFLAG/BETTER)
-PICFLAG/carRememberedSet.o = $(PICFLAG/BETTER)
-PICFLAG/gcm.o = $(PICFLAG/BETTER)
-PICFLAG/coalesce.o = $(PICFLAG/BETTER)
-PICFLAG/oop.o = $(PICFLAG/BETTER)
-PICFLAG/oopMap.o = $(PICFLAG/BETTER)
-PICFLAG/resourceArea.o = $(PICFLAG/BETTER)
-PICFLAG/node.o = $(PICFLAG/BETTER)
-PICFLAG/dict.o = $(PICFLAG/BETTER)
-PICFLAG/domgraph.o = $(PICFLAG/BETTER)
-PICFLAG/dfa_sparc.o = $(PICFLAG/BETTER)
-PICFLAG/block.o = $(PICFLAG/BETTER)
-PICFLAG/javaClasses.o = $(PICFLAG/BETTER)
-
-# New hot files:
-PICFLAG/classes.o = $(PICFLAG/BETTER)
-#PICFLAG/ad_sparc.o = $(PICFLAG/BETTER)
-PICFLAG/nmethod.o = $(PICFLAG/BETTER)
-PICFLAG/relocInfo.o = $(PICFLAG/BETTER)
-PICFLAG/codeBuffer_sparc.o = $(PICFLAG/BETTER)
-PICFLAG/callnode.o = $(PICFLAG/BETTER)
-PICFLAG/multnode.o = $(PICFLAG/BETTER)
-PICFLAG/os_solaris.o = $(PICFLAG/BETTER)
-PICFLAG/typeArrayKlass.o = $(PICFLAG/BETTER)
--- a/hotspot/make/solaris/makefiles/sparcWorks.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,565 +0,0 @@
-#
-# Copyright (c) 1998, 2016, 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.
-#
-# 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.
-#
-#
-
-# If a SPEC is not set already, then use these defaults.
-ifeq ($(SPEC),)
- # Compiler-specific flags for sparcworks.
- CC = cc
- CXX = CC
-
- # Note that this 'as' is an older version of the Sun Studio 'fbe', and will
- # use the older style options. The 'fbe' options will match 'cc' and 'CC'.
- AS = /usr/ccs/bin/as
-
- NM = /usr/ccs/bin/nm
- NAWK = /bin/nawk
-
- MCS = /usr/ccs/bin/mcs
- STRIP = /usr/ccs/bin/strip
-endif
-
-# Check for the versions of C++ and C compilers ($CXX and $CC) used.
-
-# Get the last thing on the line that looks like x.x+ (x is a digit).
-COMPILER_REV := \
-$(shell $(CXX) -V 2>&1 | sed -n 's/^.*[ ,\t]C++[ ,\t]\([1-9]\.[0-9][0-9]*\).*/\1/p')
-CC_COMPILER_REV := \
-$(shell $(CC) -V 2>&1 | sed -n 's/^.*[ ,\t]C[ ,\t]\([1-9]\.[0-9][0-9]*\).*/\1/p')
-
-# Pick which compiler is validated
-# Validated compiler for JDK9 is SS12.4 (5.13)
-VALIDATED_COMPILER_REVS := 5.13
-VALIDATED_CC_COMPILER_REVS := 5.13
-
-# Warning messages about not using the above validated versions
-ENFORCE_COMPILER_REV${ENFORCE_COMPILER_REV} := $(strip ${VALIDATED_COMPILER_REVS})
-ifeq ($(filter ${ENFORCE_COMPILER_REV},${COMPILER_REV}),)
-PRINTABLE_CC_REVS := $(subst $(shell echo ' '), or ,${ENFORCE_COMPILER_REV})
-dummy_var_to_enforce_compiler_rev := $(shell \
- echo >&2 WARNING: You are using CC version ${COMPILER_REV} and \
- should be using version ${PRINTABLE_CC_REVS}.; \
- echo >&2 Set ENFORCE_COMPILER_REV=${COMPILER_REV} to avoid this \
- warning.)
-endif
-
-ENFORCE_CC_COMPILER_REV${ENFORCE_CC_COMPILER_REV} := $(strip ${VALIDATED_CC_COMPILER_REVS})
-ifeq ($(filter ${ENFORCE_CC_COMPILER_REV},${CC_COMPILER_REV}),)
-PRINTABLE_C_REVS := $(subst $(shell echo ' '), or ,${ENFORCE_CC_COMPILER_REV})
-dummy_var_to_enforce_c_compiler_rev := $(shell \
- echo >&2 WARNING: You are using cc version ${CC_COMPILER_REV} and \
- should be using version ${PRINTABLE_C_REVS}.; \
- echo >&2 Set ENFORCE_CC_COMPILER_REV=${CC_COMPILER_REV} to avoid this \
- warning.)
-endif
-
-COMPILER_REV_NUMERIC := $(shell echo $(COMPILER_REV) | awk -F. '{ print $$1 * 100 + $$2 }')
-
-# Fail the build if __fabsf is used. __fabsf exists only in Solaris 8 2/04
-# and newer; objects with a dependency on this symbol will not run on older
-# Solaris 8.
-JVM_FAIL_IF_UNDEFINED = __fabsf
-
-JVM_CHECK_SYMBOLS = $(NM) -u -p $(LIBJVM.o) | \
- $(NAWK) -v f="${JVM_FAIL_IF_UNDEFINED}" \
- 'BEGIN { c=split(f,s); rc=0; } \
- /:$$/ { file = $$1; } \
- /[^:]$$/ { for(n=1;n<=c;++n) { \
- if($$1==s[n]) { \
- printf("JVM_CHECK_SYMBOLS: %s contains illegal symbol %s\n", \
- file,$$1); \
- rc=1; \
- } \
- } \
- } \
- END { exit rc; }'
-
-LINK_LIB.CXX/PRE_HOOK += $(JVM_CHECK_SYMBOLS) || exit 1;
-
-# New architecture options started in SS12 (5.9), we need both styles to build.
-# The older arch options for SS11 (5.8) or older and also for /usr/ccs/bin/as.
-# Note: default for 32bit sparc is now the same as v8plus, so the
-# settings below have changed all 32bit sparc builds to be v8plus.
-ARCHFLAG_OLD/sparc = -xarch=v8plus
-ARCHFLAG_NEW/sparc = -m32 -xarch=sparc
-ARCHFLAG_OLD/sparcv9 = -xarch=v9
-ARCHFLAG_NEW/sparcv9 = -m64 -xarch=sparc
-ARCHFLAG_OLD/i486 =
-ARCHFLAG_NEW/i486 = -m32
-ARCHFLAG_OLD/amd64 = -xarch=amd64
-ARCHFLAG_NEW/amd64 = -m64
-
-# Select the ARCHFLAGs and other SS12 (5.9) options
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1)
- ARCHFLAG/sparc = $(ARCHFLAG_NEW/sparc)
- ARCHFLAG/sparcv9 = $(ARCHFLAG_NEW/sparcv9)
- ARCHFLAG/i486 = $(ARCHFLAG_NEW/i486)
- ARCHFLAG/amd64 = $(ARCHFLAG_NEW/amd64)
-else
- ARCHFLAG/sparc = $(ARCHFLAG_OLD/sparc)
- ARCHFLAG/sparcv9 = $(ARCHFLAG_OLD/sparcv9)
- ARCHFLAG/i486 = $(ARCHFLAG_OLD/i486)
- ARCHFLAG/amd64 = $(ARCHFLAG_OLD/amd64)
-endif
-
-# ARCHFLAGS for the current build arch
-ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
-AS_ARCHFLAG = $(ARCHFLAG_OLD/$(BUILDARCH))
-
-# Optional sub-directory in /usr/lib where BUILDARCH libraries are kept.
-ISA_DIR=$(ISA_DIR/$(BUILDARCH))
-ISA_DIR/sparcv9=/sparcv9
-ISA_DIR/amd64=/amd64
-
-# Use these to work around compiler bugs:
-OPT_CFLAGS/SLOWER=-xO3
-OPT_CFLAGS/O2=-xO2
-OPT_CFLAGS/NOOPT=-xO1
-
-# Flags for creating the dependency files.
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1)
-DEPFLAGS = -xMMD -xMF $(DEP_DIR)/$(@:%=%.d)
-endif
-
-# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
-CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
-
-# Compiler warnings are treated as errors
-WARNINGS_ARE_ERRORS ?= -xwe
-CFLAGS_WARN = $(WARNINGS_ARE_ERRORS)
-
-################################################
-# Begin current (>=5.9) Forte compiler options #
-#################################################
-
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1)
-ifeq ($(Platform_arch), x86)
-OPT_CFLAGS/NO_TAIL_CALL_OPT = -Wu,-O~yz
-OPT_CCFLAGS/NO_TAIL_CALL_OPT = -Qoption ube -O~yz
-OPT_CFLAGS/stubGenerator_x86_32.o = $(OPT_CFLAGS) -xspace
-OPT_CFLAGS/stubGenerator_x86_64.o = $(OPT_CFLAGS) -xspace
-# The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
-# of OPT_CFLAGS. Restore it here.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/stubGenerator_x86_32.o += -g0 -xs
- OPT_CFLAGS/stubGenerator_x86_64.o += -g0 -xs
-endif
-endif # Platform_arch == x86
-ifeq ("${Platform_arch}", "sparc")
-OPT_CFLAGS/stubGenerator_sparc.o = $(OPT_CFLAGS) -xspace
-# The debug flag is added to OPT_CFLAGS, but lost in case of per-file overrides
-# of OPT_CFLAGS. Restore it here.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS/stubGenerator_sparc.o += -g0 -xs
-endif
-endif
-endif # COMPILER_REV_NUMERIC >= 509
-
-#################################################
-# Begin current (>=5.6) Forte compiler options #
-#################################################
-
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 506), 1)
-
-ifeq ("${Platform_arch}", "sparc")
-
-# We MUST allow data alignment of 4 for sparc (sparcv9 is ok at 8s)
-ifndef LP64
-CFLAGS += -xmemalign=4s
-endif
-
-endif
-
-endif
-
-#################################################
-# Begin current (>=5.5) Forte compiler options #
-#################################################
-
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 505), 1)
-
-CFLAGS += $(ARCHFLAG)
-AOUT_FLAGS += $(ARCHFLAG)
-LIB_FLAGS += $(ARCHFLAG)
-LFLAGS += $(ARCHFLAG)
-
-ifeq ("${Platform_arch}", "sparc")
-
-# Flags for Optimization
-
-# [phh] Commented out pending verification that we do indeed want
-# to potentially bias against u1 and u3 targets.
-#CFLAGS += -xchip=ultra2
-
-OPT_CFLAGS=-xO4 $(EXTRA_OPT_CFLAGS)
-
-endif # sparc
-
-ifeq ("${Platform_arch_model}", "x86_32")
-
-OPT_CFLAGS=-xtarget=pentium -xO4 $(EXTRA_OPT_CFLAGS)
-
-endif # 32bit x86
-
-ifeq ("${Platform_arch_model}", "x86_64")
-
-ASFLAGS += $(AS_ARCHFLAG)
-CFLAGS += $(ARCHFLAG/amd64)
-# this one seemed useless
-LFLAGS_VM += $(ARCHFLAG/amd64)
-# this one worked
-LFLAGS += $(ARCHFLAG/amd64)
-AOUT_FLAGS += $(ARCHFLAG/amd64)
-
-# -xO3 is faster than -xO4 on specjbb with SS10 compiler
-OPT_CFLAGS=-xO4 $(EXTRA_OPT_CFLAGS)
-
-endif # 64bit x86
-
-# Inline functions
-CFLAGS += $(GAMMADIR)/src/os_cpu/solaris_${Platform_arch}/vm/solaris_${Platform_arch_model}.il
-
-# no more exceptions
-CFLAGS/NOEX=-features=no%except
-
-
-# avoid compilation problems arising from fact that C++ compiler tries
-# to search for external template definition by just compiling additional
-# source files in th same context
-CFLAGS += -template=no%extdef
-
-# Reduce code bloat by reverting back to 5.0 behavior for static initializers
-CFLAGS += -features=no%split_init
-
-# Use -D_Crun_inline_placement so we don't get references to
-# __1c2n6FIpv_0_ or void*operator new(unsigned,void*)
-# This avoids the hard requirement of the newer Solaris C++ runtime patches.
-# NOTE: This is an undocumented feature of the SS10 compiler. See 6306698.
-CFLAGS += -D_Crun_inline_placement
-
-# PIC is safer for SPARC, and is considerably slower
-# a file foo.o which wants to compile -pic can set "PICFLAG/foo.o = -PIC"
-PICFLAG = -KPIC
-PICFLAG/DEFAULT = $(PICFLAG)
-# [RGV] Need to figure which files to remove to get link to work
-#PICFLAG/BETTER = -pic
-PICFLAG/BETTER = $(PICFLAG/DEFAULT)
-PICFLAG/BYFILE = $(PICFLAG/$@)$(PICFLAG/DEFAULT$(PICFLAG/$@))
-
-# Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
-MAPFLAG = -M FILENAME
-
-# Use $(SONAMEFLAG:SONAME=soname) to specify the intrinsic name of a shared obj
-SONAMEFLAG = -h SONAME
-
-# Build shared library
-SHARED_FLAG = -G
-
-# We don't need libCstd.so and librwtools7.so, only libCrun.so
-CFLAGS += -library=%none
-LFLAGS += -library=%none
-
-LFLAGS += -mt
-
-endif # COMPILER_REV_NUMERIC >= 505
-
-######################################
-# End 5.5 Forte compiler options #
-######################################
-
-######################################
-# Begin 5.2 Forte compiler options #
-######################################
-
-ifeq ($(COMPILER_REV_NUMERIC), 502)
-
-CFLAGS += $(ARCHFLAG)
-AOUT_FLAGS += $(ARCHFLAG)
-LIB_FLAGS += $(ARCHFLAG)
-LFLAGS += $(ARCHFLAG)
-
-ifeq ("${Platform_arch}", "sparc")
-
-# Flags for Optimization
-
-# [phh] Commented out pending verification that we do indeed want
-# to potentially bias against u1 and u3 targets.
-#CFLAGS += -xchip=ultra2
-
-ifdef LP64
-# SC5.0 tools on v9 are flakey at -xO4
-# [phh] Is this still true for 6.1?
-OPT_CFLAGS=-xO3 $(EXTRA_OPT_CFLAGS)
-else
-OPT_CFLAGS=-xO4 $(EXTRA_OPT_CFLAGS)
-endif
-
-endif # sparc
-
-ifeq ("${Platform_arch_model}", "x86_32")
-
-OPT_CFLAGS=-xtarget=pentium $(EXTRA_OPT_CFLAGS)
-
-# SC5.0 tools on x86 are flakey at -xO4
-# [phh] Is this still true for 6.1?
-OPT_CFLAGS+=-xO3
-
-endif # 32bit x86
-
-# no more exceptions
-CFLAGS/NOEX=-noex
-
-# Inline functions
-CFLAGS += $(GAMMADIR)/src/os_cpu/solaris_${Platform_arch}/vm/solaris_${Platform_arch_model}.il
-
-# Reduce code bloat by reverting back to 5.0 behavior for static initializers
-CFLAGS += -Qoption ccfe -one_static_init
-
-# PIC is safer for SPARC, and is considerably slower
-# a file foo.o which wants to compile -pic can set "PICFLAG/foo.o = -PIC"
-PICFLAG = -KPIC
-PICFLAG/DEFAULT = $(PICFLAG)
-# [RGV] Need to figure which files to remove to get link to work
-#PICFLAG/BETTER = -pic
-PICFLAG/BETTER = $(PICFLAG/DEFAULT)
-PICFLAG/BYFILE = $(PICFLAG/$@)$(PICFLAG/DEFAULT$(PICFLAG/$@))
-
-# Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
-MAPFLAG = -M FILENAME
-
-# Use $(SONAMEFLAG:SONAME=soname) to specify the intrinsic name of a shared obj
-SONAMEFLAG = -h SONAME
-
-# Build shared library
-SHARED_FLAG = -G
-
-# Would be better if these weren't needed, since we link with CC, but
-# at present removing them causes run-time errors
-LFLAGS += -library=Crun
-LIBS += -library=Crun -lCrun
-
-endif # COMPILER_REV_NUMERIC == 502
-
-##################################
-# End 5.2 Forte compiler options #
-##################################
-
-##################################
-# Begin old 5.1 compiler options #
-##################################
-ifeq ($(COMPILER_REV_NUMERIC), 501)
-
-_JUNK_ := $(shell echo >&2 \
- "*** ERROR: sparkWorks.make incomplete for 5.1 compiler")
- @exit 1
-endif
-##################################
-# End old 5.1 compiler options #
-##################################
-
-##################################
-# Begin old 5.0 compiler options #
-##################################
-
-ifeq (${COMPILER_REV_NUMERIC}, 500)
-
-# Had to hoist this higher apparently because of other changes. Must
-# come before -xarch specification.
-# NOTE: native says optimize for the machine doing the compile, bad news.
-CFLAGS += -xtarget=native
-
-CFLAGS += $(ARCHFLAG)
-AOUT_FLAGS += $(ARCHFLAG)
-LIB_FLAGS += $(ARCHFLAG)
-LFLAGS += $(ARCHFLAG)
-
-CFLAGS += -library=iostream
-LFLAGS += -library=iostream -library=Crun
-LIBS += -library=iostream -library=Crun -lCrun
-
-# Flags for Optimization
-ifdef LP64
-# SC5.0 tools on v9 are flakey at -xO4
-OPT_CFLAGS=-xO3 $(EXTRA_OPT_CFLAGS)
-else
-OPT_CFLAGS=-xO4 $(EXTRA_OPT_CFLAGS)
-endif
-
-ifeq ("${Platform_arch}", "sparc")
-
-CFLAGS += $(GAMMADIR)/src/os_cpu/solaris_sparc/vm/atomic_solaris_sparc.il
-
-endif # sparc
-
-ifeq ("${Platform_arch_model}", "x86_32")
-OPT_CFLAGS=-xtarget=pentium $(EXTRA_OPT_CFLAGS)
-ifeq ("${COMPILER_REV_NUMERIC}", "500")
-# SC5.0 tools on x86 are flakey at -xO4
-OPT_CFLAGS+=-xO3
-else
-OPT_CFLAGS+=-xO4
-endif
-
-CFLAGS += $(GAMMADIR)/src/os_cpu/solaris_x86/vm/solaris_x86_32.il
-
-endif # 32bit x86
-
-# The following options run into misaligned ldd problem (raj)
-#OPT_CFLAGS = -fast -O4 $(ARCHFLAG/sparc) -xchip=ultra
-
-# no more exceptions
-CFLAGS/NOEX=-noex
-
-# PIC is safer for SPARC, and is considerably slower
-# a file foo.o which wants to compile -pic can set "PICFLAG/foo.o = -PIC"
-PICFLAG = -PIC
-PICFLAG/DEFAULT = $(PICFLAG)
-# [RGV] Need to figure which files to remove to get link to work
-#PICFLAG/BETTER = -pic
-PICFLAG/BETTER = $(PICFLAG/DEFAULT)
-PICFLAG/BYFILE = $(PICFLAG/$@)$(PICFLAG/DEFAULT$(PICFLAG/$@))
-
-endif # COMPILER_REV_NUMERIC = 500
-
-################################
-# End old 5.0 compiler options #
-################################
-
-ifeq ("${COMPILER_REV_NUMERIC}", "402")
-# 4.2 COMPILERS SHOULD NO LONGER BE USED
-_JUNK_ := $(shell echo >&2 \
- "*** ERROR: SC4.2 compilers are not supported by this code base!")
- @exit 1
-endif
-
-# do not include shared lib path in a.outs
-AOUT_FLAGS += -norunpath
-LFLAGS_VM = -norunpath -z noversion
-
-# need position-indep-code for shared libraries
-# (ild appears to get errors on PIC code, so we'll try non-PIC for debug)
-ifeq ($(PICFLAGS),DEFAULT)
-VM_PICFLAG/LIBJVM = $(PICFLAG/DEFAULT)
-else
-VM_PICFLAG/LIBJVM = $(PICFLAG/BYFILE)
-endif
-VM_PICFLAG/AOUT =
-
-VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO))
-CFLAGS += $(VM_PICFLAG)
-
-# less dynamic linking (no PLTs, please)
-#LIB_FLAGS += $(LINK_MODE)
-# %%%%% despite -znodefs, -Bsymbolic gets link errors -- Rose
-
-LINK_MODE = $(LINK_MODE/$(VERSION))
-LINK_MODE/debug =
-LINK_MODE/optimized = -Bsymbolic -znodefs
-
-# Have thread local errnos
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 505), 1)
-CFLAGS += -mt
-else
-CFLAGS += -D_REENTRANT
-endif
-
-ifdef CC_INTERP
-# C++ Interpreter
-CFLAGS += -DCC_INTERP
-endif
-
-# Flags for Debugging
-# The -g0 setting allows the C++ frontend to inline, which is a big win.
-# The -xs setting disables 'lazy debug info' which puts everything in
-# the .so instead of requiring the '.o' files.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- OPT_CFLAGS += -g0 -xs
-endif
-DEBUG_CFLAGS = -g
-FASTDEBUG_CFLAGS = -g0
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- DEBUG_CFLAGS += -xs
- FASTDEBUG_CFLAGS += -xs
-endif
-
-# Enable the following CFLAGS additions if you need to compare the
-# built ELF objects.
-#
-# The -g option makes static data global and the "-Qoption ccfe
-# -xglobalstatic" option tells the compiler to not globalize static
-# data using a unique globalization prefix. Instead force the use of
-# a static globalization prefix based on the source filepath so the
-# objects from two identical compilations are the same.
-# EXTRA_CFLAGS only covers vm_version.cpp for some reason
-#EXTRA_CFLAGS += -Qoption ccfe -xglobalstatic
-#OPT_CFLAGS += -Qoption ccfe -xglobalstatic
-#DEBUG_CFLAGS += -Qoption ccfe -xglobalstatic
-#FASTDEBUG_CFLAGS += -Qoption ccfe -xglobalstatic
-
-ifeq (${COMPILER_REV_NUMERIC}, 502)
-COMPILER_DATE := $(shell $(CXX) -V 2>&1 | sed -n '/^.*[ ]C++[ ]\([1-9]\.[0-9][0-9]*\)/p' | awk '{ print $$NF; }')
-ifeq (${COMPILER_DATE}, 2001/01/31)
-# disable -g0 in fastdebug since SC6.1 dated 2001/01/31 seems to be buggy
-# use an innocuous value because it will get -g if it's empty
-FASTDEBUG_CFLAGS = -c
-endif
-endif
-
-# Uncomment or 'gmake CFLAGS_BROWSE=-sbfast' to get source browser information.
-# CFLAGS_BROWSE = -sbfast
-CFLAGS += $(CFLAGS_BROWSE)
-
-# ILD is gone as of SS11 (5.8), not supportted in SS10 (5.7)
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \< 507), 1)
- # use ild when debugging (but when optimizing we want reproducible results)
- ILDFLAG = $(ILDFLAG/$(VERSION))
- ILDFLAG/debug = -xildon
- ILDFLAG/optimized =
- AOUT_FLAGS += $(ILDFLAG)
-endif
-
-# Where to put the *.o files (a.out, or shared library)?
-LINK_INTO = $(LINK_INTO/$(VERSION))
-LINK_INTO/debug = LIBJVM
-LINK_INTO/optimized = LIBJVM
-
-# We link the debug version into the a.out because:
-# 1. ild works on a.out but not shared libraries, and using ild
-# can cut rebuild times by 25% for small changes. (ILD is gone in SS11)
-# 2. dbx cannot gracefully set breakpoints in shared libraries
-#
-
-# apply this setting to link into the shared library even in the debug version:
-ifdef LP64
-LINK_INTO = LIBJVM
-else
-#LINK_INTO = LIBJVM
-endif
-
-# Also, strip debug and line number information (worth about 1.7Mb).
-# If we can create .debuginfo files, then the VM is stripped in vm.make
-# and this macro is not used.
-STRIP_LIB.CXX/POST_HOOK = $(STRIP) -x $@ || exit 1;
-# STRIP_LIB.CXX/POST_HOOK is incorporated into LINK_LIB.CXX/POST_HOOK
-# in certain configurations, such as product.make. Other configurations,
-# such as debug.make, do not include the strip operation.
--- a/hotspot/make/solaris/makefiles/sparcv9.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-ASFLAGS += $(AS_ARCHFLAG)
-
-ifeq ("${Platform_compiler}", "sparcWorks")
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \< 505), 1)
-# When optimized fully, stubGenerator_sparc.cpp
-# has bogus code for the routine
-# StubGenerator::generate_flush_callers_register_windows()
-OPT_CFLAGS/stubGenerator_sparc.o = $(OPT_CFLAGS/SLOWER)
-
-# For now ad_sparc file is compiled with -O2 %%%% remove when adlc is fixed
-OPT_CFLAGS/ad_sparc.o = $(OPT_CFLAGS/SLOWER)
-OPT_CFLAGS/dfa_sparc.o = $(OPT_CFLAGS/SLOWER)
-
-# CC brings an US-II to its knees compiling the vmStructs asserts under -xO4
-OPT_CFLAGS/vmStructs.o = $(OPT_CFLAGS/O2)
-endif
-
-else
-#Options for gcc
-OPT_CFLAGS/stubGenerator_sparc.o = $(OPT_CFLAGS/SLOWER)
-OPT_CFLAGS/ad_sparc.o = $(OPT_CFLAGS/SLOWER)
-OPT_CFLAGS/dfa_sparc.o = $(OPT_CFLAGS/SLOWER)
-OPT_CFLAGS/vmStructs.o = $(OPT_CFLAGS/O2)
-endif
--- a/hotspot/make/solaris/makefiles/tiered.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-#
-# Copyright (c) 2006, 2008, 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.
-#
-# 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.
-#
-#
-
-# Sets make macros for making tiered version of VM
-
-TYPE=TIERED
-
-VM_SUBDIR = server
-
-CFLAGS += -DCOMPILER2 -DCOMPILER1
--- a/hotspot/make/solaris/makefiles/top.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,141 +0,0 @@
-#
-# Copyright (c) 1998, 2014, 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.
-#
-# 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.
-#
-#
-
-# top.make is included in the Makefile in the build directories.
-# It DOES NOT include the vm dependency info in order to be faster.
-# Its main job is to implement the incremental form of make lists.
-# It also:
-# -builds and runs adlc via adlc.make
-# -generates JVMTI source and docs via jvmti.make (JSR-163)
-
-# It assumes the following flags are set:
-# CFLAGS Platform_file, Src_Dirs_I, Src_Dirs_V, SYSDEFS, AOUT, Jvm_Obj_Files
-
-# -- D. Ungar (5/97) from a file by Bill Bush
-
-# Don't override the built-in $(MAKE).
-# Instead, use "gmake" (or "gnumake") from the command line. --Rose
-#MAKE = gmake
-
-include $(GAMMADIR)/make/altsrc.make
-
-GENERATED = ../generated
-VM = $(GAMMADIR)/src/share/vm
-Plat_File = $(Platform_file)
-CDG = cd $(GENERATED);
-
-Cached_plat = $(GENERATED)/platform.current
-
-AD_Dir = $(GENERATED)/adfiles
-ADLC = $(AD_Dir)/adlc
-AD_Spec = $(call altsrc-replace,$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad)
-AD_Src = $(call altsrc-replace,$(HS_COMMON_SRC)/share/vm/adlc)
-AD_Names = ad_$(Platform_arch_model).hpp ad_$(Platform_arch_model).cpp
-AD_Files = $(AD_Names:%=$(AD_Dir)/%)
-
-# AD_Files_If_Required/COMPILER1 = ad_stuff
-AD_Files_If_Required/COMPILER2 = ad_stuff
-AD_Files_If_Required/TIERED = ad_stuff
-AD_Files_If_Required = $(AD_Files_If_Required/$(TYPE))
-
-# Wierd argument adjustment for "gnumake -j..."
-adjust-mflags = $(GENERATED)/adjust-mflags
-# If SPEC is set, it's from configure and it's already controlling concurrency
-# for us. Skip setting -j with HOTSPOT_BUILD_JOBS.
-ifeq ($(SPEC), )
- MFLAGS-adjusted = -r `$(adjust-mflags) "$(MFLAGS)" "$(HOTSPOT_BUILD_JOBS)"`
-else
- MFLAGS-adjusted = -r $(MFLAGS)
-endif
-
-
-# default target: update lists, make vm
-# done in stages to force sequential order with parallel make
-#
-
-default: vm_build_preliminaries the_vm
- @echo All done.
-
-# This is an explicit dependency for the sake of parallel makes.
-vm_build_preliminaries: checks $(Cached_plat) $(AD_Files_If_Required) jvmti_stuff trace_stuff dtrace_stuff
- @# We need a null action here, so implicit rules don't get consulted.
-
-$(Cached_plat): $(Plat_File)
- $(CDG) $(CP) $(Plat_File) $(Cached_plat)
-
-# make AD files as necessary
-ad_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f adlc.make $(MFLAGS-adjusted)
-
-# generate JVMTI files from the spec
-jvmti_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f jvmti.make $(MFLAGS-adjusted)
-
-# generate trace files
-trace_stuff: jvmti_stuff $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f trace.make $(MFLAGS-adjusted)
-
-dtrace_stuff: $(Cached_plat) $(adjust-mflags)
- @$(MAKE) -f dtrace.make dtrace_gen_headers $(MFLAGS-adjusted) GENERATED=$(GENERATED)
-
-# and the VM: must use other makefile with dependencies included
-
-# We have to go to great lengths to get control over the -jN argument
-# to the recursive invocation of vm.make. The problem is that gnumake
-# resets -jN to -j1 for recursive runs. (How helpful.)
-# Note that the user must specify the desired parallelism level via a
-# command-line or environment variable name HOTSPOT_BUILD_JOBS.
-$(adjust-mflags): $(GAMMADIR)/make/$(Platform_os_family)/makefiles/adjust-mflags.sh
- @+rm -f $@ $@+
- @+cat $< > $@+
- @+chmod +x $@+
- @+mv $@+ $@
-
-the_vm: vm_build_preliminaries $(adjust-mflags)
- @$(MAKE) -f vm.make $(MFLAGS-adjusted)
-
-install: the_vm
- @$(MAKE) -f vm.make $@
-
-# next rules support "make foo.[oi]"
-
-%.o %.i %.s:
- $(MAKE) -f vm.make $(MFLAGS) $@
- #$(MAKE) -f vm.make $@
-
-# this should force everything to be rebuilt
-clean:
- rm -f $(GENERATED)/*.class
- $(MAKE) -f vm.make $(MFLAGS) clean
-
-# just in case it doesn't, this should do it
-realclean:
- $(MAKE) -f vm.make $(MFLAGS) clean
- rm -fr $(GENERATED)
-
-.PHONY: default vm_build_preliminaries
-.PHONY: lists ad_stuff jvmti_stuff trace_stuff the_vm clean realclean
-.PHONY: checks check_os_version install
-
-.NOTPARALLEL:
--- a/hotspot/make/solaris/makefiles/trace.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-#
-# Copyright (c) 2003, 2016, 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.
-#
-# 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.
-#
-#
-
-# This makefile (trace.make) is included from the trace.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate trace files.
-
-include $(GAMMADIR)/make/solaris/makefiles/rules.make
-include $(GAMMADIR)/make/altsrc.make
-
-# #########################################################################
-
-HAS_ALT_SRC := false
-ifndef OPENJDK
- ifneq ($(wildcard $(HS_ALT_SRC)/share/vm/trace), )
- HAS_ALT_SRC := true
- endif
-endif
-
-TOPDIR = $(shell echo `pwd`)
-GENERATED = $(TOPDIR)/../generated
-JvmtiOutDir = $(GENERATED)/jvmtifiles
-TraceOutDir = $(GENERATED)/tracefiles
-
-TraceAltSrcDir = $(HS_ALT_SRC)/share/vm/trace
-TraceSrcDir = $(HS_COMMON_SRC)/share/vm/trace
-
-# set VPATH so make knows where to look for source files
-Src_Dirs_V += $(TraceSrcDir) $(TraceAltSrcDir)
-VPATH += $(Src_Dirs_V:%=%:)
-
-TraceGeneratedNames = \
- traceEventClasses.hpp \
- traceEventIds.hpp \
- traceTypes.hpp
-
-ifeq ($(HAS_ALT_SRC), true)
-TraceGeneratedNames += \
- traceRequestables.hpp \
- traceEventControl.hpp
-endif
-
-TraceGeneratedFiles = $(TraceGeneratedNames:%=$(TraceOutDir)/%)
-
-XSLT = $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-TraceXml = $(TraceSrcDir)/trace.xml
-ifeq ($(HAS_ALT_SRC), true)
- TraceXml = $(TraceAltSrcDir)/trace.xml
-endif
-
-XML_DEPS = $(TraceXml) $(TraceSrcDir)/tracetypes.xml \
- $(TraceSrcDir)/trace.dtd $(TraceSrcDir)/xinclude.mod \
- $(TraceSrcDir)/tracerelationdecls.xml $(TraceSrcDir)/traceevents.xml
-ifeq ($(HAS_ALT_SRC), true)
- XML_DEPS += $(TraceAltSrcDir)/traceeventscustom.xml \
- $(TraceAltSrcDir)/traceeventtypes.xml
-endif
-
-.PHONY: all clean cleanall
-
-# #########################################################################
-
-all: $(TraceGeneratedFiles)
-
-GENERATE_CODE= \
- $(QUIETLY) echo $(LOG_INFO) Generating $@; \
- $(XSLT) -IN $(word 1,$^) -XSL $(word 2,$^) -OUT $@
-
-$(TraceOutDir)/traceEventIds.hpp: $(TraceXml) $(TraceSrcDir)/traceEventIds.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceTypes.hpp: $(TraceXml) $(TraceSrcDir)/traceTypes.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-ifeq ($(HAS_ALT_SRC), false)
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceXml) $(TraceSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-else
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceXml) $(TraceAltSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceRequestables.hpp: $(TraceXml) $(TraceAltSrcDir)/traceRequestables.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-$(TraceOutDir)/traceEventControl.hpp: $(TraceXml) $(TraceAltSrcDir)/traceEventControl.xsl $(XML_DEPS)
- $(GENERATE_CODE)
-
-endif
-
-# #########################################################################
-
-clean cleanall:
- rm $(TraceGeneratedFiles)
--- a/hotspot/make/solaris/makefiles/vm.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,352 +0,0 @@
-#
-# Copyright (c) 1998, 2015, 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.
-#
-# 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.
-#
-#
-
-# Rules to build JVM and related libraries, included from vm.make in the build
-# directory.
-
-# Common build rules.
-MAKEFILES_DIR=$(GAMMADIR)/make/$(Platform_os_family)/makefiles
-include $(MAKEFILES_DIR)/rules.make
-include $(GAMMADIR)/make/altsrc.make
-
-default: build
-
-#----------------------------------------------------------------------
-# Defs
-
-GENERATED = ../generated
-DEP_DIR = $(GENERATED)/dependencies
-
-# reads the generated files defining the set of .o's and the .o .h dependencies
--include $(DEP_DIR)/*.d
-
-# read machine-specific adjustments (%%% should do this via buildtree.make?)
-include $(MAKEFILES_DIR)/$(BUILDARCH).make
-
-# set VPATH so make knows where to look for source files
-# Src_Dirs_V is everything in src/share/vm/*, plus the right os/*/vm and cpu/*/vm
-# The adfiles directory contains ad_<arch>.[ch]pp.
-# The jvmtifiles directory contains jvmti*.[ch]pp
-Src_Dirs_V += $(GENERATED)/adfiles $(GENERATED)/jvmtifiles $(GENERATED)/tracefiles
-VPATH += $(Src_Dirs_V:%=%:)
-
-# set INCLUDES for C preprocessor
-Src_Dirs_I += $(GENERATED)
-INCLUDES += $(Src_Dirs_I:%=-I%)
-
-# SYMFLAG is used by {dtrace,jsig}.make.
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- # always build with debug info when we can create .debuginfo files
- # and disable 'lazy debug info' so the .so has everything.
- SYMFLAG = -g -xs
-else
- ifeq (${VERSION}, debug)
- SYMFLAG = -g
- else
- SYMFLAG =
- endif
-endif
-
-# The following variables are defined in the generated flags.make file.
-JDK_VER_DEFS = -DVERSION_MAJOR=$(VERSION_MAJOR) \
- -DVERSION_MINOR=$(VERSION_MINOR) \
- -DVERSION_SECURITY=$(VERSION_SECURITY) \
- -DVERSION_PATCH=$(VERSION_PATCH) \
- -DVERSION_BUILD=$(VERSION_BUILD)
-VM_VER_DEFS = -DHOTSPOT_VERSION_STRING="\"$(HOTSPOT_VERSION_STRING)\"" \
- -DVERSION_STRING="\"$(VERSION_STRING)\"" \
- -DDEBUG_LEVEL="\"$(DEBUG_LEVEL)\"" \
- $(JDK_VER_DEFS)
-HS_LIB_ARCH = -DHOTSPOT_LIB_ARCH=\"$(LIBARCH)\"
-BUILD_USER = -DHOTSPOT_BUILD_USER="\"$(HOTSPOT_BUILD_USER)\""
-VM_DISTRO = -DHOTSPOT_VM_DISTRO="\"$(HOTSPOT_VM_DISTRO)\""
-
-CXXFLAGS = \
- ${SYSDEFS} \
- ${INCLUDES} \
- ${BUILD_USER} \
- ${HS_LIB_ARCH} \
- ${VM_DISTRO}
-
-# This is VERY important! The version define must only be supplied to vm_version.o
-# If not, ccache will not re-use the cache at all, since the version string might contain
-# a time and date.
-CXXFLAGS/vm_version.o += ${VM_VER_DEFS}
-
-CXXFLAGS/BYFILE = $(CXXFLAGS/$@)
-
-# File specific flags
-CXXFLAGS += $(CXXFLAGS/BYFILE)
-
-# Large File Support
-ifneq ($(LP64), 1)
-CXXFLAGS/ostream.o += -D_FILE_OFFSET_BITS=64
-endif # ifneq ($(LP64), 1)
-
-# CFLAGS_WARN holds compiler options to suppress/enable warnings.
-CFLAGS += $(CFLAGS_WARN)
-
-# Do not use C++ exception handling
-CFLAGS += $(CFLAGS/NOEX)
-
-# Extra flags from gnumake's invocation or environment
-CFLAGS += $(EXTRA_CFLAGS)
-
-# Math Library (libm.so), do not use -lm.
-# There might be two versions of libm.so on the build system:
-# libm.so.1 and libm.so.2, and we want libm.so.1.
-# Depending on the Solaris release being used to build with,
-# /usr/lib/libm.so could point at a libm.so.2, so we are
-# explicit here so that the libjvm.so you have built will work on an
-# older Solaris release that might not have libm.so.2.
-# This is a critical factor in allowing builds on Solaris 10 or newer
-# to run on Solaris 8 or 9.
-#
-LIBM=/usr/lib$(ISA_DIR)/libm.so.1
-
-ifeq ("${Platform_compiler}", "sparcWorks")
-# The whole megilla:
-ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 505), 1)
-# Old Comment: List the libraries in the order the compiler was designed for
-# Not sure what the 'designed for' comment is referring too above.
-# The order may not be too significant anymore, but I have placed this
-# older libm before libCrun, just to make sure it's found and used first.
-LIBS += -lsocket -lsched -ldl $(LIBM) -lCrun -lthread -ldoor -lc -ldemangle -lnsl
-else
-ifeq ($(COMPILER_REV_NUMERIC), 502)
-# SC6.1 has it's own libm.so: specifying anything else provokes a name conflict.
-LIBS += -ldl -lthread -lsocket -lm -lsched -ldoor -ldemangle
-else
-LIBS += -ldl -lthread -lsocket $(LIBM) -lsched -ldoor -ldemangle
-endif # 502
-endif # 505
-else
-LIBS += -lsocket -lsched -ldl $(LIBM) -lthread -lc -ldemangle
-endif # sparcWorks
-
-LIBS += -lkstat -lrt
-
-# By default, link the *.o into the library, not the executable.
-LINK_INTO$(LINK_INTO) = LIBJVM
-
-JDK_LIBDIR = $(JAVA_HOME)/lib/$(LIBARCH)
-
-#----------------------------------------------------------------------
-# jvm_db & dtrace
-include $(MAKEFILES_DIR)/dtrace.make
-
-#----------------------------------------------------------------------
-# JVM
-
-JVM = jvm
-LIBJVM = lib$(JVM).so
-
-LIBJVM_DEBUGINFO = lib$(JVM).debuginfo
-LIBJVM_DIZ = lib$(JVM).diz
-
-SPECIAL_PATHS:=adlc c1 dist gc opto shark libadt
-
-SOURCE_PATHS=\
- $(shell find $(HS_COMMON_SRC)/share/vm/* -type d \! \
- \( -name DUMMY $(foreach dir,$(SPECIAL_PATHS),-o -name $(dir)) \))
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os/$(Platform_os_family)/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os/posix/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/cpu/$(Platform_arch)/vm
-SOURCE_PATHS+=$(HS_COMMON_SRC)/os_cpu/$(Platform_os_arch)/vm
-
-CORE_PATHS=$(foreach path,$(SOURCE_PATHS),$(call altsrc,$(path)) $(path))
-CORE_PATHS+=$(GENERATED)/jvmtifiles $(GENERATED)/tracefiles
-
-ifneq ($(INCLUDE_TRACE), false)
-CORE_PATHS+=$(shell if [ -d $(HS_ALT_SRC)/share/vm/jfr ]; then \
- find $(HS_ALT_SRC)/share/vm/jfr -type d; \
- fi)
-endif
-
-COMPILER1_PATHS := $(call altsrc,$(HS_COMMON_SRC)/share/vm/c1)
-COMPILER1_PATHS += $(HS_COMMON_SRC)/share/vm/c1
-
-COMPILER2_PATHS := $(call altsrc,$(HS_COMMON_SRC)/share/vm/opto)
-COMPILER2_PATHS += $(call altsrc,$(HS_COMMON_SRC)/share/vm/libadt)
-COMPILER2_PATHS += $(HS_COMMON_SRC)/share/vm/opto
-COMPILER2_PATHS += $(HS_COMMON_SRC)/share/vm/libadt
-COMPILER2_PATHS += $(GENERATED)/adfiles
-
-# Include dirs per type.
-Src_Dirs/CORE := $(CORE_PATHS)
-Src_Dirs/COMPILER1 := $(CORE_PATHS) $(COMPILER1_PATHS)
-Src_Dirs/COMPILER2 := $(CORE_PATHS) $(COMPILER2_PATHS)
-Src_Dirs/TIERED := $(CORE_PATHS) $(COMPILER1_PATHS) $(COMPILER2_PATHS)
-Src_Dirs/ZERO := $(CORE_PATHS)
-Src_Dirs/SHARK := $(CORE_PATHS) $(SHARK_PATHS)
-Src_Dirs := $(Src_Dirs/$(TYPE))
-
-COMPILER2_SPECIFIC_FILES := opto libadt bcEscapeAnalyzer.cpp c2_\* runtime_\*
-COMPILER1_SPECIFIC_FILES := c1_\*
-SHARK_SPECIFIC_FILES := shark
-ZERO_SPECIFIC_FILES := zero
-
-# Always exclude these.
-Src_Files_EXCLUDE += dtrace jsig.c jvmtiEnvRecommended.cpp jvmtiEnvStub.cpp
-
-# Exclude per type.
-Src_Files_EXCLUDE/CORE := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/COMPILER1 := $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/COMPILER2 := $(COMPILER1_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES)
-Src_Files_EXCLUDE/TIERED := $(ZERO_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES)
-Src_Files_EXCLUDE/ZERO := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(SHARK_SPECIFIC_FILES) ciTypeFlow.cpp
-Src_Files_EXCLUDE/SHARK := $(COMPILER1_SPECIFIC_FILES) $(COMPILER2_SPECIFIC_FILES) $(ZERO_SPECIFIC_FILES)
-
-Src_Files_EXCLUDE += $(Src_Files_EXCLUDE/$(TYPE))
-
-# Special handling of arch model.
-ifeq ($(Platform_arch_model), x86_32)
-Src_Files_EXCLUDE += \*x86_64\*
-endif
-ifeq ($(Platform_arch_model), x86_64)
-Src_Files_EXCLUDE += \*x86_32\*
-endif
-
-# Locate all source files in the given directory, excluding files in Src_Files_EXCLUDE.
-define findsrc
- $(notdir $(shell find $(1)/. ! -name . -prune \
- -a \( -name \*.c -o -name \*.cpp -o -name \*.s \) \
- -a ! \( -name DUMMY $(addprefix -o -name ,$(Src_Files_EXCLUDE)) \)))
-endef
-
-Src_Files := $(foreach e,$(Src_Dirs),$(call findsrc,$(e)))
-
-Obj_Files = $(sort $(addsuffix .o,$(basename $(Src_Files))))
-
-JVM_OBJ_FILES = $(Obj_Files) $(DTRACE_OBJS)
-
-vm_version.o: $(filter-out vm_version.o,$(JVM_OBJ_FILES))
-
-MAPFILE_SHARE := $(GAMMADIR)/make/share/makefiles/mapfile-vers
-
-MAPFILE_EXT_SRC := $(HS_ALT_MAKE)/share/makefiles/mapfile-ext
-ifneq ("$(wildcard $(MAPFILE_EXT_SRC))","")
-MAPFILE_EXT := $(MAPFILE_EXT_SRC)
-endif
-
-mapfile : $(MAPFILE) $(MAPFILE_SHARE) vm.def $(MAPFILE_EXT)
- rm -f $@
- cat $(MAPFILE) $(MAPFILE_DTRACE_OPT) \
- | $(NAWK) '{ \
- if ($$0 ~ "INSERT VTABLE SYMBOLS HERE") { \
- system ("cat ${MAPFILE_SHARE} $(MAPFILE_EXT) vm.def"); \
- } else { \
- print $$0; \
- } \
- }' > $@
-
-mapfile_extended : mapfile $(MAPFILE_DTRACE_OPT)
- rm -f $@
- cat $^ > $@
-
-vm.def: $(Obj_Files)
- sh $(GAMMADIR)/make/solaris/makefiles/build_vm_def.sh *.o > $@
-
-
-ifeq ($(LINK_INTO),AOUT)
- LIBJVM.o =
- LIBJVM_MAPFILE =
- LIBS_VM = $(LIBS)
-else
- LIBJVM.o = $(JVM_OBJ_FILES)
- LIBJVM_MAPFILE$(LDNOMAP) = mapfile_extended
- LFLAGS_VM$(LDNOMAP) += $(MAPFLAG:FILENAME=$(LIBJVM_MAPFILE))
- LFLAGS_VM += $(SONAMEFLAG:SONAME=$(LIBJVM))
- LFLAGS_VM += -Wl,-z,defs
-ifndef USE_GCC
- LIBS_VM = $(LIBS)
-else
- # JVM is statically linked with libgcc[_s] and libstdc++; this is needed to
- # get around library dependency and compatibility issues. Must use gcc not
- # g++ to link.
- LFLAGS_VM += $(STATIC_LIBGCC)
- LIBS_VM += $(STATIC_STDCXX) $(LIBS)
-endif
-endif
-
-LFLAGS_VM += $(EXTRA_LDFLAGS)
-
-ifdef USE_GCC
-LINK_VM = $(LINK_LIB.CC)
-else
-LINK_VM = $(LINK_LIB.CXX)
-endif
-# making the library:
-$(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE)
-ifeq ($(filter -sbfast -xsbfast, $(CFLAGS_BROWSE)),)
- @echo $(LOG_INFO) Linking vm...
- $(QUIETLY) $(LINK_LIB.CXX/PRE_HOOK)
- $(QUIETLY) $(LINK_VM) $(LFLAGS_VM) -o $@ $(sort $(LIBJVM.o)) $(LIBS_VM)
- $(QUIETLY) $(LINK_LIB.CXX/POST_HOOK)
- $(QUIETLY) rm -f $@.1 && ln -s $@ $@.1
-ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO)
- $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@
- ifeq ($(STRIP_POLICY),all_strip)
- $(QUIETLY) $(STRIP) $@
- else
- ifeq ($(STRIP_POLICY),min_strip)
- $(QUIETLY) $(STRIP) -x $@
- # implied else here is no stripping at all
- endif
- endif
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- $(ZIPEXE) -q -y $(LIBJVM_DIZ) $(LIBJVM_DEBUGINFO)
- $(RM) $(LIBJVM_DEBUGINFO)
- endif
-endif
-endif # filter -sbfast -xsbfast
-
-
-DEST_SUBDIR = $(JDK_LIBDIR)/$(VM_SUBDIR)
-DEST_JVM = $(DEST_SUBDIR)/$(LIBJVM)
-DEST_JVM_DEBUGINFO = $(DEST_SUBDIR)/$(LIBJVM_DEBUGINFO)
-DEST_JVM_DIZ = $(DEST_SUBDIR)/$(LIBJVM_DIZ)
-
-install_jvm: $(LIBJVM)
- @echo "Copying $(LIBJVM) to $(DEST_JVM)"
- $(QUIETLY) test ! -f $(LIBJVM_DEBUGINFO) || \
- $(CP) -f $(LIBJVM_DEBUGINFO) $(DEST_JVM_DEBUGINFO)
- $(QUIETLY) test ! -f $(LIBJVM_DIZ) || \
- $(CP) -f $(LIBJVM_DIZ) $(DEST_JVM_DIZ)
- $(QUIETLY) $(CP) -f $(LIBJVM) $(DEST_JVM) && echo "Done"
-
-#----------------------------------------------------------------------
-# Other files
-
-# Signal interposition library
-include $(MAKEFILES_DIR)/jsig.make
-
-#----------------------------------------------------------------------
-
-build: $(LIBJVM) $(LAUNCHER) $(LIBJSIG) $(LIBJVM_DB) $(LIBJVM_DTRACE) dtraceCheck
-
-install: install_jvm install_jsig
-
-.PHONY: default build install install_jvm
--- a/hotspot/make/solaris/platform_amd64 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = solaris
-
-arch = x86
-
-arch_model = x86_64
-
-os_arch = solaris_x86
-
-os_arch_model = solaris_x86_64
-
-lib_arch = amd64
-
-compiler = sparcWorks
-
-sysdefs = -DSOLARIS -DSPARC_WORKS -DAMD64
--- a/hotspot/make/solaris/platform_amd64.gcc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = solaris
-
-arch = x86
-
-arch_model = x86_64
-
-os_arch = solaris_x86
-
-os_arch_model = solaris_x86_64
-
-lib_arch = amd64
-
-compiler = gcc
-
-sysdefs = -DSOLARIS -D_GNU_SOURCE -DAMD64
--- a/hotspot/make/solaris/platform_i486 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = solaris
-
-arch = x86
-
-arch_model = x86_32
-
-os_arch = solaris_x86
-
-os_arch_model = solaris_x86_32
-
-lib_arch = i386
-
-compiler = sparcWorks
-
-sysdefs = -DSOLARIS -DSPARC_WORKS -DIA32
--- a/hotspot/make/solaris/platform_i486.gcc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = solaris
-
-arch = x86
-
-arch_model = x86_32
-
-os_arch = solaris_x86
-
-os_arch_model = solaris_x86_32
-
-lib_arch = i386
-
-compiler = gcc
-
-sysdefs = -DSOLARIS -D_GNU_SOURCE -DIA32
--- a/hotspot/make/solaris/platform_sparc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = solaris
-
-arch = sparc
-
-arch_model = sparc
-
-os_arch = solaris_sparc
-
-os_arch_model = solaris_sparc
-
-lib_arch = sparc
-
-compiler = sparcWorks
-
-sysdefs = -DSOLARIS -DSPARC_WORKS -DSPARC
--- a/hotspot/make/solaris/platform_sparc.gcc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = solaris
-
-arch = sparc
-
-arch_model = sparc
-
-os_arch = solaris_sparc
-
-os_arch_model = solaris_sparc
-
-lib_arch = sparc
-
-compiler = gcc
-
-sysdefs = -DSOLARIS -D_GNU_SOURCE -DSPARC
--- a/hotspot/make/solaris/platform_sparcv9 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = solaris
-
-arch = sparc
-
-arch_model = sparc
-
-os_arch = solaris_sparc
-
-os_arch_model = solaris_sparc
-
-lib_arch = sparcv9
-
-compiler = sparcWorks
-
-sysdefs = -DSOLARIS -DSPARC_WORKS -DSPARC
--- a/hotspot/make/solaris/platform_sparcv9.gcc Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-os_family = solaris
-
-arch = sparc
-
-arch_model = sparc
-
-os_arch = solaris_sparc
-
-os_arch_model = solaris_sparc
-
-lib_arch = sparcv9
-
-compiler = gcc
-
-sysdefs = -DSOLARIS -D_GNU_SOURCE -DSPARC
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/symbols/symbols-aix Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,27 @@
+#
+# Copyright (c) 2016, 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.
+#
+# 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.
+#
+
+JVM_handle_linux_signal
+numa_error
+numa_warn
+sysThreadAvailableStackWithSlack
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/symbols/symbols-aix-debug Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,26 @@
+#
+# Copyright (c) 2016, 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.
+#
+# 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.
+#
+
+JVM_AccessVMBooleanFlag
+JVM_AccessVMIntFlag
+JVM_VMBreakPoint
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/symbols/symbols-linux Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,27 @@
+#
+# Copyright (c) 2016, 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.
+#
+# 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.
+#
+
+JVM_handle_linux_signal
+numa_error
+numa_warn
+sysThreadAvailableStackWithSlack
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/symbols/symbols-macosx Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,24 @@
+#
+# Copyright (c) 2016, 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.
+#
+# 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.
+#
+
+JVM_handle_bsd_signal
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/symbols/symbols-shared Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,35 @@
+#
+# Copyright (c) 2016, 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.
+#
+# 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.
+#
+
+AsyncGetCallTrace
+jio_fprintf
+jio_printf
+jio_snprintf
+jio_vfprintf
+jio_vsnprintf
+JNI_CreateJavaVM
+JNI_GetCreatedJavaVMs
+JNI_GetDefaultJavaVMInitArgs
+JVM_FindClassFromBootLoader
+JVM_GetVersionInfo
+JVM_InitAgentProperties
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/symbols/symbols-solaris Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,25 @@
+#
+# Copyright (c) 2016, 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.
+#
+# 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.
+#
+
+JVM_handle_solaris_signal
+sysThreadAvailableStackWithSlack
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/symbols/symbols-solaris-dtrace-compiler1 Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,34 @@
+#
+# Copyright (c) 2016, 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.
+#
+# 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.
+#
+
+__1cGMethodG__vtbl_
+__1cHnmethodG__vtbl_
+__1cICodeBlobG__vtbl_
+__1cIUniverseO_collectedHeap_
+__1cJCodeCacheG_heaps_
+__1cKBufferBlobG__vtbl_
+__1cLRuntimeStubG__vtbl_
+__1cNSafepointBlobG__vtbl_
+__1cSDeoptimizationBlobG__vtbl_
+
+__JvmOffsets
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/symbols/symbols-solaris-dtrace-compiler2 Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,36 @@
+#
+# Copyright (c) 2016, 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.
+#
+# 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.
+#
+
+__1cGMethodG__vtbl_
+__1cHnmethodG__vtbl_
+__1cICodeBlobG__vtbl_
+__1cIUniverseO_collectedHeap_
+__1cJCodeCacheG_heaps_
+__1cKBufferBlobG__vtbl_
+__1cLRuntimeStubG__vtbl_
+__1cNSafepointBlobG__vtbl_
+__1cSDeoptimizationBlobG__vtbl_
+__1cNExceptionBlobG__vtbl_
+__1cQUncommonTrapBlobG__vtbl_
+
+__JvmOffsets
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/make/symbols/symbols-unix Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,194 @@
+#
+# Copyright (c) 2016, 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.
+#
+# 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.
+#
+
+JVM_ActiveProcessorCount
+JVM_ArrayCopy
+JVM_AssertionStatusDirectives
+JVM_CallStackWalk
+JVM_ClassDepth
+JVM_ClassLoaderDepth
+JVM_Clone
+JVM_ConstantPoolGetClassAt
+JVM_ConstantPoolGetClassAtIfLoaded
+JVM_ConstantPoolGetClassRefIndexAt
+JVM_ConstantPoolGetDoubleAt
+JVM_ConstantPoolGetFieldAt
+JVM_ConstantPoolGetFieldAtIfLoaded
+JVM_ConstantPoolGetFloatAt
+JVM_ConstantPoolGetIntAt
+JVM_ConstantPoolGetLongAt
+JVM_ConstantPoolGetMemberRefInfoAt
+JVM_ConstantPoolGetMethodAt
+JVM_ConstantPoolGetMethodAtIfLoaded
+JVM_ConstantPoolGetNameAndTypeRefIndexAt
+JVM_ConstantPoolGetNameAndTypeRefInfoAt
+JVM_ConstantPoolGetSize
+JVM_ConstantPoolGetStringAt
+JVM_ConstantPoolGetTagAt
+JVM_ConstantPoolGetUTF8At
+JVM_CountStackFrames
+JVM_CurrentClassLoader
+JVM_CurrentLoadedClass
+JVM_CurrentThread
+JVM_CurrentTimeMillis
+JVM_DefineClass
+JVM_DefineClassWithSource
+JVM_DesiredAssertionStatus
+JVM_DoPrivileged
+JVM_DumpAllStacks
+JVM_DumpThreads
+JVM_FillInStackTrace
+JVM_FindClassFromCaller
+JVM_FindClassFromClass
+JVM_FindLibraryEntry
+JVM_FindLoadedClass
+JVM_FindPrimitiveClass
+JVM_FindSignal
+JVM_FreeMemory
+JVM_GC
+JVM_GetAllThreads
+JVM_GetArrayElement
+JVM_GetArrayLength
+JVM_GetCallerClass
+JVM_GetClassAccessFlags
+JVM_GetClassAnnotations
+JVM_GetClassConstantPool
+JVM_GetClassContext
+JVM_GetClassCPEntriesCount
+JVM_GetClassCPTypes
+JVM_GetClassDeclaredConstructors
+JVM_GetClassDeclaredFields
+JVM_GetClassDeclaredMethods
+JVM_GetClassFieldsCount
+JVM_GetClassInterfaces
+JVM_GetClassMethodsCount
+JVM_GetClassModifiers
+JVM_GetClassName
+JVM_GetClassNameUTF
+JVM_GetClassSignature
+JVM_GetClassSigners
+JVM_GetClassTypeAnnotations
+JVM_GetCPClassNameUTF
+JVM_GetCPFieldClassNameUTF
+JVM_GetCPFieldModifiers
+JVM_GetCPFieldNameUTF
+JVM_GetCPFieldSignatureUTF
+JVM_GetCPMethodClassNameUTF
+JVM_GetCPMethodModifiers
+JVM_GetCPMethodNameUTF
+JVM_GetCPMethodSignatureUTF
+JVM_GetDeclaredClasses
+JVM_GetDeclaringClass
+JVM_GetEnclosingMethodInfo
+JVM_GetFieldIxModifiers
+JVM_GetFieldTypeAnnotations
+JVM_GetInheritedAccessControlContext
+JVM_GetInterfaceVersion
+JVM_GetManagement
+JVM_GetMethodIxArgsSize
+JVM_GetMethodIxByteCode
+JVM_GetMethodIxByteCodeLength
+JVM_GetMethodIxExceptionIndexes
+JVM_GetMethodIxExceptionsCount
+JVM_GetMethodIxExceptionTableEntry
+JVM_GetMethodIxExceptionTableLength
+JVM_GetMethodIxLocalsCount
+JVM_GetMethodIxMaxStack
+JVM_GetMethodIxModifiers
+JVM_GetMethodIxNameUTF
+JVM_GetMethodIxSignatureUTF
+JVM_GetMethodParameters
+JVM_GetMethodTypeAnnotations
+JVM_GetNanoTimeAdjustment
+JVM_GetPrimitiveArrayElement
+JVM_GetProtectionDomain
+JVM_GetSimpleBinaryName
+JVM_GetStackAccessControlContext
+JVM_GetStackTraceElements
+JVM_GetSystemPackage
+JVM_GetSystemPackages
+JVM_GetTemporaryDirectory
+JVM_GetVmArguments
+JVM_Halt
+JVM_HoldsLock
+JVM_IHashCode
+JVM_InitProperties
+JVM_InternString
+JVM_Interrupt
+JVM_InvokeMethod
+JVM_IsArrayClass
+JVM_IsConstructorIx
+JVM_IsInterface
+JVM_IsInterrupted
+JVM_IsPrimitiveClass
+JVM_IsSameClassPackage
+JVM_IsSupportedJNIVersion
+JVM_IsThreadAlive
+JVM_IsVMGeneratedMethodIx
+JVM_LatestUserDefinedLoader
+JVM_LoadLibrary
+JVM_MaxMemory
+JVM_MaxObjectInspectionAge
+JVM_MonitorNotify
+JVM_MonitorNotifyAll
+JVM_MonitorWait
+JVM_MoreStackWalk
+JVM_NanoTime
+JVM_NativePath
+JVM_NewArray
+JVM_NewInstanceFromConstructor
+JVM_NewMultiArray
+JVM_RaiseSignal
+JVM_RawMonitorCreate
+JVM_RawMonitorDestroy
+JVM_RawMonitorEnter
+JVM_RawMonitorExit
+JVM_RegisterSignal
+JVM_ReleaseUTF
+JVM_ResumeThread
+JVM_SetArrayElement
+JVM_SetClassSigners
+JVM_SetNativeThreadName
+JVM_SetPrimitiveArrayElement
+JVM_SetThreadPriority
+JVM_Sleep
+JVM_StartThread
+JVM_StopThread
+JVM_SupportsCX8
+JVM_SuspendThread
+JVM_ToStackTraceElement
+JVM_TotalMemory
+JVM_UnloadLibrary
+JVM_Yield
+
+# Module related API's
+JVM_AddModuleExports
+JVM_AddModuleExportsToAll
+JVM_AddModuleExportsToAllUnnamed
+JVM_AddModulePackage
+JVM_AddReadsModule
+JVM_CanReadModule
+JVM_DefineModule
+JVM_IsExportedToModule
+JVM_SetBootLoaderUnnamedModule
+JVM_GetModuleByPackageName
--- a/hotspot/make/windows/build.bat Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,85 +0,0 @@
-@echo off
-REM
-REM Copyright (c) 1997, 2015, 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
-REM under the terms of the GNU General Public License version 2 only, as
-REM published by the Free Software Foundation.
-REM
-REM This code is distributed in the hope that it will be useful, but WITHOUT
-REM ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-REM FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-REM version 2 for more details (a copy is included in the LICENSE file that
-REM accompanied this code).
-REM
-REM You should have received a copy of the GNU General Public License version
-REM 2 along with this work; if not, write to the Free Software Foundation,
-REM Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-REM
-REM Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
-REM or visit www.oracle.com if you need additional information or have any
-REM questions.
-REM
-REM
-
-REM Set HotSpotWorkSpace to the directory two steps above this script
-for %%i in ("%~dp0..") do ( set HotSpotWorkSpace=%%~dpi)
-
-REM
-REM Since we don't have uname and we could be cross-compiling,
-REM Use the compiler to determine which ARCH we are building
-REM
-cl 2>&1 1>&3 | findstr x64>NUL
-if %errorlevel% == 0 goto amd64
-set VCPROJ=%HotSpotWorkSpace%\build\vs-i486\jvm.vcxproj
-set PLATFORM=x86
-goto testmkshome
-:amd64
-set VCPROJ=%HotSpotWorkSpace%\build\vs-amd64\jvm.vcxproj
-set PLATFORM=x64
-goto testmkshome
-
-:testmkshome
-if not "%HOTSPOTMKSHOME%" == "" goto testjavahome
-if exist c:\cygwin\bin set HOTSPOTMKSHOME=c:\cygwin\bin
-if not "%HOTSPOTMKSHOME%" == "" goto testjavahome
-if exist c:\cygwin64\bin set HOTSPOTMKSHOME=c:\cygwin64\bin
-if not "%HOTSPOTMKSHOME%" == "" goto testjavahome
-echo Error: please set variable HOTSPOTMKSHOME to place where
-echo your MKS/Cygwin installation is
-echo.
-goto end
-
-:testjavahome
-if not "%JAVA_HOME%" == "" goto testbuildversion
-echo Error: please set variable JAVA_HOME to a bootstrap JDK
-echo.
-goto end
-
-:testbuildversion
-if "%1" == "compiler1" goto testdebuglevel
-if "%1" == "tiered" goto testdebuglevel
-goto usage
-
-:testdebuglevel
-if "%2" == "product" goto build
-if "%2" == "debug" goto build
-if "%2" == "fastdebug" goto build
-goto usage
-
-:build
-if NOT EXIST %VCPROJ% call %~dp0\create.bat %JAVA_HOME%
-msbuild /Property:Platform=%PLATFORM% /Property:Configuration=%1_%2 /v:m %VCPROJ%
-goto end
-
-:usage
-echo Usage: build version debuglevel
-echo.
-echo where:
-echo version is "compiler1" or "tiered",
-echo debuglevel is "product", "debug" or "fastdebug"
-exit /b 1
-
-:end
-exit /b %errorlevel%
--- a/hotspot/make/windows/build.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,253 +0,0 @@
-#
-# Copyright (c) 1998, 2015, 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.
-#
-# 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.
-#
-#
-
-# Note: this makefile is invoked both from build.bat and from the J2SE
-# control workspace in exactly the same manner; the required
-# environment variables (Variant, WorkSpace, BootStrapDir, BuildUser, HOTSPOT_BUILD_VERSION)
-# are passed in as command line arguments.
-
-# Note: Running nmake or build.bat from the Windows command shell requires
-# that "sh" be accessible on the PATH. An MKS install does this.
-
-# If we haven't set an ARCH yet use x86
-# create.bat and build.bat will set it, if used.
-!ifndef ARCH
-ARCH=x86
-!endif
-
-
-# Must be one of these values (if value comes in from env, can't trust it)
-!if "$(ARCH)" != "x86"
-!if "$(ARCH)" != "ia64"
-ARCH=x86
-!endif
-!endif
-
-# At this point we should be certain that ARCH has a definition
-# now determine the BUILDARCH
-#
-
-# the default BUILDARCH
-BUILDARCH=i486
-
-# Allow control workspace to force Itanium or AMD64 builds with LP64
-ARCH_TEXT=
-!ifdef LP64
-!if "$(LP64)" == "1"
-ARCH_TEXT=64-Bit
-!if "$(ARCH)" == "x86"
-BUILDARCH=amd64
-!else
-BUILDARCH=ia64
-!endif
-!endif
-!endif
-
-!if "$(BUILDARCH)" != "ia64"
-!ifndef CC_INTERP
-!ifndef FORCE_TIERED
-FORCE_TIERED=1
-!endif
-!endif
-!endif
-
-!if "$(BUILDARCH)" == "amd64"
-Platform_arch=x86
-Platform_arch_model=x86_64
-!endif
-!if "$(BUILDARCH)" == "i486"
-Platform_arch=x86
-Platform_arch_model=x86_32
-!endif
-
-# Supply these from the command line or the environment
-# It doesn't make sense to default this one
-Variant=
-# It doesn't make sense to default this one
-WorkSpace=
-
-variantDir = windows_$(BUILDARCH)_$(Variant)
-
-realVariant=$(Variant)
-VARIANT_TEXT=Core
-!if "$(Variant)" == "compiler1"
-VARIANT_TEXT=Client
-!elseif "$(Variant)" == "compiler2"
-!if "$(FORCE_TIERED)" == "1"
-VARIANT_TEXT=Server
-realVariant=tiered
-!else
-VARIANT_TEXT=Server
-!endif
-!elseif "$(Variant)" == "tiered"
-VARIANT_TEXT=Tiered
-!endif
-
-#########################################################################
-# Parameters for VERSIONINFO resource for jvm.dll.
-# These can be overridden via the nmake.exe command line.
-# They are overridden by RE during the control builds.
-#
-!include "$(WorkSpace)/make/jdk_version"
-
-# Define HOTSPOT_VM_DISTRO based on settings in make/openjdk_distro
-# or make/hotspot_distro.
-!ifndef HOTSPOT_VM_DISTRO
-!ifndef OPENJDK
-!if exists($(WorkSpace)\src\closed)
-!include $(WorkSpace)\make\hotspot_distro
-!else
-!include $(WorkSpace)\make\openjdk_distro
-!endif
-!else
-!include $(WorkSpace)\make\openjdk_distro
-!endif
-!endif
-
-HS_FILEDESC=$(HOTSPOT_VM_DISTRO) $(ARCH_TEXT) $(VARIANT_TEXT) VM
-
-# JDK ProductVersion:
-# 1.5.0_<wx>-b<yz> will have DLL version 5.0.wx*10.yz
-# Thus, 1.5.0_10-b04 will be 5.0.100.4
-# 1.6.0-b01 will be 6.0.0.1
-# 1.6.0_01a-b02 will be 6.0.11.2
-#
-# STANDALONE_JDK_* variables are defined in make/jdk_version or on command line
-#
-!if "$(JDK_VER)" == ""
-JDK_VER=$(STANDALONE_JDK_MAJOR_VER),$(STANDALONE_JDK_MINOR_VER),$(STANDALONE_JDK_SECURITY_VER),$(STANDALONE_JDK_PATCH_VER)
-!endif
-!if "$(JDK_DOTVER)" == ""
-JDK_DOTVER=$(STANDALONE_JDK_MAJOR_VER).$(STANDALONE_JDK_MINOR_VER).$(STANDALONE_JDK_SECURITY_VER).$(STANDALONE_JDK_PATCH_VER)
-!endif
-!if "$(VERSION_SHORT)" == ""
-VERSION_SHORT=$(STANDALONE_JDK_MAJOR_VER).$(STANDALONE_JDK_MINOR_VER).$(STANDALONE_JDK_SECURITY_VER)
-!endif
-
-HS_VER=$(JDK_VER)
-HS_DOTVER=$(JDK_DOTVER)
-
-!if "$(HOTSPOT_RELEASE_VERSION)" == ""
-HOTSPOT_RELEASE_VERSION=$(VERSION_STRING)
-!endif
-
-!if "$(HOTSPOT_VERSION_STRING)" == ""
-HOTSPOT_VERSION_STRING=$(HOTSPOT_RELEASE_VERSION)
-!endif
-
-# End VERSIONINFO parameters
-
-# if hotspot-only build and/or OPENJDK isn't passed down, need to set OPENJDK
-!ifndef OPENJDK
-!if !exists($(WorkSpace)\src\closed)
-OPENJDK=true
-!endif
-!endif
-
-#########################################################################
-
-defaultTarget: product
-
-# The product or release build is an optimized build, and is the default
-
-# note that since all the build targets depend on local.make that BUILDARCH
-# and Platform_arch and Platform_arch_model will get set in local.make
-# and there is no need to pass them thru here on the command line
-#
-product release optimized: checks $(variantDir) $(variantDir)\local.make sanity
- cd $(variantDir)
- nmake -nologo -f $(WorkSpace)\make\windows\makefiles\top.make BUILD_FLAVOR=product ARCH=$(ARCH)
-
-# The debug build is an optional build
-debug: checks $(variantDir) $(variantDir)\local.make sanity
- cd $(variantDir)
- nmake -nologo -f $(WorkSpace)\make\windows\makefiles\top.make BUILD_FLAVOR=debug ARCH=$(ARCH)
-fastdebug: checks $(variantDir) $(variantDir)\local.make sanity
- cd $(variantDir)
- nmake -nologo -f $(WorkSpace)\make\windows\makefiles\top.make BUILD_FLAVOR=fastdebug ARCH=$(ARCH)
-
-# target to create just the directory structure
-tree: checks $(variantDir) $(variantDir)\local.make sanity
- mkdir $(variantDir)\product
- mkdir $(variantDir)\debug
- mkdir $(variantDir)\fastdebug
-
-sanity:
- @ echo;
- @ cd $(variantDir)
- @ nmake -nologo -f $(WorkSpace)\make\windows\makefiles\sanity.make
- @ cd ..
- @ echo;
-
-clean: checkVariant
- - rm -r -f $(variantDir)
-
-$(variantDir):
- mkdir $(variantDir)
-
-$(variantDir)\local.make: checks
- @ echo # Generated file > $@
- @ echo Variant=$(realVariant) >> $@
- @ echo WorkSpace=$(WorkSpace) >> $@
- @ echo BootStrapDir=$(BootStrapDir) >> $@
- @ if "$(USERNAME)" NEQ "" echo BuildUser=$(USERNAME) >> $@
- @ echo HS_VER=$(HS_VER) >> $@
- @ echo HS_DOTVER=$(HS_DOTVER) >> $@
- @ echo HS_COMPANY=$(COMPANY_NAME) >> $@
- @ echo HS_FILEDESC=$(HS_FILEDESC) >> $@
- @ echo HOTSPOT_VM_DISTRO=$(HOTSPOT_VM_DISTRO) >> $@
- @ if "$(OPENJDK)" NEQ "" echo OPENJDK=$(OPENJDK) >> $@
- @ echo HS_COPYRIGHT=$(HOTSPOT_VM_COPYRIGHT) >> $@
- @ echo HS_NAME=$(PRODUCT_NAME) $(VERSION_SHORT) >> $@
- @ echo HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) >> $@
- @ echo JDK_VER=$(JDK_VER) >> $@
- @ echo JDK_DOTVER=$(JDK_DOTVER) >> $@
- @ echo VERSION_STRING=$(VERSION_STRING) >> $@
- @ echo BUILDARCH=$(BUILDARCH) >> $@
- @ echo Platform_arch=$(Platform_arch) >> $@
- @ echo Platform_arch_model=$(Platform_arch_model) >> $@
- @ echo CXX=$(CXX) >> $@
- @ echo LD=$(LD) >> $@
- @ echo MT=$(MT) >> $@
- @ echo RC=$(RC) >> $@
- @ sh $(WorkSpace)/make/windows/get_msc_ver.sh >> $@
- @ if "$(ENABLE_FULL_DEBUG_SYMBOLS)" NEQ "" echo ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) >> $@
- @ if "$(ZIP_DEBUGINFO_FILES)" NEQ "" echo ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) >> $@
- @ if "$(RM)" NEQ "" echo RM=$(RM) >> $@
- @ if "$(CP)" NEQ "" echo CP=$(CP) >> $@
- @ if "$(MV)" NEQ "" echo MV=$(MV) >> $@
- @ if "$(ZIPEXE)" NEQ "" echo ZIPEXE=$(ZIPEXE) >> $@
-
-checks: checkVariant checkWorkSpace
-
-checkVariant:
- @ if "$(Variant)"=="" echo Need to specify "Variant=[tiered|compiler2|compiler1|core]" && false
- @ if "$(Variant)" NEQ "tiered" if "$(Variant)" NEQ "compiler2" if "$(Variant)" NEQ "compiler1" if "$(Variant)" NEQ "core" \
- echo Need to specify "Variant=[tiered|compiler2|compiler1|core]" && false
-
-checkWorkSpace:
- @ if "$(WorkSpace)"=="" echo Need to specify "WorkSpace=..." && false
-
-checkBuildID:
- @ if "$(BuildID)"=="" echo Need to specify "BuildID=..." && false
--- a/hotspot/make/windows/build_vm_def.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-#
-# Copyright (c) 2000, 2013, 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.
-#
-# 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.
-#
-#
-
-# This shell script builds a vm.def file for the current VM variant.
-# The .def file exports vtbl symbols which allow the Serviceability
-# Agent to run on Windows. See make/windows/projectfiles/*/vm.def
-# for more information.
-#
-# The script expects to be executed in the directory containing all of
-# the object files.
-
-# Note that we currently do not have a way to set HotSpotMksHome in
-# the batch build, but so far this has not seemed to be a problem. The
-# reason this environment variable is necessary is that it seems that
-# Windows truncates very long PATHs when executing shells like MKS's
-# sh, and it has been found that sometimes `which sh` fails.
-if [ "x$HOTSPOTMKSHOME" != "x" ]; then
- MKS_HOME="$HOTSPOTMKSHOME"
-else
- SH=`which sh`
- MKS_HOME=`dirname "$SH"`
-fi
-
-AWK="$MKS_HOME/awk.exe"
-if [ ! -e $AWK ]; then
- AWK="$MKS_HOME/gawk.exe"
-fi
-GREP="$MKS_HOME/grep.exe"
-SORT="$MKS_HOME/sort.exe"
-UNIQ="$MKS_HOME/uniq.exe"
-CAT="$MKS_HOME/cat.exe"
-RM="$MKS_HOME/rm.exe"
-DUMPBIN="link.exe /dump"
-export VS_UNICODE_OUTPUT=
-
-echo "EXPORTS" > vm1.def
-
-# When called from IDE the first param should contain the link version, otherwise may be nill
-if [ "x$1" != "x" ]; then
-LD_VER="$1"
-fi
-
-if [ "x$LD_VER" != "x800" -a "x$LD_VER" != "x900" -a "x$LD_VER" != "x1000" ]; then
-$DUMPBIN /symbols *.obj | "$GREP" "??_7.*@@6B@" | "$GREP" -v "type_info" | "$AWK" '{print $7}' | "$SORT" | "$UNIQ" > vm2.def
-else
-# Can't use pipes when calling cl.exe or link.exe from IDE. Using transit file vm3.def
-$DUMPBIN /OUT:vm3.def /symbols *.obj
-"$CAT" vm3.def | "$GREP" "??_7.*@@6B@" | "$GREP" -v "type_info" | "$AWK" '{print $7}' | "$SORT" | "$UNIQ" > vm2.def
-"$RM" -f vm3.def
-fi
-
-"$CAT" vm1.def vm2.def > vm.def
-"$RM" -f vm1.def vm2.def
--- a/hotspot/make/windows/create.bat Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,198 +0,0 @@
-@echo off
-REM
-REM Copyright (c) 1999, 2015, 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
-REM under the terms of the GNU General Public License version 2 only, as
-REM published by the Free Software Foundation.
-REM
-REM This code is distributed in the hope that it will be useful, but WITHOUT
-REM ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-REM FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-REM version 2 for more details (a copy is included in the LICENSE file that
-REM accompanied this code).
-REM
-REM You should have received a copy of the GNU General Public License version
-REM 2 along with this work; if not, write to the Free Software Foundation,
-REM Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-REM
-REM Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
-REM or visit www.oracle.com if you need additional information or have any
-REM questions.
-REM
-REM
-
-REM This is the interactive build setup script (as opposed to the batch
-REM build execution script). It creates $HotSpotBuildSpace if necessary,
-REM copies the appropriate files out of $HotSpotWorkSpace into it, and
-REM builds and runs ProjectCreator in it. This has the side-effect of creating
-REM the vm.vcproj file in the buildspace, which is then used in Visual C++.
-
-REM
-REM Since we don't have uname and we could be cross-compiling,
-REM Use the compiler to determine which ARCH we are building
-REM
-REM Note: Running this batch file from the Windows command shell requires
-REM that "grep" be accessible on the PATH. An MKS install does this.
-REM
-
-cl 2>NUL >NUL
-if %errorlevel% == 0 goto nexttest
-echo Make sure cl.exe is in your PATH before running this script.
-goto end
-
-:nexttest
-grep -V 2>NUL >NUL
-if %errorlevel% == 0 goto testit
-echo Make sure grep.exe is in your PATH before running this script. Either cygwin or MKS should work.
-goto end
-
-
-:testit
-cl 2>&1 | grep "x64" >NUL
-if %errorlevel% == 0 goto amd64
-set ARCH=x86
-set BUILDARCH=i486
-set Platform_arch=x86
-set Platform_arch_model=x86_32
-goto done
-:amd64
-set ARCH=x86
-set BUILDARCH=amd64
-set Platform_arch=x86
-set Platform_arch_model=x86_64
-:done
-
-setlocal
-
-if "%1" == "" goto usage
-
-if not "%2" == "" goto usage
-
-REM Set HotSpotWorkSpace to the directy two steps above this script
-for %%i in ("%~dp0..") do ( set HotSpotWorkSpace=%%~dpi)
-set HotSpotBuildRoot=%HotSpotWorkSpace%build
-set HotSpotBuildSpace=%HotSpotBuildRoot%\vs-%BUILDARCH%
-set HotSpotJDKDist=%1
-
-
-REM figure out MSC version
-for /F %%i in ('sh %HotSpotWorkSpace%/make/windows/get_msc_ver.sh') do set %%i
-
-echo **************************************************************
-echo MSC_VER = "%MSC_VER%"
-set ProjectFile=%HotSpotBuildSpace%\jvm.vcxproj
-echo %ProjectFile%
-echo **************************************************************
-
-REM Test all variables to see whether the directories they
-REM reference exist
-
-if exist %HotSpotWorkSpace% goto test1
-
-echo Error: directory pointed to by HotSpotWorkSpace
-echo does not exist, or the variable is not set.
-echo.
-goto usage
-
-:test1
-if exist %HotSpotBuildSpace% goto test2
-if not "%HotSpotBuildSpace%" == "" mkdir %HotSpotBuildSpace%
-if exist %HotSpotBuildSpace% goto test2
-echo Error: directory pointed to by HotSpotBuildSpace
-echo does not exist, or the variable is not set.
-echo.
-goto usage
-
-:test2
-if exist %HotSpotJDKDist% goto test3
-echo Error: directory pointed to by %HotSpotJDKDist%
-echo does not exist, or the variable is not set.
-echo.
-goto usage
-
-:test3
-if not "%HOTSPOTMKSHOME%" == "" goto makedir
-if exist c:\cygwin\bin set HOTSPOTMKSHOME=c:\cygwin\bin
-if not "%HOTSPOTMKSHOME%" == "" goto makedir
-if exist c:\cygwin64\bin set HOTSPOTMKSHOME=c:\cygwin64\bin
-if not "%HOTSPOTMKSHOME%" == "" goto makedir
-echo Warning: please set variable HOTSPOTMKSHOME to place where
-echo your MKS/Cygwin installation is
-echo.
-goto usage
-
-:generatefiles
-if NOT EXIST %HotSpotBuildSpace%\%1\generated mkdir %HotSpotBuildSpace%\%1\generated
-copy %HotSpotWorkSpace%\make\windows\projectfiles\%1\* %HotSpotBuildSpace%\%1\generated > NUL
-
-REM force regneration of ProjectFile
-if exist %ProjectFile% del %ProjectFile%
-
-echo -- %1 --
-echo # Generated file! > %HotSpotBuildSpace%\%1\local.make
-echo # Changing a variable below and then deleting %ProjectFile% will cause >> %HotSpotBuildSpace%\%1\local.make
-echo # %ProjectFile% to be regenerated with the new values. Changing the >> %HotSpotBuildSpace%\%1\local.make
-echo # version requires rerunning create.bat. >> %HotSpotBuildSpace%\%1\local.make
-echo. >> %HotSpotBuildSpace%\%1\local.make
-echo Variant=%1 >> %HotSpotBuildSpace%\%1\local.make
-echo WorkSpace=%HotSpotWorkSpace% >> %HotSpotBuildSpace%\%1\local.make
-echo HOTSPOTWORKSPACE=%HotSpotWorkSpace% >> %HotSpotBuildSpace%\%1\local.make
-echo HOTSPOTBUILDROOT=%HotSpotBuildRoot% >> %HotSpotBuildSpace%\%1\local.make
-echo HOTSPOTBUILDSPACE=%HotSpotBuildSpace% >> %HotSpotBuildSpace%\%1\local.make
-echo HOTSPOTJDKDIST=%HotSpotJDKDist% >> %HotSpotBuildSpace%\%1\local.make
-echo ARCH=%ARCH% >> %HotSpotBuildSpace%\%1\local.make
-echo BUILDARCH=%BUILDARCH% >> %HotSpotBuildSpace%\%1\local.make
-echo Platform_arch=%Platform_arch% >> %HotSpotBuildSpace%\%1\local.make
-echo Platform_arch_model=%Platform_arch_model% >> %HotSpotBuildSpace%\%1\local.make
-echo MSC_VER=%MSC_VER% >> %HotSpotBuildSpace%\%1\local.make
-
-for /D %%j in (debug, fastdebug, product) do (
- if NOT EXIST %HotSpotBuildSpace%\%1\%%j mkdir %HotSpotBuildSpace%\%1\%%j
-)
-
-pushd %HotSpotBuildSpace%\%1\generated
-nmake /nologo
-popd
-
-goto :eof
-
-
-:makedir
-echo NOTE: Using the following settings:
-echo HotSpotWorkSpace=%HotSpotWorkSpace%
-echo HotSpotBuildSpace=%HotSpotBuildSpace%
-echo HotSpotJDKDist=%HotSpotJDKDist%
-
-echo COPYFILES %BUILDARCH%
-call :generatefiles compiler1
-call :generatefiles tiered
-
-pushd %HotSpotBuildRoot%
-REM It doesn't matter which variant we use here, "tiered" is as good as any of the others - we need the common variables
-nmake /nologo /F %HotSpotWorkSpace%/make/windows/projectfiles/common/Makefile LOCAL_MAKE=%HotSpotBuildSpace%\tiered\local.make %ProjectFile%
-
-popd
-
-goto end
-
-:usage
-echo Usage: create HotSpotJDKDist
-echo.
-echo This is the VS build setup script (as opposed to the batch
-echo build execution script). It creates a build directory if necessary,
-echo copies the appropriate files out of the workspace into it, and
-echo builds and runs ProjectCreator in it. This has the side-effect of creating
-echo the %ProjectFile% file in the build space, which is then used in Visual C++.
-echo.
-echo The HotSpotJDKDist defines the JDK that should be used when running the JVM.
-echo Environment variable FORCE_MSC_VER allows to override MSVC version autodetection.
-echo.
-echo NOTE that it is now NOT safe to modify any of the files in the build
-echo space, since they may be overwritten whenever this script is run or
-echo nmake is run in that directory.
-
-:end
-
-endlocal
--- a/hotspot/make/windows/create_obj_files.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,167 +0,0 @@
-#
-# Copyright (c) 2010, 2015, 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.
-#
-# 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.
-#
-#
-
-set -e
-
-# Note that we currently do not have a way to set HotSpotMksHome in
-# the batch build, but so far this has not seemed to be a problem. The
-# reason this environment variable is necessary is that it seems that
-# Windows truncates very long PATHs when executing shells like MKS's
-# sh, and it has been found that sometimes `which sh` fails.
-
-if [ "x$HotSpotMksHome" != "x" ]; then
- TOOL_DIR="$HotSpotMksHome"
-else
- # HotSpotMksHome is not set so use the directory that contains "sh".
- # This works with both MKS and Cygwin.
- SH=`which sh`
- TOOL_DIR=`dirname "$SH"`
-fi
-
-DIRNAME="$TOOL_DIR/dirname"
-FIND="$TOOL_DIR/find"
-
-TYPE=$1
-Platform_arch=$2
-Platform_arch_model=$3
-Platform_os_family=windows
-Platform_os_arch=windows_$Platform_arch
-
-WorkSpace=$4
-GENERATED=$5
-
-COMMONSRC_REL=src
-ALTSRC_REL=src/closed # Change this to pick up alt sources from somewhere else
-
-COMMONSRC=${WorkSpace}/${COMMONSRC_REL}
-if [ "x$OPENJDK" != "xtrue" ]; then
- ALTSRC=${WorkSpace}/${ALTSRC_REL}
-else
- ALTSRC=PATH_THAT_DOES_NOT_EXIST
-fi
-
-BASE_PATHS="`if [ -d ${ALTSRC}/share/vm ]; then $FIND ${ALTSRC}/share/vm ! -name vm -prune -type d \! \( -name adlc -o -name c1 -o -name gc -o -name opto -o -name shark -o -name libadt \); fi`"
-BASE_PATHS="${BASE_PATHS} ` $FIND ${COMMONSRC}/share/vm ! -name vm -prune -type d \! \( -name adlc -o -name c1 -o -name gc -o -name opto -o -name shark -o -name libadt \)`"
-
-for sd in \
- share/vm/gc/shared \
- os/${Platform_os_family}/vm \
- cpu/${Platform_arch}/vm \
- os_cpu/${Platform_os_arch}/vm; do
- if [ -d "${ALTSRC}/${sd}" ]; then
- BASE_PATHS="${BASE_PATHS} ${ALTSRC}/${sd}"
- fi
- BASE_PATHS="${BASE_PATHS} ${COMMONSRC}/${sd}"
-done
-
-BASE_PATHS="${BASE_PATHS} ${GENERATED}/jvmtifiles ${GENERATED}/tracefiles"
-
-if [ -d "${ALTSRC}/share/vm/jfr/buffers" ]; then
- BASE_PATHS="${BASE_PATHS} ${ALTSRC}/share/vm/jfr/buffers"
-fi
-
-BASE_PATHS="${BASE_PATHS} ${COMMONSRC}/share/vm/prims/wbtestmethods"
-
-# shared is already in BASE_PATHS. Should add vm/memory but that one is also in BASE_PATHS.
-if [ -d "${ALTSRC}/share/vm/gc" ]; then
- BASE_PATHS="${BASE_PATHS} `$FIND ${ALTSRC}/share/vm/gc ! -name gc -prune -type d \! -name shared`"
-fi
-BASE_PATHS="${BASE_PATHS} `$FIND ${COMMONSRC}/share/vm/gc ! -name gc -prune -type d \! -name shared`"
-
-if [ -d "${ALTSRC}/share/vm/c1" ]; then
- COMPILER1_PATHS="${ALTSRC}/share/vm/c1"
-fi
-COMPILER1_PATHS="${COMPILER1_PATHS} ${COMMONSRC}/share/vm/c1"
-
-if [ -d "${ALTSRC}/share/vm/opto" ]; then
- COMPILER2_PATHS="${ALTSRC}/share/vm/opto"
-fi
-COMPILER2_PATHS="${COMPILER2_PATHS} ${COMMONSRC}/share/vm/opto"
-if [ -d "${ALTSRC}/share/vm/libadt" ]; then
- COMPILER2_PATHS="${COMPILER2_PATHS} ${ALTSRC}/share/vm/libadt"
-fi
-COMPILER2_PATHS="${COMPILER2_PATHS} ${COMMONSRC}/share/vm/libadt"
-COMPILER2_PATHS="${COMPILER2_PATHS} ${GENERATED}/adfiles"
-
-# Include dirs per type.
-case "${TYPE}" in
- "compiler1") Src_Dirs="${BASE_PATHS} ${COMPILER1_PATHS}" ;;
- "compiler2") Src_Dirs="${BASE_PATHS} ${COMPILER2_PATHS}" ;;
- "tiered") Src_Dirs="${BASE_PATHS} ${COMPILER1_PATHS} ${COMPILER2_PATHS}" ;;
- "zero") Src_Dirs="${BASE_PATHS}" ;;
- "shark") Src_Dirs="${BASE_PATHS}" ;;
-esac
-
-COMPILER2_SPECIFIC_FILES="opto libadt bcEscapeAnalyzer.cpp c2_* runtime_*"
-COMPILER1_SPECIFIC_FILES="c1_*"
-JVMCI_SPECIFIC_FILES="*jvmci* *JVMCI*"
-SHARK_SPECIFIC_FILES="shark"
-ZERO_SPECIFIC_FILES="zero"
-
-# Always exclude these.
-Src_Files_EXCLUDE="jsig.c jvmtiEnvRecommended.cpp jvmtiEnvStub.cpp"
-
-# Exclude per type.
-case "${TYPE}" in
- "compiler1") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER2_SPECIFIC_FILES} ${JVMCI_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES} ciTypeFlow.cpp" ;;
- "compiler2") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES}" ;;
- "tiered") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${ZERO_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES}" ;;
- "zero") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${COMPILER2_SPECIFIC_FILES} ${JVMCI_SPECIFIC_FILES} ${SHARK_SPECIFIC_FILES} ciTypeFlow.cpp" ;;
- "shark") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} ${COMPILER1_SPECIFIC_FILES} ${COMPILER2_SPECIFIC_FILES} ${JVMCI_SPECIFIC_FILES} ${ZERO_SPECIFIC_FILES}" ;;
-esac
-
-# Special handling of arch model.
-case "${Platform_arch_model}" in
- "x86_32") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} *x86_64* ${JVMCI_SPECIFIC_FILES}" ;;
- "x86_64") Src_Files_EXCLUDE="${Src_Files_EXCLUDE} *x86_32*" ;;
-esac
-
-# Locate all source files in the given directory, excluding files in Src_Files_EXCLUDE.
-function findsrc {
- $FIND ${1}/. ! -name . -prune \
- -a \( -name \*.c -o -name \*.cpp -o -name \*.s \) \
- -a \! \( -name ${Src_Files_EXCLUDE// / -o -name } \) \
- | sed 's/.*\/\(.*\)/\1/';
-}
-
-Src_Files=
-for e in ${Src_Dirs}; do
- Src_Files="${Src_Files}`findsrc ${e}` "
-done
-
-Obj_Files=" "
-for e in ${Src_Files}; do
- o="${e%\.[!.]*}.obj"
- set +e
- chk=`expr "${Obj_Files}" : ".* $o"`
- set -e
- if [ "$chk" != 0 ]; then
- echo "# INFO: skipping duplicate $o"
- continue
- fi
- Obj_Files="${Obj_Files}$o "
-done
-Obj_Files=`echo ${Obj_Files} | tr ' ' '\n' | LC_ALL=C sort`
-
-echo Obj_Files=${Obj_Files}
--- a/hotspot/make/windows/cross_build.bat Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-@echo off
-REM
-REM Copyright (c) 2003, 2008, 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
-REM under the terms of the GNU General Public License version 2 only, as
-REM published by the Free Software Foundation.
-REM
-REM This code is distributed in the hope that it will be useful, but WITHOUT
-REM ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-REM FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-REM version 2 for more details (a copy is included in the LICENSE file that
-REM accompanied this code).
-REM
-REM You should have received a copy of the GNU General Public License version
-REM 2 along with this work; if not, write to the Free Software Foundation,
-REM Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-REM
-REM Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
-REM or visit www.oracle.com if you need additional information or have any
-REM questions.
-REM
-REM
-
-REM Cross compile IA64 compiler2 VM
-REM Usage:
-REM cross_compile flavor workspace bootstrap_dir [build_id]
-REM %1 %2 %3 %4
-REM
-REM Set current directory
-for /F %%i in ('cd') do set CD=%%i
-echo Setting up Visual C++ Compilation Environment
-if "%MSVCDir%" == "" goto setdir1
-goto setenv1
-:setdir1
-SET MSVCDir=C:\Program Files\Microsoft Visual Studio\VC98
-:setenv1
-SET OLDINCLUDE=%INCLUDE%
-SET OLDLIB=%LIB%
-SET OLDPATH=%PATH%
-call "%MSVCDir%\Bin\VCVARS32"
-call %2\make\windows\build %1 adlc %2 %3 %4
-SET INCLUDE=%OLDINCLUDE%
-SET LIB=%OLDLIB%
-SET PATH=%OLDPATH%
-echo Setting up 64-BIT Compilation Environment
-if "%MSSdk%" == "" goto setdir2
-goto setenv2
-:setdir2
-SET MSSdk=C:\Program Files\Microsoft SDK
-:setenv2
-call "%MSSdk%\SetEnv.bat" /XP64
-SET ALT_ADLC_PATH=%CD%\windows_i486_compiler2\generated
-call %2\make\windows\build %1 compiler2 %2 %3 %4
-SET INCLUDE=%OLDINCLUDE%
-SET LIB=%OLDLIB%
-SET PATH=%OLDPATH%
-SET OLDINCLUDE=
-SET OLDLIB=
-SET OLDPATH=
--- a/hotspot/make/windows/get_msc_ver.sh Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,93 +0,0 @@
-#
-# Copyright (c) 2005, 2012, 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.
-#
-# 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.
-#
-#
-
-set -e
-
-# This shell script echoes "MSC_VER=<munged version of cl>"
-# It ignores the micro version component.
-# Examples:
-# cl version 12.00.8804 returns "MSC_VER=1200"
-# cl version 13.10.3077 returns "MSC_VER=1310"
-# cl version 14.00.30701 returns "MSC_VER=1399" (OLD_MSSDK version)
-# cl version 14.00.40310.41 returns "MSC_VER=1400"
-# cl version 15.00.21022.8 returns "MSC_VER=1500"
-
-# Note that we currently do not have a way to set HotSpotMksHome in
-# the batch build, but so far this has not seemed to be a problem. The
-# reason this environment variable is necessary is that it seems that
-# Windows truncates very long PATHs when executing shells like MKS's
-# sh, and it has been found that sometimes `which sh` fails.
-
-if [ "x$HotSpotMksHome" != "x" ]; then
- TOOL_DIR="$HotSpotMksHome"
-else
- # HotSpotMksHome is not set so use the directory that contains "sh".
- # This works with both MKS and Cygwin.
- SH=`which sh`
- TOOL_DIR=`dirname "$SH"`
-fi
-
-DIRNAME="$TOOL_DIR/dirname"
-HEAD="$TOOL_DIR/head"
-ECHO="$TOOL_DIR/echo"
-EXPR="$TOOL_DIR/expr"
-CUT="$TOOL_DIR/cut"
-SED="$TOOL_DIR/sed"
-
-if [ "x$FORCE_MSC_VER" != "x" ]; then
- echo "MSC_VER=$FORCE_MSC_VER"
-else
- MSC_VER_RAW=`cl 2>&1 | "$HEAD" -n 1 | "$SED" 's/.*Version[\ ]*\([0-9][0-9.]*\).*/\1/'`
- MSC_VER_MAJOR=`"$ECHO" $MSC_VER_RAW | "$CUT" -d'.' -f1`
- MSC_VER_MINOR=`"$ECHO" $MSC_VER_RAW | "$CUT" -d'.' -f2`
- MSC_VER_MICRO=`"$ECHO" $MSC_VER_RAW | "$CUT" -d'.' -f3`
- if [ "${MSC_VER_MAJOR}" -eq 14 -a "${MSC_VER_MINOR}" -eq 0 -a "${MSC_VER_MICRO}" -eq 30701 ] ; then
- # This said 1400 but it was really more like VS2003 (VC7) in terms of options
- MSC_VER=1399
- else
- MSC_VER=`"$EXPR" $MSC_VER_MAJOR \* 100 + $MSC_VER_MINOR`
- fi
- echo "MSC_VER=$MSC_VER"
- echo "MSC_VER_RAW=$MSC_VER_RAW"
-fi
-
-if [ "x$FORCE_LD_VER" != "x" ]; then
- echo "LD_VER=$FORCE_LD_VER"
-else
- # use the "link" command that is co-located with the "cl" command
- cl_cmd=`which cl`
- if [ "x$cl_cmd" != "x" ]; then
- link_cmd=`$DIRNAME "$cl_cmd"`/link
- else
- # which can't find "cl" so just use which ever "link" we find
- link_cmd="link"
- fi
- LD_VER_RAW=`"$link_cmd" 2>&1 | "$HEAD" -n 1 | "$SED" 's/.*Version[\ ]*\([0-9][0-9.]*\).*/\1/'`
- LD_VER_MAJOR=`"$ECHO" $LD_VER_RAW | "$CUT" -d'.' -f1`
- LD_VER_MINOR=`"$ECHO" $LD_VER_RAW | "$CUT" -d'.' -f2`
- LD_VER_MICRO=`"$ECHO" $LD_VER_RAW | "$CUT" -d'.' -f3`
- LD_VER=`"$EXPR" $LD_VER_MAJOR \* 100 + $LD_VER_MINOR`
- echo "LD_VER=$LD_VER"
- echo "LD_VER_RAW=$LD_VER_RAW"
-fi
--- a/hotspot/make/windows/jvmexp.lcf Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,10 +0,0 @@
--export:JNI_GetDefaultJavaVMInitArgs
--export:JNI_CreateJavaVM
--export:JNI_GetCreatedJavaVMs
-
--export:jio_snprintf
--export:jio_printf
--export:jio_fprintf
--export:jio_vfprintf
--export:jio_vsnprintf
-
--- a/hotspot/make/windows/jvmexp_g.lcf Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,10 +0,0 @@
--export:JNI_GetDefaultJavaVMInitArgs
--export:JNI_CreateJavaVM
--export:JNI_GetCreatedJavaVMs
-
--export:jio_snprintf
--export:jio_printf
--export:jio_fprintf
--export:jio_vfprintf
--export:jio_vsnprintf
-
--- a/hotspot/make/windows/makefiles/adlc.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-
-# Rules for building adlc.exe
-
-# Need exception handling support here
-# $(MS_RUNTIME_OPTION) ( with /D_STATIC_CPPLIB)
-# causes adlc.exe to link with the static
-# multithread Standard C++ library (libcpmt.lib) instead of
-# the dynamic version (msvcprt.lib), which is not included
-# in any of the free tools.
-EXH_FLAGS=$(GX_OPTION) $(MS_RUNTIME_OPTION)
-
-!ifdef ALT_ADLC_PATH
-ADLC=$(ALT_ADLC_PATH)\adlc.exe
-!else
-ADLC=adlc
-!endif
-
-!ifdef LP64
-ADLCFLAGS=-q -T -D_LP64
-!else
-ADLCFLAGS=-q -T -U_LP64
-!endif
-
-ADLC_CXX_FLAGS=$(CXX_FLAGS) /D _CRT_SECURE_NO_WARNINGS /D _CRT_SECURE_NO_DEPRECATE
-
-CXX_INCLUDE_DIRS=\
- /I "..\generated" \
- /I "$(WorkSpace)\src\share\vm" \
- /I "$(WorkSpace)\src\os\windows\vm" \
- /I "$(WorkSpace)\src\cpu\$(Platform_arch)\vm"
-
-!if "$(Platform_arch_model)" == "$(Platform_arch)"
-SOURCES_AD=\
- $(WorkSpace)/src/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad
-!else
-SOURCES_AD=\
- $(WorkSpace)/src/cpu/$(Platform_arch)/vm/$(Platform_arch_model).ad \
- $(WorkSpace)/src/cpu/$(Platform_arch)/vm/$(Platform_arch).ad
-!endif
-
-# NOTE! If you add any files here, you must also update GENERATED_NAMES_IN_DIR
-# and ProjectCreatorIDEOptions in projectcreator.make.
-GENERATED_NAMES=\
- ad_$(Platform_arch_model).cpp \
- ad_$(Platform_arch_model).hpp \
- ad_$(Platform_arch_model)_clone.cpp \
- ad_$(Platform_arch_model)_expand.cpp \
- ad_$(Platform_arch_model)_format.cpp \
- ad_$(Platform_arch_model)_gen.cpp \
- ad_$(Platform_arch_model)_misc.cpp \
- ad_$(Platform_arch_model)_peephole.cpp \
- ad_$(Platform_arch_model)_pipeline.cpp \
- adGlobals_$(Platform_arch_model).hpp \
- dfa_$(Platform_arch_model).cpp
-
-# NOTE! This must be kept in sync with GENERATED_NAMES
-GENERATED_NAMES_IN_DIR=\
- $(AdlcOutDir)\ad_$(Platform_arch_model).cpp \
- $(AdlcOutDir)\ad_$(Platform_arch_model).hpp \
- $(AdlcOutDir)\ad_$(Platform_arch_model)_clone.cpp \
- $(AdlcOutDir)\ad_$(Platform_arch_model)_expand.cpp \
- $(AdlcOutDir)\ad_$(Platform_arch_model)_format.cpp \
- $(AdlcOutDir)\ad_$(Platform_arch_model)_gen.cpp \
- $(AdlcOutDir)\ad_$(Platform_arch_model)_misc.cpp \
- $(AdlcOutDir)\ad_$(Platform_arch_model)_peephole.cpp \
- $(AdlcOutDir)\ad_$(Platform_arch_model)_pipeline.cpp \
- $(AdlcOutDir)\adGlobals_$(Platform_arch_model).hpp \
- $(AdlcOutDir)\dfa_$(Platform_arch_model).cpp
-
-{$(WorkSpace)\src\share\vm\adlc}.cpp.obj::
- $(CXX) $(ADLC_CXX_FLAGS) $(EXH_FLAGS) $(CXX_INCLUDE_DIRS) /c $<
-
-{$(WorkSpace)\src\share\vm\opto}.cpp.obj::
- $(CXX) $(ADLC_CXX_FLAGS) $(EXH_FLAGS) $(CXX_INCLUDE_DIRS) /c $<
-
-adlc.exe: main.obj adlparse.obj archDesc.obj arena.obj dfa.obj dict2.obj filebuff.obj \
- forms.obj formsopt.obj formssel.obj opcodes.obj output_c.obj output_h.obj
- $(LD) $(LD_FLAGS) /subsystem:console /out:$@ $**
-!if "$(MT)" != ""
-# The previous link command created a .manifest file that we want to
-# insert into the linked artifact so we do not need to track it
-# separately. Use ";#2" for .dll and ";#1" for .exe:
- $(MT) /manifest $@.manifest /outputresource:$@;#1
-!endif
-
-$(GENERATED_NAMES_IN_DIR): $(Platform_arch_model).ad adlc.exe
- rm -f $(GENERATED_NAMES)
- if exist $(AdlcOutDir) rmdir /s /q $(AdlcOutDir)
- mkdir $(AdlcOutDir)
- $(ADLC) $(ADLCFLAGS) $(Platform_arch_model).ad
- mv $(GENERATED_NAMES) $(AdlcOutDir)/
-
-$(Platform_arch_model).ad: $(SOURCES_AD)
- rm -f $(Platform_arch_model).ad
- cat $(SOURCES_AD) >$(Platform_arch_model).ad
--- a/hotspot/make/windows/makefiles/compile.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,197 +0,0 @@
-#
-# Copyright (c) 1997, 2015, 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.
-#
-# 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.
-#
-#
-
-# Generic compiler settings
-!if "x$(CXX)" == "x"
-CXX=cl.exe
-!endif
-
-# CXX Flags: (these vary slightly from VC6->VS2003->VS2005 compilers)
-# /nologo Supress copyright message at every cl.exe startup
-# /W3 Warning level 3
-# /Zi Include debugging information
-# /d2Zi+ Extended debugging symbols for optimized code (/Zo in VS2013 Update 3 and later)
-# /WX Treat any warning error as a fatal error
-# /MD Use dynamic multi-threaded runtime (msvcrt.dll or msvc*NN.dll)
-# /MTd Use static multi-threaded runtime debug versions
-# /O1 Optimize for size (/Os), skips /Oi
-# /O2 Optimize for speed (/Ot), adds /Oi to /O1
-# /Ox Old "all optimizations flag" for VC6 (in /O1)
-# /Oy Use frame pointer register as GP reg (in /Ox and /O1)
-# /GF Merge string constants and put in read-only memory (in /O1)
-# /Gy Func level link (in /O1, allows for link-time func ordering)
-# /Gs Inserts stack probes (in /O1)
-# /GS Inserts security stack checks in some functions (VS2005 default)
-# /Oi Use intrinsics (in /O2)
-# /Od Disable all optimizations
-# /MP Use multiple cores for compilation
-#
-# NOTE: Normally following any of the above with a '-' will turn off that flag
-#
-# 6655385: For VS2003/2005 we now specify /Oy- (disable frame pointer
-# omission.) This has little to no effect on performance while vastly
-# improving the quality of crash log stack traces involving jvm.dll.
-
-# These are always used in all compiles
-CXX_FLAGS=$(EXTRA_CFLAGS) /nologo /W3
-
-!if "$(WARNINGS_AS_ERRORS)" != "false"
-CXX_FLAGS=$(CXX_FLAGS) /WX
-!endif
-
-# Let's add debug information when Full Debug Symbols is enabled
-!if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1"
-CXX_FLAGS=$(CXX_FLAGS) /Zi /d2Zi+
-!endif
-
-# Based on BUILDARCH we add some flags and select the default compiler name
-!if "$(BUILDARCH)" == "ia64"
-MACHINE=IA64
-CXX_FLAGS=$(CXX_FLAGS) /D "CC_INTERP" /D "_LP64" /D "IA64"
-!endif
-
-!if "$(BUILDARCH)" == "amd64"
-MACHINE=AMD64
-CXX_FLAGS=$(CXX_FLAGS) /D "_LP64" /D "AMD64"
-LP64=1
-!endif
-
-!if "$(BUILDARCH)" == "i486"
-MACHINE=I386
-# VS2013 generates bad l2f without /arch:IA32
-CXX_FLAGS=$(CXX_FLAGS) /D "IA32" /arch:IA32
-!endif
-
-CXX_FLAGS=$(CXX_FLAGS) /D "WIN32" /D "_WINDOWS"
-# Must specify this for sharedRuntimeTrig.cpp
-CXX_FLAGS=$(CXX_FLAGS) /D "VM_LITTLE_ENDIAN"
-
-# Used for platform dispatching
-CXX_FLAGS=$(CXX_FLAGS) /D TARGET_OS_FAMILY_windows
-CXX_FLAGS=$(CXX_FLAGS) /D TARGET_ARCH_$(Platform_arch)
-CXX_FLAGS=$(CXX_FLAGS) /D TARGET_ARCH_MODEL_$(Platform_arch_model)
-CXX_FLAGS=$(CXX_FLAGS) /D TARGET_OS_ARCH_windows_$(Platform_arch)
-CXX_FLAGS=$(CXX_FLAGS) /D TARGET_OS_ARCH_MODEL_windows_$(Platform_arch_model)
-CXX_FLAGS=$(CXX_FLAGS) /D TARGET_COMPILER_visCPP
-
-
-# MSC_VER is a 4 digit number that tells us what compiler is being used
-# and is generated when the local.make file is created by build.make
-# via the script get_msc_ver.sh
-#
-# If MSC_VER is set, it overrides the above default setting.
-# But it should be set.
-# Possible values:
-# 1200 is for VC6
-# 1300 and 1310 is VS2003 or VC7
-# 1399 is our fake number for the VS2005 compiler that really isn't 1400
-# 1400 is for VS2005
-# 1500 is for VS2008
-# 1600 is for VS2010
-# 1700 is for VS2012
-# 1800 is for VS2013
-# Do not confuse this MSC_VER with the predefined macro _MSC_VER that the
-# compiler provides, when MSC_VER==1399, _MSC_VER will be 1400.
-# Normally they are the same, but a pre-release of the VS2005 compilers
-# in the Windows 64bit Platform SDK said it was 1400 when it was really
-# closer to VS2003 in terms of option spellings, so we use 1399 for that
-# 1400 version that really isn't 1400.
-# See the file get_msc_ver.sh for more info.
-
-# By default, we do not want to use the debug version of the msvcrt.dll file
-# but if MFC_DEBUG is defined in the environment it will be used.
-MS_RUNTIME_OPTION = /MD
-!if "$(MFC_DEBUG)" == "true"
-MS_RUNTIME_OPTION = /MTd /D "_DEBUG"
-!endif
-
-# VS2012 and later won't work with:
-# /D _STATIC_CPPLIB /D _DISABLE_DEPRECATE_STATIC_CPPLIB
-!if "$(MSC_VER)" < "1700"
-# Always add the _STATIC_CPPLIB flag
-STATIC_CPPLIB_OPTION = /D _STATIC_CPPLIB /D _DISABLE_DEPRECATE_STATIC_CPPLIB
-MS_RUNTIME_OPTION = $(MS_RUNTIME_OPTION) $(STATIC_CPPLIB_OPTION)
-!endif
-CXX_FLAGS=$(CXX_FLAGS) $(MS_RUNTIME_OPTION)
-
-PRODUCT_OPT_OPTION = /O2 /Oy-
-FASTDEBUG_OPT_OPTION = /O2 /Oy-
-DEBUG_OPT_OPTION = /Od
-GX_OPTION = /EHsc
-LD_FLAGS = /manifest $(LD_FLAGS)
-MP_FLAG = /MP
-# Manifest Tool - used in VS2005 and later to adjust manifests stored
-# as resources inside build artifacts.
-!if "x$(MT)" == "x"
-MT=mt.exe
-!endif
-!if "$(BUILDARCH)" == "i486"
-LD_FLAGS = /SAFESEH $(LD_FLAGS)
-!endif
-
-CXX_FLAGS = $(CXX_FLAGS) $(MP_FLAG)
-
-# If NO_OPTIMIZATIONS is defined in the environment, turn everything off
-!ifdef NO_OPTIMIZATIONS
-PRODUCT_OPT_OPTION = $(DEBUG_OPT_OPTION)
-FASTDEBUG_OPT_OPTION = $(DEBUG_OPT_OPTION)
-!endif
-
-# Generic linker settings
-!if "x$(LD)" == "x"
-LD=link.exe
-!endif
-LD_FLAGS= $(LD_FLAGS) kernel32.lib user32.lib gdi32.lib winspool.lib \
- comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib \
- uuid.lib Wsock32.lib winmm.lib version.lib /nologo /machine:$(MACHINE) /opt:REF \
- /opt:ICF,8
-!if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1"
-LD_FLAGS= $(LD_FLAGS) /map /debug
-!endif
-
-
-!if $(MSC_VER) >= 1600
-LD_FLAGS= $(LD_FLAGS) psapi.lib
-!endif
-
-# Resource compiler settings
-!if "x$(RC)" == "x"
-RC=rc.exe
-!endif
-RC_FLAGS=/D "HS_VER=$(HS_VER)" \
- /D "HS_DOTVER=$(HS_DOTVER)" \
- /D "HS_BUILD_ID=$(HS_BUILD_ID)" \
- /D "JDK_VER=$(JDK_VER)" \
- /D "JDK_DOTVER=$(JDK_DOTVER)" \
- /D "HS_COMPANY=$(HS_COMPANY)" \
- /D "HS_FILEDESC=$(HS_FILEDESC)" \
- /D "HS_COPYRIGHT=$(HS_COPYRIGHT)" \
- /D "HS_FNAME=$(HS_FNAME)" \
- /D "HS_INTERNAL_NAME=$(HS_INTERNAL_NAME)" \
- /D "HS_NAME=$(HS_NAME)"
-
-# Need this to match the CXX_FLAGS settings
-!if "$(MFC_DEBUG)" == "true"
-RC_FLAGS = $(RC_FLAGS) /D "_DEBUG"
-!endif
--- a/hotspot/make/windows/makefiles/debug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,68 +0,0 @@
-#
-# Copyright (c) 1997, 2015, 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.
-#
-# 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.
-#
-#
-
-HS_INTERNAL_NAME=jvm
-HS_FNAME=$(HS_INTERNAL_NAME).dll
-AOUT=$(HS_FNAME)
-GENERATED=../generated
-
-# Allow the user to turn off precompiled headers from the command line.
-!if "$(USE_PRECOMPILED_HEADER)" != "0"
-BUILD_PCH_FILE=_build_pch_file.obj
-!endif
-
-default:: $(BUILD_PCH_FILE) $(AOUT)
-
-!include ../local.make
-!include compile.make
-
-# _NMT_NOINLINE_ informs NMT that no inlining by Compiler
-CXX_FLAGS=$(CXX_FLAGS) $(DEBUG_OPT_OPTION) /D "_NMT_NOINLINE_"
-
-!include $(WorkSpace)/make/windows/makefiles/vm.make
-!include local.make
-
-HS_BUILD_ID=$(HOTSPOT_VERSION_STRING)-debug
-
-# Force resources to be rebuilt every time
-$(Res_Files): FORCE
-
-# NOTE: Changes in this file was just to give a proper command line when linking
-# for use when developing the new build, and should not be integrated.
-$(AOUT): $(Res_Files) $(Obj_Files) vm.def
- $(LD) $(LD_FLAGS) /out:$@ /implib:$*.lib /def:vm.def $(Obj_Files) $(Res_Files)
-!if "$(MT)" != ""
-# The previous link command created a .manifest file that we want to
-# insert into the linked artifact so we do not need to track it
-# separately. Use ";#2" for .dll and ";#1" for .exe:
- $(MT) /manifest $@.manifest /outputresource:$@;#2
-!endif
-!if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1"
-!if "$(ZIP_DEBUGINFO_FILES)" == "1"
- $(ZIPEXE) -q $*.diz $*.map $*.pdb
- $(RM) $*.map $*.pdb
-!endif
-!endif
-
-!include $(WorkSpace)/make/windows/makefiles/shared.make
--- a/hotspot/make/windows/makefiles/defs.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,282 +0,0 @@
-#
-# Copyright (c) 2006, 2015, 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.
-#
-# 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.
-#
-#
-
-# The common definitions for hotspot windows builds.
-# Include the top level defs.make under make directory instead of this one.
-# This file is included into make/defs.make.
-# On windows it is only used to construct parameters for
-# make/windows/build.make when make/Makefile is used to build VM.
-
-SLASH_JAVA ?= J:
-PATH_SEP = ;
-
-MAKE_ARGS += WARNINGS_AS_ERRORS=$(WARNINGS_AS_ERRORS)
-
-# Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name
-ifeq ($(ARCH_DATA_MODEL),32)
- ARCH_DATA_MODEL=32
- PLATFORM=windows-i586
- VM_PLATFORM=windows_i486
- HS_ARCH=x86
- MAKE_ARGS += ARCH=x86
- MAKE_ARGS += BUILDARCH=i486
- MAKE_ARGS += Platform_arch=x86
- MAKE_ARGS += Platform_arch_model=x86_32
-endif
-
-ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) x86),)
- ARCH_DATA_MODEL=32
- PLATFORM=windows-i586
- VM_PLATFORM=windows_i486
- HS_ARCH=x86
- MAKE_ARGS += ARCH=x86
- MAKE_ARGS += BUILDARCH=i486
- MAKE_ARGS += Platform_arch=x86
- MAKE_ARGS += Platform_arch_model=x86_32
-endif
-
-ifneq ($(ARCH_DATA_MODEL),32)
- ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) ia64),)
- ARCH_DATA_MODEL=64
- PLATFORM=windows-ia64
- VM_PLATFORM=windows_ia64
- HS_ARCH=ia64
- MAKE_ARGS += LP64=1
- MAKE_ARGS += ARCH=ia64
- MAKE_ARGS += BUILDARCH=ia64
- MAKE_ARGS += Platform_arch=ia64
- MAKE_ARGS += Platform_arch_model=ia64
- endif
-
-# http://support.microsoft.com/kb/888731 : this can be either
-# AMD64 for AMD, or EM64T for Intel chips.
- ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) AMD64),)
- ARCH_DATA_MODEL=64
- PLATFORM=windows-amd64
- VM_PLATFORM=windows_amd64
- HS_ARCH=x86
- MAKE_ARGS += LP64=1
- MAKE_ARGS += ARCH=x86
- MAKE_ARGS += BUILDARCH=amd64
- MAKE_ARGS += Platform_arch=x86
- MAKE_ARGS += Platform_arch_model=x86_64
- endif
-
-ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) EM64T),)
- ARCH_DATA_MODEL=64
- PLATFORM=windows-amd64
- VM_PLATFORM=windows_amd64
- HS_ARCH=x86
- MAKE_ARGS += LP64=1
- MAKE_ARGS += ARCH=x86
- MAKE_ARGS += BUILDARCH=amd64
- MAKE_ARGS += Platform_arch=x86
- MAKE_ARGS += Platform_arch_model=x86_64
- endif
-
-# NB later OS versions than 2003 may report "Intel64"
- ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) Intel64),)
- ARCH_DATA_MODEL=64
- PLATFORM=windows-amd64
- VM_PLATFORM=windows_amd64
- HS_ARCH=x86
- MAKE_ARGS += LP64=1
- MAKE_ARGS += ARCH=x86
- MAKE_ARGS += BUILDARCH=amd64
- MAKE_ARGS += Platform_arch=x86
- MAKE_ARGS += Platform_arch_model=x86_64
- endif
-endif
-
-# Full Debug Symbols has been enabled on Windows since JDK1.4.1 so
-# there is no need for an "earlier than JDK7 check".
-# The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product
-# builds is enabled with debug info files ZIP'ed to save space. For
-# BUILD_FLAVOR != product builds, FDS is always enabled, after all a
-# debug build without debug info isn't very useful.
-# The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled.
-#
-# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be
-# disabled for a BUILD_FLAVOR == product build.
-#
-# Note: Use of a different variable name for the FDS override option
-# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS
-# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass
-# in options via environment variables, use of distinct variables
-# prevents strange behaviours. For example, in a BUILD_FLAVOR !=
-# product build, the FULL_DEBUG_SYMBOLS environment variable will be
-# 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If
-# the same variable name is used, then different values can be picked
-# up by different parts of the build. Just to be clear, we only need
-# two variable names because the incoming option value can be
-# overridden in some situations, e.g., a BUILD_FLAVOR != product
-# build.
-
-# Due to the multiple sub-make processes that occur this logic gets
-# executed multiple times. We reduce the noise by at least checking that
-# BUILD_FLAVOR has been set.
-ifneq ($(BUILD_FLAVOR),)
- ifeq ($(BUILD_FLAVOR), product)
- FULL_DEBUG_SYMBOLS ?= 1
- ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS)
- else
- # debug variants always get Full Debug Symbols (if available)
- ENABLE_FULL_DEBUG_SYMBOLS = 1
- endif
- _JUNK_ := $(shell \
- echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)")
- MAKE_ARGS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)
-
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ZIP_DEBUGINFO_FILES ?= 1
- else
- ZIP_DEBUGINFO_FILES=0
- endif
- MAKE_ARGS += ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)
-endif
-
-MAKE_ARGS += RM="$(RM)"
-MAKE_ARGS += ZIPEXE=$(ZIPEXE)
-MAKE_ARGS += CP="${CP}"
-MAKE_ARGS += MV="${MV}"
-
-
-# On 32 bit windows we build server and client, on 64 bit just server.
-ifeq ($(JVM_VARIANTS),)
- ifeq ($(ARCH_DATA_MODEL), 32)
- JVM_VARIANTS:=client,server
- JVM_VARIANT_CLIENT:=true
- JVM_VARIANT_SERVER:=true
- else
- JVM_VARIANTS:=server
- JVM_VARIANT_SERVER:=true
- endif
-endif
-
-JDK_INCLUDE_SUBDIR=win32
-
-# Library suffix
-LIBRARY_SUFFIX=dll
-
-# next parameters are defined in $(GAMMADIR)/make/defs.make.
-MAKE_ARGS += VERSION_SHORT=$(VERSION_SHORT)
-MAKE_ARGS += VERSION_MAJOR=$(VERSION_MAJOR)
-MAKE_ARGS += VERSION_MINOR=$(VERSION_MINOR)
-MAKE_ARGS += VERSION_SECURITY=$(VERSION_SECURITY)
-MAKE_ARGS += VERSION_PATCH=$(VERSION_PATCH)
-MAKE_ARGS += VERSION_BUILD=$(VERSION_BUILD)
-MAKE_ARGS += DEBUG_LEVEL=$(DEBUG_LEVEL)
-
-# JDK_DOTVER and JDK_VER are needed in Windows RC files
-COMMA:=,
-MAKE_ARGS += JDK_DOTVER=$(VERSION_NUMBER_FOUR_POSITIONS)
-MAKE_ARGS += JDK_VER=$(subst .,$(COMMA),$(VERSION_NUMBER_FOUR_POSITIONS))
-
-NMAKE= MAKEFLAGS= MFLAGS= EXTRA_CFLAGS="$(EXTRA_CFLAGS)" nmake -NOLOGO
-ifndef SYSTEM_UNAME
- SYSTEM_UNAME := $(shell uname)
- export SYSTEM_UNAME
-endif
-
-# Check for CYGWIN
-ifneq (,$(findstring CYGWIN,$(SYSTEM_UNAME)))
- USING_CYGWIN=true
-else
- USING_CYGWIN=false
-endif
-# Check for MinGW
-ifneq (,$(findstring MINGW,$(SYSTEM_UNAME)))
- USING_MINGW=true
-endif
-
-# Windows wants particular paths due to nmake (must be after macros defined)
-# It is important that gnumake invokes nmake with C:\\...\\ formated
-# strings so that nmake gets C:\...\ style strings.
-# Check for CYGWIN
-ifeq ($(USING_CYGWIN), true)
- ABS_OUTPUTDIR := $(subst /,\\,$(shell /bin/cygpath -m -a "$(OUTPUTDIR)"))
- ABS_BOOTDIR := $(subst /,\\,$(shell /bin/cygpath -m -a "$(BOOTDIR)"))
- ABS_GAMMADIR := $(subst /,\\,$(shell /bin/cygpath -m -a "$(GAMMADIR)"))
- ABS_OS_MAKEFILE := $(shell /bin/cygpath -m -a "$(HS_MAKE_DIR)/$(OSNAME)")/build.make
-else ifeq ($(USING_MINGW), true)
- ABS_OUTPUTDIR := $(shell $(CD) $(OUTPUTDIR);$(PWD))
- ABS_BOOTDIR := $(shell $(CD) $(BOOTDIR);$(PWD))
- ABS_GAMMADIR := $(shell $(CD) $(GAMMADIR);$(PWD))
- ABS_OS_MAKEFILE := $(shell $(CD) $(HS_MAKE_DIR)/$(OSNAME);$(PWD))/build.make
- else
- ABS_OUTPUTDIR := $(subst /,\\,$(shell $(CD) $(OUTPUTDIR);$(PWD)))
- ABS_BOOTDIR := $(subst /,\\,$(shell $(CD) $(BOOTDIR);$(PWD)))
- ABS_GAMMADIR := $(subst /,\\,$(shell $(CD) $(GAMMADIR);$(PWD)))
- ABS_OS_MAKEFILE := $(subst /,\\,$(shell $(CD) $(HS_MAKE_DIR)/$(OSNAME);$(PWD))/build.make)
-endif
-
-EXPORT_SERVER_DIR = $(EXPORT_BIN_DIR)/server
-EXPORT_CLIENT_DIR = $(EXPORT_BIN_DIR)/client
-
-ifeq ($(JVM_VARIANT_SERVER),true)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.$(LIBRARY_SUFFIX)
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.diz
- else
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.pdb
- EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.map
- endif
- endif
-endif
-ifeq ($(JVM_VARIANT_CLIENT),true)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.$(LIBRARY_SUFFIX)
- ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1)
- ifeq ($(ZIP_DEBUGINFO_FILES),1)
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.diz
- else
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.pdb
- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.map
- endif
- endif
-endif
-
-EXPORT_LIST += $(EXPORT_LIB_DIR)/jvm.lib
-
-# Propagate compiler and tools paths from configure to nmake.
-# Need to make sure they contain \\ and not /.
-ifneq ($(SPEC),)
- ifeq ($(USING_CYGWIN), true)
- MAKE_ARGS += CXX="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(CXX)))"
- MAKE_ARGS += LD="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(LD)))"
- MAKE_ARGS += RC="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(RC)))"
- MAKE_ARGS += MT="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(MT)))"
- else
- MAKE_ARGS += CXX="$(subst /,\\,$(CXX))"
- MAKE_ARGS += LD="$(subst /,\\,$(LD))"
- MAKE_ARGS += RC="$(subst /,\\,$(RC))"
- MAKE_ARGS += MT="$(subst /,\\,$(MT))"
- endif
-endif
-
-ifdef OPENJDK
- MAKE_ARGS += OPENJDK="$(OPENJDK)"
-endif
--- a/hotspot/make/windows/makefiles/fastdebug.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-#
-# Copyright (c) 2005, 2015, 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.
-#
-# 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.
-#
-#
-
-HS_INTERNAL_NAME=jvm
-HS_FNAME=$(HS_INTERNAL_NAME).dll
-AOUT=$(HS_FNAME)
-GENERATED=../generated
-
-# Allow the user to turn off precompiled headers from the command line.
-!if "$(USE_PRECOMPILED_HEADER)" != "0"
-BUILD_PCH_FILE=_build_pch_file.obj
-!endif
-
-default:: $(BUILD_PCH_FILE) $(AOUT)
-
-!include ../local.make
-!include compile.make
-
-CXX_FLAGS=$(CXX_FLAGS) $(FASTDEBUG_OPT_OPTION)
-
-!include $(WorkSpace)/make/windows/makefiles/vm.make
-!include local.make
-
-HS_BUILD_ID=$(HOTSPOT_VERSION_STRING)-fastdebug
-
-# Force resources to be rebuilt every time
-$(Res_Files): FORCE
-
-# NOTE: Changes in this file was just to give a proper command line when linking
-# for use when developing the new build, and should not be integrated.
-$(AOUT): $(Res_Files) $(Obj_Files) vm.def
- $(LD) $(LD_FLAGS) /out:$@ /implib:$*.lib /def:vm.def $(Obj_Files) $(Res_Files)
-!if "$(MT)" != ""
-# The previous link command created a .manifest file that we want to
-# insert into the linked artifact so we do not need to track it
-# separately. Use ";#2" for .dll and ";#1" for .exe:
- $(MT) /manifest $@.manifest /outputresource:$@;#2
-!endif
-!if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1"
-!if "$(ZIP_DEBUGINFO_FILES)" == "1"
- $(ZIPEXE) -q $*.diz $*.map $*.pdb
- $(RM) $*.map $*.pdb
-!endif
-!endif
-
-!include $(WorkSpace)/make/windows/makefiles/shared.make
--- a/hotspot/make/windows/makefiles/generated.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,60 +0,0 @@
-#
-# Copyright (c) 2005, 2013, 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.
-#
-# 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.
-#
-#
-
-!include ../local.make
-!include $(WorkSpace)/make/windows/makefiles/projectcreator.make
-!include local.make
-
-# Pick up rules for building JVMTI (JSR-163)
-JvmtiOutDir=jvmtifiles
-!include $(WorkSpace)/make/windows/makefiles/jvmti.make
-
-# Pick up rules for building trace
-TraceOutDir=tracefiles
-!include $(WorkSpace)/make/windows/makefiles/trace.make
-
-AdlcOutDir=adfiles
-
-!if ("$(Variant)" == "compiler2") || ("$(Variant)" == "tiered")
-default:: $(AdlcOutDir)/ad_$(Platform_arch_model).cpp $(AdlcOutDir)/dfa_$(Platform_arch_model).cpp $(JvmtiGeneratedFiles) $(TraceGeneratedFiles) buildobjfiles
-!else
-default:: $(JvmtiGeneratedFiles) $(TraceGeneratedFiles) buildobjfiles
-!endif
-
-buildobjfiles:
- @ sh $(WorkSpace)/make/windows/create_obj_files.sh $(Variant) $(Platform_arch) $(Platform_arch_model) $(WorkSpace) . > objfiles.make
-
-classes/ProjectCreator.class: $(ProjectCreatorSources)
- if exist classes rmdir /s /q classes
- mkdir classes
- $(COMPILE_JAVAC) -classpath $(WorkSpace)\src\share\tools\ProjectCreator -d classes $(ProjectCreatorSources)
-
-!if ("$(Variant)" == "compiler2") || ("$(Variant)" == "tiered")
-
-!include $(WorkSpace)/make/windows/makefiles/compile.make
-!include $(WorkSpace)/make/windows/makefiles/adlc.make
-
-!endif
-
-!include $(WorkSpace)/make/windows/makefiles/shared.make
--- a/hotspot/make/windows/makefiles/jvmti.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,114 +0,0 @@
-#
-# Copyright (c) 2003, 2008, 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.
-#
-# 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.
-#
-#
-
-# This makefile (jvmti.make) is included from the jvmti.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate jvmti.
-
-!include $(WorkSpace)/make/windows/makefiles/rules.make
-
-# #########################################################################
-
-JvmtiSrcDir = $(WorkSpace)/src/share/vm/prims
-InterpreterSrcDir = $(WorkSpace)/src/share/vm/interpreter
-
-JvmtiGeneratedNames = \
- jvmtiEnv.hpp \
- jvmtiEnter.cpp \
- jvmtiEnterTrace.cpp \
- jvmtiEnvRecommended.cpp \
- bytecodeInterpreterWithChecks.cpp \
- jvmti.h \
-
-JvmtiEnvFillSource = $(JvmtiSrcDir)/jvmtiEnvFill.java
-JvmtiEnvFillClass = $(JvmtiOutDir)/jvmtiEnvFill.class
-
-JvmtiGenSource = $(JvmtiSrcDir)/jvmtiGen.java
-JvmtiGenClass = $(JvmtiOutDir)/jvmtiGen.class
-
-#Note: JvmtiGeneratedFiles must be kept in sync with JvmtiGeneratedNames by hand.
-#Should be equivalent #to "JvmtiGeneratedFiles = $(JvmtiGeneratedNames:%=$(JvmtiOutDir)/%)"
-JvmtiGeneratedFiles = \
- $(JvmtiOutDir)/jvmtiEnv.hpp \
- $(JvmtiOutDir)/jvmtiEnter.cpp \
- $(JvmtiOutDir)/jvmtiEnterTrace.cpp \
- $(JvmtiOutDir)/jvmtiEnvRecommended.cpp\
- $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp\
- $(JvmtiOutDir)/jvmti.h \
-
-XSLT = $(RUN_JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-# #########################################################################
-
-both = $(JvmtiGenClass) $(JvmtiSrcDir)/jvmti.xml $(JvmtiSrcDir)/jvmtiLib.xsl
-
-default::
- @if not exist $(JvmtiOutDir) mkdir $(JvmtiOutDir)
-
-$(JvmtiGenClass): $(JvmtiGenSource)
- $(COMPILE_JAVAC) -d $(JvmtiOutDir) $(JvmtiGenSource)
-
-$(JvmtiEnvFillClass): $(JvmtiEnvFillSource)
- @$(COMPILE_JAVAC) -d $(JvmtiOutDir) $(JvmtiEnvFillSource)
-
-$(JvmtiOutDir)/jvmtiEnter.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo Generating $@
- @$(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnter.cpp -PARAM interface jvmti
-
-$(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp: $(JvmtiGenClass) $(InterpreterSrcDir)/bytecodeInterpreter.cpp $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl
- @echo Generating $@
- @$(XSLT) -IN $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml -XSL $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl -OUT $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp
-
-$(JvmtiOutDir)/jvmtiEnterTrace.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl
- @echo Generating $@
- @$(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnterTrace.cpp -PARAM interface jvmti -PARAM trace Trace
-
-$(JvmtiOutDir)/jvmtiEnvRecommended.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnv.xsl $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiEnvFillClass)
- @echo Generating $@
- @$(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnv.xsl -OUT $(JvmtiOutDir)/jvmtiEnvStub.cpp
- @$(RUN_JAVA) -classpath $(JvmtiOutDir) jvmtiEnvFill $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiOutDir)/jvmtiEnvStub.cpp $(JvmtiOutDir)/jvmtiEnvRecommended.cpp
-
-$(JvmtiOutDir)/jvmtiEnv.hpp: $(both) $(JvmtiSrcDir)/jvmtiHpp.xsl
- @echo Generating $@
- @$(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiHpp.xsl -OUT $(JvmtiOutDir)/jvmtiEnv.hpp
-
-$(JvmtiOutDir)/jvmti.h: $(both) $(JvmtiSrcDir)/jvmtiH.xsl
- @echo Generating $@
- @$(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiH.xsl -OUT $(JvmtiOutDir)/jvmti.h
-
-jvmtidocs: $(JvmtiOutDir)/jvmti.html
-
-$(JvmtiOutDir)/jvmti.html: $(both) $(JvmtiSrcDir)/jvmti.xsl
- @echo Generating $@
- @$(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmti.xsl -OUT $(JvmtiOutDir)/jvmti.html
-
-# #########################################################################
-
-cleanall :
- rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles)
-
-# #########################################################################
-
-.PHONY: jvmtidocs cleanall
--- a/hotspot/make/windows/makefiles/product.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-#
-# Copyright (c) 2005, 2015, 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.
-#
-# 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.
-#
-#
-
-HS_INTERNAL_NAME=jvm
-HS_FNAME=$(HS_INTERNAL_NAME).dll
-AOUT=$(HS_FNAME)
-GENERATED=../generated
-
-# Allow the user to turn off precompiled headers from the command line.
-!if "$(USE_PRECOMPILED_HEADER)" != "0"
-BUILD_PCH_FILE=_build_pch_file.obj
-!endif
-
-default:: $(BUILD_PCH_FILE) $(AOUT)
-
-!include ../local.make
-!include compile.make
-
-CXX_FLAGS=$(CXX_FLAGS) $(PRODUCT_OPT_OPTION)
-
-RELEASE=
-
-RC_FLAGS=$(RC_FLAGS) /D "NDEBUG"
-
-!include $(WorkSpace)/make/windows/makefiles/vm.make
-!include local.make
-
-HS_BUILD_ID=$(HOTSPOT_VERSION_STRING)
-
-# Force resources to be rebuilt every time
-$(Res_Files): FORCE
-
-# NOTE: Changes in this file was just to give a proper command line when linking
-# for use when developing the new build, and should not be integrated.
-$(AOUT): $(Res_Files) $(Obj_Files) vm.def
- $(LD) $(LD_FLAGS) /out:$@ /implib:$*.lib /def:vm.def $(Obj_Files) $(Res_Files)
-
-!if "$(MT)" != ""
-# The previous link command created a .manifest file that we want to
-# insert into the linked artifact so we do not need to track it
-# separately. Use ";#2" for .dll and ";#1" for .exe:
- $(MT) /manifest $@.manifest /outputresource:$@;#2
-!endif
-!if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1"
-!if "$(ZIP_DEBUGINFO_FILES)" == "1"
- $(ZIPEXE) -q $*.diz $*.map $*.pdb
- $(RM) $*.map $*.pdb
-!endif
-!endif
-
-!include $(WorkSpace)/make/windows/makefiles/shared.make
--- a/hotspot/make/windows/makefiles/projectcreator.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,210 +0,0 @@
-#
-# Copyright (c) 1999, 2013, 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.
-#
-# 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.
-#
-#
-
-!include $(WorkSpace)/make/windows/makefiles/rules.make
-
-# This is used externally by both batch and IDE builds, so can't
-# reference any of the HOTSPOTWORKSPACE, HOTSPOTBUILDSPACE,
-# HOTSPOTRELEASEBINDEST, or HOTSPOTDEBUGBINDEST environment variables.
-
-ProjectCreatorSources=\
- $(WorkSpace)\src\share\tools\ProjectCreator\ProjectCreator.java \
- $(WorkSpace)\src\share\tools\ProjectCreator\FileTreeCreator.java \
- $(WorkSpace)\src\share\tools\ProjectCreator\FileTreeCreatorVC10.java \
- $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatform.java \
- $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatformVC10.java \
- $(WorkSpace)\src\share\tools\ProjectCreator\Util.java \
- $(WorkSpace)\src\share\tools\ProjectCreator\BuildConfig.java \
- $(WorkSpace)\src\share\tools\ProjectCreator\ArgsParser.java
-
-# This is only used internally
-ProjectCreatorIncludesPRIVATE=\
- -relativeAltSrcInclude src\closed \
- -altRelativeInclude share\vm \
- -altRelativeInclude os\windows\vm \
- -altRelativeInclude os_cpu\windows_$(Platform_arch)\vm \
- -altRelativeInclude cpu\$(Platform_arch)\vm \
- -relativeInclude src\share\vm \
- -relativeInclude src\share\vm\precompiled \
- -relativeInclude src\share\vm\prims\wbtestmethods \
- -relativeInclude src\share\vm\prims \
- -relativeInclude src\os\windows\vm \
- -relativeInclude src\os_cpu\windows_$(Platform_arch)\vm \
- -relativeInclude src\cpu\$(Platform_arch)\vm \
- -absoluteInclude $(HOTSPOTBUILDSPACE)/%f/generated \
- -relativeSrcInclude src \
- -absoluteSrcInclude $(HOTSPOTBUILDSPACE) \
- -ignorePath $(HOTSPOTBUILDSPACE) \
- -ignorePath share\vm\adlc \
- -ignorePath share\vm\shark \
- -ignorePath share\tools \
- -ignorePath solaris \
- -ignorePath posix \
- -ignorePath sparc \
- -ignorePath linux \
- -ignorePath bsd \
- -ignorePath osx \
- -ignorePath arm \
- -ignorePath ppc \
- -ignorePath zero \
- -ignorePath aix \
- -ignorePath aarch64 \
- -ignorePath jdk.vm.ci \
- -hidePath .hg
-
-
-# This is referenced externally by both the IDE and batch builds
-ProjectCreatorOptions=
-
-# This is used externally, but only by the IDE builds, so we can
-# reference environment variables which aren't defined in the batch
-# build process.
-
-ProjectCreatorIDEOptions = \
- -useToGeneratePch java.cpp \
- -disablePch os_windows.cpp \
- -disablePch os_windows_$(Platform_arch).cpp \
- -disablePch osThread_windows.cpp \
- -disablePch bytecodeInterpreter.cpp \
- -disablePch bytecodeInterpreterWithChecks.cpp \
- -disablePch getThread_windows_$(Platform_arch).cpp \
- -disablePch_compiler2 opcodes.cpp
-
-# Common options for the IDE builds for c1, and c2
-ProjectCreatorIDEOptions=\
- $(ProjectCreatorIDEOptions) \
- -sourceBase $(HOTSPOTWORKSPACE) \
- -buildBase $(HOTSPOTBUILDSPACE)\%f\%b \
- -buildSpace $(HOTSPOTBUILDSPACE) \
- -startAt src \
- -compiler $(VcVersion) \
- -projectFileName $(HOTSPOTBUILDSPACE)\$(ProjectFile) \
- -jdkTargetRoot $(HOTSPOTJDKDIST) \
- -define ALIGN_STACK_FRAMES \
- -define VM_LITTLE_ENDIAN \
- -prelink "" "Generating vm.def..." "cd $(HOTSPOTBUILDSPACE)\%f\%b set HOTSPOTMKSHOME=$(HOTSPOTMKSHOME) set JAVA_HOME=$(HOTSPOTJDKDIST) $(HOTSPOTMKSHOME)\sh $(HOTSPOTWORKSPACE)\make\windows\build_vm_def.sh $(LD_VER)" \
- -ignorePath src\jdk.hotspot.agent \
- -ignoreFile jsig.c \
- -ignoreFile jvmtiEnvRecommended.cpp \
- -ignoreFile jvmtiEnvStub.cpp \
- -ignoreFile globalDefinitions_gcc.hpp \
- -ignoreFile globalDefinitions_sparcWorks.hpp \
- -ignoreFile version.rc \
- -ignoreFile Xusage.txt \
- -define TARGET_ARCH_x86 \
- -define TARGET_OS_ARCH_windows_x86 \
- -define TARGET_OS_FAMILY_windows \
- -define TARGET_COMPILER_visCPP \
- -define INCLUDE_TRACE=1 \
- $(ProjectCreatorIncludesPRIVATE)
-
-# Add in build-specific options
-!if "$(BUILDARCH)" == "i486"
-ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
- -platformName Win32 \
- -ignorePath x86_64 \
- -ignorePath src\share\vm\jvmci \
- -ignoreFile jvmciCodeInstaller_x86.cpp \
- -define IA32 \
- -define INCLUDE_JVMCI=0 \
- -define TARGET_ARCH_MODEL_x86_32
-!else
-!if "$(BUILDARCH)" == "amd64"
-ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
- -platformName x64 \
- -ignorePath x86_32 \
- -define AMD64 \
- -define _LP64 \
- -define INCLUDE_JVMCI=1 \
- -define TARGET_ARCH_MODEL_x86_64 \
- -define TARGET_OS_ARCH_MODEL_windows_x86_64
-!endif
-!endif
-
-ProjectCreatorIDEOptionsIgnoreCompiler1=\
- -ignorePath_TARGET compiler1 \
- -ignorePath_TARGET tiered \
- -ignorePath_TARGET c1_
-
-ProjectCreatorIDEOptionsIgnoreCompiler2=\
- -ignorePath_TARGET compiler2 \
- -ignorePath_TARGET tiered \
- -ignorePath_TARGET src/share/vm/opto \
- -ignorePath_TARGET src/share/vm/libadt \
- -ignorePath_TARGET adfiles \
- -ignoreFile_TARGET bcEscapeAnalyzer.cpp \
- -ignoreFile_TARGET bcEscapeAnalyzer.hpp \
- -ignorePath_TARGET chaitin \
- -ignorePath_TARGET c2_ \
- -ignorePath_TARGET runtime_ \
- -ignoreFile_TARGET ciTypeFlow.cpp \
- -ignoreFile_TARGET ciTypeFlow.hpp \
- -ignoreFile_TARGET $(Platform_arch_model).ad
-
-##################################################
-# Client(C1) compiler specific options
-##################################################
-ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
- -define_compiler1 COMPILER1 \
-$(ProjectCreatorIDEOptionsIgnoreCompiler2:TARGET=compiler1)
-
-##################################################
-# Server(C2) compiler specific options
-##################################################
-#NOTE! This list must be kept in sync with GENERATED_NAMES in adlc.make.
-ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
- -define_compiler2 COMPILER2 \
- -additionalFile_compiler2 $(Platform_arch_model).ad \
- -additionalFile_compiler2 ad_$(Platform_arch_model).cpp \
- -additionalFile_compiler2 ad_$(Platform_arch_model).hpp \
- -additionalFile_compiler2 ad_$(Platform_arch_model)_clone.cpp \
- -additionalFile_compiler2 ad_$(Platform_arch_model)_expand.cpp \
- -additionalFile_compiler2 ad_$(Platform_arch_model)_format.cpp \
- -additionalFile_compiler2 ad_$(Platform_arch_model)_gen.cpp \
- -additionalFile_compiler2 ad_$(Platform_arch_model)_misc.cpp \
- -additionalFile_compiler2 ad_$(Platform_arch_model)_peephole.cpp \
- -additionalFile_compiler2 ad_$(Platform_arch_model)_pipeline.cpp \
- -additionalFile_compiler2 adGlobals_$(Platform_arch_model).hpp \
- -additionalFile_compiler2 dfa_$(Platform_arch_model).cpp \
- $(ProjectCreatorIDEOptionsIgnoreCompiler1:TARGET=compiler2)
-
-# Add in the jvmti (JSR-163) options
-# NOTE: do not pull in jvmtiEnvRecommended.cpp. This file is generated
-# so the programmer can diff it with jvmtiEnv.cpp to be sure the
-# code merge was done correctly (@see jvmti.make and jvmtiEnvFill.java).
-# If so, they would then check it in as a new version of jvmtiEnv.cpp.
-ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
- -additionalFile jvmtiEnv.hpp \
- -additionalFile jvmtiEnter.cpp \
- -additionalFile jvmtiEnterTrace.cpp \
- -additionalFile jvmti.h \
- -additionalFile bytecodeInterpreterWithChecks.cpp \
- -additionalFile traceEventClasses.hpp \
- -additionalFile traceEventIds.hpp \
-!if "$(OPENJDK)" != "true"
- -additionalFile traceRequestables.hpp \
- -additionalFile traceEventControl.hpp \
- -additionalFile traceProducer.cpp \
-!endif
- -additionalFile traceTypes.hpp
--- a/hotspot/make/windows/makefiles/rules.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,63 +0,0 @@
-#
-# Copyright (c) 2003, 2014, 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.
-#
-# 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.
-#
-#
-
-# These are the commands used externally to compile and run.
-# The \ are used here for traditional Windows apps and " quoted to get
-# past the Unix-like shell:
-!ifdef BootStrapDir
-RUN_JAVA="$(BootStrapDir)\bin\java"
-RUN_JAVAP="$(BootStrapDir)\bin\javap"
-RUN_JAVAH="$(BootStrapDir)\bin\javah"
-RUN_JAR="$(BootStrapDir)\bin\jar"
-COMPILE_JAVAC="$(BootStrapDir)\bin\javac" $(BOOTSTRAP_JAVAC_FLAGS)
-COMPILE_RMIC="$(BootStrapDir)\bin\rmic"
-BOOT_JAVA_HOME=$(BootStrapDir)
-!else
-RUN_JAVA=java
-RUN_JAVAP=javap
-RUN_JAVAH=javah
-RUN_JAR=jar
-COMPILE_JAVAC=javac $(BOOTSTRAP_JAVAC_FLAGS)
-COMPILE_RMIC=rmic
-BOOT_JAVA_HOME=
-!endif
-
-# Settings for javac
-JAVAC_FLAGS=-g -encoding ascii
-
-# Prefer BOOT_JDK_SOURCETARGET if it's set (typically by the top build system)
-# Fall back to the values here if it's not set (hotspot only builds)
-!ifndef BOOT_JDK_SOURCETARGET
-BOOTSTRAP_SOURCETARGET=-source 8 -target 8
-!else
-BOOTSTRAP_SOURCETARGET=$(BOOT_JDK_SOURCETARGET)
-!endif
-
-BOOTSTRAP_JAVAC_FLAGS=$(JAVAC_FLAGS) $(BOOTSTRAP_SOURCETARGET)
-
-# VS2012 and VS2013 loads VS10 projects just fine (and will
-# upgrade them automatically to VS2012 format).
-VcVersion=VC10
-ProjectFile=jvm.vcxproj
-
--- a/hotspot/make/windows/makefiles/sanity.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-#
-# Copyright (c) 2006, 2014, 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.
-#
-# 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.
-#
-#
-
-!include local.make
-
-all: checkCL checkLink
-
-checkCL:
- @ if "$(MSC_VER)" NEQ "1600" if "$(MSC_VER)" NEQ "1700" if "$(MSC_VER)" NEQ "1800" \
- echo *** WARNING *** Unsupported cl.exe version detected: $(MSC_VER) ($(RAW_MSC_VER)), only 1600/1700/1800 (Visual Studio 2010/2012/2013) are supported.
-
-checkLink:
- @ if "$(LD_VER)" NEQ "1000" if "$(LD_VER)" NEQ "1100" if "$(LD_VER)" NEQ "1200" \
- echo *** WARNING *** Unsupported link.exe version detected: $(LD_VER) ($(RAW_LD_VER)), only 1000/1100/1200 (Visual Studio 2010/2012/2013) are supported.
--- a/hotspot/make/windows/makefiles/shared.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-#
-# Copyright (c) 1997, 2012, 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.
-#
-# 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.
-#
-#
-
-DEFAULTACTIONS=clean post_update create
-
-default:: $(SUBDIRS)
-
-!ifndef DIR
-DIR=.
-!endif
-
-!ifndef CXX
-CXX=cl.exe
-!endif
-
-
-!ifdef SUBDIRS
-# \ is used below because $(MAKE) is nmake here, which expects Windows paths
-$(SUBDIRS): FORCE
- @if not exist $@ mkdir $@
- @if not exist $@/local.make echo # Empty > $@/local.make
- @echo nmake $(ACTION) in $(DIR)/$@
- cd $@ && $(MAKE) -NOLOGO -f $(WorkSpace)\make\windows\makefiles\$@.make $(ACTION) DIR=$(DIR)\$@ BUILD_FLAVOR=$(BUILD_FLAVOR)
-!endif
-
-# Creates the needed directory
-create::
-!if "$(DIR)" != "."
- @echo mkdir $(DIR)
-!endif
-
-# Epilog to update for generating derived files
-post_update::
-
-# Removes scrap files
-clean:: FORCE
- -@rm -f *.OLD *.publish
-
-# Remove all scrap files and all generated files
-pure:: clean
- -@rm -f *.OLD *.publish
-
-$(DEFAULTACTIONS) $(ACTIONS)::
-!ifdef SUBDIRS
- @$(MAKE) -nologo ACTION=$@ DIR=$(DIR)
-!endif
-
-FORCE:
-
-
--- a/hotspot/make/windows/makefiles/top.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-#
-# Copyright (c) 1997, 2008, 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.
-#
-# 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.
-#
-#
-
-!include local.make
-
-!ifdef ADLC_ONLY
-SUBDIRS=generated
-!else
-SUBDIRS=generated $(BUILD_FLAVOR)
-!endif
-
-!include $(WorkSpace)/make/windows/makefiles/shared.make
-
--- a/hotspot/make/windows/makefiles/trace.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-#
-# Copyright (c) 2003, 2016, 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.
-#
-# 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.
-#
-#
-
-# This makefile (trace.make) is included from the trace.make in the
-# build directories.
-#
-# It knows how to build and run the tools to generate trace files.
-
-!include $(WorkSpace)/make/windows/makefiles/rules.make
-
-# #########################################################################
-
-
-TraceAltSrcDir = $(WorkSpace)\src\closed\share\vm\trace
-TraceSrcDir = $(WorkSpace)\src\share\vm\trace
-
-!ifndef OPENJDK
-!if EXISTS($(TraceAltSrcDir))
-HAS_ALT_SRC = true
-!endif
-!endif
-
-!ifndef OPENJDK
-!if EXISTS($(TraceAltSrcDir))
-HAS_ALT_SRC = true
-!endif
-!endif
-
-TraceGeneratedNames = \
- traceEventClasses.hpp \
- traceEventIds.hpp \
- traceTypes.hpp
-
-!ifdef HAS_ALT_SRC
-TraceGeneratedNames = $(TraceGeneratedNames) \
- traceRequestables.hpp \
- traceEventControl.hpp
-!endif
-
-
-#Note: TraceGeneratedFiles must be kept in sync with TraceGeneratedNames by hand.
-#Should be equivalent to "TraceGeneratedFiles = $(TraceGeneratedNames:%=$(TraceOutDir)/%)"
-TraceGeneratedFiles = \
- $(TraceOutDir)/traceEventClasses.hpp \
- $(TraceOutDir)/traceEventIds.hpp \
- $(TraceOutDir)/traceTypes.hpp
-
-!ifdef HAS_ALT_SRC
-TraceGeneratedFiles = $(TraceGeneratedFiles) \
- $(TraceOutDir)/traceRequestables.hpp \
- $(TraceOutDir)/traceEventControl.hpp
-!endif
-
-XSLT = $(QUIETLY) $(REMOTE) $(RUN_JAVA) -classpath $(JvmtiOutDir) jvmtiGen
-
-TraceXml = $(TraceSrcDir)/trace.xml
-
-!ifdef HAS_ALT_SRC
-TraceXml = $(TraceAltSrcDir)/trace.xml
-!endif
-
-XML_DEPS = $(TraceXml) $(TraceSrcDir)/tracetypes.xml \
- $(TraceSrcDir)/trace.dtd $(TraceSrcDir)/xinclude.mod \
- $(TraceSrcDir)/tracerelationdecls.xml $(TraceSrcDir)/traceevents.xml
-
-!ifdef HAS_ALT_SRC
-XML_DEPS = $(XML_DEPS) $(TraceAltSrcDir)/traceeventscustom.xml \
- $(TraceAltSrcDir)/traceeventtypes.xml
-!endif
-
-.PHONY: all clean cleanall
-
-# #########################################################################
-
-default::
- @if not exist $(TraceOutDir) mkdir $(TraceOutDir)
-
-$(TraceOutDir)/traceEventIds.hpp: $(TraceSrcDir)/traceEventIds.xsl $(XML_DEPS)
- @echo Generating $@
- $(XSLT) -IN $(TraceXml) -XSL $(TraceSrcDir)/traceEventIds.xsl -OUT $(TraceOutDir)/traceEventIds.hpp
-
-$(TraceOutDir)/traceTypes.hpp: $(TraceSrcDir)/traceTypes.xsl $(XML_DEPS)
- @echo Generating $@
- $(XSLT) -IN $(TraceXml) -XSL $(TraceSrcDir)/traceTypes.xsl -OUT $(TraceOutDir)/traceTypes.hpp
-
-!ifndef HAS_ALT_SRC
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- @echo Generating OpenJDK $@
- $(XSLT) -IN $(TraceXml) -XSL $(TraceSrcDir)/traceEventClasses.xsl -OUT $(TraceOutDir)/traceEventClasses.hpp
-
-!else
-
-$(TraceOutDir)/traceEventClasses.hpp: $(TraceAltSrcDir)/traceEventClasses.xsl $(XML_DEPS)
- @echo Generating AltSrc $@
- $(XSLT) -IN $(TraceXml) -XSL $(TraceAltSrcDir)/traceEventClasses.xsl -OUT $(TraceOutDir)/traceEventClasses.hpp
-
-$(TraceOutDir)/traceRequestables.hpp: $(TraceAltSrcDir)/traceRequestables.xsl $(XML_DEPS)
- @echo Generating AltSrc $@
- $(XSLT) -IN $(TraceXml) -XSL $(TraceAltSrcDir)/traceRequestables.xsl -OUT $(TraceOutDir)/traceRequestables.hpp
-
-$(TraceOutDir)/traceEventControl.hpp: $(TraceAltSrcDir)/traceEventControl.xsl $(XML_DEPS)
- @echo Generating AltSrc $@
- $(XSLT) -IN $(TraceXml) -XSL $(TraceAltSrcDir)/traceEventControl.xsl -OUT $(TraceOutDir)/traceEventControl.hpp
-
-!endif
-
-# #########################################################################
-
-cleanall :
- rm $(TraceGeneratedFiles)
--- a/hotspot/make/windows/makefiles/vm.make Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,428 +0,0 @@
-#
-# Copyright (c) 1997, 2015, 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.
-#
-# 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.
-#
-#
-
-# Resource file containing VERSIONINFO
-Res_Files=.\version.res
-
-!include ..\generated\objfiles.make
-
-COMMONSRC=$(WorkSpace)\src
-ALTSRC=$(WorkSpace)\src\closed
-
-!ifdef RELEASE
-CXX_FLAGS=$(CXX_FLAGS) /D "PRODUCT"
-!else
-CXX_FLAGS=$(CXX_FLAGS) /D "ASSERT"
-!if "$(BUILDARCH)" == "amd64"
-CXX_FLAGS=$(CXX_FLAGS) /homeparams
-!endif
-!endif
-
-!if "$(Variant)" == "compiler1"
-CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER1" /D INCLUDE_JVMCI=0
-!endif
-
-!if "$(Variant)" == "compiler2"
-CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER2"
-!if "$(BUILDARCH)" == "i486"
-CXX_FLAGS=$(CXX_FLAGS) /D INCLUDE_JVMCI=0
-!endif
-!endif
-
-!if "$(Variant)" == "tiered"
-CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER1" /D "COMPILER2"
-!if "$(BUILDARCH)" == "i486"
-CXX_FLAGS=$(CXX_FLAGS) /D INCLUDE_JVMCI=0
-!endif
-!endif
-
-!if "$(BUILDARCH)" == "i486"
-HOTSPOT_LIB_ARCH=i386
-!else
-HOTSPOT_LIB_ARCH=$(BUILDARCH)
-!endif
-
-# The following variables are defined in the generated local.make file.
-CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_VERSION_STRING=\"$(HOTSPOT_VERSION_STRING)\""
-CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_MAJOR=$(VERSION_MAJOR)"
-CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_MINOR=$(VERSION_MINOR)"
-CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_SECURITY=$(VERSION_SECURITY)"
-CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_PATCH=$(VERSION_PATCH)"
-CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_BUILD=$(VERSION_BUILD)"
-CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_STRING=\"$(VERSION_STRING)\""
-CXX_FLAGS=$(CXX_FLAGS) /D "DEBUG_LEVEL=\"$(DEBUG_LEVEL)\""
-CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_LIB_ARCH=\"$(HOTSPOT_LIB_ARCH)\""
-CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_BUILD_TARGET=\"$(BUILD_FLAVOR)\""
-CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_BUILD_USER=\"$(BuildUser)\""
-CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_VM_DISTRO=\"$(HOTSPOT_VM_DISTRO)\""
-
-CXX_FLAGS=$(CXX_FLAGS) $(CXX_INCLUDE_DIRS)
-
-# Define that so jni.h is on correct side
-CXX_FLAGS=$(CXX_FLAGS) /D "_JNI_IMPLEMENTATION_"
-
-!if "$(BUILDARCH)" == "ia64"
-STACK_SIZE="/STACK:1048576,262144"
-!else
-STACK_SIZE=
-!endif
-
-!if "$(BUILDARCH)" == "ia64"
-# AsyncGetCallTrace is not supported on IA64 yet
-AGCT_EXPORT=
-!else
-AGCT_EXPORT=/export:AsyncGetCallTrace
-!endif
-
-# If you modify exports below please do the corresponding changes in
-# src/share/tools/ProjectCreator/WinGammaPlatformVC7.java
-!if "$(BUILDARCH)" == "amd64"
-EXPORT_LIST=
-!else
-EXPORT_LIST=/export:JNI_GetDefaultJavaVMInitArgs \
- /export:JNI_CreateJavaVM \
- /export:JVM_FindClassFromBootLoader \
- /export:JNI_GetCreatedJavaVMs \
- /export:jio_snprintf \
- /export:jio_printf \
- /export:jio_fprintf \
- /export:jio_vfprintf \
- /export:jio_vsnprintf \
- $(AGCT_EXPORT) \
- /export:JVM_GetVersionInfo \
- /export:JVM_InitAgentProperties
-!endif
-
-LD_FLAGS=$(LD_FLAGS) $(STACK_SIZE) /subsystem:windows /dll /base:0x8000000 $(EXPORT_LIST)
-
-CXX_INCLUDE_DIRS=/I "..\generated"
-
-!ifndef OPENJDK
-!if exists($(ALTSRC)\share\vm)
-CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\share\vm"
-!endif
-
-!if exists($(ALTSRC)\os\windows\vm)
-CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\os\windows\vm"
-!endif
-
-!if exists($(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm)
-CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm"
-!endif
-
-!if exists($(ALTSRC)\cpu\$(Platform_arch)\vm)
-CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\cpu\$(Platform_arch)\vm"
-!endif
-!endif # OPENJDK
-
-CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) \
- /I "$(COMMONSRC)\share\vm" \
- /I "$(COMMONSRC)\share\vm\precompiled" \
- /I "$(COMMONSRC)\share\vm\prims" \
- /I "$(COMMONSRC)\os\windows\vm" \
- /I "$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm" \
- /I "$(COMMONSRC)\cpu\$(Platform_arch)\vm"
-
-CXX_DONT_USE_PCH=/D DONT_USE_PRECOMPILED_HEADER
-
-!if "$(USE_PRECOMPILED_HEADER)" != "0"
-CXX_USE_PCH=/Fp"vm.pch" /Yu"precompiled.hpp"
-!if "$(MSC_VER)" > "1600"
-# VS2012 requires this object file to be listed:
-LD_FLAGS=$(LD_FLAGS) _build_pch_file.obj
-!endif
-!else
-CXX_USE_PCH=$(CXX_DONT_USE_PCH)
-!endif
-
-# Where to find the source code for the virtual machine (is this used?)
-VM_PATH=../generated
-VM_PATH=$(VM_PATH);../generated/adfiles
-VM_PATH=$(VM_PATH);../generated/jvmtifiles
-VM_PATH=$(VM_PATH);../generated/tracefiles
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/c1
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/jvmci
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/compiler
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/code
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/interpreter
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/ci
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/classfile
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/parallel
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/shared
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/serial
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/cms
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/g1
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/asm
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/logging
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/memory
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/oops
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims/wbtestmethods
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/runtime
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/services
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/trace
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/utilities
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/libadt
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/os/windows/vm
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/cpu/$(Platform_arch)/vm
-VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/opto
-
-!ifndef OPENJDK
-!if exists($(ALTSRC)\share\vm\jfr)
-VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr
-VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr/buffers
-!endif
-!endif # OPENJDK
-
-VM_PATH={$(VM_PATH)}
-
-# Special case files not using precompiled header files.
-
-c1_RInfo_$(Platform_arch).obj: $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
- $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
-
-os_windows.obj: $(WorkSpace)\src\os\windows\vm\os_windows.cpp
- $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\os_windows.cpp
-
-os_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
- $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
-
-osThread_windows.obj: $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
- $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
-
-conditionVar_windows.obj: $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
- $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
-
-getThread_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
- $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
-
-opcodes.obj: $(WorkSpace)\src\share\vm\opto\opcodes.cpp
- $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\opto\opcodes.cpp
-
-bytecodeInterpreter.obj: $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
- $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
-
-bytecodeInterpreterWithChecks.obj: ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
- $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
-
-# Default rules for the Virtual Machine
-{$(COMMONSRC)\share\vm\c1}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\compiler}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\code}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\interpreter}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\ci}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\classfile}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\jvmci}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\gc\parallel}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\gc\shared}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\gc\serial}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\gc\cms}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\gc\g1}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\asm}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\logging}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\memory}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\oops}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\prims}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\prims\wbtestmethods}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\runtime}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\services}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\trace}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\utilities}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\libadt}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\share\vm\opto}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\os\windows\vm}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-# This guy should remain a single colon rule because
-# otherwise we can't specify the output filename.
-# NOTE: Changes in this file was just to give a proper command line when linking
-# for use when developing the new build, and should not be integrated.
-{$(COMMONSRC)\os\windows\vm}.rc.res:
- $(RC) $(RC_FLAGS) /fo"$@" $<
-
-{$(COMMONSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-!ifndef OPENJDK
-{$(ALTSRC)\share\vm\c1}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\compiler}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\code}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\interpreter}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\ci}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\classfile}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\gc\parallel}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\gc\shared}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\gc\serial}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\gc\cms}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\gc\g1}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\asm}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\logging}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\memory}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\oops}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\prims}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\prims\wbtestmethods}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\runtime}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\services}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\trace}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\utilities}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\libadt}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\opto}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\os\windows\vm}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-# otherwise we can't specify the output filename.
-{$(ALTSRC)\os\windows\vm}.rc.res:
- @$(RC) $(RC_FLAGS) /fo"$@" $<
-
-{$(ALTSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\jfr}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{$(ALTSRC)\share\vm\jfr\buffers}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-!endif
-
-{..\generated\incls}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{..\generated\adfiles}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{..\generated\jvmtifiles}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-{..\generated\tracefiles}.cpp.obj::
- $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
-
-default::
-
-_build_pch_file.obj:
- @echo #include "precompiled.hpp" > ../generated/_build_pch_file.cpp
- $(CXX) $(CXX_FLAGS) /Fp"vm.pch" /Yc"precompiled.hpp" /c ../generated/_build_pch_file.cpp
-
-vm.def: $(Obj_Files)
- sh $(WorkSpace)/make/windows/build_vm_def.sh
--- a/hotspot/make/windows/projectfiles/common/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-#
-# Copyright (c) 1999, 2015, 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.
-#
-# 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.
-#
-#
-
-!ifdef LOCAL_MAKE
-!include $(LOCAL_MAKE)
-!endif
-
-
-WorkSpace=$(HOTSPOTWORKSPACE)
-
-!ifdef ALT_BOOTDIR
-BootStrapDir=$(ALT_BOOTDIR)
-!else
-!ifdef BOOTDIR
-BootStrapDir=$(BOOTDIR)
-!else
-!ifdef JAVA_HOME
-BootStrapDir=$(JAVA_HOME)
-!else
-!ifdef HOTSPOTJDKDIST
-BootStrapDir=$(HOTSPOTJDKDIST)
-!endif
-!endif
-!endif
-!endif
-
-# if hotspot-only build and/or OPENJDK isn't passed down, need to set OPENJDK
-!ifndef OPENJDK
-!if !exists($(WorkSpace)\src\closed)
-OPENJDK=true
-!endif
-!endif
-
-
-!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/projectcreator.make
-!include $(WorkSpace)/make/windows/makefiles/compile.make
-
-# Pick up rules for building JVMTI (JSR-163)
-JvmtiOutDir=$(HOTSPOTBUILDSPACE)\$(Variant)\generated\jvmtifiles
-!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/jvmti.make
-
-# Pick up rules for building trace
-TraceOutDir=$(HOTSPOTBUILDSPACE)\$(Variant)\generated\tracefiles
-!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/trace.make
-
-!if "$(Variant)" == "compiler2"
-# Pick up rules for building adlc
-!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/adlc.make
-!endif
-
-!if "$(Variant)" == "tiered"
-# Pick up rules for building adlc
-!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/adlc.make
-!endif
-
-HS_INTERNAL_NAME=jvm
-
-default:: $(AdditionalTargets) $(JvmtiGeneratedFiles) $(TraceGeneratedFiles)
-
-!include $(HOTSPOTWORKSPACE)/make/jdk_version
-
-VERSION_MAJOR=$(STANDALONE_JDK_MAJOR_VER)
-VERSION_MINOR=$(STANDALONE_JDK_MINOR_VER)
-VERSION_SECURITY=$(STANDALONE_JDK_SECURITY_VER)
-VERSION_PATCH=$(STANDALONE_JDK_PATCH_VER)
-
-!if "$(VERSION_BUILD)" == ""
-VERSION_BUILD=0
-!endif
-
-!if "$(VERSION_OPT)" != ""
-HOTSPOT_PRE = internal-$(VERSION_OPT)
-!else
-HOTSPOT_PRE = internal
-!endif
-!if "$(VERSION_STRING)" == ""
-VERSION_STRING="\\\"$(VERSION_MAJOR)-$(HOTSPOT_PRE)+$(VERSION_BUILD)-$(USERNAME).vsbuild\\\""
-!endif
-HOTSPOT_VERSION_STRING=$(VERSION_STRING)
-
-# Define HOTSPOT_VM_DISTRO if HOTSPOT_VM_DISTRO is set,
-# and if it is not see if we have the src/closed directory
-!if "$(HOTSPOT_VM_DISTRO)" != ""
-HOTSPOT_VM_DISTRO=$(HOTSPOT_VM_DISTRO)
-!else
-!if exists($(HOTSPOTWORKSPACE)\src\closed)
-HOTSPOT_VM_DISTRO="\\\"Java HotSpot(TM)\\\""
-!else
-HOTSPOT_VM_DISTRO="\\\"OpenJDK\\\""
-!endif
-
-!endif
-
-
-
-ReleaseOptions = -define HOTSPOT_VM_DISTRO=$(HOTSPOT_VM_DISTRO) -define HOTSPOT_VERSION_STRING=$(HOTSPOT_VERSION_STRING) -define VERSION_MAJOR=$(VERSION_MAJOR) -define VERSION_MINOR=$(VERSION_MINOR) -define VERSION_SECURITY=$(VERSION_SECURITY) -define VERSION_PATCH=$(VERSION_PATCH) -define VERSION_BUILD=$(VERSION_BUILD) -define VERSION_STRING=$(VERSION_STRING)
-ProjectCreatorIDEOptions = $(ProjectCreatorIDEOptions) $(ReleaseOptions)
-
-$(HOTSPOTBUILDSPACE)/$(ProjectFile): $(HOTSPOTBUILDSPACE)/classes/ProjectCreator.class
- @$(RUN_JAVA) -Djava.class.path="$(HOTSPOTBUILDSPACE)/classes" ProjectCreator WinGammaPlatform$(VcVersion) $(ProjectCreatorIDEOptions)
-
-clean:
- @rm -rf $(HOTSPOTBUILDSPACE)/classes
- @rm -r $(HOTSPOTBUILDSPACE)/$(ProjectFile)
-
-$(HOTSPOTBUILDSPACE)/classes/ProjectCreator.class: $(ProjectCreatorSources)
- @if exist $(HOTSPOTBUILDSPACE)\classes rmdir /s /q $(HOTSPOTBUILDSPACE)\classes
- @mkdir $(HOTSPOTBUILDSPACE)\classes
- @$(COMPILE_JAVAC) -classpath $(HOTSPOTWORKSPACE)\src\share\tools\ProjectCreator -d $(HOTSPOTBUILDSPACE)/classes $(ProjectCreatorSources)
-
-FORCE:
--- a/hotspot/make/windows/projectfiles/compiler1/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-!include ../local.make
-
-!include $(HOTSPOTWORKSPACE)/make/windows/projectfiles/common/Makefile
--- a/hotspot/make/windows/projectfiles/compiler1/vm.def Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-;
-; This .DEF file is a placeholder for one which is automatically
-; generated during the build process. See
-; make\windows\build_vm_def.sh and
-; make\windows\makefiles\projectcreator.make (esp. the "-prelink"
-; options).
-;
--- a/hotspot/make/windows/projectfiles/compiler1/vm.dsw Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "vm"=.\vm.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
--- a/hotspot/make/windows/projectfiles/compiler2/ADLCompiler.dsp Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,142 +0,0 @@
-# Microsoft Developer Studio Project File - Name="ADLCompiler" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=ADLCompiler - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "ADLCompiler.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "ADLCompiler.mak" CFG="ADLCompiler - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "ADLCompiler - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "ADLCompiler - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "ADLCompiler - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir ".\adlc\Release"
-# PROP Intermediate_Dir ".\adlc\Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "." /I "$(HotSpotWorkSpace)\src\share\vm\opto" /I "$(HotSpotWorkSpace)\src\share\vm\prims" /I "$(HotSpotWorkSpace)\src\share\vm\lookup" /I "$(HotSpotWorkSpace)\src\share\vm\interpreter" /I "$(HotSpotWorkSpace)\src\share\vm\asm" /I "$(HotSpotWorkSpace)\src\share\vm\compiler" /I "$(HotSpotWorkSpace)\src\share\vm\utilities" /I "$(HotSpotWorkSpace)\src\share\vm\code" /I "$(HotSpotWorkSpace)\src\share\vm\oops" /I "$(HotSpotWorkSpace)\src\share\vm\runtime" /I "$(HotSpotWorkSpace)\src\share\vm\memory" /I "$(HotSpotWorkSpace)\src\share\vm\libadt" /I "$(HotSpotWorkSpace)\src\cpu\i486\vm" /I "$(HotSpotWorkSpace)\src\os\win32\vm" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FR /FD /c
-# SUBTRACT CPP /YX /Yc /Yu
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo /o".\adlc\Release\adlc.bsc"
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 /out:".\bin\adlc.exe"
-
-!ELSEIF "$(CFG)" == "ADLCompiler - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir ".\adlc\Debug"
-# PROP Intermediate_Dir ".\adlc\Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /ML /W3 /WX /Gm /GX /Zi /Od /I "." /I "$(HotSpotWorkSpace)\src\share\vm\opto" /I "$(HotSpotWorkSpace)\src\share\vm\prims" /I "$(HotSpotWorkSpace)\src\share\vm\lookup" /I "$(HotSpotWorkSpace)\src\share\vm\interpreter" /I "$(HotSpotWorkSpace)\src\share\vm\asm" /I "$(HotSpotWorkSpace)\src\share\vm\compiler" /I "$(HotSpotWorkSpace)\src\share\vm\utilities" /I "$(HotSpotWorkSpace)\src\share\vm\code" /I "$(HotSpotWorkSpace)\src\share\vm\oops" /I "$(HotSpotWorkSpace)\src\share\vm\runtime" /I "$(HotSpotWorkSpace)\src\share\vm\memory" /I "$(HotSpotWorkSpace)\src\share\vm\libadt" /I "$(HotSpotWorkSpace)\src\cpu\i486\vm" /I "$(HotSpotWorkSpace)\src\os\win32\vm" /D "WIN32" /D "_WINDOWS" /D "ASSERT" /Fr /FD /c
-# ADD BASE RSC /l 0x409
-# ADD RSC /l 0x409
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /o".\adlc\Debug\adlc.bsc"
-# SUBTRACT BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib uuid.lib /nologo /subsystem:console /debug /machine:I386 /out:".\bin\adlc.exe"
-
-!ENDIF
-
-# Begin Target
-
-# Name "ADLCompiler - Win32 Release"
-# Name "ADLCompiler - Win32 Debug"
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\adlparse.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\archDesc.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\arena.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\dfa.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\dict2.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\filebuff.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\forms.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\formsopt.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\formssel.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\main.cpp"
-# SUBTRACT CPP /YX /Yc
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\opto\opcodes.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\output_c.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\output_h.cpp"
-# End Source File
-# End Target
-# End Project
-
\ No newline at end of file
--- a/hotspot/make/windows/projectfiles/compiler2/ADLCompiler.dsw Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "ADLCompiler"=".\ADLCompiler.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
--- a/hotspot/make/windows/projectfiles/compiler2/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-!include ../local.make
-AdlcOutDir=$(HOTSPOTBUILDSPACE)\$(Variant)\generated\adfiles
-AdditionalTargets=$(AdlcOutDir)\ad_$(Platform_arch_model).cpp $(AdlcOutDir)\dfa_$(Platform_arch_model).cpp
-
-!include $(HOTSPOTWORKSPACE)/make/windows/projectfiles/common/Makefile
--- a/hotspot/make/windows/projectfiles/compiler2/vm.def Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-;
-; This .DEF file is a placeholder for one which is automatically
-; generated during the build process. See
-; make\windows\build_vm_def.sh and
-; make\windows\makefiles\projectcreator.make (esp. the "-prelink"
-; options).
-;
--- a/hotspot/make/windows/projectfiles/compiler2/vm.dsw Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 5.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "vm"=.\vm.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
--- a/hotspot/make/windows/projectfiles/core/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-!include ../local.make
-
-!include $(HOTSPOTWORKSPACE)/make/windows/projectfiles/common/Makefile
--- a/hotspot/make/windows/projectfiles/core/vm.def Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-;
-; This .DEF file is a placeholder for one which is automatically
-; generated during the build process. See
-; make\windows\build_vm_def.sh and
-; make\windows\makefiles\projectcreator.make (esp. the "-prelink"
-; options).
-;
--- a/hotspot/make/windows/projectfiles/core/vm.dsw Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "vm"=.\vm.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
--- a/hotspot/make/windows/projectfiles/tiered/ADLCompiler.dsp Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,142 +0,0 @@
-# Microsoft Developer Studio Project File - Name="ADLCompiler" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=ADLCompiler - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "ADLCompiler.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "ADLCompiler.mak" CFG="ADLCompiler - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "ADLCompiler - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "ADLCompiler - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "ADLCompiler - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir ".\adlc\Release"
-# PROP Intermediate_Dir ".\adlc\Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "." /I "$(HotSpotWorkSpace)\src\share\vm\opto" /I "$(HotSpotWorkSpace)\src\share\vm\prims" /I "$(HotSpotWorkSpace)\src\share\vm\lookup" /I "$(HotSpotWorkSpace)\src\share\vm\interpreter" /I "$(HotSpotWorkSpace)\src\share\vm\asm" /I "$(HotSpotWorkSpace)\src\share\vm\compiler" /I "$(HotSpotWorkSpace)\src\share\vm\utilities" /I "$(HotSpotWorkSpace)\src\share\vm\code" /I "$(HotSpotWorkSpace)\src\share\vm\oops" /I "$(HotSpotWorkSpace)\src\share\vm\runtime" /I "$(HotSpotWorkSpace)\src\share\vm\memory" /I "$(HotSpotWorkSpace)\src\share\vm\libadt" /I "$(HotSpotWorkSpace)\src\cpu\i486\vm" /I "$(HotSpotWorkSpace)\src\os\win32\vm" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FR /FD /c
-# SUBTRACT CPP /YX /Yc /Yu
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo /o".\adlc\Release\adlc.bsc"
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 /out:".\bin\adlc.exe"
-
-!ELSEIF "$(CFG)" == "ADLCompiler - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir ".\adlc\Debug"
-# PROP Intermediate_Dir ".\adlc\Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /ML /W3 /WX /Gm /GX /Zi /Od /I "." /I "$(HotSpotWorkSpace)\src\share\vm\opto" /I "$(HotSpotWorkSpace)\src\share\vm\prims" /I "$(HotSpotWorkSpace)\src\share\vm\lookup" /I "$(HotSpotWorkSpace)\src\share\vm\interpreter" /I "$(HotSpotWorkSpace)\src\share\vm\asm" /I "$(HotSpotWorkSpace)\src\share\vm\compiler" /I "$(HotSpotWorkSpace)\src\share\vm\utilities" /I "$(HotSpotWorkSpace)\src\share\vm\code" /I "$(HotSpotWorkSpace)\src\share\vm\oops" /I "$(HotSpotWorkSpace)\src\share\vm\runtime" /I "$(HotSpotWorkSpace)\src\share\vm\memory" /I "$(HotSpotWorkSpace)\src\share\vm\libadt" /I "$(HotSpotWorkSpace)\src\cpu\i486\vm" /I "$(HotSpotWorkSpace)\src\os\win32\vm" /D "WIN32" /D "_WINDOWS" /D "ASSERT" /Fr /FD /c
-# ADD BASE RSC /l 0x409
-# ADD RSC /l 0x409
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /o".\adlc\Debug\adlc.bsc"
-# SUBTRACT BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib uuid.lib /nologo /subsystem:console /debug /machine:I386 /out:".\bin\adlc.exe"
-
-!ENDIF
-
-# Begin Target
-
-# Name "ADLCompiler - Win32 Release"
-# Name "ADLCompiler - Win32 Debug"
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\adlparse.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\archDesc.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\arena.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\dfa.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\dict2.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\filebuff.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\forms.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\formsopt.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\formssel.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\main.cpp"
-# SUBTRACT CPP /YX /Yc
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\opto\opcodes.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\output_c.cpp"
-# End Source File
-# Begin Source File
-
-SOURCE="$(HotSpotWorkSpace)\src\share\vm\adlc\output_h.cpp"
-# End Source File
-# End Target
-# End Project
-
\ No newline at end of file
--- a/hotspot/make/windows/projectfiles/tiered/ADLCompiler.dsw Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "ADLCompiler"=".\ADLCompiler.dsp" - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
--- a/hotspot/make/windows/projectfiles/tiered/Makefile Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-#
-# 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
-# under the terms of the GNU General Public License version 2 only, as
-# published by the Free Software Foundation.
-#
-# 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.
-#
-#
-
-!include ../local.make
-AdlcOutDir=$(HOTSPOTBUILDSPACE)\$(Variant)\generated\adfiles
-AdditionalTargets=$(AdlcOutDir)\ad_$(Platform_arch_model).cpp $(AdlcOutDir)\dfa_$(Platform_arch_model).cpp
-
-!include $(HOTSPOTWORKSPACE)/make/windows/projectfiles/common/Makefile
--- a/hotspot/make/windows/projectfiles/tiered/vm.def Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-;
-; This .DEF file is a placeholder for one which is automatically
-; generated during the build process. See
-; make\windows\build_vm_def.sh and
-; make\windows\makefiles\projectcreator.make (esp. the "-prelink"
-; options).
-;
--- a/hotspot/make/windows/projectfiles/tiered/vm.dsw Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 5.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "vm"=.\vm.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
--- a/hotspot/makefiles/BuildHotspot.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-#
-# Copyright (c) 2015, 2016 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.
-#
-
-# This must be the first rule
-default: all
-
-include $(SPEC)
-include MakeBase.gmk
-
-VARIANT_TARGETS := $(foreach v, $(JVM_VARIANTS), variant-$v)
-VARIANT_GENSRC_TARGETS := $(addsuffix -gensrc, $(VARIANT_TARGETS))
-VARIANT_LIBS_TARGETS := $(addsuffix -libs, $(VARIANT_TARGETS))
-
-$(VARIANT_GENSRC_TARGETS): variant-%-gensrc:
- $(call LogWarn, Building JVM variant '$*' with features '$(JVM_FEATURES_$*)')
- +$(MAKE) -f gensrc/GenerateSources.gmk JVM_VARIANT=$*
-
-$(VARIANT_LIBS_TARGETS): variant-%-libs: variant-%-gensrc
- +$(MAKE) -f lib/CompileLibraries.gmk JVM_VARIANT=$*
-
-$(VARIANT_TARGETS): variant-%: variant-%-gensrc variant-%-libs
-
-jsig:
- +$(MAKE) -f lib/CompileLibjsig.gmk
-
-dist: $(VARIANT_TARGETS) jsig
- +$(MAKE) -f Dist.gmk
-
-all: dist
-
-.PHONY: $(VARIANT_TARGETS) $(VARIANT_GENSRC_TARGETS) $(VARIANT_LIBS_TARGETS) \
- jsig dist all
--- a/hotspot/makefiles/Dist.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,239 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-################################################################################
-# Copy the generated output into well-defined places in the dist directory.
-
-# This must be the first rule
-default: all
-
-include $(SPEC)
-include MakeBase.gmk
-
-$(eval $(call IncludeCustomExtension, hotspot, Dist.gmk))
-
-DIST_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/dist
-
-# Unfortunately, all platforms have different target subdirs.
-ifeq ($(OPENJDK_TARGET_OS), windows)
- LIB_SUBDIR := bin
-else ifeq ($(OPENJDK_TARGET_OS), macosx)
- LIB_SUBDIR := lib
-else
- LIB_SUBDIR := lib$(OPENJDK_TARGET_CPU_LIBDIR)
-endif
-
-################################################################################
-# Functions to setup copying of files for variants
-
-# Support macro for SetupDistLibFile
-define macosx_universalize
- $(MKDIR) -p $(@D)
- $(LIPO) -create -output $@ $<
-endef
-
-################################################################################
-# Setup make rules to copy a native library and associated data.
-#
-# Parameter 1 is the name of the rule. This name is used as variable prefix,
-# and the targets generated are listed in a variable by that name.
-#
-# Remaining parameters are named arguments. These include:
-# NAME -- The base name of the native library (e.g. 'jvm')
-# VARIANT -- The variant to copy from
-# VARIANT_TARGET_DIR -- The variant target sub dir, with trailing slash, optional
-SetupDistLibFile = $(NamedParamsMacroTemplate)
-define SetupDistLibFileBody
- ifneq ($$($1_VARIANT), )
- $1_SRC_DIR := $$(HOTSPOT_OUTPUTDIR)/variant-$$($1_VARIANT)/lib$$($1_NAME)
- else
- $1_SRC_DIR := $$(HOTSPOT_OUTPUTDIR)/lib$$($1_NAME)
- endif
- $1_LIB_NAME := $(LIBRARY_PREFIX)$$($1_NAME)
- $1_TARGET_DIR := $$(DIST_OUTPUTDIR)/$$(LIB_SUBDIR)/$$($1_VARIANT_TARGET_DIR)
-
- ifeq ($(OPENJDK_TARGET_OS), macosx)
- # We must use the 'universalize' macro to run lipo on shared libraries, at
- # least until JDK-8069540 is fixed.
- $1_MACRO := macosx_universalize
- endif
-
- # Copy the the native library.
- $$(eval $$(call SetupCopyFiles, $1_COPY_LIB, \
- DEST := $$($1_TARGET_DIR), \
- MACRO := $$($1_MACRO), \
- FILES := $$(wildcard \
- $$($1_SRC_DIR)/$$($1_LIB_NAME)$(SHARED_LIBRARY_SUFFIX)), \
- ))
-
- TARGETS += $$($1_COPY_LIB)
-
- # Copy related data (debug symbols, static-build symbols file etc)
- $$(eval $$(call SetupCopyFiles, $1_COPY_FILES, \
- DEST := $$($1_TARGET_DIR), \
- FILES := $$(wildcard \
- $$(addprefix $$($1_SRC_DIR)/$$($1_LIB_NAME), \
- .diz .debuginfo .pdb .map .symbols)), \
- ))
-
- TARGETS += $$($1_COPY_FILES)
-
- ifeq ($(OPENJDK_TARGET_OS), macosx)
- # Debug symbols on macosx is a directory, not a single file, per library.
- $1_DSYM_SRC := $$($1_SRC_DIR)/$$($1_LIB_NAME)$(SHARED_LIBRARY_SUFFIX).dSYM)
- ifneq ($$(wildcard $$($1_DSYM_SRC)), )
- $$(eval $$(call SetupCopyFiles, $1_COPY_DSYM_DIR, \
- DEST := $$($1_TARGET_DIR), \
- SRC := $$($1_SRC_DIR), \
- FILES := $$(shell $(FIND) $$($1_DSYM_SRC) -type f), \
- ))
- TARGETS += $$($1_COPY_DSYM_DIR)
- endif
- endif
-endef
-
-################################################################################
-# Copy common files, which are independent on the jvm variant(s) being built.
-# For files that were generated during the build, we assume all versions of
-# these files are identical, and just pick one arbitrarily to use as source.
-
-ANY_JVM_VARIANT := $(firstword $(JVM_VARIANTS))
-JVM_VARIANT_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/variant-$(ANY_JVM_VARIANT)
-
-### Copy platform-independent .h files
-INCLUDE_FILES_SRC_DIR := $(HOTSPOT_TOPDIR)/src/share/vm
-$(eval $(call SetupCopyFiles, COPY_INCLUDE, \
- SRC := $(INCLUDE_FILES_SRC_DIR), \
- DEST := $(DIST_OUTPUTDIR)/include, \
- FLATTEN := true, \
- FILES := $(INCLUDE_FILES_SRC_DIR)/prims/jni.h \
- $(INCLUDE_FILES_SRC_DIR)/code/jvmticmlr.h \
- $(INCLUDE_FILES_SRC_DIR)/services/jmm.h))
-
-TARGETS += $(COPY_INCLUDE)
-
-### Copy jni_md.h
-
-# This might have been defined in a custom extension
-ifeq ($(JNI_MD_H_SRC), )
- JNI_MD_H_SRC := $(HOTSPOT_TOPDIR)/src/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/vm/jni_$(HOTSPOT_TARGET_CPU_ARCH).h
-endif
-
-ifeq ($(OPENJDK_TARGET_OS), macosx)
- # NOTE: This should most likely be darwin, but the old hotspot build uses bsd
- JNI_MD_SUBDIR := bsd
-else ifeq ($(OPENJDK_TARGET_OS), windows)
- JNI_MD_SUBDIR := win32
-else
- JNI_MD_SUBDIR := $(OPENJDK_TARGET_OS)
-endif
-
-# SetupCopyFiles is not used here since it's non-trivial to copy a single
-# file with a different target name.
-$(DIST_OUTPUTDIR)/include/$(JNI_MD_SUBDIR)/jni_md.h: $(JNI_MD_H_SRC)
- $(call LogInfo, Copying hotspot/dist/include/$(JNI_MD_SUBDIR)/jni_md.h)
- $(install-file)
-
-TARGETS += $(DIST_OUTPUTDIR)/include/$(JNI_MD_SUBDIR)/jni_md.h
-
-$(eval $(call SetupCopyFiles, COPY_JVMTI_H, \
- DEST := $(DIST_OUTPUTDIR)/include, \
- FLATTEN := true, \
- FILES := $(JVM_VARIANT_OUTPUTDIR)/gensrc/jvmtifiles/jvmti.h))
-
-TARGETS += $(COPY_JVMTI_H)
-
-# NOTE: In the old build, this file was not copied on Windows.
-ifneq ($(OPENJDK_TARGET_OS), windows)
- $(eval $(call SetupCopyFiles, COPY_JVMTI_HTML, \
- DEST := $(DIST_OUTPUTDIR)/docs/platform/jvmti, \
- FILES := $(JVM_VARIANT_OUTPUTDIR)/gensrc/jvmtifiles/jvmti.html))
-endif
-
-TARGETS += $(COPY_JVMTI_HTML)
-
-ifeq ($(OPENJDK_TARGET_OS), windows)
- $(eval $(call SetupCopyFiles, COPY_JVM_LIB, \
- DEST := $(DIST_OUTPUTDIR)/lib, \
- FILES :=$(JVM_VARIANT_OUTPUTDIR)/libjvm/objs/jvm.lib))
-
- TARGETS += $(COPY_JVM_LIB)
-endif
-
-# Copy libjsig, if it exists
-$(eval $(call SetupDistLibFile, DIST_jsig, \
- NAME := jsig, \
-))
-
-################################################################################
-# Copy variant-specific files
-
-# Setup make rules to copy a single variant to dist.
-# $1: The name of the variant
-define SetupDistForVariant
- ifneq ($$(filter client minimal, $1), )
- VARIANT_TARGET_DIR := $1
- else
- # Use 'server' as default target directory name for all other variants.
- VARIANT_TARGET_DIR := server
- endif
-
- $$(eval $$(call SetupDistLibFile, DIST_$(strip $1)_jvm, \
- NAME := jvm, \
- VARIANT := $1, \
- VARIANT_TARGET_DIR := $$(VARIANT_TARGET_DIR)/, \
- ))
-
- # Copy the dtrace libraries, if they exist
- $$(eval $$(call SetupDistLibFile, DIST_$(strip $1)_jvm_db, \
- NAME := jvm_db, \
- VARIANT := $1, \
- VARIANT_TARGET_DIR := $$(VARIANT_TARGET_DIR)/, \
- ))
-
- $$(eval $$(call SetupDistLibFile, DIST_$(strip $1)_jvm_dtrace, \
- NAME := jvm_dtrace, \
- VARIANT := $1, \
- VARIANT_TARGET_DIR := $$(VARIANT_TARGET_DIR)/, \
- ))
-
- # Copy the Xusage.txt file
- $$(eval $$(call SetupCopyFiles, DIST_$(strip $1)_Xusage, \
- DEST := $$(DIST_OUTPUTDIR)/$$(LIB_SUBDIR)/$(strip $1), \
- FILES := $$(HOTSPOT_OUTPUTDIR)/variant-$(strip $1)/support/misc/Xusage.txt, \
- ))
-
- TARGETS += $$(DIST_$(strip $1)_Xusage)
-endef
-
-$(foreach variant, $(JVM_VARIANTS), \
- $(eval $(call SetupDistForVariant, $(variant))) \
-)
-
-################################################################################
-
-all: $(TARGETS)
-
-.PHONY: all
--- a/hotspot/makefiles/HotspotCommon.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-
-ifeq ($(JVM_VARIANT), )
- $(error This makefile must be called with JVM_VARIANT set)
-endif
-
-JVM_VARIANT_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/variant-$(JVM_VARIANT)
-JVM_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/libjvm
-JVM_SUPPORT_DIR := $(JVM_VARIANT_OUTPUTDIR)/support
-
-DTRACE_SUPPORT_DIR := $(JVM_SUPPORT_DIR)/dtrace
-
-################################################################################
-
-# Test if a feature is available in the present build of JVM_VARIANT. Will return
-# 'true' or 'false'.
-# $1 - the feature to test for
-check-jvm-feature = \
- $(strip \
- $(if $(filter-out $(VALID_JVM_FEATURES), $1), \
- $(error Internal error: Invalid feature tested: $1)) \
- $(if $(filter $1, $(JVM_FEATURES_$(JVM_VARIANT))), true, false))
--- a/hotspot/makefiles/gensrc/GenerateSources.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,75 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-default: all
-
-include $(SPEC)
-include MakeBase.gmk
-include JavaCompilation.gmk
-include NativeCompilation.gmk
-include TextFileProcessing.gmk
-
-include HotspotCommon.gmk
-
-# The real work is done in these files
-
-include gensrc/GensrcAdlc.gmk
-include gensrc/GensrcDtrace.gmk
-include gensrc/GensrcJvmti.gmk
-
-$(eval $(call IncludeCustomExtension, hotspot, gensrc/GenerateSources.gmk))
-
-# While technically the rules below are "gendata" which can be done in parallel
-# with native compilation, let's keep it here for simplicity.
-
-# The Xusage.txt file needs to have platform specific path separator
-$(eval $(call SetupTextFileProcessing, CREATE_XUSAGE, \
- SOURCE_FILES := $(HOTSPOT_TOPDIR)/src/share/vm/Xusage.txt, \
- OUTPUT_FILE := $(JVM_SUPPORT_DIR)/misc/Xusage.txt, \
- REPLACEMENTS := separated by ;> => separated by $(PATH_SEP)> ; , \
-))
-
-TARGETS += $(CREATE_XUSAGE)
-
-# Setup the hotspot launcher script for developer use
-$(eval $(call SetupTextFileProcessing, CREATE_HOTSPOT_LAUNCHER, \
- SOURCE_FILES := $(HOTSPOT_TOPDIR)/make/hotspot.script, \
- OUTPUT_FILE := $(JVM_OUTPUTDIR)/hotspot, \
- REPLACEMENTS := \
- @@LIBARCH@@ => $(OPENJDK_TARGET_CPU_LEGACY_LIB) ; \
- @@JDK_IMPORT_PATH@@ => $(JDK_OUTPUTDIR) ; , \
-))
-
-CHMOD_HOTSPOT_LAUNCHER := $(JVM_VARIANT_OUTPUTDIR)/libjvm/_hotspot-script-chmod.marker
-
-$(CHMOD_HOTSPOT_LAUNCHER): $(CREATE_HOTSPOT_LAUNCHER)
- $(CHMOD) +x $<
- $(TOUCH) $@
-
-TARGETS += $(CREATE_HOTSPOT_LAUNCHER) $(CHMOD_HOTSPOT_LAUNCHER)
-
-all: $(TARGETS)
-
-.PHONY: all
--- a/hotspot/makefiles/gensrc/GensrcAdlc.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,191 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-$(eval $(call IncludeCustomExtension, hotspot, gensrc/GensrcAdlc.gmk))
-
-ifeq ($(call check-jvm-feature, compiler2), true)
-
- ADLC_SUPPORT_DIR := $(JVM_SUPPORT_DIR)/adlc
-
- ##############################################################################
- # Build the ad compiler (the adlc build tool)
-
- # Flags depending on the build platform/tool chain
- # NOTE: No optimization or debug flags set here
- ifeq ($(OPENJDK_BUILD_OS), linux)
- ADLC_CFLAGS := -fno-exceptions -DLINUX
- else ifeq ($(OPENJDK_BUILD_OS), solaris)
- ADLC_LDFLAGS := -m64
- ADLC_CFLAGS := -m64
- ADLC_CFLAGS_WARNINGS := +w
- else ifeq ($(OPENJDK_BUILD_OS), aix)
- ADLC_LDFLAGS := -q64
- ADLC_CFLAGS := -qnortti -qeh -q64 -DAIX
- else ifeq ($(OPENJDK_BUILD_OS), windows)
- ADLC_LDFLAGS := -nologo
- ADLC_CFLAGS := -nologo -EHsc
- # NOTE: The old build also have -D_CRT_SECURE_NO_DEPRECATE but it doesn't
- # seem needed any more.
- ADLC_CFLAGS_WARNINGS := -W3 -D_CRT_SECURE_NO_WARNINGS
- endif
-
- # NOTE: The old build didn't set -DASSERT for windows but it doesn't seem to
- # hurt.
- ADLC_CFLAGS += -DASSERT
-
- ADLC_CFLAGS += -D$(HOTSPOT_TARGET_CPU_DEFINE)
-
- ADLC_CFLAGS += -I$(HOTSPOT_TOPDIR)/src/share/vm
-
- $(eval $(call SetupNativeCompilation, BUILD_ADLC, \
- TOOLCHAIN := TOOLCHAIN_BUILD_LINK_CXX, \
- SRC := $(HOTSPOT_TOPDIR)/src/share/vm/adlc, \
- EXTRA_FILES := $(HOTSPOT_TOPDIR)/src/share/vm/opto/opcodes.cpp, \
- CFLAGS := $(ADLC_CFLAGS) $(ADLC_CFLAGS_WARNINGS), \
- LDFLAGS := $(ADLC_LDFLAGS), \
- LIBS := $(ADLC_LIBS), \
- OBJECT_DIR := $(JVM_VARIANT_OUTPUTDIR)/tools/adlc/objs, \
- OUTPUT_DIR := $(JVM_VARIANT_OUTPUTDIR)/tools/adlc, \
- PROGRAM := adlc, \
- DEBUG_SYMBOLS := false, \
- DISABLED_WARNINGS_clang := parentheses tautological-compare, \
- DISABLED_WARNINGS_solstudio := notemsource, \
- ))
-
- ADLC_TOOL := $(BUILD_ADLC_TARGET)
-
- ##############################################################################
- # Transform the ad source files into C++ source files using adlc
-
- # Setup flags for the adlc build tool (ADLCFLAGS).
- ADLCFLAGS += -q -T
-
- # ADLC flags depending on target OS
- ifeq ($(OPENJDK_TARGET_OS), linux)
- ADLCFLAGS += -DLINUX=1 -D_GNU_SOURCE=1
- else ifeq ($(OPENJDK_TARGET_OS), solaris)
- ADLCFLAGS += -DSOLARIS=1 -DSPARC_WORKS=1
- else ifeq ($(OPENJDK_TARGET_OS), aix)
- ADLCFLAGS += -DAIX=1
- else ifeq ($(OPENJDK_TARGET_OS), macosx)
- ADLCFLAGS += -D_ALLBSD_SOURCE=1 -D_GNU_SOURCE=1
- endif
-
- ifneq ($(OPENJDK_TARGET_OS), windows)
- # NOTE: Windows adlc flags was different in the old build. Is this really
- # correct?
-
- # -g makes #line directives in the generated C++ files.
- ADLCFLAGS += -g
-
- ADLCFLAGS += -D$(HOTSPOT_TARGET_CPU_DEFINE)=1
- endif
-
- # This generates checks in the generated C++ files that _LP64 is correctly
- # (un)defined when compiling them.
- ifeq ($(OPENJDK_TARGET_CPU_BITS), 64)
- ADLCFLAGS += -D_LP64=1
- else
- ADLCFLAGS += -U_LP64
- endif
-
- ##############################################################################
- # Concatenate all ad source files into a single file, which will be fed to
- # adlc. Also include a #line directive at the start of every included file
- # (after the initial header block), stating the original source file name.
- #
- # Normally, debugging is done directly on the ad_<arch>*.cpp files, but the
- # #line directives in those files will be pointing back to <arch>.ad.
-
- # AD_SRC_ROOTS might have been added to by a custom extension
- AD_SRC_ROOTS += $(HOTSPOT_TOPDIR)/src
-
- AD_SRC_FILES := $(call uniq, $(wildcard $(foreach d, $(AD_SRC_ROOTS), \
- $d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/vm/$(HOTSPOT_TARGET_CPU).ad \
- $d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/vm/$(HOTSPOT_TARGET_CPU_ARCH).ad \
- $d/os_cpu/$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU_ARCH)/vm/$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU_ARCH).ad \
- )))
-
- SINGLE_AD_SRCFILE := $(ADLC_SUPPORT_DIR)/all-ad-src.ad
-
- INSERT_FILENAME_AWK_SCRIPT := \
- '{ \
- if (CUR_FN != FILENAME) { CUR_FN=FILENAME; NR_BASE=NR-1; need_lineno=1 } \
- if (need_lineno && $$0 !~ /\/\//) \
- { print "\n\n\#line " (NR-NR_BASE) " \"" FILENAME "\""; need_lineno=0 }; \
- print \
- }'
-
- $(SINGLE_AD_SRCFILE): $(AD_SRC_FILES)
- $(call LogInfo, Preprocessing adlc files $(^F))
- $(call MakeDir, $(@D))
- $(NAWK) $(INSERT_FILENAME_AWK_SCRIPT) $^ > $@
-
- ##############################################################################
- # Run the adlc tool on the single concatenated ad source file, and store the
- # output in support/adlc for further processing.
- ADLC_RUN_MARKER := $(ADLC_SUPPORT_DIR)/_adlc_run.marker
-
- $(ADLC_RUN_MARKER): $(BUILD_ADLC) $(SINGLE_AD_SRCFILE)
- $(call LogInfo, Generating adlc files)
- $(call MakeDir, $(@D))
- $(call ExecuteWithLog, $(ADLC_SUPPORT_DIR)/adlc_run, \
- $(FIXPATH) $(ADLC_TOOL) $(ADLCFLAGS) $(SINGLE_AD_SRCFILE) \
- -c$(ADLC_SUPPORT_DIR)/ad_$(HOTSPOT_TARGET_CPU).cpp \
- -h$(ADLC_SUPPORT_DIR)/ad_$(HOTSPOT_TARGET_CPU).hpp \
- -a$(ADLC_SUPPORT_DIR)/dfa_$(HOTSPOT_TARGET_CPU).cpp \
- -v$(ADLC_SUPPORT_DIR)/adGlobals_$(HOTSPOT_TARGET_CPU).hpp)
- $(TOUCH) $@
-
- ##############################################################################
- # Finally copy the generated files from support/adlc into gensrc/adfiles,
- # and postprocess them by fixing dummy #line directives.
-
- ADLC_GENERATED_FILES := $(addprefix $(JVM_VARIANT_OUTPUTDIR)/gensrc/adfiles/, \
- ad_$(HOTSPOT_TARGET_CPU).cpp \
- ad_$(HOTSPOT_TARGET_CPU).hpp \
- ad_$(HOTSPOT_TARGET_CPU)_clone.cpp \
- ad_$(HOTSPOT_TARGET_CPU)_expand.cpp \
- ad_$(HOTSPOT_TARGET_CPU)_format.cpp \
- ad_$(HOTSPOT_TARGET_CPU)_gen.cpp \
- ad_$(HOTSPOT_TARGET_CPU)_misc.cpp \
- ad_$(HOTSPOT_TARGET_CPU)_peephole.cpp \
- ad_$(HOTSPOT_TARGET_CPU)_pipeline.cpp \
- adGlobals_$(HOTSPOT_TARGET_CPU).hpp \
- dfa_$(HOTSPOT_TARGET_CPU).cpp \
- )
-
- $(JVM_VARIANT_OUTPUTDIR)/gensrc/adfiles/%: $(ADLC_RUN_MARKER)
- $(call LogInfo, Postprocessing adlc file $*)
- $(call MakeDir, $(@D))
- $(NAWK) \
- 'BEGIN { print "#line 1 \"$*\""; } \
- /^#line 999999$$/ {print "#line " (NR+1) " \"$*\""; next} \
- {print}' \
- < $(ADLC_SUPPORT_DIR)/$* > $@
-
- TARGETS := $(ADLC_GENERATED_FILES)
-
-endif
--- a/hotspot/makefiles/gensrc/GensrcDtrace.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-################################################################################
-# Gensrc support for dtrace. The files generated here are included by dtrace.hpp
-
-ifeq ($(call check-jvm-feature, dtrace), true)
-
- ifeq ($(OPENJDK_TARGET_OS), solaris)
- DTRACE_FLAGS := -64
- DTRACE_CPP_FLAGS := -D_LP64
- else ifeq ($(OPENJDK_TARGET_OS), macosx)
- DTRACE_CPP_FLAGS := -D_LP64 -x c
- else ifeq ($(OPENJDK_TARGET_OS), linux)
- DTRACE_CPP_FLAGS := -x c
- endif
-
- DTRACE_SOURCE_DIR := $(HOTSPOT_TOPDIR)/src/os/posix/dtrace
- DTRACE_GENSRC_DIR := $(JVM_VARIANT_OUTPUTDIR)/gensrc/dtracefiles
-
- # Make sure we run our selected compiler for preprocessing instead of letting
- # the dtrace tool pick it on it's own.
- $(DTRACE_GENSRC_DIR)/%.h: $(DTRACE_SOURCE_DIR)/%.d
- $(call LogInfo, Generating dtrace header file $(@F))
- $(call MakeDir, $(@D) $(DTRACE_SUPPORT_DIR))
- $(call ExecuteWithLog, $(DTRACE_SUPPORT_DIR)/$(@F).d, $(CC) -E $(DTRACE_CPP_FLAGS) $< > $(DTRACE_SUPPORT_DIR)/$(@F).d)
- $(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) -h -o $@ -s $(DTRACE_SUPPORT_DIR)/$(@F).d)
-
- # Process all .d files in DTRACE_SOURCE_DIR. They are:
- # hotspot_jni.d hotspot.d hs_private.d
- TARGETS += $(patsubst $(DTRACE_SOURCE_DIR)/%.d, \
- $(DTRACE_GENSRC_DIR)/%.h, $(wildcard $(DTRACE_SOURCE_DIR)/*.d))
-
-endif
--- a/hotspot/makefiles/gensrc/GensrcJvmti.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,174 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-$(eval $(call IncludeCustomExtension, hotspot, gensrc/GensrcJvmti.gmk))
-
-################################################################################
-# Build tools needed for the JVMTI source code generation
-
-JVMTI_TOOLS_SRCDIR := $(HOTSPOT_TOPDIR)/src/share/vm/prims
-JVMTI_TOOLS_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/tools/jvmti
-
-$(eval $(call SetupJavaCompiler, GENERATE_OLDBYTECODE, \
- JAVAC := $(JAVAC), \
- FLAGS := $(DISABLE_WARNINGS), \
- SERVER_DIR := $(SJAVAC_SERVER_DIR), \
- SERVER_JVM := $(SJAVAC_SERVER_JAVA), \
- DISABLE_SJAVAC := true, \
-))
-
-$(eval $(call SetupJavaCompilation, BUILD_JVMTI_TOOLS, \
- SETUP := GENERATE_OLDBYTECODE, \
- SRC := $(JVMTI_TOOLS_SRCDIR), \
- INCLUDE_FILES := jvmtiGen.java jvmtiEnvFill.java, \
- BIN := $(JVMTI_TOOLS_OUTPUTDIR), \
-))
-
-TOOL_JVMTI_GEN := $(JAVA_SMALL) -cp $(JVMTI_TOOLS_OUTPUTDIR) jvmtiGen
-TOOL_JVMTI_ENV_FILL := $(JAVA_SMALL) -cp $(JVMTI_TOOLS_OUTPUTDIR) jvmtiEnvFill
-
-################################################################################
-# Setup make rules for an xml transform for jvmti/trace file generation.
-#
-# Parameter 1 is the name of the rule. This name is used as variable prefix,
-# and the targets generated are listed in a variable by that name. This name is
-# also used as the name of the output file.
-#
-# Remaining parameters are named arguments. These include:
-# XML_FILE -- The input source file to use
-# XSL_FILE -- The xsl file to use
-# OUTPUT_DIR -- The directory to put the generated file in
-# ARGS -- Additional arguments to the jvmtiGen tool
-# DEPS -- Additional dependencies
-SetupXslTransform = $(NamedParamsMacroTemplate)
-define SetupXslTransformBody
- $$($1_OUTPUT_DIR)/$1: $$($1_XML_FILE) $$($1_XSL_FILE) $$($1_DEPS) $$(BUILD_JVMTI_TOOLS)
- $$(call LogInfo, Generating $$(@F))
- $$(call MakeDir, $$(@D))
- $$(call ExecuteWithLog, $$@, $$(TOOL_JVMTI_GEN) -IN $$($1_XML_FILE) -XSL $$($1_XSL_FILE) -OUT $$@ $$($1_ARGS))
- # jvmtiGen does not return error code properly on fail.
- # NOTE: We should really fix jvmtiGen.java instead.
- test -f $$@
-
- TARGETS += $$($1_OUTPUT_DIR)/$1
-endef
-
-################################################################################
-# Create JVMTI files in gensrc/jvmtifiles
-
-JVMTI_SRCDIR := $(HOTSPOT_TOPDIR)/src/share/vm/prims
-JVMTI_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/gensrc/jvmtifiles
-
-# Setup rule for generating a jvmti file
-#
-# $1 is generated source file name in $(JVMTI_OUTPUTDIR)
-# $2 is XSL file to use in $(JVMTI_SRCDIR)
-# $3 is optional extra arguments to jvmtiGen
-define SetupJvmtiGeneration
- $$(eval $$(call SetupXslTransform, $1, \
- XML_FILE := $$(JVMTI_SRCDIR)/jvmti.xml, \
- XSL_FILE := $$(JVMTI_SRCDIR)/$(strip $2), \
- OUTPUT_DIR := $$(JVMTI_OUTPUTDIR), \
- ARGS := $3, \
- DEPS := $$(JVMTI_SRCDIR)/jvmtiLib.xsl, \
- ))
-endef
-
-$(eval $(call SetupJvmtiGeneration, jvmtiEnter.cpp, jvmtiEnter.xsl, \
- -PARAM interface jvmti))
-$(eval $(call SetupJvmtiGeneration, jvmtiEnterTrace.cpp, jvmtiEnter.xsl, \
- -PARAM interface jvmti -PARAM trace Trace))
-$(eval $(call SetupJvmtiGeneration, jvmtiEnv.hpp, jvmtiHpp.xsl))
-$(eval $(call SetupJvmtiGeneration, jvmti.h, jvmtiH.xsl))
-$(eval $(call SetupJvmtiGeneration, jvmti.html, jvmti.xsl))
-$(eval $(call SetupJvmtiGeneration, jvmtiEnvStub.cpp, jvmtiEnv.xsl))
-
-JVMTI_BC_SRCDIR := $(HOTSPOT_TOPDIR)/src/share/vm/interpreter
-
-$(eval $(call SetupXslTransform, bytecodeInterpreterWithChecks.cpp, \
- XML_FILE := $(JVMTI_BC_SRCDIR)/bytecodeInterpreterWithChecks.xml, \
- XSL_FILE := $(JVMTI_BC_SRCDIR)/bytecodeInterpreterWithChecks.xsl, \
- OUTPUT_DIR := $(JVMTI_OUTPUTDIR), \
- DEPS := $(JVMTI_BC_SRCDIR)/bytecodeInterpreter.cpp, \
-))
-
-# We need $(JVMTI_OUTPUTDIR)/jvmtiEnvStub.cpp (generated above) as input
-$(JVMTI_OUTPUTDIR)/jvmtiEnvRecommended.cpp: $(JVMTI_SRCDIR)/jvmtiEnv.cpp \
- $(JVMTI_OUTPUTDIR)/jvmtiEnvStub.cpp $(BUILD_JVMTI_TOOLS)
- $(call LogInfo, Generating $(@F))
- $(call MakeDir, $(@D))
- $(call ExecuteWithLog, $@, $(TOOL_JVMTI_ENV_FILL) $(JVMTI_SRCDIR)/jvmtiEnv.cpp \
- $(JVMTI_OUTPUTDIR)/jvmtiEnvStub.cpp \
- $(JVMTI_OUTPUTDIR)/jvmtiEnvRecommended.cpp)
- # jvmtiEnvFill does not necessarily return an error code on failure.
- # NOTE: We should really fix jvmtiEnvFill.java instead.
- test -f $@
-
-TARGETS += $(JVMTI_OUTPUTDIR)/jvmtiEnvRecommended.cpp
-
-################################################################################
-# Create trace files in gensrc/tracefiles
-
-TRACE_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/gensrc/tracefiles
-TRACE_SRCDIR := $(HOTSPOT_TOPDIR)/src/share/vm/trace
-
-# Append directories to search (might have been set by custom extensions)
-TRACE_SEARCH_DIRS += $(TRACE_SRCDIR)
-
-TRACE_XML ?= $(TRACE_SRCDIR)/trace.xml
-
-# Changing these will trigger a rebuild of generated trace files.
-TRACE_DEPS += \
- $(TRACE_XML) \
- $(TRACE_SRCDIR)/tracetypes.xml \
- $(TRACE_SRCDIR)/tracerelationdecls.xml \
- $(TRACE_SRCDIR)/traceevents.xml \
- $(TRACE_SRCDIR)/trace.dtd \
- $(TRACE_SRCDIR)/xinclude.mod \
- #
-
-# Setup rule for generating a trace file
-#
-# $1 is generated source file name in $(TRACE_OUTPUTDIR)
-define SetupTraceGeneration
- $$(eval $$(call SetupXslTransform, $1, \
- XML_FILE := $$(TRACE_XML), \
- XSL_FILE := $$(firstword $$(wildcard $$(addsuffix /$$(basename $1).xsl, $$(TRACE_SEARCH_DIRS)))), \
- OUTPUT_DIR := $$(TRACE_OUTPUTDIR), \
- DEPS := $$(TRACE_DEPS), \
- ))
-endef
-
-# Append files to generated (might have been set by custom extensions)
-TRACE_GENSRC_FILES += \
- traceEventClasses.hpp \
- traceEventIds.hpp \
- traceTypes.hpp \
- #
-
-# Call SetupTraceGeneration for all trace gensrc files
-$(foreach tracefile, $(TRACE_GENSRC_FILES), \
- $(eval $(call SetupTraceGeneration, $(tracefile))) \
-)
--- a/hotspot/makefiles/ide/CreateVSProject.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,153 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-
-# This must be the first rule
-default: all
-
-include $(SPEC)
-include MakeBase.gmk
-include JavaCompilation.gmk
-include SetupJavaCompilers.gmk
-
-ifeq ($(OPENJDK_TARGET_OS), windows)
- # The next part is a bit hacky. We include the CompileJvm.gmk to be
- # able to extact flags, but we do not wish to execute the rules.
-
- # Use client as base for defines and includes
- JVM_VARIANT=client
-
- include HotspotCommon.gmk
- include lib/CompileJvm.gmk
-
- # Reset targets so we don't build libjvm.
- TARGETS :=
-
- # Helper macro to convert a unix path to a Windows path, suitable for
- # inclusion in a command line.
- FixPath = \
- $(strip $(subst \,\\,$(shell $(CYGPATH) -w $1)))
-
- JVM_DEFINES_client := $(patsubst -D%,%, $(filter -D%, $(JVM_CFLAGS)))
- EXTRACTED_DEFINES_client := $(addprefix -define , $(JVM_DEFINES_client))
-
- JVM_INCLUDES_client := $(patsubst -I%,%, $(filter -I%, $(JVM_CFLAGS)))
- EXTRACTED_INCLUDES_client := $(foreach path, $(JVM_INCLUDES_client), -absoluteInclude $(call FixPath, $(path)))
-
- # Hand-code variant-specific arguments, based on the fact that we use
- # client for general arguments. Not optimal but other solutions require
- # major changes in ProjectCreator.
- ADDITIONAL_VARIANT_ARGS := \
- -define_server COMPILER2 \
- -ignorePath_client adfiles \
- -ignorePath_client c2_ \
- -ignorePath_client runtime_ \
- -ignorePath_client libadt \
- -ignorePath_client opto \
- #
-
- IGNORED_PLATFORMS_ARGS := \
- -ignorePath aarch64 \
- -ignorePath aix \
- -ignorePath arm \
- -ignorePath bsd \
- -ignorePath linux \
- -ignorePath posix \
- -ignorePath ppc \
- -ignorePath shark \
- -ignorePath solaris \
- -ignorePath sparc \
- -ignorePath x86_32 \
- -ignorePath zero \
- #
-
- ################################################################################
- # Build the ProjectCreator java tool.
-
- TOOLS_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/support/tools_classes
-
- $(eval $(call SetupJavaCompilation, BUILD_PROJECT_CREATOR, \
- SETUP := GENERATE_OLDBYTECODE, \
- ADD_JAVAC_FLAGS := -Xlint:-auxiliaryclass, \
- SRC := $(HOTSPOT_TOPDIR)/makefiles/src/classes, \
- BIN := $(TOOLS_OUTPUTDIR), \
- ))
-
- TARGETS += $(BUILD_PROJECT_CREATOR)
-
- # Run the ProjectCreator tool
- PROJECT_CREATOR_TOOL := $(JAVA_SMALL) -cp $(TOOLS_OUTPUTDIR) build.tools.projectcreator.ProjectCreator
-
- IDE_OUTPUTDIR := $(BUILD_OUTPUT)/ide/hotspot-visualstudio
-
- VCPROJ_FILE := $(IDE_OUTPUTDIR)/jvm.vcxproj
-
- PROJECT_CREATOR_CLASS := build.tools.projectcreator.WinGammaPlatformVC10
-
- # We hard-code gensrc dir to server (since this includes adfiles)
- PROJECT_CREATOR_ARGS := \
- -sourceBase $(call FixPath, $(HOTSPOT_TOPDIR)) \
- -startAt src \
- -relativeSrcInclude src \
- -hidePath .hg \
- -hidePath .jcheck \
- -hidePath jdk.hotspot.agent \
- -hidePath jdk.vm.ci \
- -hidePath jdk.jfr \
- -compiler VC10 \
- -jdkTargetRoot $(call FixPath, $(JDK_OUTPUTDIR)) \
- -platformName x64 \
- -buildBase $(call FixPath, $(IDE_OUTPUTDIR)/vs-output) \
- -buildSpace $(call FixPath, $(IDE_OUTPUTDIR)) \
- -makeBinary $(call FixPath, $(MAKE)) \
- -makeOutput $(call FixPath, $(HOTSPOT_OUTPUTDIR)/variant-%f/libjvm) \
- -absoluteInclude $(call FixPath, $(HOTSPOT_OUTPUTDIR)/variant-server/gensrc) \
- -absoluteSrcInclude $(call FixPath, $(HOTSPOT_OUTPUTDIR)/variant-server/gensrc) \
- $(EXTRACTED_DEFINES_client) \
- $(EXTRACTED_INCLUDES_client) \
- $(ADDITIONAL_VARIANT_ARGS) \
- $(IGNORED_PLATFORMS_ARGS) \
- #
-
- VCPROJ_VARDEPS := $(PROJECT_CREATOR_CLASS) $(PROJECT_CREATOR_ARGS)
- VCPROJ_VARDEPS_FILE := $(call DependOnVariable, VCPROJ_VARDEPS, \
- $(VCPROJ_FILE).vardeps)
-
- $(VCPROJ_FILE): $(BUILD_PROJECT_CREATOR) $(VCPROJ_VARDEPS_FILE)
- $(call MakeDir, $(@D))
- $(call ExecuteWithLog, $@, \
- $(PROJECT_CREATOR_TOOL) $(PROJECT_CREATOR_CLASS) \
- $(PROJECT_CREATOR_ARGS) -projectFileName $(call FixPath, $@)) \
- $(LOG_INFO)
-
- TARGETS += $(VCPROJ_FILE)
-
- all: $(TARGETS)
-
-else
- all:
- $(info Hotspot Visual Studio generation only supported on Windows)
-endif
-
-.PHONY: all
--- a/hotspot/makefiles/lib/CompileDtracePostJvm.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,217 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-################################################################################
-# Support for dtrace integration with libjvm, and stand-alone dtrace library
-# compilation.
-
-ifeq ($(call check-jvm-feature, dtrace), true)
- ##############################################################################
-
- ifeq ($(OPENJDK_TARGET_OS), solaris)
- ############################################################################
- # Integrate with libjvm. Here we generate three object files which are
- # linked with libjvm.so. This step is complicated from a dependency
- # perspective, since it needs the rest of the compiled object files from the
- # libjvm compilation, but the output is object files that are to be included
- # when linking libjvm.so. So this generation must happen as a part of the
- # libjvm compilation.
-
- # First we need to generate the dtraceGenOffsets tool. When run, this will
- # produce more header files and a C++ file.
-
- # Note that generateJvmOffsets.cpp must be compiled as if it were a file
- # in the libjvm.so, using JVM_CFLAGS as setup in CompileJvm.gmk. Otherwise
- # this would preferrably have been done as a part of GensrcDtrace.gmk.
- $(eval $(call SetupNativeCompilation, BUILD_DTRACE_GEN_OFFSETS, \
- SRC := $(HOTSPOT_TOPDIR)/src/os/$(OPENJDK_TARGET_OS)/dtrace, \
- INCLUDE_FILES := generateJvmOffsets.cpp generateJvmOffsetsMain.c, \
- CC := $(BUILD_CXX), \
- CXX := $(BUILD_CXX), \
- LDEXE := $(BUILD_CXX), \
- generateJvmOffsets.cpp_CXXFLAGS := $(JVM_CFLAGS) -mt -xnolib -norunpath, \
- generateJvmOffsetsMain.c_CFLAGS := -library=%none -mt -m64 -norunpath -z nodefs, \
- LDFLAGS := -m64, \
- LIBS := -lc, \
- OBJECT_DIR := $(JVM_VARIANT_OUTPUTDIR)/tools/dtrace-gen-offsets/objs, \
- OUTPUT_DIR := $(JVM_VARIANT_OUTPUTDIR)/tools/dtrace-gen-offsets, \
- PROGRAM := dtraceGenOffsets, \
- ))
-
- DTRACE_GEN_OFFSETS_TOOL := $(BUILD_DTRACE_GEN_OFFSETS_TARGET)
-
- # Argument 1: Output filename
- # Argument 2: dtrace-gen-offset tool command line option
- define SetupDtraceOffsetsGeneration
- $1: $$(BUILD_DTRACE_GEN_OFFSETS)
- $$(call LogInfo, Generating dtrace $2 file $$(@F))
- $$(call MakeDir, $$(@D))
- $$(call ExecuteWithLog, $$@, $$(DTRACE_GEN_OFFSETS_TOOL) -$$(strip $2) > $$@)
-
- TARGETS += $1
- endef
-
- JVM_OFFSETS_H := $(DTRACE_SUPPORT_DIR)/JvmOffsets.h
- JVM_OFFSETS_CPP := $(DTRACE_SUPPORT_DIR)/JvmOffsets.cpp
- JVM_OFFSETS_INDEX_H := $(DTRACE_SUPPORT_DIR)/JvmOffsetsIndex.h
-
- # Run the dtrace-gen-offset tool to generate these three files.
- $(eval $(call SetupDtraceOffsetsGeneration, $(JVM_OFFSETS_H), header))
- $(eval $(call SetupDtraceOffsetsGeneration, $(JVM_OFFSETS_INDEX_H), index))
- $(eval $(call SetupDtraceOffsetsGeneration, $(JVM_OFFSETS_CPP), table))
-
- ############################################################################
- # Compile JVM_OFFSETS_OBJ which is linked with libjvm.so.
-
- # JvmOffsets.cpp is compiled without the common JVM_CFLAGS. Otherwise, the
- # natural way would have been to included this source code in BUILD_LIBJVM.
- JVM_OFFSETS_CFLAGS := -m64
- ifeq ($(OPENJDK_TARGET_CPU), sparcv9)
- JVM_OFFSETS_CFLAGS += -xarch=sparc
- endif
-
- $(JVM_OFFSETS_OBJ): $(JVM_OFFSETS_CPP) $(JVM_OFFSETS_H)
- $(call LogInfo, Compiling dtrace file JvmOffsets.cpp (for libjvm.so))
- $(call ExecuteWithLog, $@, $(CXX) -c -I$(<D) -o $@ $(JVM_OFFSETS_CFLAGS) $<)
-
- ############################################################################
- # Generate DTRACE_OBJ which is linked with libjvm.so.
-
- # Concatenate all *.d files into a single file
- DTRACE_SOURCE_FILES := $(addprefix $(HOTSPOT_TOPDIR)/src/os/posix/dtrace/, \
- hotspot_jni.d \
- hotspot.d \
- hs_private.d \
- )
-
- $(JVM_OUTPUTDIR)/objs/dtrace.d: $(DTRACE_SOURCE_FILES)
- $(call LogInfo, Generating $(@F))
- $(call MakeDir, $(@D))
- $(CAT) $^ > $@
-
- DTRACE_INSTRUMENTED_OBJS := $(addprefix $(JVM_OUTPUTDIR)/objs/, \
- ciEnv.o \
- classLoadingService.o \
- compileBroker.o \
- hashtable.o \
- instanceKlass.o \
- java.o \
- jni.o \
- jvm.o \
- memoryManager.o \
- nmethod.o \
- objectMonitor.o \
- runtimeService.o \
- sharedRuntime.o \
- synchronizer.o \
- thread.o \
- unsafe.o \
- vmThread.o \
- vmGCOperations.o \
- )
-
- ifeq ($(call check-jvm-feature, all-gcs), true)
- DTRACE_INSTRUMENTED_OBJS += $(addprefix $(JVM_OUTPUTDIR)/objs/, \
- vmCMSOperations.o \
- vmPSOperations.o \
- )
- endif
-
- DTRACE_FLAGS := -64 -G
- DTRACE_CPP_FLAGS := -D_LP64
-
- # Make sure we run our selected compiler for preprocessing instead of letting
- # the dtrace tool pick it on it's own.
- $(DTRACE_OBJ): $(JVM_OUTPUTDIR)/objs/dtrace.d $(DTRACE_INSTRUMENTED_OBJS)
- $(call LogInfo, Generating $(@F) from $(<F) and object files)
- $(call MakeDir, $(DTRACE_SUPPORT_DIR))
- $(call ExecuteWithLog, $(DTRACE_SUPPORT_DIR)/$(@F).d, $(CC) -E \
- $(DTRACE_CPP_FLAGS) $< > $(DTRACE_SUPPORT_DIR)/$(@F).d)
- $(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) -xlazyload -o $@ \
- -s $(DTRACE_SUPPORT_DIR)/$(@F).d $(sort $(DTRACE_INSTRUMENTED_OBJS)))
-
- ############################################################################
- # Generate DTRACE_JHELPER_OBJ which is linked with libjvm.so.
-
- # Unfortunately dtrace generates incorrect types for some symbols in
- # dtrace_jhelper.o, resulting in "warning: symbol X has differing types"
- # This is tracked in JDK-6890703.
- $(DTRACE_JHELPER_OBJ): $(HOTSPOT_TOPDIR)/src/os/solaris/dtrace/jhelper.d \
- $(JVM_OFFSETS_INDEX_H)
- $(call LogInfo, Running dtrace for $(<F))
- $(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) $(DTRACE_CPP_FLAGS) -C \
- -I$(DTRACE_SUPPORT_DIR) -o $@ -s $<)
-
- # NOTE: We should really do something like this, but unfortunately this
- # results in a compilation error. :-(
- # $(call MakeDir, $(DTRACE_SUPPORT_DIR))
- # $(call ExecuteWithLog, $(DTRACE_SUPPORT_DIR)/$(@F).d, $(CC) -E \
- # $(DTRACE_CPP_FLAGS) -I$(DTRACE_SUPPORT_DIR) $^ \
- # > $(DTRACE_SUPPORT_DIR)/$(@F).d)
- # $(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) -o $@ \
- # -s $(DTRACE_SUPPORT_DIR)/$(@F).d)
-
- ############################################################################
- # Build the stand-alone dtrace libraries
-
- LIBJVM_DTRACE_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/libjvm_dtrace
-
- $(eval $(call SetupNativeCompilation, BUILD_LIBJVM_DTRACE, \
- LIBRARY := jvm_dtrace, \
- OUTPUT_DIR := $(LIBJVM_DTRACE_OUTPUTDIR), \
- SRC := $(HOTSPOT_TOPDIR)/src/os/solaris/dtrace, \
- INCLUDE_FILES := jvm_dtrace.c, \
- CFLAGS := -m64 -G -mt -KPIC, \
- LDFLAGS := -m64 -mt -xnolib $(SHARED_LIBRARY_FLAGS), \
- LIBS := $(LIBDL) -lc -lthread -ldoor, \
- MAPFILE := $(HOTSPOT_TOPDIR)/makefiles/mapfiles/libjvm_dtrace/mapfile-vers, \
- OBJECT_DIR := $(LIBJVM_DTRACE_OUTPUTDIR)/objs, \
- STRIP_SYMBOLS := true, \
- ))
-
- LIBJVM_DB_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/libjvm_db
-
- # Note that libjvm_db.c has tests for COMPILER2, but this was never set by
- # the old build.
- $(eval $(call SetupNativeCompilation, BUILD_LIBJVM_DB, \
- LIBRARY := jvm_db, \
- OUTPUT_DIR := $(LIBJVM_DB_OUTPUTDIR), \
- SRC := $(HOTSPOT_TOPDIR)/src/os/solaris/dtrace, \
- INCLUDE_FILES := libjvm_db.c, \
- CFLAGS := -I$(JVM_VARIANT_OUTPUTDIR)/gensrc -I$(DTRACE_SUPPORT_DIR) \
- -m64 -G -mt -KPIC, \
- LDFLAGS := -m64 -mt -xnolib $(SHARED_LIBRARY_FLAGS), \
- LIBS := -lc, \
- MAPFILE := $(HOTSPOT_TOPDIR)/makefiles/mapfiles/libjvm_db/mapfile-vers, \
- OBJECT_DIR := $(LIBJVM_DB_OUTPUTDIR)/objs, \
- STRIP_SYMBOLS := true, \
- ))
-
- # We need the generated JvmOffsets.h before we can compile the libjvm_db source code.
- $(BUILD_LIBJVM_DB_ALL_OBJS): $(JVM_OFFSETS_H)
-
- TARGETS += $(BUILD_LIBJVM_DTRACE) $(BUILD_LIBJVM_DB)
- endif
-endif
--- a/hotspot/makefiles/lib/CompileDtracePreJvm.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-
-ifeq ($(call check-jvm-feature, dtrace), true)
- ifeq ($(OPENJDK_TARGET_OS), solaris)
- # These files are are generated by CompileDtrace.gmk but consumed by
- # CompileJvm.gmk
- DTRACE_OBJ := $(JVM_OUTPUTDIR)/objs/dtrace.o
- DTRACE_JHELPER_OBJ := $(JVM_OUTPUTDIR)/objs/dtrace_jhelper.o
- JVM_OFFSETS_OBJ := $(JVM_OUTPUTDIR)/objs/JvmOffsets.o
-
- DTRACE_EXTRA_OBJECT_FILES := $(DTRACE_OBJ) $(DTRACE_JHELPER_OBJ) $(JVM_OFFSETS_OBJ)
- endif
-endif
--- a/hotspot/makefiles/lib/CompileJvm.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,242 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-# Include support files that will setup compiler flags due to the selected
-# jvm feature set, and specific file overrides.
-include lib/JvmFeatures.gmk
-include lib/JvmOverrideFiles.gmk
-
-$(eval $(call IncludeCustomExtension, hotspot, lib/CompileJvm.gmk))
-
-################################################################################
-# Setup compilation of the main Hotspot native library (libjvm).
-
-JVM_OUTPUTDIR := $(JVM_VARIANT_OUTPUTDIR)/libjvm
-JVM_MAPFILE := $(JVM_OUTPUTDIR)/mapfile
-
-################################################################################
-# Platform independent setup
-
-# This variable may be added to by a custom extension
-JVM_SRC_ROOTS += $(HOTSPOT_TOPDIR)/src
-
-JVM_SRC_DIRS += $(call uniq, $(wildcard $(foreach d, $(JVM_SRC_ROOTS), \
- $d/share/vm \
- $d/os/$(HOTSPOT_TARGET_OS)/vm \
- $d/os/$(HOTSPOT_TARGET_OS_TYPE)/vm \
- $d/cpu/$(HOTSPOT_TARGET_CPU_ARCH)/vm \
- $d/os_cpu/$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU_ARCH)/vm \
- ))) \
- $(JVM_VARIANT_OUTPUTDIR)/gensrc/jvmtifiles \
- $(JVM_VARIANT_OUTPUTDIR)/gensrc/tracefiles \
- #
-
-JVM_CFLAGS_INCLUDES += \
- $(patsubst %,-I%,$(filter-out $(JVM_VARIANT_OUTPUTDIR)/gensrc/%, $(JVM_SRC_DIRS))) \
- -I$(JVM_VARIANT_OUTPUTDIR)/gensrc \
- -I$(HOTSPOT_TOPDIR)/src/share/vm/precompiled \
- -I$(HOTSPOT_TOPDIR)/src/share/vm/prims \
- #
-
-JVM_CFLAGS_TARGET_DEFINES += \
- -DTARGET_OS_FAMILY_$(HOTSPOT_TARGET_OS) \
- -DTARGET_ARCH_MODEL_$(HOTSPOT_TARGET_CPU) \
- -DTARGET_ARCH_$(HOTSPOT_TARGET_CPU_ARCH) \
- -DTARGET_OS_ARCH_MODEL_$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU) \
- -DTARGET_OS_ARCH_$(HOTSPOT_TARGET_OS)_$(HOTSPOT_TARGET_CPU_ARCH) \
- -DTARGET_COMPILER_$(HOTSPOT_TOOLCHAIN_TYPE) \
- -D$(HOTSPOT_TARGET_CPU_DEFINE) \
- -DHOTSPOT_LIB_ARCH='"$(OPENJDK_TARGET_CPU_LEGACY_LIB)"' \
- #
-
-ifeq ($(DEBUG_LEVEL), release)
- # For hotspot, release builds differ internally between "optimized" and "product"
- # in that "optimize" does not define PRODUCT.
- ifneq ($(HOTSPOT_DEBUG_LEVEL), optimized)
- JVM_CFLAGS_DEBUGLEVEL := -DPRODUCT
- endif
-else ifeq ($(DEBUG_LEVEL), fastdebug)
- JVM_CFLAGS_DEBUGLEVEL := -DASSERT
- ifeq ($(filter $(OPENJDK_TARGET_OS), windows aix), )
- # NOTE: Old build did not define CHECK_UNHANDLED_OOPS on Windows and AIX.
- JVM_CFLAGS_DEBUGLEVEL += -DCHECK_UNHANDLED_OOPS
- endif
-else ifeq ($(DEBUG_LEVEL), slowdebug)
- # _NMT_NOINLINE_ informs NMT that no inlining is done by the compiler
- JVM_CFLAGS_DEBUGLEVEL := -DASSERT -D_NMT_NOINLINE_
-endif
-
-JVM_CFLAGS += \
- $(JVM_CFLAGS_DEBUGLEVEL) \
- $(JVM_CFLAGS_TARGET_DEFINES) \
- $(JVM_CFLAGS_FEATURES) \
- $(JVM_CFLAGS_INCLUDES) \
- $(EXTRA_CFLAGS) \
- #
-
-JVM_LDFLAGS += \
- $(SHARED_LIBRARY_FLAGS) \
- $(JVM_LDFLAGS_FEATURES) \
- $(EXTRA_LDFLAGS) \
- #
-
-JVM_LIBS += \
- $(JVM_LIBS_FEATURES) \
- #
-
-# These files and directories are always excluded
-JVM_EXCLUDE_FILES += jsig.c jvmtiEnvRecommended.cpp jvmtiEnvStub.cpp args.cc
-JVM_EXCLUDES += adlc
-
-# Needed by vm_version.cpp
-ifeq ($(OPENJDK_TARGET_CPU), x86_64)
- OPENJDK_TARGET_CPU_VM_VERSION := amd64
-else ifeq ($(OPENJDK_TARGET_CPU), sparcv9)
- OPENJDK_TARGET_CPU_VM_VERSION := sparc
-else
- OPENJDK_TARGET_CPU_VM_VERSION := $(OPENJDK_TARGET_CPU)
-endif
-
-CFLAGS_VM_VERSION := \
- $(VERSION_CFLAGS) \
- -DHOTSPOT_VERSION_STRING='"$(VERSION_STRING)"' \
- -DDEBUG_LEVEL='"$(DEBUG_LEVEL)"' \
- -DHOTSPOT_BUILD_USER='"$(USERNAME)"' \
- -DHOTSPOT_VM_DISTRO='"$(HOTSPOT_VM_DISTRO)"' \
- -DCPU='"$(OPENJDK_TARGET_CPU_VM_VERSION)"' \
- #
-
-# -DDONT_USE_PRECOMPILED_HEADER will exclude all includes in precompiled.hpp.
-ifeq ($(USE_PRECOMPILED_HEADER), 0)
- JVM_CFLAGS += -DDONT_USE_PRECOMPILED_HEADER
-endif
-
-################################################################################
-# Platform specific setup
-
-ifneq ($(filter $(OPENJDK_TARGET_OS), linux macosx windows), )
- JVM_PRECOMPILED_HEADER := $(HOTSPOT_TOPDIR)/src/share/vm/precompiled/precompiled.hpp
-endif
-
-ifneq ($(filter $(OPENJDK_TARGET_OS), macosx aix solaris), )
- # On macosx, aix and solaris we have to link with the C++ compiler
- JVM_TOOLCHAIN := TOOLCHAIN_LINK_CXX
-else
- JVM_TOOLCHAIN := TOOLCHAIN_DEFAULT
-endif
-
-ifeq ($(OPENJDK_TARGET_CPU), x86)
- JVM_EXCLUDE_PATTERNS += x86_64
-else ifeq ($(OPENJDK_TARGET_CPU), x86_64)
- JVM_EXCLUDE_PATTERNS += x86_32
-endif
-
-# Inline assembly for solaris
-ifeq ($(OPENJDK_TARGET_OS), solaris)
- ifeq ($(OPENJDK_TARGET_CPU), x86_64)
- JVM_CFLAGS += $(HOTSPOT_TOPDIR)/src/os_cpu/solaris_x86/vm/solaris_x86_64.il
- else ifeq ($(OPENJDK_TARGET_CPU), sparcv9)
- JVM_CFLAGS += $(HOTSPOT_TOPDIR)/src/os_cpu/solaris_sparc/vm/solaris_sparc.il
- endif
-endif
-
-ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), solaris-sparcv9)
- ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), false)
- # NOTE: In the old build, we weirdly enough set -g/-g0 always, regardless
- # of if debug symbols were needed. Without it, compilation fails on
- # sparc! :-(
- JVM_CFLAGS += -g0
- endif
-endif
-
-ifeq ($(OPENJDK_TARGET_OS), windows)
- ifeq ($(OPENJDK_TARGET_CPU_BITS), 64)
- RC_DESC := 64-Bit$(SPACE)
- endif
- JVM_RCFLAGS += -D"HS_FILEDESC=$(HOTSPOT_VM_DISTRO) $(RC_DESC)$(JVM_VARIANT) VM"
-endif
-
-ifeq ($(OPENJDK_TARGET_OS), macosx)
- # NOTE: The old build did not strip binaries on macosx.
- JVM_STRIP_SYMBOLS := false
-else
- JVM_STRIP_SYMBOLS := true
-endif
-
-JVM_OPTIMIZATION ?= HIGHEST_JVM
-
-################################################################################
-# Now set up the actual compilation of the main hotspot native library
-
-$(eval $(call SetupNativeCompilation, BUILD_LIBJVM, \
- TOOLCHAIN := $(JVM_TOOLCHAIN), \
- LIBRARY := jvm, \
- OUTPUT_DIR := $(JVM_OUTPUTDIR), \
- SRC := $(JVM_SRC_DIRS), \
- EXCLUDES := $(JVM_EXCLUDES), \
- EXCLUDE_FILES := $(JVM_EXCLUDE_FILES), \
- EXCLUDE_PATTERNS := $(JVM_EXCLUDE_PATTERNS), \
- EXTRA_OBJECT_FILES := $(DTRACE_EXTRA_OBJECT_FILES), \
- CFLAGS := $(JVM_CFLAGS), \
- CFLAGS_DEBUG_SYMBOLS := $(JVM_CFLAGS_SYMBOLS), \
- CXXFLAGS_DEBUG_SYMBOLS := $(JVM_CFLAGS_SYMBOLS), \
- vm_version.cpp_CXXFLAGS := $(CFLAGS_VM_VERSION), \
- DISABLED_WARNINGS_clang := delete-non-virtual-dtor dynamic-class-memaccess \
- empty-body format logical-op-parentheses parentheses \
- parentheses-equality switch tautological-compare, \
- DISABLED_WARNINGS_xlc := 1540-0216 1540-0198 1540-1090 1540-1639 \
- 1540-1088 1500-010, \
- ASFLAGS := $(JVM_ASFLAGS), \
- LDFLAGS := $(JVM_LDFLAGS), \
- LIBS := $(JVM_LIBS), \
- OPTIMIZATION := $(JVM_OPTIMIZATION), \
- OBJECT_DIR := $(JVM_OUTPUTDIR)/objs, \
- MAPFILE := $(JVM_MAPFILE), \
- USE_MAPFILE_FOR_SYMBOLS := true, \
- STRIP_SYMBOLS := $(JVM_STRIP_SYMBOLS), \
- EMBED_MANIFEST := true, \
- RC_FLAGS := $(JVM_RCFLAGS), \
- VERSIONINFO_RESOURCE := $(HOTSPOT_TOPDIR)/src/os/windows/vm/version.rc, \
- PRECOMPILED_HEADER := $(JVM_PRECOMPILED_HEADER), \
- PRECOMPILED_HEADER_EXCLUDE := $(JVM_PRECOMPILED_HEADER_EXCLUDE), \
-))
-
-# AIX warning explanation:
-# 1500-010 : (W) WARNING in ...: Infinite loop. Program may not stop.
-# There are several infinite loops in the vm, so better suppress.
-# 1540-0198 : (W) The omitted keyword "private" is assumed for base class "...".
-# 1540-0216 : (W) An expression of type .. cannot be converted to type ..
-# In hotspot this fires for functionpointer to pointer conversions
-# 1540-1088 : (W) The exception specification is being ignored.
-# In hotspot this is caused by throw() in declaration of new() in nmethod.hpp.
-# 1540-1090 : (I) The destructor of "..." might not be called.
-# 1540-1639 : (I) The behavior of long type bit fields has changed ...
-
-# Include mapfile generation. It relies on BUILD_LIBJVM_ALL_OBJS which is only
-# defined after the above call to BUILD_LIBJVM. Mapfile will be generated
-# after all object files are built, but before the jvm library is linked.
-include lib/JvmMapfile.gmk
-
-TARGETS += $(BUILD_LIBJVM)
--- a/hotspot/makefiles/lib/CompileLibjsig.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,106 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-################################################################################
-# Create the libjsig.so shared library
-
-default: all
-
-include $(SPEC)
-include MakeBase.gmk
-include NativeCompilation.gmk
-
-ifneq ($(OPENJDK_TARGET_OS), windows)
- ifeq ($(STATIC_BUILD), false)
- LIBJSIG_STRIP_SYMBOLS := true
- ifeq ($(OPENJDK_TARGET_OS), linux)
- LIBJSIG_CFLAGS := -fPIC -D_GNU_SOURCE -D_REENTRANT $(EXTRA_CFLAGS)
- LIBJSIG_LDFLAGS := $(LDFLAGS_HASH_STYLE) $(EXTRA_CFLAGS)
- LIBJSIG_LIBS := $(LIBDL)
-
- # NOTE: The old build compiled this library without -soname.
- # To emulate this, we need to clear out SET_SHARED_LIBRARY_NAME.
- SET_SHARED_LIBRARY_NAME :=
-
- # Flags for other CPUs can be provided in EXTRA_CFLAGS
- ifeq ($(OPENJDK_TARGET_CPU), x86_64)
- LIBJSIG_CPU_FLAGS := -m64
- else ifeq ($(OPENJDK_TARGET_CPU), x86)
- LIBJSIG_CPU_FLAGS := -m32 -march=i586
- endif
-
- else ifeq ($(OPENJDK_TARGET_OS), solaris)
- LIBJSIG_CFLAGS := -m64 -KPIC -mt
- LIBJSIG_LDFLAGS := -m64 -mt -xnolib
- LIBJSIG_LIBS := $(LIBDL)
-
- # NOTE: The old build compiled this library without -soname.
- # To emulate this, we need to clear out SET_SHARED_LIBRARY_NAME.
- SET_SHARED_LIBRARY_NAME :=
-
- else ifeq ($(OPENJDK_TARGET_OS), aix)
- LIBJSIG_CFLAGS := -q64 -D_GNU_SOURCE -D_REENTRANT -qpic=large
- LIBJSIG_LDFLAGS := -b64 -bexpall -G -bnoentry -qmkshrobj -brtl -bnolibpath -bernotok
- LIBJSIG_LIBS := $(LIBDL)
-
- # NOTE: The old build compiled this library without -soname.
- # To emulate this, we need to clear out SET_SHARED_LIBRARY_NAME.
- SET_SHARED_LIBRARY_NAME :=
-
- else ifeq ($(OPENJDK_TARGET_OS), macosx)
- LIBJSIG_CFLAGS := -m64 -D_GNU_SOURCE -pthread -mno-omit-leaf-frame-pointer -mstack-alignment=16 -fPIC
- LIBJSIG_LDFLAGS := $(LDFLAGS_HASH_STYLE)
- # NOTE: This lib is not stripped on macosx in old build. Looks like a mistake.
- LIBJSIG_STRIP_SYMBOLS := false
- else
- $(error Unknown target OS $(OPENJDK_TARGET_OS) in CompileLibjsig.gmk)
- endif
-
- LIBJSIG_SRC_FILE := $(HOTSPOT_TOPDIR)/src/os/$(HOTSPOT_TARGET_OS)/vm/jsig.c
- LIBJSIG_MAPFILE := $(wildcard $(HOTSPOT_TOPDIR)/makefiles/mapfiles/libjsig/mapfile-vers-$(OPENJDK_TARGET_OS))
- LIBJSIG_OUTPUTDIR := $(HOTSPOT_OUTPUTDIR)/libjsig
-
- LIBJSIG_LDFLAGS += $(SHARED_LIBRARY_FLAGS)
-
- $(eval $(call SetupNativeCompilation, BUILD_LIBJSIG, \
- LIBRARY := jsig, \
- EXTRA_FILES := $(LIBJSIG_SRC_FILE), \
- OUTPUT_DIR := $(LIBJSIG_OUTPUTDIR), \
- LANG := C, \
- CFLAGS := $(LIBJSIG_CFLAGS) $(LIBJSIG_CPU_FLAGS), \
- LDFLAGS := $(LIBJSIG_LDFLAGS) $(LIBJSIG_CPU_FLAGS), \
- LIBS := $(LIBJSIG_LIBS), \
- MAPFILE := $(LIBJSIG_MAPFILE), \
- OBJECT_DIR := $(LIBJSIG_OUTPUTDIR)/objs, \
- STRIP_SYMBOLS := $(LIBJSIG_STRIP_SYMBOLS), \
- ))
-
- TARGETS += $(BUILD_LIBJSIG)
- endif
-endif
-
-all: $(TARGETS)
-
-.PHONY: all
--- a/hotspot/makefiles/lib/CompileLibraries.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-default: all
-
-include $(SPEC)
-include MakeBase.gmk
-include NativeCompilation.gmk
-
-include HotspotCommon.gmk
-
-# The dtrace setup must be done both before and after CompileJvm.gmk, due to
-# intricate dependencies.
-include lib/CompileDtracePreJvm.gmk
-include lib/CompileJvm.gmk
-include lib/CompileDtracePostJvm.gmk
-
-all: $(TARGETS)
-
-.PHONY: all
--- a/hotspot/makefiles/lib/JvmFeatures.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,144 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-$(eval $(call IncludeCustomExtension, hotspot, lib/JvmFeatures.gmk))
-
-################################################################################
-# Setup CFLAGS and EXCLUDES for the libjvm compilation, depending on which
-# jvm features are selected for this jvm variant.
-
-ifeq ($(call check-jvm-feature, compiler1), true)
- JVM_CFLAGS_FEATURES += -DCOMPILER1
-else
- JVM_EXCLUDE_PATTERNS += c1_
-endif
-
-ifeq ($(call check-jvm-feature, compiler2), true)
- JVM_CFLAGS_FEATURES += -DCOMPILER2
- JVM_SRC_DIRS += $(JVM_VARIANT_OUTPUTDIR)/gensrc/adfiles
-else
- JVM_EXCLUDES += opto libadt
- JVM_EXCLUDE_FILES += bcEscapeAnalyzer.cpp ciTypeFlow.cpp
- JVM_EXCLUDE_PATTERNS += c2_ runtime_
-endif
-
-ifeq ($(call check-jvm-feature, zero), true)
- JVM_CFLAGS_FEATURES += -DZERO -DCC_INTERP -DZERO_LIBARCH='"$(OPENJDK_TARGET_CPU_LEGACY_LIB)"' $(LIBFFI_CFLAGS)
- JVM_LIBS_FEATURES += $(LIBFFI_LIBS)
-endif
-
-ifeq ($(call check-jvm-feature, shark), true)
- JVM_CFLAGS_FEATURES += -DSHARK $(LLVM_CFLAGS)
- JVM_LDFLAGS_FEATURES += $(LLVM_LDFLAGS)
- JVM_LIBS_FEATURES += $(LLVM_LIBS)
-else
- JVM_EXCLUDES += shark
-endif
-
-ifeq ($(call check-jvm-feature, minimal), true)
- JVM_CFLAGS_FEATURES += -DMINIMAL_JVM -DVMTYPE=\"Minimal\"
-endif
-
-ifeq ($(call check-jvm-feature, dtrace), true)
- JVM_CFLAGS_FEATURES += -DDTRACE_ENABLED
-endif
-
-ifeq ($(call check-jvm-feature, static-build), true)
- JVM_CFLAGS_FEATURES += -DSTATIC_BUILD=1
-endif
-
-ifneq ($(call check-jvm-feature, jvmti), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_JVMTI=0
- JVM_EXCLUDE_FILES += jvmtiGetLoadedClasses.cpp jvmtiThreadState.cpp jvmtiExtensions.cpp \
- jvmtiImpl.cpp jvmtiManageCapabilities.cpp jvmtiRawMonitor.cpp jvmtiUtil.cpp jvmtiTrace.cpp \
- jvmtiCodeBlobEvents.cpp jvmtiEnv.cpp jvmtiRedefineClasses.cpp jvmtiEnvBase.cpp jvmtiEnvThreadState.cpp \
- jvmtiTagMap.cpp jvmtiEventController.cpp evmCompat.cpp jvmtiEnter.xsl jvmtiExport.cpp \
- jvmtiClassFileReconstituter.cpp
-endif
-
-ifneq ($(call check-jvm-feature, jvmci), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_JVMCI=0
- JVM_EXCLUDES += jvmci
- JVM_EXCLUDE_FILES += jvmciCodeInstaller_$(HOTSPOT_TARGET_CPU_ARCH).cpp
-endif
-
-ifneq ($(call check-jvm-feature, fprof), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_FPROF=0
- JVM_EXCLUDE_FILES += fprofiler.cpp
-endif
-
-ifneq ($(call check-jvm-feature, vm-structs), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_VM_STRUCTS=0
- JVM_EXCLUDE_FILES += vmStructs.cpp
-endif
-
-ifneq ($(call check-jvm-feature, jni-check), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_JNI_CHECK=0
- JVM_EXCLUDE_FILES += jniCheck.cpp
-endif
-
-ifneq ($(call check-jvm-feature, services), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_SERVICES=0
- JVM_EXCLUDE_FILES += heapDumper.cpp heapInspection.cpp \
- attachListener_$(HOTSPOT_TARGET_OS).cpp attachListener.cpp
-endif
-
-ifneq ($(call check-jvm-feature, management), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_MANAGEMENT=0
-endif
-
-ifneq ($(call check-jvm-feature, cds), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_CDS=0
- JVM_EXCLUDE_FILES += \
- classListParser.cpp \
- classLoaderExt.cpp \
- filemap.cpp \
- metaspaceShared.cpp \
- metaspaceShared_$(HOTSPOT_TARGET_CPU).cpp \
- metaspaceShared_$(HOTSPOT_TARGET_CPU_ARCH).cpp \
- sharedClassUtil.cpp \
- sharedPathsMiscInfo.cpp \
- systemDictionaryShared.cpp \
- #
-endif
-
-ifneq ($(call check-jvm-feature, all-gcs), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_ALL_GCS=0
- JVM_EXCLUDE_PATTERNS += \
- cms/ g1/ parallel/
- JVM_EXCLUDE_FILES += \
- concurrentGCThread.cpp \
- plab.cpp
- JVM_EXCLUDE_FILES += \
- g1MemoryPool.cpp \
- psMemoryPool.cpp
-endif
-
-ifneq ($(call check-jvm-feature, nmt), true)
- JVM_CFLAGS_FEATURES += -DINCLUDE_NMT=0
- JVM_EXCLUDE_FILES += \
- memBaseline.cpp memReporter.cpp mallocTracker.cpp virtualMemoryTracker.cpp nmtCommon.cpp \
- memTracker.cpp nmtDCmd.cpp mallocSiteTable.cpp
-endif
--- a/hotspot/makefiles/lib/JvmMapfile.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,172 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-$(eval $(call IncludeCustomExtension, hotspot, lib/JvmMapfile.gmk))
-
-################################################################################
-# Combine a list of static symbols
-
-ifneq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), windows-x86_64)
- # On Windows x86_64, we should not have any symbols at all, since that
- # results in duplicate warnings from the linker (JDK-8043491).
- SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/makefiles/symbols/symbols-shared
-endif
-
-ifeq ($(OPENJDK_TARGET_OS_TYPE), unix)
- SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/makefiles/symbols/symbols-unix
-endif
-
-ifneq ($(wildcard $(HOTSPOT_TOPDIR)/makefiles/symbols/symbols-$(OPENJDK_TARGET_OS)), )
- SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/makefiles/symbols/symbols-$(OPENJDK_TARGET_OS)
-endif
-
-ifneq ($(findstring debug, $(DEBUG_LEVEL)), )
- ifneq ($(wildcard $(HOTSPOT_TOPDIR)/makefiles/symbols/symbols-$(OPENJDK_TARGET_OS)-debug), )
- SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/makefiles/symbols/symbols-$(OPENJDK_TARGET_OS)-debug
- endif
-endif
-
-ifeq ($(OPENJDK_TARGET_OS), solaris)
- ifeq ($(call check-jvm-feature, dtrace), true)
- # Additional mapfiles that are only used when dtrace is enabled
- ifeq ($(call check-jvm-feature, compiler2), true)
- # This also covers the case of compiler1+compiler2.
- SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/makefiles/symbols/symbols-solaris-dtrace-compiler2
- else ifeq ($(call check-jvm-feature, compiler1), true)
- SYMBOLS_SRC += $(HOTSPOT_TOPDIR)/makefiles/symbols/symbols-solaris-dtrace-compiler1
- endif
- endif
-endif
-
-################################################################################
-# Create a dynamic list of symbols from the built object files. This is highly
-# platform dependent.
-
-ifeq ($(OPENJDK_TARGET_OS), linux)
- DUMP_SYMBOLS_CMD := $(NM) --defined-only *.o
- ifneq ($(FILTER_SYMBOLS_PATTERN), )
- FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
- endif
- FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^_ZTV|^gHotSpotVM|^UseSharedSpaces$$
- FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^_ZN9Arguments17SharedArchivePathE$$
- FILTER_SYMBOLS_AWK_SCRIPT := \
- '{ \
- if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
- }'
-
-else ifeq ($(OPENJDK_TARGET_OS), solaris)
- DUMP_SYMBOLS_CMD := $(NM) -p *.o
- ifneq ($(FILTER_SYMBOLS_PATTERN), )
- FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
- endif
- FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^__1c.*__vtbl_$$|^gHotSpotVM
- FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^UseSharedSpaces$$
- FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|^__1cJArgumentsRSharedArchivePath_$$
- FILTER_SYMBOLS_AWK_SCRIPT := \
- '{ \
- if ($$2 == "U") next; \
- if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
- }'
-
-else ifeq ($(OPENJDK_TARGET_OS), macosx)
- # nm on macosx prints out "warning: nm: no name list" to stderr for
- # files without symbols. Hide this, even at the expense of hiding real errors.
- DUMP_SYMBOLS_CMD := $(NM) -Uj *.o 2> /dev/null
- ifneq ($(FILTER_SYMBOLS_PATTERN), )
- FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
- endif
- FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)^_ZTV|^gHotSpotVM
- FILTER_SYMBOLS_AWK_SCRIPT := \
- '{ \
- if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
- }'
-
-# NOTE: The script is from the old build. It is broken and finds no symbols.
-# The script below might be what was intended, but it failes to link with tons
-# of 'cannot export hidden symbol vtable for X'.
-# '{ if ($$1 ~ /^__ZTV/ || $$1 ~ /^_gHotSpotVM/) print substr($$1, 2) }'
-else ifeq ($(OPENJDK_TARGET_OS), aix)
- # NOTE: The old build had the solution below. This should to be fixed in
- # configure instead.
-
- # On AIX we have to prevent that we pick up the 'nm' version from the GNU binutils
- # which may be installed under /opt/freeware/bin. So better use an absolute path here!
- # NM=/usr/bin/nm
-
- DUMP_SYMBOLS_CMD := $(NM) -X64 -B -C *.o
- FILTER_SYMBOLS_AWK_SCRIPT := \
- '{ \
- if (($$2="d" || $$2="D") && ($$3 ~ /^__vft/ || $$3 ~ /^gHotSpotVM/)) print $$3; \
- if ($$3 ~ /^UseSharedSpaces$$/) print $$3; \
- if ($$3 ~ /^SharedArchivePath__9Arguments$$/) print $$3; \
- }'
-
-else ifeq ($(OPENJDK_TARGET_OS), windows)
- DUMP_SYMBOLS_CMD := $(DUMPBIN) -symbols *.obj
- FILTER_SYMBOLS_AWK_SCRIPT := \
- '{ \
- if ($$7 ~ /??_7.*@@6B@/ && $$7 !~ /type_info/) print $$7; \
- }'
-
-else
- $(error Unknown target OS $(OPENJDK_TARGET_OS) in JvmMapfile.gmk)
-endif
-
-# A more correct solution would be to send BUILD_LIBJVM_ALL_OBJS instead of
-# cd && *.o, but this will result in very long command lines, which is
-# problematic on some platforms.
-$(JVM_OUTPUTDIR)/symbols-objects: $(BUILD_LIBJVM_ALL_OBJS)
- $(call LogInfo, Generating symbol list from object files)
- $(CD) $(JVM_OUTPUTDIR)/objs && \
- $(DUMP_SYMBOLS_CMD) | $(NAWK) $(FILTER_SYMBOLS_AWK_SCRIPT) | $(SORT) -u > $@
-
-SYMBOLS_SRC += $(JVM_OUTPUTDIR)/symbols-objects
-
-################################################################################
-# Now concatenate all symbol lists into a single file and remove comments.
-
-$(JVM_OUTPUTDIR)/symbols: $(SYMBOLS_SRC)
- $(SED) -e '/^#/d' $^ > $@
-
-################################################################################
-# Finally convert the symbol list into a platform-specific mapfile
-
-$(JVM_MAPFILE): $(JVM_OUTPUTDIR)/symbols
- $(call LogInfo, Creating mapfile)
- $(RM) $@
- ifeq ($(OPENJDK_TARGET_OS), macosx)
- # On macosx, we need to add a leading underscore
- $(AWK) '{ if ($$0 ~ ".") { print " _" $$0 } }' < $^ > $@.tmp
- else ifeq ($(OPENJDK_TARGET_OS), windows)
- # On windows, add an 'EXPORTS' header
- $(ECHO) "EXPORTS" > $@.tmp
- $(AWK) '{ if ($$0 ~ ".") { print " " $$0 } }' < $^ >> $@.tmp
- else
- # Assume standard linker script
- $(PRINTF) "SUNWprivate_1.1 { \n global: \n" > $@.tmp
- $(AWK) '{ if ($$0 ~ ".") { print " " $$0 ";" } }' < $^ >> $@.tmp
- $(PRINTF) " local: \n *; \n }; \n" >> $@.tmp
- endif
- $(MV) $@.tmp $@
--- a/hotspot/makefiles/lib/JvmOverrideFiles.gmk Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,168 +0,0 @@
-#
-# Copyright (c) 2013, 2016, 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.
-#
-
-$(eval $(call IncludeCustomExtension, hotspot, lib/JvmOverrideFiles.gmk))
-
-################################################################################
-# This file contains explicit overrides of CFLAGS and/or precompiled header
-# status for individual files on specific platforms.
-
-ifeq ($(TOOLCHAIN_TYPE), gcc)
- BUILD_LIBJVM_vmStructs.cpp_CXXFLAGS := -fno-var-tracking-assignments -O0
-endif
-
-ifeq ($(OPENJDK_TARGET_OS), linux)
- BUILD_LIBJVM_ostream.cpp_CXXFLAGS := -D_FILE_OFFSET_BITS=64
-
- ifeq ($(OPENJDK_TARGET_CPU_ARCH), x86)
- BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := -DNO_PCH $(CXX_O_FLAG_NONE)
- BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := -DNO_PCH $(CXX_O_FLAG_NONE)
-
- ifeq ($(TOOLCHAIN_TYPE), clang)
- JVM_PRECOMPILED_HEADER_EXCLUDE := \
- sharedRuntimeTrig.cpp \
- sharedRuntimeTrans.cpp \
- #
- endif
- endif
-
- ifeq ($(OPENJDK_TARGET_CPU), x86)
- # Performance measurements show that by compiling GC related code, we could
- # significantly reduce the GC pause time on 32 bit Linux/Unix platforms by
- # compiling without the PIC flag (-fPIC on linux).
- # See 6454213 for more details.
- ALL_SRC := $(filter %.cpp, $(call CacheFind, $(HOTSPOT_TOPDIR)/src/share/vm))
- NONPIC_FILTER := $(addsuffix %, $(addprefix $(HOTSPOT_TOPDIR)/src/share/vm/, \
- memory oops gc))
- # Due to what looks like a bug in the old build implementation of this, add a
- # couple of more files that were accidentally matched as substrings of GC related
- # files.
- NONPIC_SRC := $(filter $(NONPIC_FILTER), $(ALL_SRC)) globals.cpp location.cpp
- # Declare variables for each source file that needs the pic flag like this:
- # BUILD_JVM_<srcfile>_CXXFLAGS := -fno-PIC
- # This will get implicitly picked up by SetupNativeCompilation below.
- $(foreach s, $(NONPIC_SRC), $(eval BUILD_LIBJVM_$(notdir $s)_CXXFLAGS := -fno-PIC))
- endif
-
-else ifeq ($(OPENJDK_TARGET_OS), solaris)
- ifneq ($(DEBUG_LEVEL), slowdebug)
- # Workaround for a bug in dtrace. If ciEnv::post_compiled_method_load_event()
- # is inlined, the resulting dtrace object file needs a reference to this
- # function, whose symbol name is too long for dtrace. So disable inlining
- # for this method for now. (fix this when dtrace bug 6258412 is fixed)
- BUILD_LIBJVM_ciEnv.cpp_CXXFLAGS := \
- -xinline=no%__1cFciEnvbFpost_compiled_method_load_event6MpnHnmethod__v_
- # dtrace cannot handle tail call optimization (6672627, 6693876)
- BUILD_LIBJVM_jni.cpp_CXXFLAGS := -Qoption ube -O~yz
- BUILD_LIBJVM_stubGenerator_$(HOTSPOT_TARGET_CPU).cpp_CXXFLAGS := -xspace
-
- ifeq ($(OPENJDK_TARGET_CPU), x86_64)
- # Temporary until SS10 C++ compiler is fixed
- BUILD_LIBJVM_generateOptoStub.cpp_CXXFLAGS := -xO2
- # Temporary util SS12u1 C++ compiler is fixed
- BUILD_LIBJVM_c1_LinearScan.cpp_CXXFLAGS := -xO2
- endif
- endif
-
- # Need extra inlining to get oop_ps_push_contents functions to perform well enough.
- ifeq ($(DEBUG_LEVEL),release)
- BUILD_LIBJVM_psPromotionManager.cpp_CXXFLAGS := -W2,-Ainline:inc=1000
- endif
-
- ifeq ($(DEBUG_LEVEL), fastdebug)
- # this hangs in iropt now (7113504)
- BUILD_LIBJVM_compileBroker.cpp_CXXFLAGS := -xO2
-
- # Frame size > 100k if we allow inlining via -g0!
- BUILD_LIBJVM_bytecodeInterpreter.cpp_CXXFLAGS := +d
- BUILD_LIBJVM_bytecodeInterpreterWithChecks.cpp_CXXFLAGS := +d
-
- ifeq ($(OPENJDK_TARGET_CPU_ARCH), x86)
- # ube explodes on x86
- BUILD_LIBJVM_bytecodeInterpreter.cpp_CXXFLAGS += -xO1
- BUILD_LIBJVM_bytecodeInterpreterWithChecks.cpp_CXXFLAGS += -xO1
- endif
-
- endif
-
-else ifeq ($(OPENJDK_TARGET_OS), macosx)
- # The copied fdlibm routines in these files must not be optimized
- BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
- BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
- ifeq ($(TOOLCHAIN_TYPE), clang)
- # NOTE: The old build tested clang version to make sure this workaround
- # for the clang bug was still needed.
- BUILD_LIBJVM_loopTransform.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
- ifneq ($(DEBUG_LEVEL), slowdebug)
- BUILD_LIBJVM_unsafe.cpp_CXXFLAGS := -O1
- endif
-
- # The following files are compiled at various optimization
- # levels due to optimization issues encountered at the
- # default level. The Clang compiler issues a compile
- # time error if there is an optimization level specification
- # skew between the PCH file and the C++ file. Especially if the
- # PCH file is compiled at a higher optimization level than
- # the C++ file. One solution might be to prepare extra optimization
- # level specific PCH files for the opt build and use them here, but
- # it's probably not worth the effort as long as only a few files
- # need this special handling.
- JVM_PRECOMPILED_HEADER_EXCLUDE := \
- sharedRuntimeTrig.cpp \
- sharedRuntimeTrans.cpp \
- loopTransform.cpp \
- unsafe.cpp \
- jvmciCompilerToVM.cpp \
- #
- endif
-
-else ifeq ($(OPENJDK_TARGET_OS), aix)
- BUILD_LIBJVM_synchronizer.cpp_CXXFLAGS := -qnoinline
- BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
- # Disable aggressive optimizations for functions in sharedRuntimeTrig.cpp
- # and sharedRuntimeTrans.cpp on ppc64.
- # -qstrict turns off the following optimizations:
- # * Performing code motion and scheduling on computations such as loads
- # and floating-point computations that may trigger an exception.
- # * Relaxing conformance to IEEE rules.
- # * Reassociating floating-point expressions.
- # When using '-qstrict' there still remains one problem
- # in javasoft.sqe.tests.api.java.lang.Math.sin5Tests when run in compile-all
- # mode, so don't optimize sharedRuntimeTrig.cpp at all.
- BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
-
- # Disable ELF decoder on AIX (AIX uses XCOFF).
- JVM_EXCLUDE_PATTERNS += elf
-
-else ifeq ($(OPENJDK_TARGET_OS), windows)
- JVM_PRECOMPILED_HEADER_EXCLUDE := \
- bytecodeInterpreter.cpp \
- bytecodeInterpreterWithChecks.cpp \
- opcodes.cpp \
- os_windows.cpp \
- os_windows_x86.cpp \
- osThread_windows.cpp \
- #
-endif
--- a/hotspot/makefiles/mapfiles/libjsig/mapfile-vers-solaris Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-#
-# Copyright (c) 2005, 2013, 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.
-#
-# 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.
-#
-#
-
-# Define library interface.
-
-SUNWprivate_1.1 {
- global:
- JVM_begin_signal_setting;
- JVM_end_signal_setting;
- JVM_get_libjsig_version;
- JVM_get_signal_action;
- sigaction;
- signal;
- sigset;
- local:
- *;
-};
--- a/hotspot/makefiles/mapfiles/libjvm_db/mapfile-vers Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-#
-
-#
-# Copyright (c) 2005, 2008, 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.
-#
-# 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.
-#
-#
-
-# Define library interface.
-
-SUNWprivate_1.1 {
- global:
- Jagent_create;
- Jagent_destroy;
- Jframe_iter;
- #Jget_vframe;
- #Jlookup_by_regs;
- local:
- *;
-};
--- a/hotspot/makefiles/mapfiles/libjvm_dtrace/mapfile-vers Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-#
-
-#
-# Copyright (c) 2006, 2008, 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.
-#
-# 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.
-#
-#
-
-# Define library interface for JVM-DTrace interface
-
-SUNWprivate_1.1 {
- global:
- jvm_attach;
- jvm_get_last_error;
- jvm_enable_dtprobes;
- jvm_detach;
- local:
- *;
-};
--- a/hotspot/makefiles/symbols/symbols-aix Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-# 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.
-#
-
-JVM_handle_linux_signal
-numa_error
-numa_warn
-sysThreadAvailableStackWithSlack
--- a/hotspot/makefiles/symbols/symbols-aix-debug Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-# 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.
-#
-
-JVM_AccessVMBooleanFlag
-JVM_AccessVMIntFlag
-JVM_VMBreakPoint
--- a/hotspot/makefiles/symbols/symbols-linux Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-# 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.
-#
-
-JVM_handle_linux_signal
-numa_error
-numa_warn
-sysThreadAvailableStackWithSlack
--- a/hotspot/makefiles/symbols/symbols-macosx Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-# 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.
-#
-
-JVM_handle_bsd_signal
--- a/hotspot/makefiles/symbols/symbols-shared Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-# 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.
-#
-
-AsyncGetCallTrace
-jio_fprintf
-jio_printf
-jio_snprintf
-jio_vfprintf
-jio_vsnprintf
-JNI_CreateJavaVM
-JNI_GetCreatedJavaVMs
-JNI_GetDefaultJavaVMInitArgs
-JVM_FindClassFromBootLoader
-JVM_GetVersionInfo
-JVM_InitAgentProperties
--- a/hotspot/makefiles/symbols/symbols-solaris Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-# 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.
-#
-
-JVM_handle_solaris_signal
-sysThreadAvailableStackWithSlack
--- a/hotspot/makefiles/symbols/symbols-solaris-dtrace-compiler1 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-# 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.
-#
-
-__1cGMethodG__vtbl_
-__1cHnmethodG__vtbl_
-__1cICodeBlobG__vtbl_
-__1cIUniverseO_collectedHeap_
-__1cJCodeCacheG_heaps_
-__1cKBufferBlobG__vtbl_
-__1cLRuntimeStubG__vtbl_
-__1cNSafepointBlobG__vtbl_
-__1cSDeoptimizationBlobG__vtbl_
-
-__JvmOffsets
--- a/hotspot/makefiles/symbols/symbols-solaris-dtrace-compiler2 Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-# 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.
-#
-
-__1cGMethodG__vtbl_
-__1cHnmethodG__vtbl_
-__1cICodeBlobG__vtbl_
-__1cIUniverseO_collectedHeap_
-__1cJCodeCacheG_heaps_
-__1cKBufferBlobG__vtbl_
-__1cLRuntimeStubG__vtbl_
-__1cNSafepointBlobG__vtbl_
-__1cSDeoptimizationBlobG__vtbl_
-__1cNExceptionBlobG__vtbl_
-__1cQUncommonTrapBlobG__vtbl_
-
-__JvmOffsets
--- a/hotspot/makefiles/symbols/symbols-unix Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,194 +0,0 @@
-#
-# Copyright (c) 2016, 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.
-#
-# 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.
-#
-
-JVM_ActiveProcessorCount
-JVM_ArrayCopy
-JVM_AssertionStatusDirectives
-JVM_CallStackWalk
-JVM_ClassDepth
-JVM_ClassLoaderDepth
-JVM_Clone
-JVM_ConstantPoolGetClassAt
-JVM_ConstantPoolGetClassAtIfLoaded
-JVM_ConstantPoolGetClassRefIndexAt
-JVM_ConstantPoolGetDoubleAt
-JVM_ConstantPoolGetFieldAt
-JVM_ConstantPoolGetFieldAtIfLoaded
-JVM_ConstantPoolGetFloatAt
-JVM_ConstantPoolGetIntAt
-JVM_ConstantPoolGetLongAt
-JVM_ConstantPoolGetMemberRefInfoAt
-JVM_ConstantPoolGetMethodAt
-JVM_ConstantPoolGetMethodAtIfLoaded
-JVM_ConstantPoolGetNameAndTypeRefIndexAt
-JVM_ConstantPoolGetNameAndTypeRefInfoAt
-JVM_ConstantPoolGetSize
-JVM_ConstantPoolGetStringAt
-JVM_ConstantPoolGetTagAt
-JVM_ConstantPoolGetUTF8At
-JVM_CountStackFrames
-JVM_CurrentClassLoader
-JVM_CurrentLoadedClass
-JVM_CurrentThread
-JVM_CurrentTimeMillis
-JVM_DefineClass
-JVM_DefineClassWithSource
-JVM_DesiredAssertionStatus
-JVM_DoPrivileged
-JVM_DumpAllStacks
-JVM_DumpThreads
-JVM_FillInStackTrace
-JVM_FindClassFromCaller
-JVM_FindClassFromClass
-JVM_FindLibraryEntry
-JVM_FindLoadedClass
-JVM_FindPrimitiveClass
-JVM_FindSignal
-JVM_FreeMemory
-JVM_GC
-JVM_GetAllThreads
-JVM_GetArrayElement
-JVM_GetArrayLength
-JVM_GetCallerClass
-JVM_GetClassAccessFlags
-JVM_GetClassAnnotations
-JVM_GetClassConstantPool
-JVM_GetClassContext
-JVM_GetClassCPEntriesCount
-JVM_GetClassCPTypes
-JVM_GetClassDeclaredConstructors
-JVM_GetClassDeclaredFields
-JVM_GetClassDeclaredMethods
-JVM_GetClassFieldsCount
-JVM_GetClassInterfaces
-JVM_GetClassMethodsCount
-JVM_GetClassModifiers
-JVM_GetClassName
-JVM_GetClassNameUTF
-JVM_GetClassSignature
-JVM_GetClassSigners
-JVM_GetClassTypeAnnotations
-JVM_GetCPClassNameUTF
-JVM_GetCPFieldClassNameUTF
-JVM_GetCPFieldModifiers
-JVM_GetCPFieldNameUTF
-JVM_GetCPFieldSignatureUTF
-JVM_GetCPMethodClassNameUTF
-JVM_GetCPMethodModifiers
-JVM_GetCPMethodNameUTF
-JVM_GetCPMethodSignatureUTF
-JVM_GetDeclaredClasses
-JVM_GetDeclaringClass
-JVM_GetEnclosingMethodInfo
-JVM_GetFieldIxModifiers
-JVM_GetFieldTypeAnnotations
-JVM_GetInheritedAccessControlContext
-JVM_GetInterfaceVersion
-JVM_GetManagement
-JVM_GetMethodIxArgsSize
-JVM_GetMethodIxByteCode
-JVM_GetMethodIxByteCodeLength
-JVM_GetMethodIxExceptionIndexes
-JVM_GetMethodIxExceptionsCount
-JVM_GetMethodIxExceptionTableEntry
-JVM_GetMethodIxExceptionTableLength
-JVM_GetMethodIxLocalsCount
-JVM_GetMethodIxMaxStack
-JVM_GetMethodIxModifiers
-JVM_GetMethodIxNameUTF
-JVM_GetMethodIxSignatureUTF
-JVM_GetMethodParameters
-JVM_GetMethodTypeAnnotations
-JVM_GetNanoTimeAdjustment
-JVM_GetPrimitiveArrayElement
-JVM_GetProtectionDomain
-JVM_GetSimpleBinaryName
-JVM_GetStackAccessControlContext
-JVM_GetStackTraceElements
-JVM_GetSystemPackage
-JVM_GetSystemPackages
-JVM_GetTemporaryDirectory
-JVM_GetVmArguments
-JVM_Halt
-JVM_HoldsLock
-JVM_IHashCode
-JVM_InitProperties
-JVM_InternString
-JVM_Interrupt
-JVM_InvokeMethod
-JVM_IsArrayClass
-JVM_IsConstructorIx
-JVM_IsInterface
-JVM_IsInterrupted
-JVM_IsPrimitiveClass
-JVM_IsSameClassPackage
-JVM_IsSupportedJNIVersion
-JVM_IsThreadAlive
-JVM_IsVMGeneratedMethodIx
-JVM_LatestUserDefinedLoader
-JVM_LoadLibrary
-JVM_MaxMemory
-JVM_MaxObjectInspectionAge
-JVM_MonitorNotify
-JVM_MonitorNotifyAll
-JVM_MonitorWait
-JVM_MoreStackWalk
-JVM_NanoTime
-JVM_NativePath
-JVM_NewArray
-JVM_NewInstanceFromConstructor
-JVM_NewMultiArray
-JVM_RaiseSignal
-JVM_RawMonitorCreate
-JVM_RawMonitorDestroy
-JVM_RawMonitorEnter
-JVM_RawMonitorExit
-JVM_RegisterSignal
-JVM_ReleaseUTF
-JVM_ResumeThread
-JVM_SetArrayElement
-JVM_SetClassSigners
-JVM_SetNativeThreadName
-JVM_SetPrimitiveArrayElement
-JVM_SetThreadPriority
-JVM_Sleep
-JVM_StartThread
-JVM_StopThread
-JVM_SupportsCX8
-JVM_SuspendThread
-JVM_ToStackTraceElement
-JVM_TotalMemory
-JVM_UnloadLibrary
-JVM_Yield
-
-# Module related API's
-JVM_AddModuleExports
-JVM_AddModuleExportsToAll
-JVM_AddModuleExportsToAllUnnamed
-JVM_AddModulePackage
-JVM_AddReadsModule
-JVM_CanReadModule
-JVM_DefineModule
-JVM_IsExportedToModule
-JVM_SetBootLoaderUnnamedModule
-JVM_GetModuleByPackageName
--- a/hotspot/src/cpu/aarch64/vm/abstractInterpreter_aarch64.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/abstractInterpreter_aarch64.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -177,4 +177,6 @@
}
*interpreter_frame->interpreter_frame_cache_addr() =
method->constants()->cache();
+ *interpreter_frame->interpreter_frame_mirror_addr() =
+ method->method_holder()->java_mirror();
}
--- a/hotspot/src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -331,7 +331,7 @@
length.load_item();
}
- if (needs_store_check) {
+ if (needs_store_check || x->check_boolean()) {
value.load_item();
} else {
value.load_for_store(x->elt_type());
@@ -380,7 +380,8 @@
// Seems to be a precise
post_barrier(LIR_OprFact::address(array_addr), value.result());
} else {
- __ move(value.result(), array_addr, null_check_info);
+ LIR_Opr result = maybe_mask_boolean(x, array.result(), value.result(), null_check_info);
+ __ move(result, array_addr, null_check_info);
}
}
--- a/hotspot/src/cpu/aarch64/vm/frame_aarch64.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/frame_aarch64.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -78,7 +78,9 @@
interpreter_frame_last_sp_offset = interpreter_frame_sender_sp_offset - 1,
interpreter_frame_method_offset = interpreter_frame_last_sp_offset - 1,
interpreter_frame_mdp_offset = interpreter_frame_method_offset - 1,
- interpreter_frame_cache_offset = interpreter_frame_mdp_offset - 1,
+ interpreter_frame_padding_offset = interpreter_frame_mdp_offset - 1,
+ interpreter_frame_mirror_offset = interpreter_frame_padding_offset - 1,
+ interpreter_frame_cache_offset = interpreter_frame_mirror_offset - 1,
interpreter_frame_locals_offset = interpreter_frame_cache_offset - 1,
interpreter_frame_bcp_offset = interpreter_frame_locals_offset - 1,
interpreter_frame_initial_sp_offset = interpreter_frame_bcp_offset - 1,
--- a/hotspot/src/cpu/aarch64/vm/frame_aarch64.inline.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/frame_aarch64.inline.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2014, Red Hat Inc. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -188,6 +188,12 @@
return (Method**)addr_at(interpreter_frame_method_offset);
}
+// Mirror
+
+inline oop* frame::interpreter_frame_mirror_addr() const {
+ return (oop*)addr_at(interpreter_frame_mirror_offset);
+}
+
// top of expression stack
inline intptr_t* frame::interpreter_frame_tos_address() const {
intptr_t* last_sp = interpreter_frame_last_sp();
--- a/hotspot/src/cpu/aarch64/vm/globals_aarch64.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/globals_aarch64.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -48,9 +48,9 @@
#define DEFAULT_STACK_SHADOW_PAGES (4 DEBUG_ONLY(+5))
#define DEFAULT_STACK_RESERVED_PAGES (0)
-#define MIN_STACK_YELLOW_PAGES 1
-#define MIN_STACK_RED_PAGES 1
-#define MIN_STACK_SHADOW_PAGES 1
+#define MIN_STACK_YELLOW_PAGES DEFAULT_STACK_YELLOW_PAGES
+#define MIN_STACK_RED_PAGES DEFAULT_STACK_RED_PAGES
+#define MIN_STACK_SHADOW_PAGES DEFAULT_STACK_SHADOW_PAGES
#define MIN_STACK_RESERVED_PAGES (0)
define_pd_global(intx, StackYellowPages, DEFAULT_STACK_YELLOW_PAGES);
--- a/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -40,7 +40,43 @@
#include "runtime/thread.inline.hpp"
-// Implementation of InterpreterMacroAssembler
+void InterpreterMacroAssembler::narrow(Register result) {
+
+ // Get method->_constMethod->_result_type
+ ldr(rscratch1, Address(rfp, frame::interpreter_frame_method_offset * wordSize));
+ ldr(rscratch1, Address(rscratch1, Method::const_offset()));
+ ldrb(rscratch1, Address(rscratch1, ConstMethod::result_type_offset()));
+
+ Label done, notBool, notByte, notChar;
+
+ // common case first
+ cmpw(rscratch1, T_INT);
+ br(Assembler::EQ, done);
+
+ // mask integer result to narrower return type.
+ cmpw(rscratch1, T_BOOLEAN);
+ br(Assembler::NE, notBool);
+ andw(result, result, 0x1);
+ b(done);
+
+ bind(notBool);
+ cmpw(rscratch1, T_BYTE);
+ br(Assembler::NE, notByte);
+ sbfx(result, result, 0, 8);
+ b(done);
+
+ bind(notByte);
+ cmpw(rscratch1, T_CHAR);
+ br(Assembler::NE, notChar);
+ ubfx(result, result, 0, 16); // truncate upper 16 bits
+ b(done);
+
+ bind(notChar);
+ sbfx(result, result, 0, 16); // sign-extend short
+
+ // Nothing to do for T_INT
+ bind(done);
+}
void InterpreterMacroAssembler::jump_to_entry(address entry) {
assert(entry, "Entry must have been generated by now");
@@ -81,6 +117,7 @@
verify_oop(r0, state); break;
case ltos: ldr(r0, val_addr); break;
case btos: // fall through
+ case ztos: // fall through
case ctos: // fall through
case stos: // fall through
case itos: ldrw(r0, val_addr); break;
@@ -314,6 +351,7 @@
switch (state) {
case atos: pop_ptr(); break;
case btos:
+ case ztos:
case ctos:
case stos:
case itos: pop_i(); break;
@@ -331,6 +369,7 @@
switch (state) {
case atos: push_ptr(); break;
case btos:
+ case ztos:
case ctos:
case stos:
case itos: push_i(); break;
--- a/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -245,6 +245,9 @@
void update_mdp_by_constant(Register mdp_in, int constant);
void update_mdp_for_ret(Register return_bci);
+ // narrow int return value
+ void narrow(Register result);
+
void profile_taken_branch(Register mdp, Register bumped_count);
void profile_not_taken_branch(Register mdp);
void profile_call(Register mdp);
--- a/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -3217,6 +3217,14 @@
}
}
+void MacroAssembler::load_mirror(Register dst, Register method) {
+ const int mirror_offset = in_bytes(Klass::java_mirror_offset());
+ ldr(dst, Address(rmethod, Method::const_offset()));
+ ldr(dst, Address(dst, ConstMethod::constants_offset()));
+ ldr(dst, Address(dst, ConstantPool::pool_holder_offset_in_bytes()));
+ ldr(dst, Address(dst, mirror_offset));
+}
+
void MacroAssembler::cmp_klass(Register oop, Register trial_klass, Register tmp) {
if (UseCompressedClassPointers) {
ldrw(tmp, Address(oop, oopDesc::klass_offset_in_bytes()));
@@ -4085,7 +4093,10 @@
// and it might even be negative.
unsigned long offset;
adrp(reg, ExternalAddress((address)byte_map_base), offset);
- assert(offset == 0, "misaligned card table base");
+ // We expect offset to be zero with most collectors.
+ if (offset != 0) {
+ add(reg, reg, offset);
+ }
} else {
mov(reg, (uint64_t)byte_map_base);
}
--- a/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/macroAssembler_aarch64.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2014, 2015, Red Hat Inc. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -770,6 +770,8 @@
void store_klass(Register dst, Register src);
void cmp_klass(Register oop, Register trial_klass, Register tmp);
+ void load_mirror(Register dst, Register method);
+
void load_heap_oop(Register dst, Address src);
void load_heap_oop_not_null(Register dst, Address src);
@@ -1184,6 +1186,10 @@
Register result, Register cnt1,
int elem_size, bool is_string);
+ void fill_words(Register base, Register cnt, Register value);
+ void zero_words(Register base, Register cnt);
+ void zero_words(Register base, u_int64_t cnt);
+
void byte_array_inflate(Register src, Register dst, Register len,
FloatRegister vtmp1, FloatRegister vtmp2,
FloatRegister vtmp3, Register tmp4);
--- a/hotspot/src/cpu/aarch64/vm/templateInterpreterGenerator_aarch64.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/templateInterpreterGenerator_aarch64.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -759,18 +759,13 @@
// get synchronization object
{
- const int mirror_offset = in_bytes(Klass::java_mirror_offset());
Label done;
__ ldrw(r0, access_flags);
__ tst(r0, JVM_ACC_STATIC);
// get receiver (assume this is frequent case)
__ ldr(r0, Address(rlocals, Interpreter::local_offset_in_bytes(0)));
__ br(Assembler::EQ, done);
- __ ldr(r0, Address(rmethod, Method::const_offset()));
- __ ldr(r0, Address(r0, ConstMethod::constants_offset()));
- __ ldr(r0, Address(r0,
- ConstantPool::pool_holder_offset_in_bytes()));
- __ ldr(r0, Address(r0, mirror_offset));
+ __ load_mirror(r0, rmethod);
#ifdef ASSERT
{
@@ -807,16 +802,16 @@
void TemplateInterpreterGenerator::generate_fixed_frame(bool native_call) {
// initialize fixed part of activation frame
if (native_call) {
- __ sub(esp, sp, 12 * wordSize);
+ __ sub(esp, sp, 14 * wordSize);
__ mov(rbcp, zr);
- __ stp(esp, zr, Address(__ pre(sp, -12 * wordSize)));
+ __ stp(esp, zr, Address(__ pre(sp, -14 * wordSize)));
// add 2 zero-initialized slots for native calls
- __ stp(zr, zr, Address(sp, 10 * wordSize));
+ __ stp(zr, zr, Address(sp, 12 * wordSize));
} else {
- __ sub(esp, sp, 10 * wordSize);
+ __ sub(esp, sp, 12 * wordSize);
__ ldr(rscratch1, Address(rmethod, Method::const_offset())); // get ConstMethod
__ add(rbcp, rscratch1, in_bytes(ConstMethod::codes_offset())); // get codebase
- __ stp(esp, rbcp, Address(__ pre(sp, -10 * wordSize)));
+ __ stp(esp, rbcp, Address(__ pre(sp, -12 * wordSize)));
}
if (ProfileInterpreter) {
@@ -825,22 +820,26 @@
__ cbz(rscratch1, method_data_continue);
__ lea(rscratch1, Address(rscratch1, in_bytes(MethodData::data_offset())));
__ bind(method_data_continue);
- __ stp(rscratch1, rmethod, Address(sp, 4 * wordSize)); // save Method* and mdp (method data pointer)
+ __ stp(rscratch1, rmethod, Address(sp, 6 * wordSize)); // save Method* and mdp (method data pointer)
} else {
- __ stp(zr, rmethod, Address(sp, 4 * wordSize)); // save Method* (no mdp)
+ __ stp(zr, rmethod, Address(sp, 6 * wordSize)); // save Method* (no mdp)
}
+ // Get mirror and store it in the frame as GC root for this Method*
+ __ load_mirror(rscratch1, rmethod);
+ __ stp(rscratch1, zr, Address(sp, 4 * wordSize));
+
__ ldr(rcpool, Address(rmethod, Method::const_offset()));
__ ldr(rcpool, Address(rcpool, ConstMethod::constants_offset()));
__ ldr(rcpool, Address(rcpool, ConstantPool::cache_offset_in_bytes()));
__ stp(rlocals, rcpool, Address(sp, 2 * wordSize));
- __ stp(rfp, lr, Address(sp, 8 * wordSize));
- __ lea(rfp, Address(sp, 8 * wordSize));
+ __ stp(rfp, lr, Address(sp, 10 * wordSize));
+ __ lea(rfp, Address(sp, 10 * wordSize));
// set sender sp
// leave last_sp as null
- __ stp(zr, r13, Address(sp, 6 * wordSize));
+ __ stp(zr, r13, Address(sp, 8 * wordSize));
// Move SP out of the way
if (! native_call) {
@@ -1242,15 +1241,11 @@
// pass mirror handle if static call
{
Label L;
- const int mirror_offset = in_bytes(Klass::java_mirror_offset());
__ ldrw(t, Address(rmethod, Method::access_flags_offset()));
__ tst(t, JVM_ACC_STATIC);
__ br(Assembler::EQ, L);
// get mirror
- __ ldr(t, Address(rmethod, Method::const_offset()));
- __ ldr(t, Address(t, ConstMethod::constants_offset()));
- __ ldr(t, Address(t, ConstantPool::pool_holder_offset_in_bytes()));
- __ ldr(t, Address(t, mirror_offset));
+ __ load_mirror(t, rmethod);
// copy mirror into activation frame
__ str(t, Address(rfp, frame::interpreter_frame_oop_temp_offset * wordSize));
// pass handle to mirror
--- a/hotspot/src/cpu/aarch64/vm/templateTable_aarch64.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/aarch64/vm/templateTable_aarch64.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -229,6 +229,7 @@
switch (bc) {
case Bytecodes::_fast_aputfield:
case Bytecodes::_fast_bputfield:
+ case Bytecodes::_fast_zputfield:
case Bytecodes::_fast_cputfield:
case Bytecodes::_fast_dputfield:
case Bytecodes::_fast_fputfield:
@@ -1082,6 +1083,17 @@
// r1: index
// r3: array
index_check(r3, r1); // prefer index in r1
+
+ // Need to check whether array is boolean or byte
+ // since both types share the bastore bytecode.
+ __ load_klass(r2, r3);
+ __ ldrw(r2, Address(r2, Klass::layout_helper_offset()));
+ int diffbit_index = exact_log2(Klass::layout_helper_boolean_diffbit());
+ Label L_skip;
+ __ tbz(r2, diffbit_index, L_skip);
+ __ andw(r0, r0, 1); // if it is a T_BOOLEAN array, mask the stored value to 0/1
+ __ bind(L_skip);
+
__ lea(rscratch1, Address(r3, r1, Address::uxtw(0)));
__ strb(r0, Address(rscratch1,
arrayOopDesc::base_offset_in_bytes(T_BYTE)));
@@ -2193,6 +2205,13 @@
if (_desc->bytecode() == Bytecodes::_return)
__ membar(MacroAssembler::StoreStore);
+ // Narrow result if state is itos but result type is smaller.
+ // Need to narrow in the return bytecode rather than in generate_return_entry
+ // since compiled code callers expect the result to already be narrowed.
+ if (state == itos) {
+ __ narrow(r0);
+ }
+
__ remove_activation(state);
__ ret(lr);
}
@@ -2386,7 +2405,7 @@
const Address field(obj, off);
- Label Done, notByte, notInt, notShort, notChar,
+ Label Done, notByte, notBool, notInt, notShort, notChar,
notLong, notFloat, notObj, notDouble;
// x86 uses a shift and mask or wings it with a shift plus assert
@@ -2409,6 +2428,20 @@
__ b(Done);
__ bind(notByte);
+ __ cmp(flags, ztos);
+ __ br(Assembler::NE, notBool);
+
+ // ztos (same code as btos)
+ __ ldrsb(r0, field);
+ __ push(ztos);
+ // Rewrite bytecode to be faster
+ if (!is_static) {
+ // use btos rewriting, no truncating to t/f bit is needed for getfield.
+ patch_bytecode(Bytecodes::_fast_bgetfield, bc, r1);
+ }
+ __ b(Done);
+
+ __ bind(notBool);
__ cmp(flags, atos);
__ br(Assembler::NE, notObj);
// atos
@@ -2604,7 +2637,7 @@
// field address
const Address field(obj, off);
- Label notByte, notInt, notShort, notChar,
+ Label notByte, notBool, notInt, notShort, notChar,
notLong, notFloat, notObj, notDouble;
// x86 uses a shift and mask or wings it with a shift plus assert
@@ -2629,6 +2662,22 @@
}
__ bind(notByte);
+ __ cmp(flags, ztos);
+ __ br(Assembler::NE, notBool);
+
+ // ztos
+ {
+ __ pop(ztos);
+ if (!is_static) pop_and_check_object(obj);
+ __ andw(r0, r0, 0x1);
+ __ strb(r0, field);
+ if (!is_static) {
+ patch_bytecode(Bytecodes::_fast_zputfield, bc, r1, true, byte_no);
+ }
+ __ b(Done);
+ }
+
+ __ bind(notBool);
__ cmp(flags, atos);
__ br(Assembler::NE, notObj);
@@ -2783,6 +2832,7 @@
switch (bytecode()) { // load values into the jvalue object
case Bytecodes::_fast_aputfield: __ push_ptr(r0); break;
case Bytecodes::_fast_bputfield: // fall through
+ case Bytecodes::_fast_zputfield: // fall through
case Bytecodes::_fast_sputfield: // fall through
case Bytecodes::_fast_cputfield: // fall through
case Bytecodes::_fast_iputfield: __ push_i(r0); break;
@@ -2808,6 +2858,7 @@
switch (bytecode()) { // restore tos values
case Bytecodes::_fast_aputfield: __ pop_ptr(r0); break;
case Bytecodes::_fast_bputfield: // fall through
+ case Bytecodes::_fast_zputfield: // fall through
case Bytecodes::_fast_sputfield: // fall through
case Bytecodes::_fast_cputfield: // fall through
case Bytecodes::_fast_iputfield: __ pop_i(r0); break;
@@ -2863,6 +2914,9 @@
case Bytecodes::_fast_iputfield:
__ strw(r0, field);
break;
+ case Bytecodes::_fast_zputfield:
+ __ andw(r0, r0, 0x1); // boolean is true if LSB is 1
+ // fall through to bputfield
case Bytecodes::_fast_bputfield:
__ strb(r0, field);
break;
--- a/hotspot/src/cpu/ppc/vm/abstractInterpreter_ppc.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/ppc/vm/abstractInterpreter_ppc.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2015 SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -152,6 +152,7 @@
intptr_t* top_frame_sp = is_top_frame ? sp : sp + (frame::abi_minframe_size - frame::abi_reg_args_size) / Interpreter::stackElementSize;
interpreter_frame->interpreter_frame_set_method(method);
+ interpreter_frame->interpreter_frame_set_mirror(method->method_holder()->java_mirror());
interpreter_frame->interpreter_frame_set_locals(locals_base);
interpreter_frame->interpreter_frame_set_cpcache(method->constants()->cache());
interpreter_frame->interpreter_frame_set_esp(esp);
--- a/hotspot/src/cpu/ppc/vm/frame_ppc.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/ppc/vm/frame_ppc.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2015 SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -261,6 +261,7 @@
uint64_t ijava_reserved2; // Inserted for alignment.
#endif
uint64_t method;
+ uint64_t mirror;
uint64_t locals;
uint64_t monitors;
uint64_t cpoolCache;
--- a/hotspot/src/cpu/ppc/vm/frame_ppc.inline.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/ppc/vm/frame_ppc.inline.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2015 SAP SE. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -148,6 +148,11 @@
inline Method** frame::interpreter_frame_method_addr() const {
return (Method**) &(get_ijava_state()->method);
}
+
+inline oop* frame::interpreter_frame_mirror_addr() const {
+ return (oop*) &(get_ijava_state()->mirror);
+}
+
inline ConstantPoolCache** frame::interpreter_frame_cpoolcache_addr() const {
return (ConstantPoolCache**) &(get_ijava_state()->cpoolCache);
}
--- a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -3118,6 +3118,14 @@
}
}
+void MacroAssembler::load_mirror(Register mirror, Register method) {
+ const int mirror_offset = in_bytes(Klass::java_mirror_offset());
+ ld(mirror, in_bytes(Method::const_offset()), method);
+ ld(mirror, in_bytes(ConstMethod::constants_offset()), mirror);
+ ld(mirror, ConstantPool::pool_holder_offset_in_bytes(), mirror);
+ ld(mirror, mirror_offset, mirror);
+}
+
// Clear Array
// Kills both input registers. tmp == R0 is allowed.
void MacroAssembler::clear_memory_doubleword(Register base_ptr, Register cnt_dwords, Register tmp) {
--- a/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/ppc/vm/macroAssembler_ppc.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -647,6 +647,9 @@
void load_klass(Register dst, Register src);
void store_klass(Register dst_oop, Register klass, Register tmp = R0);
void store_klass_gap(Register dst_oop, Register val = noreg); // Will store 0 if val not specified.
+
+ void load_mirror(Register mirror, Register method);
+
static int instr_size_for_decode_klass_not_null();
void decode_klass_not_null(Register dst, Register src = noreg);
Register encode_klass_not_null(Register dst, Register src = noreg);
--- a/hotspot/src/cpu/ppc/vm/templateInterpreterGenerator_ppc.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/ppc/vm/templateInterpreterGenerator_ppc.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -869,7 +869,6 @@
// Get synchronization object to Rscratch2.
{
- const int mirror_offset = in_bytes(Klass::java_mirror_offset());
Label Lstatic;
Label Ldone;
@@ -881,10 +880,7 @@
__ b(Ldone);
__ bind(Lstatic); // Static case: Lock the java mirror
- __ ld(Robj_to_lock, in_bytes(Method::const_offset()), R19_method);
- __ ld(Robj_to_lock, in_bytes(ConstMethod::constants_offset()), Robj_to_lock);
- __ ld(Robj_to_lock, ConstantPool::pool_holder_offset_in_bytes(), Robj_to_lock);
- __ ld(Robj_to_lock, mirror_offset, Robj_to_lock);
+ __ load_mirror(Robj_to_lock, R19_method);
__ bind(Ldone);
__ verify_oop(Robj_to_lock);
@@ -1049,10 +1045,14 @@
__ addi(R26_monitor, R1_SP, - frame::ijava_state_size);
__ addi(R15_esp, R26_monitor, - Interpreter::stackElementSize);
+ // Get mirror and store it in the frame as GC root for this Method*
+ __ load_mirror(R12_scratch2, R19_method);
+
// Store values.
// R15_esp, R14_bcp, R26_monitor, R28_mdx are saved at java calls
// in InterpreterMacroAssembler::call_from_interpreter.
__ std(R19_method, _ijava_state_neg(method), R1_SP);
+ __ std(R12_scratch2, _ijava_state_neg(mirror), R1_SP);
__ std(R21_sender_SP, _ijava_state_neg(sender_sp), R1_SP);
__ std(R27_constPoolCache, _ijava_state_neg(cpoolCache), R1_SP);
__ std(R18_locals, _ijava_state_neg(locals), R1_SP);
@@ -1317,21 +1317,11 @@
__ testbitdi(CCR0, R0, access_flags, JVM_ACC_STATIC_BIT);
__ bfalse(CCR0, method_is_not_static);
- // constants = method->constants();
- __ ld(R11_scratch1, in_bytes(Method::const_offset()), R19_method);
- __ ld(R11_scratch1, in_bytes(ConstMethod::constants_offset()), R11_scratch1);
- // pool_holder = method->constants()->pool_holder();
- __ ld(R11_scratch1/*pool_holder*/, ConstantPool::pool_holder_offset_in_bytes(),
- R11_scratch1/*constants*/);
-
- const int mirror_offset = in_bytes(Klass::java_mirror_offset());
-
- // mirror = pool_holder->klass_part()->java_mirror();
- __ ld(R0/*mirror*/, mirror_offset, R11_scratch1/*pool_holder*/);
+ __ load_mirror(R12_scratch2, R19_method);
// state->_native_mirror = mirror;
__ ld(R11_scratch1, 0, R1_SP);
- __ std(R0/*mirror*/, _ijava_state_neg(oop_tmp), R11_scratch1);
+ __ std(R12_scratch2/*mirror*/, _ijava_state_neg(oop_tmp), R11_scratch1);
// R4_ARG2 = &state->_oop_temp;
__ addi(R4_ARG2, R11_scratch1, _ijava_state_neg(oop_tmp));
BIND(method_is_not_static);
--- a/hotspot/src/cpu/sparc/vm/abstractInterpreter_sparc.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/sparc/vm/abstractInterpreter_sparc.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -281,11 +281,12 @@
// Llast_SP will be same as SP as there is no adapter space
*interpreter_frame->register_addr(Llast_SP) = (intptr_t) interpreter_frame->sp() - STACK_BIAS;
*interpreter_frame->register_addr(LcpoolCache) = (intptr_t) method->constants()->cache();
+ // save the mirror in the interpreter frame
+ *interpreter_frame->interpreter_frame_mirror_addr() = method->method_holder()->java_mirror();
#ifdef FAST_DISPATCH
*interpreter_frame->register_addr(IdispatchTables) = (intptr_t) Interpreter::dispatch_table();
#endif
-
#ifdef ASSERT
BasicObjectLock* mp = (BasicObjectLock*)monitors;
--- a/hotspot/src/cpu/sparc/vm/frame_sparc.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/sparc/vm/frame_sparc.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -783,7 +783,7 @@
if (is_interpreted_frame()) {
DESCRIBE_FP_OFFSET(interpreter_frame_d_scratch_fp);
DESCRIBE_FP_OFFSET(interpreter_frame_l_scratch_fp);
- DESCRIBE_FP_OFFSET(interpreter_frame_padding);
+ DESCRIBE_FP_OFFSET(interpreter_frame_mirror);
DESCRIBE_FP_OFFSET(interpreter_frame_oop_temp);
// esp, according to Lesp (e.g. not depending on bci), if seems valid
--- a/hotspot/src/cpu/sparc/vm/frame_sparc.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/sparc/vm/frame_sparc.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -209,7 +209,8 @@
// 2 words, also used to save float regs across calls to C
interpreter_frame_d_scratch_fp_offset = -2,
interpreter_frame_l_scratch_fp_offset = -4,
- interpreter_frame_padding_offset = -5, // for native calls only
+ interpreter_frame_mirror_offset = -5, // keep interpreted method alive
+
interpreter_frame_oop_temp_offset = -6, // for native calls only
interpreter_frame_vm_locals_fp_offset = -6, // should be same as above, and should be zero mod 8
--- a/hotspot/src/cpu/sparc/vm/frame_sparc.inline.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/sparc/vm/frame_sparc.inline.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -163,6 +163,10 @@
*interpreter_frame_monitors_addr() = monitors;
}
+inline oop* frame::interpreter_frame_mirror_addr() const {
+ return (oop*)(fp() + interpreter_frame_mirror_offset);
+}
+
// Constant pool cache
// where LcpoolCache is saved:
--- a/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -3972,6 +3972,14 @@
card_table_write(bs->byte_map_base, tmp, store_addr);
}
+void MacroAssembler::load_mirror(Register mirror, Register method) {
+ const int mirror_offset = in_bytes(Klass::java_mirror_offset());
+ ld_ptr(method, in_bytes(Method::const_offset()), mirror);
+ ld_ptr(mirror, in_bytes(ConstMethod::constants_offset()), mirror);
+ ld_ptr(mirror, ConstantPool::pool_holder_offset_in_bytes(), mirror);
+ ld_ptr(mirror, mirror_offset, mirror);
+}
+
void MacroAssembler::load_klass(Register src_oop, Register klass) {
// The number of bytes in this code is used by
// MachCallDynamicJavaNode::ret_addr_offset()
--- a/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1012,6 +1012,8 @@
inline void ldbool(const Address& a, Register d);
inline void movbool( bool boolconst, Register d);
+ void load_mirror(Register mirror, Register method);
+
// klass oop manipulations if compressed
void load_klass(Register src_oop, Register klass);
void store_klass(Register klass, Register dst_oop);
--- a/hotspot/src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -557,17 +557,12 @@
// get synchronization object to O0
{ Label done;
- const int mirror_offset = in_bytes(Klass::java_mirror_offset());
__ btst(JVM_ACC_STATIC, O0);
__ br( Assembler::zero, true, Assembler::pt, done);
__ delayed()->ld_ptr(Llocals, Interpreter::local_offset_in_bytes(0), O0); // get receiver for not-static case
- __ ld_ptr( Lmethod, in_bytes(Method::const_offset()), O0);
- __ ld_ptr( O0, in_bytes(ConstMethod::constants_offset()), O0);
- __ ld_ptr( O0, ConstantPool::pool_holder_offset_in_bytes(), O0);
-
// lock the mirror, not the Klass*
- __ ld_ptr( O0, mirror_offset, O0);
+ __ load_mirror(O0, Lmethod);
#ifdef ASSERT
__ tst(O0);
@@ -881,6 +876,10 @@
__ add(Lbcp, in_bytes(ConstMethod::codes_offset()), Lbcp);
}
__ mov( G5_method, Lmethod); // set Lmethod
+ // Get mirror and store it in the frame as GC root for this Method*
+ Register mirror = LcpoolCache;
+ __ load_mirror(mirror, Lmethod);
+ __ st_ptr(mirror, FP, (frame::interpreter_frame_mirror_offset * wordSize) + STACK_BIAS);
__ get_constant_pool_cache( LcpoolCache ); // set LcpoolCache
__ sub(FP, rounded_vm_local_words * BytesPerWord, Lmonitors ); // set Lmonitors
#ifdef _LP64
@@ -1297,12 +1296,7 @@
// get native function entry point(O0 is a good temp until the very end)
__ delayed()->ld_ptr(Lmethod, in_bytes(Method::native_function_offset()), O0);
// for static methods insert the mirror argument
- const int mirror_offset = in_bytes(Klass::java_mirror_offset());
-
- __ ld_ptr(Lmethod, Method:: const_offset(), O1);
- __ ld_ptr(O1, ConstMethod::constants_offset(), O1);
- __ ld_ptr(O1, ConstantPool::pool_holder_offset_in_bytes(), O1);
- __ ld_ptr(O1, mirror_offset, O1);
+ __ load_mirror(O1, Lmethod);
#ifdef ASSERT
if (!PrintSignatureHandlers) // do not dirty the output with this
{ Label L;
--- a/hotspot/src/cpu/x86/vm/abstractInterpreter_x86.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/x86/vm/abstractInterpreter_x86.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -113,6 +113,8 @@
}
*interpreter_frame->interpreter_frame_cache_addr() =
method->constants()->cache();
+ *interpreter_frame->interpreter_frame_mirror_addr() =
+ method->method_holder()->java_mirror();
}
#ifndef _LP64
--- a/hotspot/src/cpu/x86/vm/frame_x86.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/x86/vm/frame_x86.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -640,6 +640,7 @@
DESCRIBE_FP_OFFSET(interpreter_frame_sender_sp);
DESCRIBE_FP_OFFSET(interpreter_frame_last_sp);
DESCRIBE_FP_OFFSET(interpreter_frame_method);
+ DESCRIBE_FP_OFFSET(interpreter_frame_mirror);
DESCRIBE_FP_OFFSET(interpreter_frame_mdp);
DESCRIBE_FP_OFFSET(interpreter_frame_cache);
DESCRIBE_FP_OFFSET(interpreter_frame_locals);
--- a/hotspot/src/cpu/x86/vm/frame_x86.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/x86/vm/frame_x86.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -70,7 +70,8 @@
// outgoing sp before a call to an invoked method
interpreter_frame_last_sp_offset = interpreter_frame_sender_sp_offset - 1,
interpreter_frame_method_offset = interpreter_frame_last_sp_offset - 1,
- interpreter_frame_mdp_offset = interpreter_frame_method_offset - 1,
+ interpreter_frame_mirror_offset = interpreter_frame_method_offset - 1,
+ interpreter_frame_mdp_offset = interpreter_frame_mirror_offset - 1,
interpreter_frame_cache_offset = interpreter_frame_mdp_offset - 1,
interpreter_frame_locals_offset = interpreter_frame_cache_offset - 1,
interpreter_frame_bcp_offset = interpreter_frame_locals_offset - 1,
--- a/hotspot/src/cpu/x86/vm/frame_x86.inline.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/x86/vm/frame_x86.inline.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -184,6 +184,12 @@
return (Method**)addr_at(interpreter_frame_method_offset);
}
+// Mirror
+
+inline oop* frame::interpreter_frame_mirror_addr() const {
+ return (oop*)addr_at(interpreter_frame_mirror_offset);
+}
+
// top of expression stack
inline intptr_t* frame::interpreter_frame_tos_address() const {
intptr_t* last_sp = interpreter_frame_last_sp();
--- a/hotspot/src/cpu/x86/vm/macroAssembler_x86.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/x86/vm/macroAssembler_x86.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -6705,6 +6705,14 @@
#endif // _LP64
}
+void MacroAssembler::load_mirror(Register mirror, Register method) {
+ // get mirror
+ const int mirror_offset = in_bytes(Klass::java_mirror_offset());
+ movptr(mirror, Address(method, Method::const_offset()));
+ movptr(mirror, Address(mirror, ConstMethod::constants_offset()));
+ movptr(mirror, Address(mirror, ConstantPool::pool_holder_offset_in_bytes()));
+ movptr(mirror, Address(mirror, mirror_offset));
+}
void MacroAssembler::load_klass(Register dst, Register src) {
#ifdef _LP64
--- a/hotspot/src/cpu/x86/vm/macroAssembler_x86.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/x86/vm/macroAssembler_x86.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -323,6 +323,8 @@
void movbool(Address dst, Register src);
void testbool(Register dst);
+ void load_mirror(Register mirror, Register method);
+
// oop manipulations
void load_klass(Register dst, Register src);
void store_klass(Register dst, Register src);
--- a/hotspot/src/cpu/x86/vm/templateInterpreterGenerator_x86.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/x86/vm/templateInterpreterGenerator_x86.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -608,18 +608,13 @@
// get synchronization object
{
- const int mirror_offset = in_bytes(Klass::java_mirror_offset());
Label done;
__ movl(rax, access_flags);
__ testl(rax, JVM_ACC_STATIC);
// get receiver (assume this is frequent case)
__ movptr(rax, Address(rlocals, Interpreter::local_offset_in_bytes(0)));
__ jcc(Assembler::zero, done);
- __ movptr(rax, Address(rbx, Method::const_offset()));
- __ movptr(rax, Address(rax, ConstMethod::constants_offset()));
- __ movptr(rax, Address(rax,
- ConstantPool::pool_holder_offset_in_bytes()));
- __ movptr(rax, Address(rax, mirror_offset));
+ __ load_mirror(rax, rbx);
#ifdef ASSERT
{
@@ -662,6 +657,9 @@
__ movptr(rbcp, Address(rbx, Method::const_offset())); // get ConstMethod*
__ lea(rbcp, Address(rbcp, ConstMethod::codes_offset())); // get codebase
__ push(rbx); // save Method*
+ // Get mirror and store it in the frame as GC root for this Method*
+ __ load_mirror(rdx, rbx);
+ __ push(rdx);
if (ProfileInterpreter) {
Label method_data_continue;
__ movptr(rdx, Address(rbx, in_bytes(Method::method_data_offset())));
@@ -999,15 +997,11 @@
// pass mirror handle if static call
{
Label L;
- const int mirror_offset = in_bytes(Klass::java_mirror_offset());
__ movl(t, Address(method, Method::access_flags_offset()));
__ testl(t, JVM_ACC_STATIC);
__ jcc(Assembler::zero, L);
// get mirror
- __ movptr(t, Address(method, Method::const_offset()));
- __ movptr(t, Address(t, ConstMethod::constants_offset()));
- __ movptr(t, Address(t, ConstantPool::pool_holder_offset_in_bytes()));
- __ movptr(t, Address(t, mirror_offset));
+ __ load_mirror(t, method);
// copy mirror into activation frame
__ movptr(Address(rbp, frame::interpreter_frame_oop_temp_offset * wordSize),
t);
--- a/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -49,6 +49,7 @@
DO(_locals);
DO(_constants);
DO(_method);
+ DO(_mirror);
DO(_mdx);
DO(_stack);
DO(_msg);
@@ -77,6 +78,7 @@
bool is_top_frame) {
istate->set_locals(locals);
istate->set_method(method);
+ istate->set_mirror(method->method_holder()->java_mirror());
istate->set_self_link(istate);
istate->set_prev_link(NULL);
// thread will be set by a hacky repurposing of frame::patch_pc()
--- a/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright 2007, 2008, 2011 Red Hat, Inc.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -44,6 +44,9 @@
inline void set_method(Method* new_method) {
_method = new_method;
}
+ inline void set_mirror(oop new_mirror) {
+ _mirror = new_mirror;
+ }
inline interpreterState self_link() {
return _self_link;
}
--- a/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -755,6 +755,7 @@
istate->set_locals(locals);
istate->set_method(method);
+ istate->set_mirror(method->method_holder()->java_mirror());
istate->set_self_link(istate);
istate->set_prev_link(NULL);
istate->set_thread(thread);
--- a/hotspot/src/cpu/zero/vm/frame_zero.inline.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/cpu/zero/vm/frame_zero.inline.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright 2007, 2008, 2009, 2010 Red Hat, Inc.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
@@ -115,6 +115,10 @@
return &(get_interpreterState()->_method);
}
+inline oop* frame::interpreter_frame_mirror_addr() const {
+ return &(get_interpreterState()->_mirror);
+}
+
inline intptr_t* frame::interpreter_frame_mdp_addr() const {
return (intptr_t*) &(get_interpreterState()->_mdx);
}
--- a/hotspot/src/os/aix/vm/os_aix.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/os/aix/vm/os_aix.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -4875,3 +4875,16 @@
}
return yes;
}
+
+static inline time_t get_mtime(const char* filename) {
+ struct stat st;
+ int ret = os::stat(filename, &st);
+ assert(ret == 0, "failed to stat() file '%s': %s", filename, strerror(errno));
+ return st.st_mtime;
+}
+
+int os::compare_file_modified_times(const char* file1, const char* file2) {
+ time_t t1 = get_mtime(file1);
+ time_t t2 = get_mtime(file2);
+ return t1 - t2;
+}
--- a/hotspot/src/share/vm/gc/g1/g1CollectedHeap.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/g1/g1CollectedHeap.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -65,6 +65,7 @@
#include "gc/shared/gcTraceTime.inline.hpp"
#include "gc/shared/generationSpec.hpp"
#include "gc/shared/isGCActiveMark.hpp"
+#include "gc/shared/preservedMarks.inline.hpp"
#include "gc/shared/referenceProcessor.inline.hpp"
#include "gc/shared/taskqueue.inline.hpp"
#include "logging/log.hpp"
@@ -1759,6 +1760,7 @@
_cg1r(NULL),
_g1mm(NULL),
_refine_cte_cl(NULL),
+ _preserved_marks_set(true /* in_c_heap */),
_secondary_free_list("Secondary Free List", new SecondaryFreeRegionListMtSafeChecker()),
_old_set("Old Set", false /* humongous */, new OldRegionSetMtSafeChecker()),
_humongous_set("Master Humongous Set", true /* humongous */, new HumongousRegionSetMtSafeChecker()),
@@ -2034,10 +2036,7 @@
G1StringDedup::initialize();
- _preserved_objs = NEW_C_HEAP_ARRAY(OopAndMarkOopStack, ParallelGCThreads, mtGC);
- for (uint i = 0; i < ParallelGCThreads; i++) {
- new (&_preserved_objs[i]) OopAndMarkOopStack();
- }
+ _preserved_marks_set.init(ParallelGCThreads);
return JNI_OK;
}
@@ -3527,11 +3526,6 @@
return true;
}
-void G1CollectedHeap::restore_preserved_marks() {
- G1RestorePreservedMarksTask rpm_task(_preserved_objs);
- workers()->run_task(&rpm_task);
-}
-
void G1CollectedHeap::remove_self_forwarding_pointers() {
G1ParRemoveSelfForwardPtrsTask rsfp_task;
workers()->run_task(&rsfp_task);
@@ -3541,7 +3535,7 @@
double remove_self_forwards_start = os::elapsedTime();
remove_self_forwarding_pointers();
- restore_preserved_marks();
+ _preserved_marks_set.restore(workers());
g1_policy()->phase_times()->record_evac_fail_remove_self_forwards((os::elapsedTime() - remove_self_forwards_start) * 1000.0);
}
@@ -3552,13 +3546,7 @@
}
_evacuation_failed_info_array[worker_id].register_copy_failure(obj->size());
-
- // 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)) {
- OopAndMarkOop elem(obj, m);
- _preserved_objs[worker_id].push(elem);
- }
+ _preserved_marks_set.get(worker_id)->push_if_necessary(obj, m);
}
bool G1ParEvacuateFollowersClosure::offer_termination() {
@@ -4581,6 +4569,7 @@
hot_card_cache->set_use_cache(false);
g1_rem_set()->prepare_for_oops_into_collection_set_do();
+ _preserved_marks_set.assert_empty();
}
void G1CollectedHeap::evacuate_collection_set(EvacuationInfo& evacuation_info, G1ParScanThreadStateSet* per_thread_states) {
@@ -4658,6 +4647,8 @@
NOT_PRODUCT(reset_evacuation_should_fail();)
}
+ _preserved_marks_set.assert_empty();
+
// Enqueue any remaining references remaining on the STW
// reference processor's discovered lists. We need to do
// this after the card table is cleaned (and verified) as
--- a/hotspot/src/share/vm/gc/g1/g1CollectedHeap.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/g1/g1CollectedHeap.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -45,6 +45,7 @@
#include "gc/shared/barrierSet.hpp"
#include "gc/shared/collectedHeap.hpp"
#include "gc/shared/plab.hpp"
+#include "gc/shared/preservedMarks.hpp"
#include "memory/memRegion.hpp"
#include "utilities/stack.hpp"
@@ -797,16 +798,11 @@
// forwarding pointers to themselves. Reset them.
void remove_self_forwarding_pointers();
- // Restore the preserved mark words for objects with self-forwarding pointers.
- void restore_preserved_marks();
-
// Restore the objects in the regions in the collection set after an
// evacuation failure.
void restore_after_evac_failure();
- // Stores marks with the corresponding oop that we need to preserve during evacuation
- // failure.
- OopAndMarkOopStack* _preserved_objs;
+ PreservedMarksSet _preserved_marks_set;
// Preserve the mark of "obj", if necessary, in preparation for its mark
// word being overwritten with a self-forwarding-pointer.
--- a/hotspot/src/share/vm/gc/g1/g1EvacFailure.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/g1/g1EvacFailure.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -33,6 +33,7 @@
#include "gc/g1/g1_globals.hpp"
#include "gc/g1/heapRegion.hpp"
#include "gc/g1/heapRegionRemSet.hpp"
+#include "gc/shared/preservedMarks.inline.hpp"
class UpdateRSetDeferred : public OopsInHeapRegionClosure {
private:
@@ -122,7 +123,7 @@
size_t obj_size = obj->size();
_marked_bytes += (obj_size * HeapWordSize);
- obj->set_mark(markOopDesc::prototype());
+ PreservedMarks::init_forwarded_mark(obj);
// While we were processing RSet buffers during the collection,
// we actually didn't scan any cards on the collection set,
@@ -253,16 +254,3 @@
HeapRegion* hr = _g1h->start_cset_region_for_worker(worker_id);
_g1h->collection_set_iterate_from(hr, &rsfp_cl);
}
-
-G1RestorePreservedMarksTask::G1RestorePreservedMarksTask(OopAndMarkOopStack* preserved_objs) :
- AbstractGangTask("G1 Restore Preserved Marks"),
- _preserved_objs(preserved_objs) {}
-
-void G1RestorePreservedMarksTask::work(uint worker_id) {
- OopAndMarkOopStack& cur = _preserved_objs[worker_id];
- while (!cur.is_empty()) {
- OopAndMarkOop elem = cur.pop();
- elem.set_mark();
- }
- cur.clear(true);
-}
--- a/hotspot/src/share/vm/gc/g1/g1EvacFailure.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/g1/g1EvacFailure.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -27,7 +27,6 @@
#include "gc/g1/g1OopClosures.hpp"
#include "gc/g1/heapRegionManager.hpp"
- #include "gc/shared/preservedMarks.hpp"
#include "gc/shared/workgroup.hpp"
#include "utilities/globalDefinitions.hpp"
@@ -46,12 +45,4 @@
void work(uint worker_id);
};
-class G1RestorePreservedMarksTask : public AbstractGangTask {
- OopAndMarkOopStack* _preserved_objs;
- public:
- G1RestorePreservedMarksTask(OopAndMarkOopStack* preserved_objs);
-
- void work(uint worker_id);
-};
-
#endif // SHARE_VM_GC_G1_G1EVACFAILURE_HPP
--- a/hotspot/src/share/vm/gc/g1/g1RootClosures.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/g1/g1RootClosures.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
@@ -42,7 +42,6 @@
CLDClosure* weak_clds() { return &_closures._clds; }
CLDClosure* strong_clds() { return &_closures._clds; }
- CLDClosure* thread_root_clds() { return NULL; }
CLDClosure* second_pass_weak_clds() { return NULL; }
CodeBlobClosure* strong_codeblobs() { return &_closures._codeblobs; }
@@ -89,7 +88,6 @@
// If MarkWeak is G1MarkFromRoot then all CLDs are processed by the weak and strong variants
// return a NULL closure for the following specialized versions in that case.
- CLDClosure* thread_root_clds() { return null_if<G1MarkFromRoot>(&_strong._clds); }
CLDClosure* second_pass_weak_clds() { return null_if<G1MarkFromRoot>(&_weak._clds); }
CodeBlobClosure* strong_codeblobs() { return &_strong._codeblobs; }
--- a/hotspot/src/share/vm/gc/g1/g1RootClosures.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/g1/g1RootClosures.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
@@ -41,9 +41,6 @@
virtual CLDClosure* weak_clds() = 0;
virtual CLDClosure* strong_clds() = 0;
- // Applied to the CLDs reachable from the thread stacks.
- virtual CLDClosure* thread_root_clds() = 0;
-
// Applied to code blobs reachable as strong roots.
virtual CodeBlobClosure* strong_codeblobs() = 0;
};
--- a/hotspot/src/share/vm/gc/g1/g1RootProcessor.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/g1/g1RootProcessor.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
@@ -152,7 +152,6 @@
CLDClosure* weak_clds() { return NULL; }
CLDClosure* strong_clds() { return _clds; }
- CLDClosure* thread_root_clds() { return _clds; }
CodeBlobClosure* strong_codeblobs() { return _blobs; }
};
@@ -184,9 +183,6 @@
// system.
CLDClosure* weak_clds() { return _clds; }
CLDClosure* strong_clds() { return _clds; }
- // We don't want to visit CLDs more than once, so we return NULL for the
- // thread root CLDs.
- CLDClosure* thread_root_clds() { return NULL; }
// We don't want to visit code blobs more than once, so we return NULL for the
// strong case and walk the entire code cache as a separate step.
@@ -211,7 +207,6 @@
void G1RootProcessor::process_java_roots(G1RootClosures* closures,
G1GCPhaseTimes* phase_times,
uint worker_i) {
- assert(closures->thread_root_clds() == NULL || closures->weak_clds() == NULL, "There is overlap between those, only one may be set");
// Iterating over the CLDG and the Threads are done early to allow us to
// first process the strong CLDs and nmethods and then, after a barrier,
// let the thread process the weak CLDs and nmethods.
@@ -227,7 +222,6 @@
bool is_par = n_workers() > 1;
Threads::possibly_parallel_oops_do(is_par,
closures->strong_oops(),
- closures->thread_root_clds(),
closures->strong_codeblobs());
}
}
--- a/hotspot/src/share/vm/gc/parallel/pcTasks.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/parallel/pcTasks.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -58,19 +58,16 @@
ParCompactionManager::gc_thread_compaction_manager(which);
ParCompactionManager::MarkAndPushClosure mark_and_push_closure(cm);
- CLDToOopClosure mark_and_push_from_clds(&mark_and_push_closure, true);
MarkingCodeBlobClosure mark_and_push_in_blobs(&mark_and_push_closure, !CodeBlobToOopClosure::FixRelocations);
if (_java_thread != NULL)
_java_thread->oops_do(
&mark_and_push_closure,
- &mark_and_push_from_clds,
&mark_and_push_in_blobs);
if (_vm_thread != NULL)
_vm_thread->oops_do(
&mark_and_push_closure,
- &mark_and_push_from_clds,
&mark_and_push_in_blobs);
// Do the real work
@@ -99,8 +96,7 @@
{
ResourceMark rm;
MarkingCodeBlobClosure each_active_code_blob(&mark_and_push_closure, !CodeBlobToOopClosure::FixRelocations);
- CLDToOopClosure mark_and_push_from_cld(&mark_and_push_closure);
- Threads::oops_do(&mark_and_push_closure, &mark_and_push_from_cld, &each_active_code_blob);
+ Threads::oops_do(&mark_and_push_closure, &each_active_code_blob);
}
break;
--- a/hotspot/src/share/vm/gc/parallel/psMarkSweep.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/parallel/psMarkSweep.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -505,9 +505,8 @@
ParallelScavengeHeap::ParStrongRootsScope psrs;
Universe::oops_do(mark_and_push_closure());
JNIHandles::oops_do(mark_and_push_closure()); // Global (strong) JNI handles
- CLDToOopClosure mark_and_push_from_cld(mark_and_push_closure());
MarkingCodeBlobClosure each_active_code_blob(mark_and_push_closure(), !CodeBlobToOopClosure::FixRelocations);
- Threads::oops_do(mark_and_push_closure(), &mark_and_push_from_cld, &each_active_code_blob);
+ Threads::oops_do(mark_and_push_closure(), &each_active_code_blob);
ObjectSynchronizer::oops_do(mark_and_push_closure());
FlatProfiler::oops_do(mark_and_push_closure());
Management::oops_do(mark_and_push_closure());
@@ -597,8 +596,7 @@
// General strong roots.
Universe::oops_do(adjust_pointer_closure());
JNIHandles::oops_do(adjust_pointer_closure()); // Global (strong) JNI handles
- CLDToOopClosure adjust_from_cld(adjust_pointer_closure());
- Threads::oops_do(adjust_pointer_closure(), &adjust_from_cld, NULL);
+ Threads::oops_do(adjust_pointer_closure(), NULL);
ObjectSynchronizer::oops_do(adjust_pointer_closure());
FlatProfiler::oops_do(adjust_pointer_closure());
Management::oops_do(adjust_pointer_closure());
--- a/hotspot/src/share/vm/gc/parallel/psParallelCompact.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/parallel/psParallelCompact.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -2148,8 +2148,7 @@
// General strong roots.
Universe::oops_do(&oop_closure);
JNIHandles::oops_do(&oop_closure); // Global (strong) JNI handles
- CLDToOopClosure adjust_from_cld(&oop_closure);
- Threads::oops_do(&oop_closure, &adjust_from_cld, NULL);
+ Threads::oops_do(&oop_closure, NULL);
ObjectSynchronizer::oops_do(&oop_closure);
FlatProfiler::oops_do(&oop_closure);
Management::oops_do(&oop_closure);
--- a/hotspot/src/share/vm/gc/parallel/psPromotionManager.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/parallel/psPromotionManager.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -237,6 +237,10 @@
_preserved_marks = preserved_marks;
}
+void PSPromotionManager::restore_preserved_marks() {
+ _preserved_marks_set->restore(PSScavenge::gc_task_manager());
+}
+
void PSPromotionManager::drain_stacks_depth(bool totally_drain) {
totally_drain = totally_drain || _totally_drain;
--- a/hotspot/src/share/vm/gc/parallel/psPromotionManager.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/parallel/psPromotionManager.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, 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
@@ -180,7 +180,7 @@
void reset();
void register_preserved_marks(PreservedMarks* preserved_marks);
- static void restore_preserved_marks() { _preserved_marks_set->restore(); }
+ static void restore_preserved_marks();
void flush_labs();
void drain_stacks(bool totally_drain) {
--- a/hotspot/src/share/vm/gc/parallel/psScavenge.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/parallel/psScavenge.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -443,7 +443,7 @@
promotion_failure_occurred = PSPromotionManager::post_scavenge(_gc_tracer);
if (promotion_failure_occurred) {
clean_up_failed_promotion();
- log_info(gc)("Promotion failed");
+ log_info(gc, promotion)("Promotion failed");
}
_gc_tracer.report_tenuring_threshold(tenuring_threshold());
--- a/hotspot/src/share/vm/gc/parallel/psTasks.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/parallel/psTasks.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -65,8 +65,7 @@
case threads:
{
ResourceMark rm;
- CLDClosure* cld_closure = NULL; // Not needed. All CLDs are already visited.
- Threads::oops_do(&roots_closure, cld_closure, NULL);
+ Threads::oops_do(&roots_closure, NULL);
}
break;
@@ -122,14 +121,13 @@
PSPromotionManager* pm = PSPromotionManager::gc_thread_promotion_manager(which);
PSScavengeRootsClosure roots_closure(pm);
- CLDClosure* roots_from_clds = NULL; // Not needed. All CLDs are already visited.
MarkingCodeBlobClosure roots_in_blobs(&roots_closure, CodeBlobToOopClosure::FixRelocations);
if (_java_thread != NULL)
- _java_thread->oops_do(&roots_closure, roots_from_clds, &roots_in_blobs);
+ _java_thread->oops_do(&roots_closure, &roots_in_blobs);
if (_vm_thread != NULL)
- _vm_thread->oops_do(&roots_closure, roots_from_clds, &roots_in_blobs);
+ _vm_thread->oops_do(&roots_closure, &roots_in_blobs);
// Do the real work
pm->drain_stacks(false);
--- a/hotspot/src/share/vm/gc/shared/genCollectedHeap.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/shared/genCollectedHeap.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -582,14 +582,11 @@
ClassLoaderDataGraph::roots_cld_do(strong_cld_closure, weak_cld_closure);
}
- // Some CLDs contained in the thread frames should be considered strong.
- // Don't process them if they will be processed during the ClassLoaderDataGraph phase.
- CLDClosure* roots_from_clds_p = (strong_cld_closure != weak_cld_closure) ? strong_cld_closure : NULL;
// Only process code roots from thread stacks if we aren't visiting the entire CodeCache anyway
CodeBlobToOopClosure* roots_from_code_p = (so & SO_AllCodeCache) ? NULL : code_roots;
bool is_par = scope->n_threads() > 1;
- Threads::possibly_parallel_oops_do(is_par, strong_roots, roots_from_clds_p, roots_from_code_p);
+ Threads::possibly_parallel_oops_do(is_par, strong_roots, roots_from_code_p);
if (!_process_strong_tasks->is_task_claimed(GCH_PS_Universe_oops_do)) {
Universe::oops_do(strong_roots);
--- a/hotspot/src/share/vm/gc/shared/preservedMarks.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/shared/preservedMarks.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -23,9 +23,11 @@
*/
#include "precompiled.hpp"
+#include "gc/parallel/gcTaskManager.hpp"
#include "gc/shared/preservedMarks.inline.hpp"
#include "gc/shared/workgroup.hpp"
#include "memory/allocation.inline.hpp"
+#include "memory/resourceArea.hpp"
void PreservedMarks::restore() {
while (!_stack.is_empty()) {
@@ -106,9 +108,43 @@
workers->run_task(&task);
}
-// temporary, used by PS
-void PreservedMarksSet::restore() {
- restore<WorkGang>(NULL);
+class ParRestoreGCTask : public GCTask {
+private:
+ const uint _id;
+ PreservedMarksSet* const _preserved_marks_set;
+ volatile size_t* const _total_size_addr;
+
+public:
+ virtual char* name() { return (char*) "preserved mark restoration task"; }
+
+ virtual void do_it(GCTaskManager* manager, uint which) {
+ PreservedMarks* const preserved_marks = _preserved_marks_set->get(_id);
+ const size_t size = preserved_marks->size();
+ preserved_marks->restore();
+ // Only do the atomic add if the size is > 0.
+ if (size > 0) {
+ Atomic::add(size, _total_size_addr);
+ }
+ }
+
+ ParRestoreGCTask(uint id,
+ PreservedMarksSet* preserved_marks_set,
+ volatile size_t* total_size_addr)
+ : _id(id),
+ _preserved_marks_set(preserved_marks_set),
+ _total_size_addr(total_size_addr) { }
+};
+
+void PreservedMarksSet::restore_internal(GCTaskManager* gc_task_manager,
+ volatile size_t* total_size_addr) {
+ // GCTask / GCTaskQueue are ResourceObjs
+ ResourceMark rm;
+
+ GCTaskQueue* q = GCTaskQueue::create();
+ for (uint i = 0; i < num(); i += 1) {
+ q->enqueue(new ParRestoreGCTask(i, this, total_size_addr));
+ }
+ gc_task_manager->execute_and_wait(q);
}
void PreservedMarksSet::reclaim() {
--- a/hotspot/src/share/vm/gc/shared/preservedMarks.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/gc/shared/preservedMarks.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -30,24 +30,25 @@
#include "oops/oop.hpp"
#include "utilities/stack.hpp"
-class OopAndMarkOop {
-private:
- oop _o;
- markOop _m;
-
-public:
- OopAndMarkOop(oop obj, markOop m) : _o(obj), _m(m) { }
-
- void set_mark() const {
- _o->set_mark(_m);
- }
-};
-typedef Stack<OopAndMarkOop, mtGC> OopAndMarkOopStack;
-
+class GCTaskManager;
class WorkGang;
class PreservedMarks VALUE_OBJ_CLASS_SPEC {
private:
+ class OopAndMarkOop {
+ private:
+ oop _o;
+ markOop _m;
+
+ public:
+ OopAndMarkOop(oop obj, markOop m) : _o(obj), _m(m) { }
+
+ void set_mark() const {
+ _o->set_mark(_m);
+ }
+ };
+ typedef Stack<OopAndMarkOop, mtGC> OopAndMarkOopStack;
+
OopAndMarkOopStack _stack;
inline bool should_preserve_mark(oop obj, markOop m) const;
@@ -93,6 +94,10 @@
// Internal version of restore() that uses a WorkGang for parallelism.
void restore_internal(WorkGang* workers, volatile size_t* total_size_addr);
+ // Internal version of restore() that uses a GCTaskManager for parallelism.
+ void restore_internal(GCTaskManager* gc_task_manager,
+ volatile size_t* total_size_addr);
+
public:
uint num() const { return _num; }
@@ -110,14 +115,11 @@
// the memory taken up by the stack segments. If the executor is
// NULL, restoration will be done serially. If the executor is not
// NULL, restoration could be done in parallel (when it makes
- // sense). Supported executors: WorkGang (Serial, CMS, G1)
+ // sense). Supported executors: WorkGang (Serial, CMS, G1),
+ // GCTaskManager (PS).
template <class E>
inline void restore(E* executor);
- // Do the restoration serially. Temporary, to be used by PS until we
- // can support GCTaskManager in restore(E*).
- void restore();
-
// Reclaim stack array.
void reclaim();
--- a/hotspot/src/share/vm/interpreter/bytecodeInterpreter.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/interpreter/bytecodeInterpreter.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2016, 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
@@ -110,6 +110,7 @@
intptr_t* _locals; // local variable pointer
ConstantPoolCache* _constants; // constant pool cache
Method* _method; // method being executed
+ oop _mirror; // mirror to klass containing method
DataLayout* _mdx; // compiler profiling data for current bytecode
intptr_t* _stack; // expression stack
messages _msg; // frame manager <-> interpreter message
--- a/hotspot/src/share/vm/oops/instanceKlass.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/oops/instanceKlass.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -2296,7 +2296,7 @@
PackageEntry* classpkg2;
if (class2->is_instance_klass()) {
classloader2 = class2->class_loader();
- classpkg2 = InstanceKlass::cast(class2)->package();
+ classpkg2 = class2->package();
} else {
assert(class2->is_typeArray_klass(), "should be type array");
classloader2 = NULL;
--- a/hotspot/src/share/vm/oops/instanceKlass.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/oops/instanceKlass.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -27,9 +27,9 @@
#include "classfile/classLoader.hpp"
#include "classfile/classLoaderData.hpp"
+#include "classfile/moduleEntry.hpp"
#include "classfile/packageEntry.hpp"
#include "gc/shared/specialized_oop_closures.hpp"
-#include "classfile/moduleEntry.hpp"
#include "logging/logLevel.hpp"
#include "memory/referenceType.hpp"
#include "oops/annotations.hpp"
--- a/hotspot/src/share/vm/oops/klass.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/oops/klass.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -52,11 +52,13 @@
template <class T> class Array;
template <class T> class GrowableArray;
class ClassLoaderData;
+class fieldDescriptor;
+class KlassSizeStats;
class klassVtable;
+class ModuleEntry;
+class PackageEntry;
class ParCompactionManager;
class PSPromotionManager;
-class KlassSizeStats;
-class fieldDescriptor;
class vtableEntry;
class Klass : public Metadata {
@@ -274,6 +276,9 @@
_shared_class_path_index = index;
};
+ // Obtain the module or package for this class
+ virtual ModuleEntry* module() const = 0;
+ virtual PackageEntry* package() const = 0;
protected: // internal accessors
void set_subklass(Klass* s);
--- a/hotspot/src/share/vm/oops/objArrayKlass.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/oops/objArrayKlass.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -23,6 +23,8 @@
*/
#include "precompiled.hpp"
+#include "classfile/moduleEntry.hpp"
+#include "classfile/packageEntry.hpp"
#include "classfile/symbolTable.hpp"
#include "classfile/systemDictionary.hpp"
#include "classfile/vmSymbols.hpp"
@@ -135,14 +137,7 @@
// GC walks these as strong roots.
loader_data->add_class(oak);
- // The array is defined in the module of its bottom class
- Klass* bottom_klass = oak->bottom_klass();
- ModuleEntry* module;
- if (bottom_klass->is_instance_klass()) {
- module = InstanceKlass::cast(bottom_klass)->module();
- } else {
- module = ModuleEntryTable::javabase_module();
- }
+ ModuleEntry* module = oak->module();
assert(module != NULL, "No module entry for array");
// Call complete_create_array_klass after all instance variables has been initialized.
@@ -422,6 +417,16 @@
| (JVM_ACC_ABSTRACT | JVM_ACC_FINAL);
}
+ModuleEntry* ObjArrayKlass::module() const {
+ assert(bottom_klass() != NULL, "ObjArrayKlass returned unexpected NULL bottom_klass");
+ // The array is defined in the module of its bottom class
+ return bottom_klass()->module();
+}
+
+PackageEntry* ObjArrayKlass::package() const {
+ assert(bottom_klass() != NULL, "ObjArrayKlass returned unexpected NULL bottom_klass");
+ return bottom_klass()->package();
+}
// Printing
--- a/hotspot/src/share/vm/oops/objArrayKlass.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/oops/objArrayKlass.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -54,6 +54,9 @@
void set_bottom_klass(Klass* k) { _bottom_klass = k; }
Klass** bottom_klass_addr() { return &_bottom_klass; }
+ ModuleEntry* module() const;
+ PackageEntry* package() const;
+
// Compiler/Interpreter offset
static ByteSize element_klass_offset() { return in_ByteSize(offset_of(ObjArrayKlass, _element_klass)); }
--- a/hotspot/src/share/vm/oops/typeArrayKlass.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/oops/typeArrayKlass.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -23,6 +23,8 @@
*/
#include "precompiled.hpp"
+#include "classfile/moduleEntry.hpp"
+#include "classfile/packageEntry.hpp"
#include "classfile/symbolTable.hpp"
#include "classfile/systemDictionary.hpp"
#include "classfile/vmSymbols.hpp"
@@ -341,3 +343,12 @@
const char* TypeArrayKlass::internal_name() const {
return Klass::external_name();
}
+
+// A TypeArrayKlass is an array of a primitive type, its defining module is java.base
+ModuleEntry* TypeArrayKlass::module() const {
+ return ModuleEntryTable::javabase_module();
+}
+
+PackageEntry* TypeArrayKlass::package() const {
+ return NULL;
+}
--- a/hotspot/src/share/vm/oops/typeArrayKlass.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/oops/typeArrayKlass.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -150,6 +150,9 @@
public:
const char* internal_name() const;
+
+ ModuleEntry* module() const;
+ PackageEntry* package() const;
};
#endif // SHARE_VM_OOPS_TYPEARRAYKLASS_HPP
--- a/hotspot/src/share/vm/prims/jvmtiImpl.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/prims/jvmtiImpl.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -278,7 +278,7 @@
_bci >= 0;
}
-address JvmtiBreakpoint::getBcp() {
+address JvmtiBreakpoint::getBcp() const {
return _method->bcp_from(_bci);
}
@@ -323,7 +323,7 @@
each_method_version_do(&Method::clear_breakpoint);
}
-void JvmtiBreakpoint::print(outputStream* out) {
+void JvmtiBreakpoint::print_on(outputStream* out) const {
#ifndef PRODUCT
ResourceMark rm;
const char *class_name = (_method == NULL) ? "NULL" : _method->klass_name()->as_C_string();
@@ -400,7 +400,7 @@
for (int i=0; i<n; i++) {
JvmtiBreakpoint& bp = _bps.at(i);
log_stream.print("%d: ", i);
- bp.print(&log_stream);
+ bp.print_on(&log_stream);
log_stream.cr();
}
#endif
--- a/hotspot/src/share/vm/prims/jvmtiImpl.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/prims/jvmtiImpl.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -183,11 +183,11 @@
bool lessThan(JvmtiBreakpoint &bp);
void copy(JvmtiBreakpoint& bp);
bool is_valid();
- address getBcp();
+ address getBcp() const;
void each_method_version_do(method_action meth_act);
void set();
void clear();
- void print(outputStream* out);
+ void print_on(outputStream* out) const;
Method* method() { return _method; }
--- a/hotspot/src/share/vm/runtime/deoptimization.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/runtime/deoptimization.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -762,7 +762,7 @@
guarantee(false, "wrong number of expression stack elements during deopt");
}
VerifyOopClosure verify;
- iframe->oops_interpreted_do(&verify, NULL, &rm, false);
+ iframe->oops_interpreted_do(&verify, &rm, false);
callee_size_of_parameters = mh->size_of_parameters();
callee_max_locals = mh->max_locals();
is_top_frame = false;
--- a/hotspot/src/share/vm/runtime/frame.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/runtime/frame.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -396,6 +396,11 @@
*interpreter_frame_method_addr() = method;
}
+void frame::interpreter_frame_set_mirror(oop mirror) {
+ assert(is_interpreted_frame(), "interpreted frame expected");
+ *interpreter_frame_mirror_addr() = mirror;
+}
+
jint frame::interpreter_frame_bci() const {
assert(is_interpreted_frame(), "interpreted frame expected");
address bcp = interpreter_frame_bcp();
@@ -852,8 +857,7 @@
}
-void frame::oops_interpreted_do(OopClosure* f, CLDClosure* cld_f,
- const RegisterMap* map, bool query_oop_map_cache) {
+void frame::oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache) {
assert(is_interpreted_frame(), "Not an interpreted frame");
assert(map != NULL, "map must be set");
Thread *thread = Thread::current();
@@ -879,20 +883,15 @@
current->oops_do(f);
}
- // process fixed part
- if (cld_f != NULL) {
- // The method pointer in the frame might be the only path to the method's
- // klass, and the klass needs to be kept alive while executing. The GCs
- // don't trace through method pointers, so typically in similar situations
- // the mirror or the class loader of the klass are installed as a GC root.
- // To minimize the overhead of doing that here, we ask the GC to pass down a
- // closure that knows how to keep klasses alive given a ClassLoaderData.
- cld_f->do_cld(m->method_holder()->class_loader_data());
+ if (m->is_native()) {
+ f->do_oop(interpreter_frame_temp_oop_addr());
}
- if (m->is_native() PPC32_ONLY(&& m->is_static())) {
- f->do_oop(interpreter_frame_temp_oop_addr());
- }
+ // The method pointer in the frame might be the only path to the method's
+ // klass, and the klass needs to be kept alive while executing. The GCs
+ // don't trace through method pointers, so the mirror of the method's klass
+ // is installed as a GC root.
+ f->do_oop(interpreter_frame_mirror_addr());
int max_locals = m->is_native() ? m->size_of_parameters() : m->max_locals();
@@ -1093,7 +1092,7 @@
}
-void frame::oops_do_internal(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf, RegisterMap* map, bool use_interpreter_oop_map_cache) {
+void frame::oops_do_internal(OopClosure* f, CodeBlobClosure* cf, RegisterMap* map, bool use_interpreter_oop_map_cache) {
#ifndef PRODUCT
// simulate GC crash here to dump java thread in error report
if (CrashGCForDumpingJavaThread) {
@@ -1102,7 +1101,7 @@
}
#endif
if (is_interpreted_frame()) {
- oops_interpreted_do(f, cld_f, map, use_interpreter_oop_map_cache);
+ oops_interpreted_do(f, map, use_interpreter_oop_map_cache);
} else if (is_entry_frame()) {
oops_entry_do(f, map);
} else if (CodeCache::contains(pc())) {
@@ -1147,7 +1146,7 @@
#if defined(COMPILER2) || INCLUDE_JVMCI
assert(DerivedPointerTable::is_empty(), "must be empty before verify");
#endif
- oops_do_internal(&VerifyOopClosure::verify_oop, NULL, NULL, (RegisterMap*)map, false);
+ oops_do_internal(&VerifyOopClosure::verify_oop, NULL, (RegisterMap*)map, false);
}
--- a/hotspot/src/share/vm/runtime/frame.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/runtime/frame.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2016, 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
@@ -320,6 +320,9 @@
void interpreter_frame_set_method(Method* method);
Method** interpreter_frame_method_addr() const;
ConstantPoolCache** interpreter_frame_cache_addr() const;
+ oop* interpreter_frame_mirror_addr() const;
+
+ void interpreter_frame_set_mirror(oop mirror);
public:
// Entry frames
@@ -386,19 +389,19 @@
// Oops-do's
void oops_compiled_arguments_do(Symbol* signature, bool has_receiver, bool has_appendix, const RegisterMap* reg_map, OopClosure* f);
- void oops_interpreted_do(OopClosure* f, CLDClosure* cld_f, const RegisterMap* map, bool query_oop_map_cache = true);
+ void oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache = true);
private:
void oops_interpreted_arguments_do(Symbol* signature, bool has_receiver, OopClosure* f);
// Iteration of oops
- void oops_do_internal(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf, RegisterMap* map, bool use_interpreter_oop_map_cache);
+ void oops_do_internal(OopClosure* f, CodeBlobClosure* cf, RegisterMap* map, bool use_interpreter_oop_map_cache);
void oops_entry_do(OopClosure* f, const RegisterMap* map);
void oops_code_blob_do(OopClosure* f, CodeBlobClosure* cf, const RegisterMap* map);
int adjust_offset(Method* method, int index); // helper for above fn
public:
// Memory management
- void oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf, RegisterMap* map) { oops_do_internal(f, cld_f, cf, map, true); }
+ void oops_do(OopClosure* f, CodeBlobClosure* cf, RegisterMap* map) { oops_do_internal(f, cf, map, true); }
void nmethods_do(CodeBlobClosure* cf);
// RedefineClasses support for finding live interpreted methods on the stack
--- a/hotspot/src/share/vm/runtime/globals.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/runtime/globals.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1253,7 +1253,7 @@
product(intx, MonitorBound, 0, "Bound Monitor population") \
range(0, max_jint) \
\
- product(bool, MonitorInUseLists, false, "Track Monitors for Deflation") \
+ product(bool, MonitorInUseLists, true, "Track Monitors for Deflation") \
\
experimental(intx, SyncFlags, 0, "(Unsafe, Unstable) " \
"Experimental Sync flags") \
--- a/hotspot/src/share/vm/runtime/reflection.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/runtime/reflection.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -502,17 +502,16 @@
}
// Find the module entry for current_class, the accessor
- ModuleEntry* module_from = InstanceKlass::cast(current_class)->module();
+ ModuleEntry* module_from = current_class->module();
// Find the module entry for new_class, the accessee
if (new_class->is_objArray_klass()) {
new_class = ObjArrayKlass::cast(new_class)->bottom_klass();
}
- if (!new_class->is_instance_klass()) {
- // Everyone can read a typearray.
- assert (new_class->is_typeArray_klass(), "Unexpected klass type");
+ if (new_class->is_typeArray_klass()) {
+ // A TypeArray's defining module is java.base, access to the TypeArray is allowed
return ACCESS_OK;
}
- ModuleEntry* module_to = InstanceKlass::cast(new_class)->module();
+ ModuleEntry* module_to = new_class->module();
// both in same (possibly unnamed) module
if (module_from == module_to) {
@@ -532,7 +531,7 @@
return MODULE_NOT_READABLE;
}
- PackageEntry* package_to = InstanceKlass::cast(new_class)->package();
+ PackageEntry* package_to = new_class->package();
assert(package_to != NULL, "can not obtain new_class' package");
// Once readability is established, if module_to exports T unqualifiedly,
@@ -570,20 +569,13 @@
char * msg = NULL;
if (result != OTHER_PROBLEM && new_class != NULL && current_class != NULL) {
// Find the module entry for current_class, the accessor
- ModuleEntry* module_from = InstanceKlass::cast(current_class)->module();
+ ModuleEntry* module_from = current_class->module();
const char * module_from_name = module_from->is_named() ? module_from->name()->as_C_string() : UNNAMED_MODULE;
const char * current_class_name = current_class->external_name();
// Find the module entry for new_class, the accessee
ModuleEntry* module_to = NULL;
- if (new_class->is_objArray_klass()) {
- new_class = ObjArrayKlass::cast(new_class)->bottom_klass();
- }
- if (new_class->is_instance_klass()) {
- module_to = InstanceKlass::cast(new_class)->module();
- } else {
- module_to = ModuleEntryTable::javabase_module();
- }
+ module_to = new_class->module();
const char * module_to_name = module_to->is_named() ? module_to->name()->as_C_string() : UNNAMED_MODULE;
const char * new_class_name = new_class->external_name();
@@ -611,10 +603,10 @@
}
} else if (result == TYPE_NOT_EXPORTED) {
- assert(InstanceKlass::cast(new_class)->package() != NULL,
+ assert(new_class->package() != NULL,
"Unnamed packages are always exported");
const char * package_name =
- InstanceKlass::cast(new_class)->package()->name()->as_klass_external_name();
+ new_class->package()->name()->as_klass_external_name();
assert(module_to->is_named(), "Unnamed modules export all packages");
if (module_from->is_named()) {
size_t len = 118 + strlen(current_class_name) + 2*strlen(module_from_name) +
--- a/hotspot/src/share/vm/runtime/thread.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/runtime/thread.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -785,7 +785,7 @@
return false;
}
-void Thread::oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf) {
+void Thread::oops_do(OopClosure* f, CodeBlobClosure* cf) {
active_handles()->oops_do(f);
// Do oop for ThreadShadow
f->do_oop((oop*)&_pending_exception);
@@ -2758,7 +2758,7 @@
}
};
-void JavaThread::oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf) {
+void JavaThread::oops_do(OopClosure* f, CodeBlobClosure* cf) {
// Verify that the deferred card marks have been flushed.
assert(deferred_card_mark().is_empty(), "Should be empty during GC");
@@ -2766,7 +2766,7 @@
// since there may be more than one thread using each ThreadProfiler.
// Traverse the GCHandles
- Thread::oops_do(f, cld_f, cf);
+ Thread::oops_do(f, cf);
JVMCI_ONLY(f->do_oop((oop*)&_pending_failed_speculation);)
@@ -2796,7 +2796,7 @@
// Traverse the execution stack
for (StackFrameStream fst(this); !fst.is_done(); fst.next()) {
- fst.current()->oops_do(f, cld_f, cf, fst.register_map());
+ fst.current()->oops_do(f, cf, fst.register_map());
}
}
@@ -2946,7 +2946,7 @@
void JavaThread::verify() {
// Verify oops in the thread.
- oops_do(&VerifyOopClosure::verify_oop, NULL, NULL);
+ oops_do(&VerifyOopClosure::verify_oop, NULL);
// Verify the stack frames.
frames_do(frame_verify);
@@ -3186,7 +3186,7 @@
static void oops_print(frame* f, const RegisterMap *map) {
PrintAndVerifyOopClosure print;
f->print_value();
- f->oops_do(&print, NULL, NULL, (RegisterMap*)map);
+ f->oops_do(&print, NULL, (RegisterMap*)map);
}
// Print our all the locations that contain oops and whether they are
@@ -3303,8 +3303,8 @@
_scanned_nmethod = NULL;
}
-void CodeCacheSweeperThread::oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf) {
- JavaThread::oops_do(f, cld_f, cf);
+void CodeCacheSweeperThread::oops_do(OopClosure* f, CodeBlobClosure* cf) {
+ JavaThread::oops_do(f, cf);
if (_scanned_nmethod != NULL && cf != NULL) {
// Safepoints can occur when the sweeper is scanning an nmethod so
// process it here to make sure it isn't unloaded in the middle of
@@ -4291,11 +4291,11 @@
// uses the Threads_lock to guarantee this property. It also makes sure that
// all threads gets blocked when exiting or starting).
-void Threads::oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf) {
+void Threads::oops_do(OopClosure* f, CodeBlobClosure* cf) {
ALL_JAVA_THREADS(p) {
- p->oops_do(f, cld_f, cf);
- }
- VMThread::vm_thread()->oops_do(f, cld_f, cf);
+ p->oops_do(f, cf);
+ }
+ VMThread::vm_thread()->oops_do(f, cf);
}
void Threads::change_thread_claim_parity() {
@@ -4318,16 +4318,16 @@
}
#endif // ASSERT
-void Threads::possibly_parallel_oops_do(bool is_par, OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf) {
+void Threads::possibly_parallel_oops_do(bool is_par, OopClosure* f, CodeBlobClosure* cf) {
int cp = Threads::thread_claim_parity();
ALL_JAVA_THREADS(p) {
if (p->claim_oops_do(is_par, cp)) {
- p->oops_do(f, cld_f, cf);
+ p->oops_do(f, cf);
}
}
VMThread* vmt = VMThread::vm_thread();
if (vmt->claim_oops_do(is_par, cp)) {
- vmt->oops_do(f, cld_f, cf);
+ vmt->oops_do(f, cf);
}
}
--- a/hotspot/src/share/vm/runtime/thread.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/runtime/thread.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -482,10 +482,9 @@
// GC support
// Apply "f->do_oop" to all root oops in "this".
- // Apply "cld_f->do_cld" to CLDs that are otherwise not kept alive.
// Used by JavaThread::oops_do.
// Apply "cf->do_code_blob" (if !NULL) to all code blobs active in frames
- virtual void oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf);
+ virtual void oops_do(OopClosure* f, CodeBlobClosure* cf);
// Handles the parallel case for the method below.
private:
@@ -1642,7 +1641,7 @@
void frames_do(void f(frame*, const RegisterMap*));
// Memory operations
- void oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf);
+ void oops_do(OopClosure* f, CodeBlobClosure* cf);
// Sweeper operations
virtual void nmethods_do(CodeBlobClosure* cf);
@@ -1995,7 +1994,7 @@
bool is_Code_cache_sweeper_thread() const { return true; }
// Prevent GC from unloading _scanned_nmethod
- void oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf);
+ void oops_do(OopClosure* f, CodeBlobClosure* cf);
void nmethods_do(CodeBlobClosure* cf);
};
@@ -2122,9 +2121,9 @@
// Apply "f->do_oop" to all root oops in all threads.
// This version may only be called by sequential code.
- static void oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf);
+ static void oops_do(OopClosure* f, CodeBlobClosure* cf);
// This version may be called by sequential or parallel code.
- static void possibly_parallel_oops_do(bool is_par, OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf);
+ static void possibly_parallel_oops_do(bool is_par, OopClosure* f, CodeBlobClosure* cf);
// This creates a list of GCTasks, one per thread.
static void create_thread_roots_tasks(GCTaskQueue* q);
// This creates a list of GCTasks, one per thread, for marking objects.
--- a/hotspot/src/share/vm/runtime/vmThread.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/runtime/vmThread.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -655,8 +655,8 @@
}
-void VMThread::oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf) {
- Thread::oops_do(f, cld_f, cf);
+void VMThread::oops_do(OopClosure* f, CodeBlobClosure* cf) {
+ Thread::oops_do(f, cf);
_vm_queue->oops_do(f);
}
@@ -688,5 +688,5 @@
#endif
void VMThread::verify() {
- oops_do(&VerifyOopClosure::verify_oop, NULL, NULL);
+ oops_do(&VerifyOopClosure::verify_oop, NULL);
}
--- a/hotspot/src/share/vm/runtime/vmThread.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/runtime/vmThread.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2016, 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
@@ -126,7 +126,7 @@
static VMThread* vm_thread() { return _vm_thread; }
// GC support
- void oops_do(OopClosure* f, CLDClosure* cld_f, CodeBlobClosure* cf);
+ void oops_do(OopClosure* f, CodeBlobClosure* cf);
void verify();
--- a/hotspot/src/share/vm/utilities/bitMap.cpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/utilities/bitMap.cpp Wed Apr 27 13:50:00 2016 +0200
@@ -271,10 +271,10 @@
par_put_range_within_word(bit_index(end_full_word), end, value);
}
-bool BitMap::contains(const BitMap other) const {
+bool BitMap::contains(const BitMap& other) const {
assert(size() == other.size(), "must have same size");
- bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* dest_map = map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size_in_words(); index++) {
bm_word_t word_union = dest_map[index] | other_map[index];
@@ -285,10 +285,10 @@
return true;
}
-bool BitMap::intersects(const BitMap other) const {
+bool BitMap::intersects(const BitMap& other) const {
assert(size() == other.size(), "must have same size");
- bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* dest_map = map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size_in_words(); index++) {
if ((dest_map[index] & other_map[index]) != 0) return true;
@@ -297,10 +297,10 @@
return false;
}
-void BitMap::set_union(BitMap other) {
+void BitMap::set_union(const BitMap& other) {
assert(size() == other.size(), "must have same size");
bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size_in_words(); index++) {
dest_map[index] = dest_map[index] | other_map[index];
@@ -308,10 +308,10 @@
}
-void BitMap::set_difference(BitMap other) {
+void BitMap::set_difference(const BitMap& other) {
assert(size() == other.size(), "must have same size");
bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size_in_words(); index++) {
dest_map[index] = dest_map[index] & ~(other_map[index]);
@@ -319,10 +319,10 @@
}
-void BitMap::set_intersection(BitMap other) {
+void BitMap::set_intersection(const BitMap& other) {
assert(size() == other.size(), "must have same size");
bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size; index++) {
dest_map[index] = dest_map[index] & other_map[index];
@@ -330,14 +330,14 @@
}
-void BitMap::set_intersection_at_offset(BitMap other, idx_t offset) {
+void BitMap::set_intersection_at_offset(const BitMap& other, idx_t offset) {
assert(other.size() >= offset, "offset not in range");
assert(other.size() - offset >= size(), "other not large enough");
// XXX Ideally, we would remove this restriction.
guarantee((offset % (sizeof(bm_word_t) * BitsPerByte)) == 0,
"Only handle aligned cases so far.");
bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* other_map = other.map();
idx_t offset_word_ind = word_index(offset);
idx_t size = size_in_words();
for (idx_t index = 0; index < size; index++) {
@@ -345,11 +345,11 @@
}
}
-bool BitMap::set_union_with_result(BitMap other) {
+bool BitMap::set_union_with_result(const BitMap& other) {
assert(size() == other.size(), "must have same size");
bool changed = false;
bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size; index++) {
idx_t temp = dest_map[index] | other_map[index];
@@ -360,11 +360,11 @@
}
-bool BitMap::set_difference_with_result(BitMap other) {
+bool BitMap::set_difference_with_result(const BitMap& other) {
assert(size() == other.size(), "must have same size");
bool changed = false;
bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size; index++) {
bm_word_t temp = dest_map[index] & ~(other_map[index]);
@@ -375,11 +375,11 @@
}
-bool BitMap::set_intersection_with_result(BitMap other) {
+bool BitMap::set_intersection_with_result(const BitMap& other) {
assert(size() == other.size(), "must have same size");
bool changed = false;
bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size; index++) {
bm_word_t orig = dest_map[index];
@@ -391,10 +391,10 @@
}
-void BitMap::set_from(BitMap other) {
+void BitMap::set_from(const BitMap& other) {
assert(size() == other.size(), "must have same size");
bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size; index++) {
dest_map[index] = other_map[index];
@@ -402,10 +402,10 @@
}
-bool BitMap::is_same(BitMap other) {
+bool BitMap::is_same(const BitMap& other) {
assert(size() == other.size(), "must have same size");
bm_word_t* dest_map = map();
- bm_word_t* other_map = other.map();
+ const bm_word_t* other_map = other.map();
idx_t size = size_in_words();
for (idx_t index = 0; index < size; index++) {
if (dest_map[index] != other_map[index]) return false;
@@ -414,7 +414,7 @@
}
bool BitMap::is_full() const {
- bm_word_t* word = map();
+ const bm_word_t* word = map();
idx_t rest = size();
for (; rest >= (idx_t) BitsPerWord; rest -= BitsPerWord) {
if (*word != ~(bm_word_t)0) return false;
@@ -425,7 +425,7 @@
bool BitMap::is_empty() const {
- bm_word_t* word = map();
+ const bm_word_t* word = map();
idx_t rest = size();
for (; rest >= (idx_t) BitsPerWord; rest -= BitsPerWord) {
if (*word != 0) return false;
--- a/hotspot/src/share/vm/utilities/bitMap.hpp Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/src/share/vm/utilities/bitMap.hpp Wed Apr 27 13:50:00 2016 +0200
@@ -70,11 +70,13 @@
static idx_t bit_index(idx_t word) { return word << LogBitsPerWord; }
// Return the array of bitmap words, or a specific word from it.
- bm_word_t* map() const { return _map; }
+ bm_word_t* map() { return _map; }
+ const bm_word_t* map() const { return _map; }
bm_word_t map(idx_t word) const { return _map[word]; }
// Return a pointer to the word containing the specified bit.
- bm_word_t* word_addr(idx_t bit) const { return map() + word_index(bit); }
+ bm_word_t* word_addr(idx_t bit) { return map() + word_index(bit); }
+ const bm_word_t* word_addr(idx_t bit) const { return map() + word_index(bit); }
// Set a word to a specified value or to all ones; clear a word.
void set_word (idx_t word, bm_word_t val) { _map[word] = val; }
@@ -237,19 +239,19 @@
idx_t count_one_bits() const;
// Set operations.
- void set_union(BitMap bits);
- void set_difference(BitMap bits);
- void set_intersection(BitMap bits);
+ void set_union(const BitMap& bits);
+ void set_difference(const BitMap& bits);
+ void set_intersection(const BitMap& bits);
// Returns true iff "this" is a superset of "bits".
- bool contains(const BitMap bits) const;
+ bool contains(const BitMap& bits) const;
// Returns true iff "this and "bits" have a non-empty intersection.
- bool intersects(const BitMap bits) const;
+ bool intersects(const BitMap& bits) const;
// Returns result of whether this map changed
// during the operation
- bool set_union_with_result(BitMap bits);
- bool set_difference_with_result(BitMap bits);
- bool set_intersection_with_result(BitMap bits);
+ bool set_union_with_result(const BitMap& bits);
+ bool set_difference_with_result(const BitMap& bits);
+ bool set_intersection_with_result(const BitMap& bits);
// Requires the submap of "bits" starting at offset to be at least as
// large as "this". Modifies "this" to be the intersection of its
@@ -258,11 +260,11 @@
// (For expedience, currently requires the offset to be aligned to the
// bitsize of a uintptr_t. This should go away in the future though it
// will probably remain a good case to optimize.)
- void set_intersection_at_offset(BitMap bits, idx_t offset);
+ void set_intersection_at_offset(const BitMap& bits, idx_t offset);
- void set_from(BitMap bits);
+ void set_from(const BitMap& bits);
- bool is_same(BitMap bits);
+ bool is_same(const BitMap& bits);
// Test if all bits are set or cleared
bool is_full() const;
--- a/hotspot/test/TEST.groups Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/TEST.groups Wed Apr 27 13:50:00 2016 +0200
@@ -353,7 +353,7 @@
runtime/ \
-runtime/ErrorHandling/ErrorHandler.java \
-runtime/RedefineObject/TestRedefineObject.java \
- -runtime/8003720/Test8003720.java \
+ -runtime/MirrorFrame/Test8003720.java \
-runtime/Metaspace/FragmentMetaspace.java \
-runtime/Metaspace/FragmentMetaspaceSimple.java \
-runtime/Thread/TestThreadDumpMonitorContention.java \
--- a/hotspot/test/compiler/compilercontrol/share/actions/BaseAction.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/compiler/compilercontrol/share/actions/BaseAction.java Wed Apr 27 13:50:00 2016 +0200
@@ -77,7 +77,7 @@
throw new Error("TESTBUG: incorrect argument: "+ args[1]);
}
}
- int pid;
+ long pid;
try {
pid = ProcessTools.getProcessId();
} catch (Exception e) {
--- a/hotspot/test/gc/TestDisableExplicitGC.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/gc/TestDisableExplicitGC.java Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
@@ -26,6 +26,7 @@
* @requires vm.opt.DisableExplicitGC == null
* @summary Verify GC behavior with DisableExplicitGC flag.
* @library /testlibrary
+ * @modules jdk.management/com.sun.management.internal
* @run main/othervm -Xlog:gc=debug TestDisableExplicitGC
* @run main/othervm/fail -XX:+DisableExplicitGC -Xlog:gc=debug TestDisableExplicitGC
* @run main/othervm -XX:-DisableExplicitGC -Xlog:gc=debug TestDisableExplicitGC
--- a/hotspot/test/gc/TestVerifySilently.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/gc/TestVerifySilently.java Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, 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
@@ -34,6 +34,7 @@
import jdk.test.lib.ProcessTools;
import java.util.ArrayList;
import java.util.Collections;
+import jdk.test.lib.Utils;
class RunSystemGC {
public static void main(String args[]) throws Exception {
@@ -43,19 +44,11 @@
public class TestVerifySilently {
- private static String[] getTestJavaOpts() {
- String testVmOptsStr = System.getProperty("test.java.opts");
- if (!testVmOptsStr.isEmpty()) {
- return testVmOptsStr.split(" ");
- } else {
- return new String[] {};
- }
- }
private static OutputAnalyzer runTest(boolean verifySilently) throws Exception {
ArrayList<String> vmOpts = new ArrayList();
- Collections.addAll(vmOpts, getTestJavaOpts());
+ Collections.addAll(vmOpts, Utils.getFilteredTestJavaOpts("-Xlog.*"));
Collections.addAll(vmOpts, new String[] {"-XX:+UnlockDiagnosticVMOptions",
"-XX:+VerifyDuringStartup",
"-XX:+VerifyBeforeGC",
--- a/hotspot/test/gc/TestVerifySubSet.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/gc/TestVerifySubSet.java Wed Apr 27 13:50:00 2016 +0200
@@ -34,6 +34,7 @@
import jdk.test.lib.ProcessTools;
import java.util.ArrayList;
import java.util.Collections;
+import jdk.test.lib.Utils;
class RunSystemGC {
public static void main(String args[]) throws Exception {
@@ -42,19 +43,11 @@
}
public class TestVerifySubSet {
- private static String[] getTestJavaOpts() {
- String testVmOptsStr = System.getProperty("test.java.opts");
- if (!testVmOptsStr.isEmpty()) {
- return testVmOptsStr.split(" ");
- } else {
- return new String[] {};
- }
- }
private static OutputAnalyzer runTest(String subset) throws Exception {
ArrayList<String> vmOpts = new ArrayList();
- Collections.addAll(vmOpts, getTestJavaOpts());
+ Collections.addAll(vmOpts, Utils.getFilteredTestJavaOpts("-Xlog.*"));
Collections.addAll(vmOpts, new String[] {"-XX:+UnlockDiagnosticVMOptions",
"-XX:+VerifyBeforeGC",
"-XX:+VerifyAfterGC",
--- a/hotspot/test/gc/g1/TestGreyReclaimedHumongousObjects.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/gc/g1/TestGreyReclaimedHumongousObjects.java Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
@@ -27,6 +27,7 @@
* @requires vm.gc == "G1" | vm.gc == "null"
* @summary Test handling of marked but unscanned reclaimed humongous objects.
* @key gc
+ * @modules jdk.management
* @run main/othervm -XX:+UseG1GC -Xss32m -Xmx128m -XX:G1HeapRegionSize=1m
* -XX:+UnlockExperimentalVMOptions
* -XX:+G1EagerReclaimHumongousObjects
--- a/hotspot/test/gc/g1/humongousObjects/TestHumongousClassLoader.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/gc/g1/humongousObjects/TestHumongousClassLoader.java Wed Apr 27 13:50:00 2016 +0200
@@ -51,7 +51,7 @@
* @run driver ClassFileInstaller sun.hotspot.WhiteBox
* sun.hotspot.WhiteBox$WhiteBoxPermission
*
- * @run main/othervm/timeout=240 -Xms256M -Xmx256M -XX:+WhiteBoxAPI -Xbootclasspath/a:.
+ * @run main/othervm/timeout=240 -Xms256M -Xmx256M -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xbootclasspath/a:.
* gc.g1.humongousObjects.ClassLoaderGenerator 1
*
* @run main/othervm -Xms256M -Xmx256M -XX:+UseG1GC -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xbootclasspath/a:.
--- a/hotspot/test/gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/gc/metaspace/CompressedClassSpaceSizeInJmapHeap.java Wed Apr 27 13:50:00 2016 +0200
@@ -49,7 +49,7 @@
return;
}
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
JDKToolLauncher jmap = JDKToolLauncher.create("jmap")
.addToolArg("-heap")
--- a/hotspot/test/gc/metaspace/PerfCounters.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/gc/metaspace/PerfCounters.java Wed Apr 27 13:50:00 2016 +0200
@@ -40,7 +40,7 @@
static {
try {
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
VmIdentifier vmId = new VmIdentifier(pid);
MonitoredHost host = MonitoredHost.getMonitoredHost(vmId);
vm = host.getMonitoredVm(vmId);
--- a/hotspot/test/gc/parallel/TestDynShrinkHeap.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/gc/parallel/TestDynShrinkHeap.java Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, 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
@@ -26,6 +26,7 @@
* @bug 8016479
* @requires vm.gc=="Parallel" | vm.gc=="null"
* @summary Verify that the heap shrinks after full GC according to the current values of the Min/MaxHeapFreeRatio flags
+ * @modules jdk.management
* @library /testlibrary
* @run main/othervm -XX:+UseAdaptiveSizePolicyWithSystemGC -XX:+UseParallelGC -XX:MinHeapFreeRatio=0 -XX:MaxHeapFreeRatio=100 -Xmx1g -verbose:gc TestDynShrinkHeap
*/
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/gc/stress/TestStressG1Humongous.java Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,201 @@
+/*
+ * Copyright (c) 2016, 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.
+ *
+ * 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.
+ */
+
+ /*
+ * @test TestStressG1Humongous
+ * @key gc
+ * @key stress
+ * @summary Stress G1 by humongous allocations in situation near OOM
+ * @requires vm.gc=="G1" | vm.gc=="null"
+ * @run main/othervm/timeout=200 -Xlog:gc=debug -Xmx1g -XX:+UseG1GC -XX:G1HeapRegionSize=4m
+ * -Dtimeout=120 -Dthreads=3 -Dhumongoussize=1.1 -Dregionsize=4 TestStressG1Humongous
+ * @run main/othervm/timeout=200 -Xlog:gc=debug -Xmx1g -XX:+UseG1GC -XX:G1HeapRegionSize=16m
+ * -Dtimeout=120 -Dthreads=5 -Dhumongoussize=2.1 -Dregionsize=16 TestStressG1Humongous
+ * @run main/othervm/timeout=200 -Xlog:gc=debug -Xmx1g -XX:+UseG1GC -XX:G1HeapRegionSize=32m
+ * -Dtimeout=120 -Dthreads=4 -Dhumongoussize=0.6 -Dregionsize=32 TestStressG1Humongous
+ * @run main/othervm/timeout=700 -Xlog:gc=debug -Xmx1g -XX:+UseG1GC -XX:G1HeapRegionSize=1m
+ * -Dtimeout=600 -Dthreads=7 -Dhumongoussize=0.6 -Dregionsize=1 TestStressG1Humongous
+ */
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Collections;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.atomic.AtomicInteger;
+
+public class TestStressG1Humongous {
+
+ // Timeout in seconds
+ private static final int TIMEOUT = Integer.getInteger("timeout", 60);
+ private static final int THREAD_COUNT = Integer.getInteger("threads", 2);
+ private static final int REGION_SIZE = Integer.getInteger("regionsize", 1) * 1024 * 1024;
+ private static final int HUMONGOUS_SIZE = (int) (REGION_SIZE * Double.parseDouble(System.getProperty("humongoussize", "1.5")));
+
+ private volatile boolean isRunning;
+ private final ExecutorService threadExecutor;
+ private final AtomicInteger alocatedObjectsCount;
+ private CountDownLatch countDownLatch;
+ public static final List<Object> GARBAGE = Collections.synchronizedList(new ArrayList<>());
+
+ public static void main(String[] args) throws InterruptedException {
+ new TestStressG1Humongous().run();
+ }
+
+ public TestStressG1Humongous() {
+ isRunning = true;
+ threadExecutor = Executors.newFixedThreadPool(THREAD_COUNT + 1);
+ alocatedObjectsCount = new AtomicInteger(0);
+ }
+
+ private void run() throws InterruptedException {
+ threadExecutor.submit(new Timer());
+ int checkedAmountOfHObjects = getExpectedAmountOfObjects();
+ while (isRunning()) {
+ countDownLatch = new CountDownLatch(THREAD_COUNT);
+ startAllocationThreads(checkedAmountOfHObjects);
+ countDownLatch.await();
+ GARBAGE.clear();
+ System.out.println("Allocated " + alocatedObjectsCount.get() + " objects.");
+ alocatedObjectsCount.set(0);
+ }
+ threadExecutor.shutdown();
+ System.out.println("Done!");
+ }
+
+ /**
+ * Tries to fill available memory with humongous objects to get expected amount.
+ * @return expected amount of humongous objects
+ */
+ private int getExpectedAmountOfObjects() {
+ long maxMem = Runtime.getRuntime().maxMemory();
+ int expectedHObjects = (int) (maxMem / HUMONGOUS_SIZE);
+ // Will allocate 1 region less to give some free space for VM.
+ int checkedAmountOfHObjects = checkHeapCapacity(expectedHObjects) - 1;
+ return checkedAmountOfHObjects;
+ }
+
+ /**
+ * Starts several threads to allocate the requested amount of humongous objects.
+ * @param totalObjects total amount of object that will be created
+ */
+ private void startAllocationThreads(int totalObjects) {
+ int objectsPerThread = totalObjects / THREAD_COUNT;
+ int objectsForLastThread = objectsPerThread + totalObjects % THREAD_COUNT;
+ for (int i = 0; i < THREAD_COUNT - 1; ++i) {
+ threadExecutor.submit(new AllocationThread(countDownLatch, objectsPerThread, alocatedObjectsCount));
+ }
+ threadExecutor.submit(new AllocationThread(countDownLatch, objectsForLastThread, alocatedObjectsCount));
+ }
+
+ /**
+ * Creates a humongous object of the predefined size.
+ */
+ private void createObject() {
+ GARBAGE.add(new byte[HUMONGOUS_SIZE]);
+ }
+
+ /**
+ * Tries to create the requested amount of humongous objects.
+ * In case of OOME, stops creating and cleans the created garbage.
+ * @param expectedObjects amount of objects based on heap size
+ * @return amount of created objects
+ */
+ private int checkHeapCapacity(int expectedObjects) {
+ int allocated = 0;
+ try {
+ while (isRunning() && allocated < expectedObjects) {
+ createObject();
+ ++allocated;
+ }
+ } catch (OutOfMemoryError oome) {
+ GARBAGE.clear();
+ }
+ return allocated;
+ }
+
+ private void setDone() {
+ isRunning = false;
+ }
+
+ private boolean isRunning() {
+ return isRunning;
+ }
+
+ /**
+ * Thread which allocates requested amount of humongous objects.
+ */
+ private class AllocationThread implements Runnable {
+
+ private final int totalObjects;
+ private final CountDownLatch cdl;
+ private final AtomicInteger allocationCounter;
+
+ /**
+ * Creates allocation thread
+ * @param cdl CountDownLatch
+ * @param objects amount of objects to allocate
+ * @param counter
+ */
+ public AllocationThread(CountDownLatch cdl, int objects, AtomicInteger counter) {
+ totalObjects = objects;
+ this.cdl = cdl;
+ allocationCounter = counter;
+ }
+
+ @Override
+ public void run() {
+ int allocatedObjects = 0;
+ try {
+ while (isRunning && allocatedObjects < totalObjects) {
+ createObject();
+ allocatedObjects++;
+ allocationCounter.incrementAndGet();
+ }
+
+ } catch (OutOfMemoryError oome) {
+ GARBAGE.clear();
+ System.out.print("OOME was caught.");
+ System.out.println(" Allocated in thread: " + allocatedObjects + " . Totally allocated: " + allocationCounter.get() + ".");
+ } finally {
+ cdl.countDown();
+ }
+ }
+ }
+
+ /**
+ * Simple Runnable which waits TIMEOUT and sets isRunning to false.
+ */
+ class Timer implements Runnable {
+
+ @Override
+ public void run() {
+ try {
+ Thread.sleep(TIMEOUT * 1000);
+ } catch (InterruptedException ex) {
+ }
+ setDone();
+ }
+ }
+}
--- a/hotspot/test/runtime/8003720/Asmator.java Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-/*
- * Copyright (c) 2012, 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.
- *
- * 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.
- *
- */
-
-import jdk.internal.org.objectweb.asm.*;
-
-class Asmator {
- static byte[] fixup(byte[] buf) throws java.io.IOException {
- ClassReader cr = new ClassReader(buf);
- ClassWriter cw = new ClassWriter(0);
- ClassVisitor cv = new ClassVisitor(Opcodes.ASM4, cw) {
- public MethodVisitor visitMethod(
- final int access,
- final String name,
- final String desc,
- final String signature,
- final String[] exceptions)
- {
- MethodVisitor mv = super.visitMethod(access,
- name,
- desc,
- signature,
- exceptions);
- if (mv == null) return null;
- if (name.equals("callme")) {
- // make receiver go dead!
- mv.visitInsn(Opcodes.ACONST_NULL);
- mv.visitVarInsn(Opcodes.ASTORE, 0);
- }
- return mv;
- }
- };
- cr.accept(cv, 0);
- return cw.toByteArray();
- }
-}
--- a/hotspot/test/runtime/8003720/Test8003720.java Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
-/*
- * Copyright (c) 2012, 2015, 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.
- *
- * 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.
- *
- */
-
-/*
- * @test
- * @bug 8003720
- * @summary Method in interpreter stack frame can be deallocated
- * @modules java.base/jdk.internal.org.objectweb.asm
- * java.base/jdk.internal.misc
- * @compile -XDignore.symbol.file Victim.java
- * @run main/othervm -Xverify:all -Xint Test8003720
- */
-
-// Attempts to make the JVM unload a class while still executing one of its methods.
-public class Test8003720 {
- final static String VICTIM_CLASS_NAME = "Victim";
- final static boolean QUIET = true;
- final static long DURATION = 30000;
-
- public interface CallMe { void callme(); }
-
- public static void main(String... av) throws Throwable {
- newVictimClassLoader();
- System.gc();
-
- newVictimClass();
- System.gc();
-
- newVictimInstance();
- System.gc();
-
- ((CallMe)newVictimInstance()).callme();
- }
-
- public static Object newVictimInstance() throws Throwable {
- return newVictimClass().newInstance();
- }
-
- public static Class<?> newVictimClass() throws Throwable {
- return Class.forName(VICTIM_CLASS_NAME, true, new VictimClassLoader());
- }
-
- public static ClassLoader newVictimClassLoader() throws Throwable {
- return new VictimClassLoader();
- }
-
- public static void println(String line) {
- if (!QUIET) {
- System.out.println(line);
- }
- }
-}
--- a/hotspot/test/runtime/8003720/Victim.java Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-/*
- * Copyright (c) 2012, 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.
- *
- * 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.
- *
- */
-
-public class Victim implements Test8003720.CallMe {
- public void callme() {
- // note: Victim.this is dead here
- Test8003720.println("executing in loader=" + Victim.class.getClassLoader());
-
- long now = System.currentTimeMillis();
-
- while ((System.currentTimeMillis() - now) < Test8003720.DURATION) {
- long count = VictimClassLoader.counter++;
- if (count % 1000000 == 0) System.gc();
- if (count % 16180000 == 0) blurb();
- new Object[1].clone();
- }
- }
- static void blurb() {
- Test8003720.println("count=" + VictimClassLoader.counter);
- }
- static {
- blather();
- }
- static void blather() {
- new java.util.ArrayList<Object>(1000000);
- Class<Victim> c = Victim.class;
- Test8003720.println("initializing " + c + "#" + System.identityHashCode(c) + " in " + c.getClassLoader());
- }
-}
--- a/hotspot/test/runtime/8003720/VictimClassLoader.java Wed Apr 27 13:01:04 2016 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-/*
- * Copyright (c) 2012, 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.
- *
- * 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.
- *
- */
-
-public class VictimClassLoader extends ClassLoader {
- public static long counter = 0;
-
- private int which = (int) ++counter;
-
- protected VictimClassLoader() {
- super(VictimClassLoader.class.getClassLoader());
- }
-
- protected Class loadClass(String name, boolean resolve) throws ClassNotFoundException {
- Class c;
- if (!name.endsWith("Victim")) {
- c = super.loadClass(name, resolve);
- return c;
- }
-
- c = findLoadedClass(name);
- if (c != null) {
- return c;
- }
-
- byte[] buf = readClassFile(name);
- c = defineClass(name, buf, 0, buf.length);
- resolveClass(c);
-
- if (c.getClassLoader() != this) {
- throw new AssertionError();
- }
-
- Test8003720.println("loaded " + c + "#" + System.identityHashCode(c) + " in " + c.getClassLoader());
- return c;
- }
-
- static byte[] readClassFile(String name) {
- try {
- String rname = name.substring(name.lastIndexOf('.') + 1) + ".class";
- java.net.URL url = VictimClassLoader.class.getResource(rname);
- Test8003720.println("found " + rname + " = " + url);
-
- java.net.URLConnection connection = url.openConnection();
- int contentLength = connection.getContentLength();
- byte[] buf = readFully(connection.getInputStream(), contentLength);
-
- return Asmator.fixup(buf);
- } catch (java.io.IOException ex) {
- throw new Error(ex);
- }
- }
-
- static byte[] readFully(java.io.InputStream in, int len) throws java.io.IOException {
- byte[] b = in.readAllBytes();
- if (len != -1 && b.length != len)
- throw new java.io.IOException("Expected:" + len + ", actual:" + b.length);
- return b;
- }
-
- public void finalize() {
- Test8003720.println("Goodbye from " + this);
- }
-
- public String toString() {
- return "VictimClassLoader#" + which;
- }
-}
--- a/hotspot/test/runtime/CommandLine/PrintTouchedMethods.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/CommandLine/PrintTouchedMethods.java Wed Apr 27 13:50:00 2016 +0200
@@ -106,7 +106,7 @@
output.shouldHaveExitValue(0);
// Test jcmd PrintTouchedMethods VM.print_touched_methods
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
pb = new ProcessBuilder();
pb.command(new String[] {JDKToolFinder.getJDKTool("jcmd"), pid, "VM.print_touched_methods"});
output = new OutputAnalyzer(pb.start());
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/MirrorFrame/Asmator.java Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2012, 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.
+ *
+ * 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.
+ *
+ */
+
+import jdk.internal.org.objectweb.asm.*;
+
+class Asmator {
+ static byte[] fixup(byte[] buf) throws java.io.IOException {
+ ClassReader cr = new ClassReader(buf);
+ ClassWriter cw = new ClassWriter(0);
+ ClassVisitor cv = new ClassVisitor(Opcodes.ASM4, cw) {
+ public MethodVisitor visitMethod(
+ final int access,
+ final String name,
+ final String desc,
+ final String signature,
+ final String[] exceptions)
+ {
+ MethodVisitor mv = super.visitMethod(access,
+ name,
+ desc,
+ signature,
+ exceptions);
+ if (mv == null) return null;
+ if (name.equals("callme")) {
+ // make receiver go dead!
+ mv.visitInsn(Opcodes.ACONST_NULL);
+ mv.visitVarInsn(Opcodes.ASTORE, 0);
+ }
+ return mv;
+ }
+ };
+ cr.accept(cv, 0);
+ return cw.toByteArray();
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/MirrorFrame/Test8003720.java Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,73 @@
+/*
+ * Copyright (c) 2012, 2015, 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.
+ *
+ * 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.
+ *
+ */
+
+/*
+ * @test
+ * @bug 8003720
+ * @summary Method in interpreter stack frame can be deallocated
+ * @modules java.base/jdk.internal.org.objectweb.asm
+ * java.base/jdk.internal.misc
+ * @compile -XDignore.symbol.file Victim.java
+ * @run main/othervm -Xverify:all -Xint Test8003720
+ */
+
+// Attempts to make the JVM unload a class while still executing one of its methods.
+public class Test8003720 {
+ final static String VICTIM_CLASS_NAME = "Victim";
+ final static boolean QUIET = true;
+ final static long DURATION = 30000;
+
+ public interface CallMe { void callme(); }
+
+ public static void main(String... av) throws Throwable {
+ newVictimClassLoader();
+ System.gc();
+
+ newVictimClass();
+ System.gc();
+
+ newVictimInstance();
+ System.gc();
+
+ ((CallMe)newVictimInstance()).callme();
+ }
+
+ public static Object newVictimInstance() throws Throwable {
+ return newVictimClass().newInstance();
+ }
+
+ public static Class<?> newVictimClass() throws Throwable {
+ return Class.forName(VICTIM_CLASS_NAME, true, new VictimClassLoader());
+ }
+
+ public static ClassLoader newVictimClassLoader() throws Throwable {
+ return new VictimClassLoader();
+ }
+
+ public static void println(String line) {
+ if (!QUIET) {
+ System.out.println(line);
+ }
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/MirrorFrame/Victim.java Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2012, 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.
+ *
+ * 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.
+ *
+ */
+
+public class Victim implements Test8003720.CallMe {
+ public void callme() {
+ // note: Victim.this is dead here
+ Test8003720.println("executing in loader=" + Victim.class.getClassLoader());
+
+ long now = System.currentTimeMillis();
+
+ while ((System.currentTimeMillis() - now) < Test8003720.DURATION) {
+ long count = VictimClassLoader.counter++;
+ if (count % 1000000 == 0) System.gc();
+ if (count % 16180000 == 0) blurb();
+ new Object[1].clone();
+ }
+ }
+ static void blurb() {
+ Test8003720.println("count=" + VictimClassLoader.counter);
+ }
+ static {
+ blather();
+ }
+ static void blather() {
+ new java.util.ArrayList<Object>(1000000);
+ Class<Victim> c = Victim.class;
+ Test8003720.println("initializing " + c + "#" + System.identityHashCode(c) + " in " + c.getClassLoader());
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hotspot/test/runtime/MirrorFrame/VictimClassLoader.java Wed Apr 27 13:50:00 2016 +0200
@@ -0,0 +1,88 @@
+/*
+ * Copyright (c) 2012, 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.
+ *
+ * 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.
+ *
+ */
+
+public class VictimClassLoader extends ClassLoader {
+ public static long counter = 0;
+
+ private int which = (int) ++counter;
+
+ protected VictimClassLoader() {
+ super(VictimClassLoader.class.getClassLoader());
+ }
+
+ protected Class loadClass(String name, boolean resolve) throws ClassNotFoundException {
+ Class c;
+ if (!name.endsWith("Victim")) {
+ c = super.loadClass(name, resolve);
+ return c;
+ }
+
+ c = findLoadedClass(name);
+ if (c != null) {
+ return c;
+ }
+
+ byte[] buf = readClassFile(name);
+ c = defineClass(name, buf, 0, buf.length);
+ resolveClass(c);
+
+ if (c.getClassLoader() != this) {
+ throw new AssertionError();
+ }
+
+ Test8003720.println("loaded " + c + "#" + System.identityHashCode(c) + " in " + c.getClassLoader());
+ return c;
+ }
+
+ static byte[] readClassFile(String name) {
+ try {
+ String rname = name.substring(name.lastIndexOf('.') + 1) + ".class";
+ java.net.URL url = VictimClassLoader.class.getResource(rname);
+ Test8003720.println("found " + rname + " = " + url);
+
+ java.net.URLConnection connection = url.openConnection();
+ int contentLength = connection.getContentLength();
+ byte[] buf = readFully(connection.getInputStream(), contentLength);
+
+ return Asmator.fixup(buf);
+ } catch (java.io.IOException ex) {
+ throw new Error(ex);
+ }
+ }
+
+ static byte[] readFully(java.io.InputStream in, int len) throws java.io.IOException {
+ byte[] b = in.readAllBytes();
+ if (len != -1 && b.length != len)
+ throw new java.io.IOException("Expected:" + len + ", actual:" + b.length);
+ return b;
+ }
+
+ public void finalize() {
+ Test8003720.println("Goodbye from " + this);
+ }
+
+ public String toString() {
+ return "VictimClassLoader#" + which;
+ }
+}
--- a/hotspot/test/runtime/NMT/BaselineWithParameter.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/BaselineWithParameter.java Wed Apr 27 13:50:00 2016 +0200
@@ -38,7 +38,7 @@
public static void main(String args[]) throws Exception {
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
OutputAnalyzer output;
ProcessBuilder pb = new ProcessBuilder();
--- a/hotspot/test/runtime/NMT/JcmdBaselineDetail.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/JcmdBaselineDetail.java Wed Apr 27 13:50:00 2016 +0200
@@ -37,7 +37,7 @@
public static void main(String args[]) throws Exception {
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
OutputAnalyzer output;
ProcessBuilder pb = new ProcessBuilder();
--- a/hotspot/test/runtime/NMT/JcmdDetailDiff.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/JcmdDetailDiff.java Wed Apr 27 13:50:00 2016 +0200
@@ -45,7 +45,7 @@
ProcessBuilder pb = new ProcessBuilder();
OutputAnalyzer output;
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
long commitSize = 128 * 1024;
long reserveSize = 256 * 1024;
--- a/hotspot/test/runtime/NMT/JcmdScale.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/JcmdScale.java Wed Apr 27 13:50:00 2016 +0200
@@ -39,7 +39,7 @@
ProcessBuilder pb = new ProcessBuilder();
OutputAnalyzer output;
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
pb.command(new String[] { JDKToolFinder.getJDKTool("jcmd"), pid, "VM.native_memory", "scale=KB"});
output = new OutputAnalyzer(pb.start());
--- a/hotspot/test/runtime/NMT/JcmdScaleDetail.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/JcmdScaleDetail.java Wed Apr 27 13:50:00 2016 +0200
@@ -39,7 +39,7 @@
ProcessBuilder pb = new ProcessBuilder();
OutputAnalyzer output;
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
pb.command(new String[] { JDKToolFinder.getJDKTool("jcmd"), pid, "VM.native_memory", "scale=KB"});
output = new OutputAnalyzer(pb.start());
--- a/hotspot/test/runtime/NMT/JcmdSummaryDiff.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/JcmdSummaryDiff.java Wed Apr 27 13:50:00 2016 +0200
@@ -45,7 +45,7 @@
ProcessBuilder pb = new ProcessBuilder();
OutputAnalyzer output;
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
long commitSize = 128 * 1024;
long reserveSize = 256 * 1024;
--- a/hotspot/test/runtime/NMT/JcmdWithNMTDisabled.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/JcmdWithNMTDisabled.java Wed Apr 27 13:50:00 2016 +0200
@@ -60,7 +60,7 @@
}
// Grab my own PID
- pid = Integer.toString(ProcessTools.getProcessId());
+ pid = Long.toString(ProcessTools.getProcessId());
jcmdCommand("summary");
jcmdCommand("detail");
--- a/hotspot/test/runtime/NMT/MallocRoundingReportTest.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/MallocRoundingReportTest.java Wed Apr 27 13:50:00 2016 +0200
@@ -46,7 +46,7 @@
WhiteBox wb = WhiteBox.getWhiteBox();
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
long[] additionalBytes = {0, 1, 512, 650};
--- a/hotspot/test/runtime/NMT/MallocSiteHashOverflow.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/MallocSiteHashOverflow.java Wed Apr 27 13:50:00 2016 +0200
@@ -48,7 +48,7 @@
int MAX_HASH_SIZE = wb.NMTGetHashSize();
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
// Verify that current tracking level is "detail"
--- a/hotspot/test/runtime/NMT/MallocStressTest.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/MallocStressTest.java Wed Apr 27 13:50:00 2016 +0200
@@ -74,7 +74,7 @@
whiteBox = WhiteBox.getWhiteBox();
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
AllocThread[] alloc_threads = new AllocThread[256];
--- a/hotspot/test/runtime/NMT/MallocTestType.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/MallocTestType.java Wed Apr 27 13:50:00 2016 +0200
@@ -44,7 +44,7 @@
WhiteBox wb = WhiteBox.getWhiteBox();
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
// Use WB API to alloc and free with the mtTest type
--- a/hotspot/test/runtime/NMT/MallocTrackingVerify.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/MallocTrackingVerify.java Wed Apr 27 13:50:00 2016 +0200
@@ -53,7 +53,7 @@
OutputAnalyzer output;
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
Random random = new Random();
--- a/hotspot/test/runtime/NMT/ReleaseNoCommit.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/ReleaseNoCommit.java Wed Apr 27 13:50:00 2016 +0200
@@ -49,7 +49,7 @@
ProcessBuilder pb = new ProcessBuilder();
OutputAnalyzer output;
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
addr = wb.NMTReserveMemory(reserveSize);
// Check for reserved
--- a/hotspot/test/runtime/NMT/ShutdownTwice.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/ShutdownTwice.java Wed Apr 27 13:50:00 2016 +0200
@@ -37,7 +37,7 @@
public static void main(String args[]) throws Exception {
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
OutputAnalyzer output;
ProcessBuilder pb = new ProcessBuilder();
--- a/hotspot/test/runtime/NMT/SummaryAfterShutdown.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/SummaryAfterShutdown.java Wed Apr 27 13:50:00 2016 +0200
@@ -38,7 +38,7 @@
public static void main(String args[]) throws Exception {
OutputAnalyzer output;
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
// Run 'jcmd <pid> VM.native_memory shutdown'
--- a/hotspot/test/runtime/NMT/SummarySanityCheck.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/SummarySanityCheck.java Wed Apr 27 13:50:00 2016 +0200
@@ -45,7 +45,7 @@
private static String jcmdout;
public static void main(String args[]) throws Exception {
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
--- a/hotspot/test/runtime/NMT/ThreadedMallocTestType.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/ThreadedMallocTestType.java Wed Apr 27 13:50:00 2016 +0200
@@ -46,7 +46,7 @@
final WhiteBox wb = WhiteBox.getWhiteBox();
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
Thread allocThread = new Thread() {
--- a/hotspot/test/runtime/NMT/ThreadedVirtualAllocTestType.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/ThreadedVirtualAllocTestType.java Wed Apr 27 13:50:00 2016 +0200
@@ -45,7 +45,7 @@
public static void main(String args[]) throws Exception {
OutputAnalyzer output;
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
Thread reserveThread = new Thread() {
--- a/hotspot/test/runtime/NMT/VirtualAllocCommitUncommitRecommit.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/VirtualAllocCommitUncommitRecommit.java Wed Apr 27 13:50:00 2016 +0200
@@ -48,7 +48,7 @@
long reserveSize = 4 * 1024 * 1024; // 4096KB
long addr;
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
// reserve
--- a/hotspot/test/runtime/NMT/VirtualAllocTestType.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/NMT/VirtualAllocTestType.java Wed Apr 27 13:50:00 2016 +0200
@@ -46,7 +46,7 @@
long reserveSize = 256 * 1024;
long addr;
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
addr = wb.NMTReserveMemory(reserveSize);
--- a/hotspot/test/runtime/SharedArchiveFile/DumpSymbolAndStringTable.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/SharedArchiveFile/DumpSymbolAndStringTable.java Wed Apr 27 13:50:00 2016 +0200
@@ -36,7 +36,7 @@
public class DumpSymbolAndStringTable {
public static void main(String[] args) throws Exception {
// Grab my own PID
- String pid = Integer.toString(ProcessTools.getProcessId());
+ String pid = Long.toString(ProcessTools.getProcessId());
ProcessBuilder pb = new ProcessBuilder();
pb.command(new String[] {JDKToolFinder.getJDKTool("jcmd"), pid, "VM.symboltable", "-verbose"});
--- a/hotspot/test/runtime/modules/getModuleJNI/GetModule.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/runtime/modules/getModuleJNI/GetModule.java Wed Apr 27 13:50:00 2016 +0200
@@ -42,10 +42,22 @@
public static void main(String[] args) {
Module module;
+ Module javaBaseModule;
+
+ // Module for primitive type, should be "java.base"
+ java.lang.Integer primitive_int = 1;
+ try {
+ javaBaseModule = (Module)callGetModule(primitive_int.getClass());
+ if (!javaBaseModule.getName().equals("java.base")) {
+ throw new RuntimeException("Unexpected module name for primitive type: " +
+ javaBaseModule.getName());
+ }
+ } catch(Throwable e) {
+ throw new RuntimeException("Unexpected exception for Integer: " + e.toString());
+ }
// Module for array of primitives, should be "java.base"
int[] int_array = {1, 2, 3};
- Module javaBaseModule;
try {
javaBaseModule = (Module)callGetModule(int_array.getClass());
if (!javaBaseModule.getName().equals("java.base")) {
@@ -56,7 +68,19 @@
throw new RuntimeException("Unexpected exception for [I: " + e.toString());
}
- // Module for java.lang.String
+ // Module for multi-dimensional array of primitives, should be "java.base"
+ int[][] multi_int_array = { {1, 2, 3}, {4, 5, 6} };
+ try {
+ javaBaseModule = (Module)callGetModule(multi_int_array.getClass());
+ if (!javaBaseModule.getName().equals("java.base")) {
+ throw new RuntimeException("Unexpected module name for multi-dimensional array of primitives: " +
+ javaBaseModule.getName());
+ }
+ } catch(Throwable e) {
+ throw new RuntimeException("Unexpected exception for multi-dimensional Integer array: " + e.toString());
+ }
+
+ // Module for java.lang.String, should be "java.base"
java.lang.String str = "abc";
try {
module = (Module)callGetModule(str.getClass());
@@ -68,6 +92,30 @@
throw new RuntimeException("Unexpected exception for String: " + e.toString());
}
+ // Module for array of java.lang.Strings, should be "java.base"
+ java.lang.String[] str_array = {"a", "b", "c"};
+ try {
+ javaBaseModule = (Module)callGetModule(str_array.getClass());
+ if (!javaBaseModule.getName().equals("java.base")) {
+ throw new RuntimeException("Unexpected module name for array of Strings: " +
+ javaBaseModule.getName());
+ }
+ } catch(Throwable e) {
+ throw new RuntimeException("Unexpected exception for String array: " + e.toString());
+ }
+
+ // Module for multi-dimensional array of java.lang.Strings, should be "java.base"
+ java.lang.String[][] multi_str_array = { {"a", "b", "c"}, {"d", "e", "f"} };
+ try {
+ javaBaseModule = (Module)callGetModule(multi_str_array.getClass());
+ if (!javaBaseModule.getName().equals("java.base")) {
+ throw new RuntimeException("Unexpected module name for multi-dimensional array of Strings: " +
+ javaBaseModule.getName());
+ }
+ } catch(Throwable e) {
+ throw new RuntimeException("Unexpected exception for multidimensional String array: " + e.toString());
+ }
+
// Module for java.lang.management.LockInfo
try {
LockInfo li = new LockInfo("java.lang.Class", 57);
--- a/hotspot/test/serviceability/dcmd/gc/FinalizerInfoTest.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/serviceability/dcmd/gc/FinalizerInfoTest.java Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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
@@ -36,6 +36,8 @@
* @test
* @summary
* @library /testlibrary
+ * @modules java.xml
+ * java.management
* @build jdk.test.lib.*
* @build jdk.test.lib.dcmd.*
* @run testng FinalizerInfoTest
--- a/hotspot/test/serviceability/dcmd/gc/HeapInfoTest.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/serviceability/dcmd/gc/HeapInfoTest.java Wed Apr 27 13:50:00 2016 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2015, 2016, 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,6 +35,8 @@
* @test
* @summary Test of diagnostic command GC.heap_info
* @library /testlibrary
+ * @modules java.xml
+ * java.management
* @build jdk.test.lib.*
* @build jdk.test.lib.dcmd.*
* @run testng HeapInfoTest
--- a/hotspot/test/serviceability/sa/jmap-hashcode/Test8028623.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/serviceability/sa/jmap-hashcode/Test8028623.java Wed Apr 27 13:50:00 2016 +0200
@@ -55,11 +55,11 @@
System.out.println("SA attach not expected to work - test skipped.");
return;
}
- int pid = ProcessTools.getProcessId();
+ long pid = ProcessTools.getProcessId();
JDKToolLauncher jmap = JDKToolLauncher.create("jmap")
.addToolArg("-F")
.addToolArg("-dump:live,format=b,file=" + dumpFile)
- .addToolArg(Integer.toString(pid));
+ .addToolArg(Long.toString(pid));
ProcessBuilder pb = new ProcessBuilder(jmap.getCommand());
OutputBuffer output = ProcessTools.getOutput(pb);
Process p = pb.start();
--- a/hotspot/test/testlibrary/jdk/test/lib/ProcessTools.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/testlibrary/jdk/test/lib/ProcessTools.java Wed Apr 27 13:50:00 2016 +0200
@@ -90,11 +90,8 @@
*
* @return Process id
*/
- public static int getProcessId() throws Exception {
- RuntimeMXBean runtime = ManagementFactory.getRuntimeMXBean();
- int pid = Integer.parseInt(runtime.getName().split("@")[0]);
-
- return pid;
+ public static long getProcessId() throws Exception {
+ return ProcessHandle.current().getPid();
}
/**
--- a/hotspot/test/testlibrary/jdk/test/lib/dcmd/FileJcmdExecutor.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/testlibrary/jdk/test/lib/dcmd/FileJcmdExecutor.java Wed Apr 27 13:50:00 2016 +0200
@@ -55,7 +55,7 @@
File cmdFile = createTempFile();
writeCommandToTemporaryFile(cmd, cmdFile);
- return Arrays.asList(jcmdBinary, Integer.toString(pid),
+ return Arrays.asList(jcmdBinary, Long.toString(pid),
"-f", cmdFile.getAbsolutePath());
}
--- a/hotspot/test/testlibrary/jdk/test/lib/dcmd/PidJcmdExecutor.java Wed Apr 27 13:01:04 2016 +0200
+++ b/hotspot/test/testlibrary/jdk/test/lib/dcmd/PidJcmdExecutor.java Wed Apr 27 13:50:00 2016 +0200
@@ -32,7 +32,7 @@
* Executes Diagnostic Commands on the target VM (specified by pid) using the jcmd tool
*/
public class PidJcmdExecutor extends JcmdExecutor {
- protected final int pid;
+ protected final long pid;
/**
* Instantiates a new PidJcmdExecutor targeting the current VM
@@ -53,11 +53,11 @@
*/
public PidJcmdExecutor(String target) {
super();
- pid = Integer.valueOf(target);
+ pid = Long.valueOf(target);
}
protected List<String> createCommandLine(String cmd) throws CommandExecutorException {
- return Arrays.asList(jcmdBinary, Integer.toString(pid), cmd);
+ return Arrays.asList(jcmdBinary, Long.toString(pid), cmd);
}
}