8017065: C2 allows safepoint checks to leak into G1 pre-barriers
Summary: Make all raw loads strictly respect control dependencies, make sure RCE doesn't move raw loads, add verification of G1 pre-barriers.
Reviewed-by: kvn, roland
#
# Copyright (c) 2001, 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. 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.
#
################################################################
# NASHORN TARGETS
################################################################
NASHORN_BUILD_ARGUMENTS = \
$(COMMON_BUILD_ARGUMENTS) \
ALT_OUTPUTDIR=$(NASHORN_OUTPUTDIR) \
ALT_BOOTDIR=$(BOOTDIR) \
ALT_JDK_IMPORT_PATH=$(JDK_IMPORT_PATH)
ifeq ($(BUILD_LANGTOOLS), true)
NASHORN_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
endif
# Default targets
NASHORN = nashorn-build
nashorn: nashorn-build
nashorn-build:
$(MKDIR) -p $(NASHORN_OUTPUTDIR)
@$(call MakeStart,nashorn,all)
($(CD) $(NASHORN_TOPDIR)/make && \
$(MAKE) $(NASHORN_BUILD_ARGUMENTS) all)
@$(call MakeFinish,nashorn,all)
nashorn-clobber::
$(MKDIR) -p $(NASHORN_OUTPUTDIR)
@$(call MakeStart,nashorn,clobber)
($(CD) $(NASHORN_TOPDIR)/make && \
$(MAKE) $(NASHORN_BUILD_ARGUMENTS) clobber)
@$(call MakeFinish,nashorn,clobber)
.PHONY: nashorn nashorn-build nashorn-clobber