Mercurial > hg > release > icedtea6-1.7
changeset 1733:b21607ae7b62
Merge
author | Andrew John Hughes <ahughes@redhat.com> |
---|---|
date | Sun, 18 Oct 2009 21:41:46 +0100 |
parents | e09a901109fa (current diff) 80a697e98bff (diff) |
children | 2673464ac328 |
files | ChangeLog Makefile.am |
diffstat | 10 files changed, 218 insertions(+), 76 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Wed Oct 07 22:44:35 2009 +0100 +++ b/ChangeLog Sun Oct 18 21:41:46 2009 +0100 @@ -119,6 +119,46 @@ * patches/openjdk/6432567-debugger-socket-overflow.patch: Renamed from oj100013-debugger-socket-overflow.patch. +2009-10-14 Mark Wielaard <mjw@redhat.com> + + * configure.ac: When enabling systemtap support check sys/sdt.h + and g++ are recent enough to allow probes in class constructors + and destructors. + * patches/icedtea-systemtap.patch: Enable compiling probes in + jni.cpp. Rewrite Set<prim>Field and SetStatic<prim>Field macros + to use DTRACE_PROBE interface directly instead of generating + dtrace implementation calls. Clean up dtrace.hpp. + * tapset/hotspot.stp.in: Enable hotspot.monitor_notify. Fix up + comments. + +2009-10-13 Mark Wielaard <mjw@redhat.com> + + * tapsets/hotspot.stp.in (hotspot.gc_end): Match gc__end, not begin. + +2009-10-12 Gary Benson <gbenson@redhat.com> + + * ports/hotspot/src/share/vm/shark/shark_globals.hpp: + Removed SharkStartAt, SharkStopAfter and SharkOnlyCompile. + * ports/hotspot/src/share/vm/shark/shark_globals.hpp + (SharkCompiler::compile_method): Likewise. + +2009-10-09 Edward Nevill <ed@camswl.com> + + * Added initial support for Shark + ARM asm + +2009-10-09 Edward Nevill <ed@camswl.com> + + * Bug fix to irem + * Stop icedtea-debug build falling over in test_gamma + +2009-10-08 Matthias Klose <doko@ubuntu.com> + + * Makefile.am (stamps/icedtea.stamp, stamps/icedtea-debug.stamp): + Add shark aliases to jvm.cfg. + (stamps/add-zero.stamp): Install as shark if default vm is zero. + * configure.ac: Allow shark as additional vm when default vm is zero. + * INSTALL, README: Document new build options. + 2009-10-06 Gary Benson <gbenson@redhat.com> * patches/icedtea-s390-serialize.patch: New file.
--- a/INSTALL Wed Oct 07 22:44:35 2009 +0100 +++ b/INSTALL Sun Oct 18 21:41:46 2009 +0100 @@ -125,10 +125,13 @@ --with-additional-vms=cacao to build the additional VM's. It's not possible to build cacao as the default VM, and zero as additional VM. +To build zero as the default VM and shark as an additional VM, use + --enable-zero --with-additional-vms=shark The additional VM's are available by calling the java with the option -`-cacao' or `-zero' (for shark as well), or by calling the java tools with -`-J-<vm name>'. +`-cacao', `-zero' or `-shark', or by calling the java tools with +`-J-<vm name>'. If the build was configured with '--enable-shark', +use `-Xint' to just use the zero VM. Support for different versions of HotSpot -----------------------------------------
--- a/Makefile.am Wed Oct 07 22:44:35 2009 +0100 +++ b/Makefile.am Sun Oct 18 21:41:46 2009 +0100 @@ -504,8 +504,14 @@ # These options are provided mainly to assist debugging by returning the bytecode interpreter # to a 'vanilla' interpreter. # +if SHARK_BUILD +${ZERO_ASM_BC_ASM}: ${ZERO_ASM_BC_DEF} $(abs_top_srcdir)/mkbc + gcc -E -DDISABLE_NOTICE_SAFEPOINTS - < $< | $(abs_top_srcdir)/mkbc - $@ +else ${ZERO_ASM_BC_ASM}: ${ZERO_ASM_BC_DEF} $(abs_top_srcdir)/mkbc gcc -E - < $< | $(abs_top_srcdir)/mkbc - $@ +endif + # Link ports sources into tree stamps/ports.stamp: stamps/replace-hotspot.stamp @@ -1181,6 +1187,9 @@ if ZERO_BUILD printf -- '-zero ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg endif +if SHARK_BUILD + printf -- '-shark ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg +endif if WITH_CACAO printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg endif @@ -1270,6 +1279,9 @@ if ZERO_BUILD printf -- '-zero ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg endif +if SHARK_BUILD + printf -- '-shark ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg +endif if WITH_CACAO printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg endif @@ -1867,12 +1879,20 @@ $(ADD_ZERO_EXTRA_BUILD_ENV) \ $(ARCH_PREFIX) $(MAKE) -C zerovm $(ICEDTEA_BUILD_TARGET) +if ZERO_BUILD + mkdir -p $(BUILD_JRE_ARCH_DIR)/shark + cp -a zerovm/openjdk/build/$(OS_DIR)/hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server/* \ + $(BUILD_JRE_ARCH_DIR)/shark/ + printf -- '-shark KNOWN\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg +else mkdir -p $(BUILD_JRE_ARCH_DIR)/zero cp -a zerovm/openjdk/build/$(OS_DIR)/hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server/* \ $(BUILD_JRE_ARCH_DIR)/zero/ printf -- '-zero KNOWN\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg +endif else printf -- '-zero ERROR\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg + printf -- '-shark ERROR\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg endif touch $@ @@ -1887,12 +1907,20 @@ $(ADD_ZERO_EXTRA_BUILD_ENV) \ $(ARCH_PREFIX) $(MAKE) -C zerovm $(ICEDTEA_DEBUG_BUILD_TARGET) +if ZERO_BUILD + mkdir -p $(BUILD_DEBUG_JRE_ARCH_DIR)/shark + cp -a zerovm/openjdk/build/$(OS_DIR)/hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server/* \ + $(BUILD_DEBUG_JRE_ARCH_DIR)/shark/ + printf -- '-shark KNOWN\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg +else mkdir -p $(BUILD_DEBUG_JRE_ARCH_DIR)/zero cp -a zerovm/openjdk/build/$(OS_DIR)/hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server/* \ $(BUILD_DEBUG_JRE_ARCH_DIR)/zero/ printf -- '-zero KNOWN\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg +endif else printf -- '-zero ERROR\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg + printf -- '-shark ERROR\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg endif touch $@
--- a/README Wed Oct 07 22:44:35 2009 +0100 +++ b/README Sun Oct 18 21:41:46 2009 +0100 @@ -153,13 +153,16 @@ machine, addtional VM's can be built without building the other components multiple times. -On architectures where hotspot is available, use +On architectures where hotspot is available, use --with-additional-vms=cacao,zero (or shark instead of zero) on architectures where only zero (or shark) is available, use - --with-additional-vms=cacao -to build the additional VM's. It's not possible to build cacao as the + --with-additional-vms=cacao +to build the additional VM's. It's not possible to build cacao as the default VM, and zero as additional VM. +To build zero as the default VM and shark as an additional VM, use + --enable-zero --with-additional-vms=shark -If the build was configured with --with-additional-vms, the additional VM's -are available by calling the java with the option `-cacao' or `-zero' (for -shark as well), or by calling the java tools with `-J-<vm name>'. +The additional VM's are available by calling the java with the option +`-cacao', `-zero' or `-shark', or by calling the java tools with +`-J-<vm name>'. If the build was configured with '--enable-shark', +use `-Xint' to just use the zero VM.
--- a/configure.ac Wed Oct 07 22:44:35 2009 +0100 +++ b/configure.ac Sun Oct 18 21:41:46 2009 +0100 @@ -335,6 +335,43 @@ [SDT_H_FOUND='no'; AC_MSG_ERROR([systemtap support needs sys/sdt.h header])]) + AC_MSG_CHECKING([working sys/sdt.h and g++ support]) + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ +#include <sys/sdt.h> +class ProbeClass +{ +private: + int& ref; + const char *name; + +public: + ProbeClass(int& v, const char *n) : ref(v), name(n) + { + DTRACE_PROBE2(_test_, cons, name, ref); + } + + void method(int min) + { + DTRACE_PROBE3(_test_, meth, name, ref, min); + ref -= min; + } + + ~ProbeClass() + { + DTRACE_PROBE2(_test_, dest, name, ref); + } +}; +]], +[[ + int i = 64; + DTRACE_PROBE1(_test_, call, i); + ProbeClass inst = ProbeClass(i, "call"); + inst.method(24); +]])], [AC_MSG_RESULT([yes])], [AC_MSG_ERROR([systemtap sdt.h or g++ too old])]) + AC_LANG_RESTORE + AC_MSG_CHECKING([for absolute java home install dir]) AC_ARG_WITH([abs-install-dir], [AS_HELP_STRING([--with-abs-install-dir], @@ -532,7 +569,10 @@ if test "x${WITH_CACAO}" = xyes && test "x${ADD_CACAO_BUILD_TRUE}" = x; then AC_MSG_ERROR([additional vm is the default vm]) fi -if test "x${ZERO_BUILD_TRUE}" = x && test "x${ADD_ZERO_BUILD_TRUE}" = x; then +if test "x${ZERO_BUILD_TRUE}" = x && test "x${ADD_ZERO_BUILD_TRUE}" = x && test "x${ADD_SHARK_BUILD_TRUE}" != x; then + AC_MSG_ERROR([additional vm is the default vm]) +fi +if test "x${SHARK_BUILD_TRUE}" = x && test "x${ADD_SHARK_BUILD_TRUE}" = x; then AC_MSG_ERROR([additional vm is the default vm]) fi if test "x${USE_SYSTEM_CACAO_TRUE}" = x; then @@ -562,7 +602,7 @@ if test "x${SHARK_BUILD_TRUE}" = x || test "x${ADD_SHARK_BUILD_TRUE}" = x; then FIND_TOOL([LLVM_CONFIG], [llvm-config]) - llvm_components="engine nativecodegen" + llvm_components="jit engine nativecodegen" LLVM_CFLAGS=`$LLVM_CONFIG --cxxflags $llvm_components | \ sed -e 's/-O.//g' | sed -e 's/-fomit-frame-pointer//g' | \ sed -e 's/-D_DEBUG//g'`
--- a/patches/icedtea-systemtap.patch Wed Oct 07 22:44:35 2009 +0100 +++ b/patches/icedtea-systemtap.patch Sun Oct 18 21:41:46 2009 +0100 @@ -9,22 +9,33 @@ +CFLAGS += -DDTRACE_ENABLED + +# It doesn't support HAVE_DTRACE_H though. -diff -r 945bf7540697 src/share/vm/prims/jni.cpp ---- openjdk/hotspot/src/share/vm/prims/jni.cpp Thu Jan 22 14:42:01 2009 -0800 -+++ openjdk/hotspot/src/share/vm/prims/jni.cpp Mon Feb 02 13:47:34 2009 +0100 -@@ -22,6 +22,12 @@ - * - */ - -+#ifdef __GNUC__ -+// Unfortunately the gcc c preprocessor doesn't like some of the -+// FP_SELECT defines below, so for now we make sure to disable them. -+#undef DTRACE_ENABLED -+#endif -+ - # include "incls/_precompiled.incl" - # include "incls/_jni.cpp.incl" - +--- openjdk/hotspot/src/share/vm/prims/jni.cpp 2009-10-13 15:34:52.499809508 +0200 ++++ openjdk/hotspot/src/share/vm/prims/jni.cpp 2009-10-13 15:31:26.117823588 +0200 +@@ -1747,10 +1744,7 @@ + JNI_QUICK_ENTRY(void, jni_Set##Result##Field(JNIEnv *env, jobject obj, jfieldID fieldID, Argument value)) \ + JNIWrapper("Set" XSTR(Result) "Field"); \ + \ +- HS_DTRACE_PROBE_CDECL_N(hotspot_jni, Set##Result##Field__entry, \ +- ( JNIEnv*, jobject, jfieldID FP_SELECT_##Result(COMMA Argument,/*empty*/) ) ); \ +- HS_DTRACE_PROBE_N(hotspot_jni, Set##Result##Field__entry, \ +- ( env, obj, fieldID FP_SELECT_##Result(COMMA value,/*empty*/) ) ); \ ++ FP_SELECT_##Result(DTRACE_PROBE4(hotspot_jni, Set##Result##Field__entry, env, obj, fieldID, value),DTRACE_PROBE3(hotspot_jni, Set##Result##Field__entry, env, obj, fieldID)); \ + \ + oop o = JNIHandles::resolve_non_null(obj); \ + klassOop k = o->klass(); \ +@@ -1924,10 +1918,7 @@ + \ + JNI_ENTRY(void, jni_SetStatic##Result##Field(JNIEnv *env, jclass clazz, jfieldID fieldID, Argument value)) \ + JNIWrapper("SetStatic" XSTR(Result) "Field"); \ +- HS_DTRACE_PROBE_CDECL_N(hotspot_jni, SetStatic##Result##Field__entry,\ +- ( JNIEnv*, jclass, jfieldID FP_SELECT_##Result(COMMA Argument,/*empty*/) ) ); \ +- HS_DTRACE_PROBE_N(hotspot_jni, SetStatic##Result##Field__entry, \ +- ( env, clazz, fieldID FP_SELECT_##Result(COMMA value,/*empty*/) ) ); \ ++ FP_SELECT_##Result(DTRACE_PROBE4(hotspot_jni, SetStatic##Result##Field__entry, env, clazz, fieldID, value),DTRACE_PROBE3(hotspot_jni, SetStatic##Result##Field__entry, env, clazz, fieldID)); \ + \ + JNIid* id = jfieldIDWorkaround::from_static_jfieldID(fieldID); \ + assert(id->is_static_field_id(), "invalid static field id"); \ +- diff -r 945bf7540697 src/share/vm/utilities/dtrace.hpp --- openjdk/hotspot/src/share/vm/utilities/dtrace.hpp Thu Jan 22 14:42:01 2009 -0800 +++ openjdk/hotspot/src/share/vm/utilities/dtrace.hpp Mon Feb 02 13:47:34 2009 +0100 @@ -52,7 +63,7 @@ #define DTRACE_ONLY(x) #define NOT_DTRACE(x) x -@@ -40,9 +41,15 @@ +@@ -40,9 +41,16 @@ #define DTRACE_PROBE3(a,b,c,d,e) {;} #define DTRACE_PROBE4(a,b,c,d,e,f) {;} #define DTRACE_PROBE5(a,b,c,d,e,f,g) {;} @@ -60,6 +71,7 @@ +#define DTRACE_PROBE7(a,b,c,d,e,f,g,h,i) {;} +#define DTRACE_PROBE8(a,b,c,d,e,f,g,h,i,j) {;} +#define DTRACE_PROBE9(a,b,c,d,e,f,g,h,i,j,k) {;} ++#define DTRACE_PROBE10(a,b,c,d,e,f,g,h,i,j,k,l) {;} #endif @@ -68,30 +80,28 @@ #define HS_DTRACE_PROBE_FN(provider,name)\ __dtrace_##provider##___##name -@@ -50,6 +57,13 @@ +@@ -50,6 +58,11 @@ DTRACE_ONLY(extern "C" void HS_DTRACE_PROBE_FN(provider,name) args) #define HS_DTRACE_PROBE_CDECL_N(provider,name,args) \ DTRACE_ONLY(extern void HS_DTRACE_PROBE_FN(provider,name) args) +#else +// Systemtap dtrace compatible probes on GNU/Linux don't. -+#define HS_DTRACE_PROBE_FN(provider,name) -+ +#define HS_DTRACE_PROBE_DECL_N(provider,name,args) +#define HS_DTRACE_PROBE_CDECL_N(provider,name,args) +#endif /* Dtrace probe declarations */ #define HS_DTRACE_PROBE_DECL(provider,name) \ -@@ -91,6 +105,8 @@ +@@ -88,6 +101,8 @@ + uintptr_t,uintptr_t,uintptr_t)) + + /* Dtrace probe definitions */ ++#if defined(SOLARIS) ++// Solaris dtrace uses actual function calls. #define HS_DTRACE_PROBE_N(provider,name, args) \ DTRACE_ONLY(HS_DTRACE_PROBE_FN(provider,name) args) -+#if defined(SOLARIS) -+// Solaris dtrace uses actual function calls. - #define HS_DTRACE_PROBE(provider,name) HS_DTRACE_PROBE0(provider,name) - #define HS_DTRACE_PROBE0(provider,name)\ - HS_DTRACE_PROBE_N(provider,name,()) -@@ -123,3 +139,27 @@ +@@ -123,3 +138,29 @@ HS_DTRACE_PROBE_N(provider,name,((uintptr_t)a0,(uintptr_t)a1,(uintptr_t)a2,\ (uintptr_t)a3,(uintptr_t)a4,(uintptr_t)a5,(uintptr_t)a6,(uintptr_t)a7,\ (uintptr_t)a8,(uintptr_t)a9)) @@ -118,6 +128,8 @@ + DTRACE_PROBE8(provider,name,a0,a1,a2,a3,a4,a5,a6,a7) +#define HS_DTRACE_PROBE9(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)\ + DTRACE_PROBE9(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8) ++#define HS_DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8)\ ++ DTRACE_PROBE10(provider,name,a0,a1,a2,a3,a4,a5,a6,a7,a8) +#endif --- openjdk/hotspot/src/share/vm/runtime/arguments.cpp 2009-03-04 14:39:43.000000000 +0100 +++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp 2009-03-04 22:11:37.000000000 +0100
--- a/ports/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S Wed Oct 07 22:44:35 2009 +0100 +++ b/ports/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S Sun Oct 18 21:41:46 2009 +0100 @@ -17,6 +17,10 @@ #ifdef HOTSPOT_ASM +#ifdef SHARK +#define USE_COMPILER +#endif + #define ARMv4 #ifndef DISABLE_NOTICE_SAFEPOINTS @@ -1058,7 +1062,7 @@ asm_generate_method_entry: mov r3, r0 mov r0, #0 - +#ifdef PRODUCT adrl ip, dispatch_init_adcon ldm ip, {r1, r2} add r1, r1, ip @@ -1085,6 +1089,7 @@ adrcc ip, asm_method_table ldrcc r0, [ip, r3, lsl #2] 1: +#endif // PRODUCT bx lr asm_method_table: .word normal_entry @@ -2162,8 +2167,8 @@ bne .r_loop2 movs lr, lr, lsl #1 DISPATCH_NEXT - DISPATCH_NEXT rsbmi tmp1, tmp1, #0 + DISPATCH_NEXT PUSH tmp1 DISPATCH_FINISH @@ -3988,12 +3993,34 @@ add dispatch, r1, r0 ldr r0, [istate, #ISTATE_METHOD] CACHE_STACK + USEC ldr r2, [r0, #METHOD_INVOCATIONCOUNTER] + USEC ldr lr, [dispatch, #InterpreterInvocationLimit_Address-XXX] + USEC add r2, r2, #INVOCATIONCOUNTER_COUNTINCREMENT + USEC ldr lr, [lr] + USEC str r2, [r0, #METHOD_INVOCATIONCOUNTER] + USEC cmp r2, lr + ldr r3, [r0, #METHOD_ACCESSFLAGS] + USEC bcs sync_method_entry_freq_count_overflow + CACHE_LOCALS + tst r3, #JVM_ACC_SYNCHRONIZED + CACHE_CP + bne normal_do_synchronization + DISPATCH 0 + +#ifdef USE_COMPILER +sync_method_entry_freq_count_overflow: + mov r1, #0 + mov r0, tmp1 + bl _ZN18InterpreterRuntime26frequency_counter_overflowEP10JavaThreadPh + ldr r0, [istate, #ISTATE_METHOD] + CACHE_JPC ldr r3, [r0, #METHOD_ACCESSFLAGS] CACHE_LOCALS tst r3, #JVM_ACC_SYNCHRONIZED CACHE_CP bne normal_do_synchronization DISPATCH 0 +#endif do_execute_java_bytecodes_restore_locals_and_jpc: CACHE_JPC @@ -4546,11 +4573,18 @@ DISPATCH_START 48 ldr constpool, [constpool, #CONSTANTPOOL_CACHE] str ip, [tmp1, #THREAD_TOP_ZERO_FRAME] + USEC ldr r3, [r10, #METHOD_INVOCATIONCOUNTER] str ip, [tmp1, #THREAD_LAST_JAVA_SP] DISPATCH_NEXT + USEC ldr lr, [dispatch, #InterpreterInvocationLimit_Address-XXX] + USEC add r3, r3, #INVOCATIONCOUNTER_COUNTINCREMENT str tmp1, [istate, #ISTATE_THREAD] + USEC ldr lr, [lr] + USEC str r3, [tmp2, #METHOD_INVOCATIONCOUNTER] str locals, [istate, #ISTATE_LOCALS] + USEC cmp r3, lr str constpool, [istate, #ISTATE_CONSTANTS] + USEC bcs method_entry_freq_count_overflow DISPATCH_NEXT DISPATCH_NEXT DISPATCH_NEXT @@ -4559,6 +4593,18 @@ @ str lr, [istate, #ISTATE_PREV_LINK] @ str lr, [istate, #ISTATE_CALLEE] DISPATCH_FINISH +#ifdef USE_COMPILER +method_entry_freq_count_overflow: + DECACHE_JPC + str r10, [istate, #ISTATE_METHOD] + mov r1, #0 + mov r0, tmp1 + bl _ZN18InterpreterRuntime26frequency_counter_overflowEP10JavaThreadPh + CACHE_JPC + CACHE_CP + DISPATCH 0 +#endif + handle_return: @ CHECK_CONSTPOOL @@ -6301,6 +6347,7 @@ .word PrintCommandLineFlags(GOT) .word _ZN11JvmtiExport28_can_post_interpreter_eventsE(GOT) .word UseCompiler(GOT) + .word _ZN17InvocationCounter26InterpreterInvocationLimitE(GOT) .word 0 ALIGN_DATA @@ -6580,10 +6627,10 @@ CodeTrace_Buffer_Base: .space CODETRACE_BUFFER_SIZE #endif - .word 0 DispatchBreakPoint: .word 0 VFP_Flag: .word 0 CodeTrace_Idx: .word 0 +InterpreterInvocationLimit_Address: .word 0 UseCompiler_Address: .word 0 can_post_interpreter_events: .word 0 PrintCommandLineFlags_Address: .word 0
--- a/ports/hotspot/src/share/vm/shark/sharkCompiler.cpp Wed Oct 07 22:44:35 2009 +0100 +++ b/ports/hotspot/src/share/vm/shark/sharkCompiler.cpp Sun Oct 18 21:41:46 2009 +0100 @@ -94,27 +94,6 @@ ResourceMark rm; const char *name = methodname(target); -#ifndef PRODUCT - // Skip methods if requested - static uintx methods_seen = 0; - methods_seen++; - if (methods_seen < SharkStartAt) { - env->record_method_not_compilable("methods_seen < SharkStartAt"); - return; - } - else if (methods_seen > SharkStopAfter) { - while (true) - sleep(1); - } -#endif // !PRODUCT - - if (SharkOnlyCompile != NULL) { - if (fnmatch(SharkOnlyCompile, name, 0)) { - env->record_method_not_compilable("does not match SharkOnlyCompile"); - return; - } - } - // Do the typeflow analysis ciTypeFlow *flow; if (entry_bci == InvocationEntryBci)
--- a/ports/hotspot/src/share/vm/shark/shark_globals.hpp Wed Oct 07 22:44:35 2009 +0100 +++ b/ports/hotspot/src/share/vm/shark/shark_globals.hpp Sun Oct 18 21:41:46 2009 +0100 @@ -37,15 +37,6 @@ "Maximum bytecode size of methods to inline when using Shark") \ \ /* compiler debugging */ \ - develop(uintx, SharkStartAt, 0, \ - "First method to consider when using Shark") \ - \ - develop(uintx, SharkStopAfter, max_uintx, \ - "Last method to consider when using Shark") \ - \ - develop(ccstr, SharkOnlyCompile, NULL, \ - "Only compile the specified method") \ - \ develop(ccstr, SharkPrintTypeflowOf, NULL, \ "Print the typeflow of the specified method") \ \
--- a/tapset/hotspot.stp.in Wed Oct 07 22:44:35 2009 +0100 +++ b/tapset/hotspot.stp.in Sun Oct 18 21:41:46 2009 +0100 @@ -51,8 +51,8 @@ Has no arguments. */ probe hotspot.gc_end = - process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__begin"), - process("@ABS_SERVER_LIBJVM_SO@").mark("gc__begin") + process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__end"), + process("@ABS_SERVER_LIBJVM_SO@").mark("gc__end") { name = "gc_end"; probestr = name; @@ -311,12 +311,12 @@ name, thread_id, id, class); } -/* Doesn't resolve atm. - hotspot.monitor_notify (extended probe) +/* hotspot.monitor_notify (extended probe) Triggers when a thread calls Object.notify(). Sets thread_id to the current java thread, id to the unique id for this monitor and class to the class name of the object. Needs -XX:+ExtendedDTraceProbes. + */ probe hotspot.monitor_notify = process("@ABS_CLIENT_LIBJVM_SO@").mark("monitor__notify"), process("@ABS_SERVER_LIBJVM_SO@").mark("monitor__notify") @@ -328,7 +328,6 @@ probestr = sprintf("%s(thread_id=%d,id=0x%x,class='%s')", name, thread_id, id, class); } - */ /* hotspot.monitor_notifyAll (extended probe) Triggers when a thread calls Object.notifyAll(). @@ -369,7 +368,7 @@ name, thread_id, id, class); } -/* hotspot.monitor_contended_enter (extended probe) +/* hotspot.monitor_contended_entered (extended probe) Triggers when a thread acquires a contended monotor (after hotspot.monitor_contended_enter has been triggered on this thread, and the other thread triggered a hotspot.monitor_contended_exit).