Mon, 28 Jul 2014 15:06:38 -0700
8051344: JVM crashed in Compile::start() during method parsing w/ UseRTMDeopt turned on
Summary: call rtm_deopt() only if there were no compilation bailouts before.
Reviewed-by: kvn
dcubed@3780 | 1 | # |
dcubed@3780 | 2 | # Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. |
dcubed@3780 | 3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
dcubed@3780 | 4 | # |
dcubed@3780 | 5 | # This code is free software; you can redistribute it and/or modify it |
dcubed@3780 | 6 | # under the terms of the GNU General Public License version 2 only, as |
dcubed@3780 | 7 | # published by the Free Software Foundation. |
dcubed@3780 | 8 | # |
dcubed@3780 | 9 | # This code is distributed in the hope that it will be useful, but WITHOUT |
dcubed@3780 | 10 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
dcubed@3780 | 11 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
dcubed@3780 | 12 | # version 2 for more details (a copy is included in the LICENSE file that |
dcubed@3780 | 13 | # accompanied this code). |
dcubed@3780 | 14 | # |
dcubed@3780 | 15 | # You should have received a copy of the GNU General Public License version |
dcubed@3780 | 16 | # 2 along with this work; if not, write to the Free Software Foundation, |
dcubed@3780 | 17 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
dcubed@3780 | 18 | # |
dcubed@3780 | 19 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
dcubed@3780 | 20 | # or visit www.oracle.com if you need additional information or have any |
dcubed@3780 | 21 | # questions. |
dcubed@3780 | 22 | # |
dcubed@3780 | 23 | # |
dcubed@3780 | 24 | |
dcubed@3780 | 25 | # Rules to build add_gnu_debuglink, used by vm.make on Solaris |
dcubed@3780 | 26 | |
dcubed@3870 | 27 | # Allow $(ADD_GNU_DEBUGLINK) to be called from any directory. |
dcubed@3870 | 28 | # We don't set or use the GENERATED macro to avoid affecting |
dcubed@3870 | 29 | # other HotSpot Makefiles. |
dcubed@3870 | 30 | TOPDIR = $(shell echo `pwd`) |
dcubed@3870 | 31 | ADD_GNU_DEBUGLINK = $(TOPDIR)/../generated/add_gnu_debuglink |
dcubed@3780 | 32 | |
dcubed@3780 | 33 | ADD_GNU_DEBUGLINK_DIR = $(GAMMADIR)/src/os/solaris/add_gnu_debuglink |
dcubed@3780 | 34 | ADD_GNU_DEBUGLINK_SRC = $(ADD_GNU_DEBUGLINK_DIR)/add_gnu_debuglink.c |
dcubed@3780 | 35 | ADD_GNU_DEBUGLINK_FLAGS = |
dcubed@3780 | 36 | LIBS_ADD_GNU_DEBUGLINK += -lelf |
dcubed@3780 | 37 | |
dcubed@3780 | 38 | ifeq ("${Platform_compiler}", "sparcWorks") |
dcubed@3780 | 39 | # Enable the following ADD_GNU_DEBUGLINK_FLAGS addition if you need to |
dcubed@3780 | 40 | # compare the built ELF objects. |
dcubed@3780 | 41 | # |
dcubed@3780 | 42 | # The -g option makes static data global and the "-W0,-noglobal" |
dcubed@3780 | 43 | # option tells the compiler to not globalize static data using a unique |
dcubed@3780 | 44 | # globalization prefix. Instead force the use of a static globalization |
dcubed@3780 | 45 | # prefix based on the source filepath so the objects from two identical |
dcubed@3780 | 46 | # compilations are the same. |
dcubed@3780 | 47 | # |
dcubed@3780 | 48 | # Note: The blog says to use "-W0,-xglobalstatic", but that doesn't |
dcubed@3780 | 49 | # seem to work. I got "-W0,-noglobal" from Kelly and that works. |
dcubed@3780 | 50 | #ADD_GNU_DEBUGLINK_FLAGS += -W0,-noglobal |
dcubed@3780 | 51 | endif # Platform_compiler == sparcWorks |
dcubed@3780 | 52 | |
dcubed@3780 | 53 | $(ADD_GNU_DEBUGLINK): $(ADD_GNU_DEBUGLINK_SRC) |
dcubed@3780 | 54 | $(CC) -g -o $@ $< $(ADD_GNU_DEBUGLINK_FLAGS) $(LIBS_ADD_GNU_DEBUGLINK) |