--- a/hotspot/make/solaris/makefiles/dtrace.make Thu Jul 31 16:39:57 2014 -0700
+++ b/hotspot/make/solaris/makefiles/dtrace.make Fri Aug 01 19:03:26 2014 -0700
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# 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
@@ -58,6 +58,8 @@
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
@@ -255,7 +257,10 @@
endif
$(DTRACE).d: $(DTRACE_COMMON_SRCDIR)/hotspot.d $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d \
- $(DTRACE_COMMON_SRCDIR)/hs_private.d $(DTRACE_SRCDIR)/jhelper.d
+ $(DTRACE_COMMON_SRCDIR)/hs_private.d
+ $(QUIETLY) cat $^ > $@
+
+$(DTRACE_JHELPER).d: $(DTRACE_SRCDIR)/jhelper.d
$(QUIETLY) cat $^ > $@
DTraced_Files = ciEnv.o \
@@ -280,7 +285,7 @@
vmGCOperations.o \
# Dtrace is available, so we build $(DTRACE.o)
-$(DTRACE.o): $(DTRACE).d $(JVMOFFS).h $(JVMOFFS)Index.h $(DTraced_Files)
+$(DTRACE.o): $(DTRACE).d $(DTraced_Files)
@echo Compiling $(DTRACE).d
$(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -G -xlazyload -o $@ -s $(DTRACE).d \
@@ -344,6 +349,11 @@
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 Compiling $(DTRACE_JHELPER).d
+ $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -G -o $@ -s $(DTRACE_JHELPER).d
.PHONY: dtraceCheck
@@ -372,7 +382,7 @@
ifneq ("${DTRACE_PROG}", "")
ifeq ("${HOTSPOT_DISABLE_DTRACE_PROBES}", "")
-DTRACE_OBJS = $(DTRACE.o) $(JVMOFFS.o)
+DTRACE_OBJS = $(DTRACE.o) $(JVMOFFS.o) $(DTRACE_JHELPER.o)
CFLAGS += $(DTRACE_INCL) -DDTRACE_ENABLED
MAPFILE_DTRACE_OPT = $(MAPFILE_DTRACE)
--- a/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp Thu Jul 31 16:39:57 2014 -0700
+++ b/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp Fri Aug 01 19:03:26 2014 -0700
@@ -987,17 +987,6 @@
int index = cp_entry->field_index();
if ((ik->field_access_flags(index) & JVM_ACC_FIELD_ACCESS_WATCHED) == 0) return;
- switch(cp_entry->flag_state()) {
- case btos: // fall through
- case ctos: // fall through
- case stos: // fall through
- case itos: // fall through
- case ftos: // fall through
- case ltos: // fall through
- case dtos: // fall through
- case atos: break;
- default: ShouldNotReachHere(); return;
- }
bool is_static = (obj == NULL);
HandleMark hm(thread);
--- a/hotspot/src/share/vm/oops/method.cpp Thu Jul 31 16:39:57 2014 -0700
+++ b/hotspot/src/share/vm/oops/method.cpp Fri Aug 01 19:03:26 2014 -0700
@@ -283,6 +283,13 @@
return bcp;
}
+address Method::bcp_from(address bcp) const {
+ if (is_native() && bcp == NULL) {
+ return code_base();
+ } else {
+ return bcp;
+ }
+}
int Method::size(bool is_native) {
// If native, then include pointers for native_function and signature_handler
--- a/hotspot/src/share/vm/oops/method.hpp Thu Jul 31 16:39:57 2014 -0700
+++ b/hotspot/src/share/vm/oops/method.hpp Fri Aug 01 19:03:26 2014 -0700
@@ -648,7 +648,8 @@
// Returns the byte code index from the byte code pointer
int bci_from(address bcp) const;
- address bcp_from(int bci) const;
+ address bcp_from(int bci) const;
+ address bcp_from(address bcp) const;
int validate_bci_from_bcp(address bcp) const;
int validate_bci(int bci) const;
--- a/hotspot/src/share/vm/runtime/frame.cpp Thu Jul 31 16:39:57 2014 -0700
+++ b/hotspot/src/share/vm/runtime/frame.cpp Fri Aug 01 19:03:26 2014 -0700
@@ -407,7 +407,8 @@
address frame::interpreter_frame_bcp() const {
assert(is_interpreted_frame(), "interpreted frame expected");
- return (address)*interpreter_frame_bcp_addr();
+ address bcp = (address)*interpreter_frame_bcp_addr();
+ return interpreter_frame_method()->bcp_from(bcp);
}
void frame::interpreter_frame_set_bcp(address bcp) {
--- a/hotspot/test/runtime/7107135/Test7107135.sh Thu Jul 31 16:39:57 2014 -0700
+++ b/hotspot/test/runtime/7107135/Test7107135.sh Fri Aug 01 19:03:26 2014 -0700
@@ -25,7 +25,6 @@
#
##
-## @ignore 8025519
## @test Test7107135.sh
## @bug 7107135
## @bug 8021296
--- a/hotspot/test/runtime/SharedArchiveFile/LimitSharedSizes.java Thu Jul 31 16:39:57 2014 -0700
+++ b/hotspot/test/runtime/SharedArchiveFile/LimitSharedSizes.java Fri Aug 01 19:03:26 2014 -0700
@@ -21,8 +21,7 @@
* questions.
*/
-/* @ignore JDK-8043896
- * @test LimitSharedSizes
+/* @test LimitSharedSizes
* @summary Test handling of limits on shared space size
* @library /testlibrary
* @run main LimitSharedSizes
--- a/hotspot/test/runtime/jsig/Test8017498.sh Thu Jul 31 16:39:57 2014 -0700
+++ b/hotspot/test/runtime/jsig/Test8017498.sh Fri Aug 01 19:03:26 2014 -0700
@@ -24,7 +24,6 @@
#
##
-## @ignore 8028806
## @test Test8017498.sh
## @bug 8017498
## @bug 8020791