--- a/hotspot/src/share/vm/opto/runtime.cpp Tue Sep 15 12:59:51 2015 +0000
+++ b/hotspot/src/share/vm/opto/runtime.cpp Tue Sep 15 11:04:11 2015 -0700
@@ -102,11 +102,6 @@
address OptoRuntime::_slow_arraycopy_Java = NULL;
address OptoRuntime::_register_finalizer_Java = NULL;
-# ifdef ENABLE_ZAP_DEAD_LOCALS
-address OptoRuntime::_zap_dead_Java_locals_Java = NULL;
-address OptoRuntime::_zap_dead_native_locals_Java = NULL;
-# endif
-
ExceptionBlob* OptoRuntime::_exception_blob;
// This should be called in an assertion at the start of OptoRuntime routines
@@ -152,10 +147,6 @@
gen(env, _slow_arraycopy_Java , slow_arraycopy_Type , SharedRuntime::slow_arraycopy_C , 0 , false, false, false);
gen(env, _register_finalizer_Java , register_finalizer_Type , register_finalizer , 0 , false, false, false);
-# ifdef ENABLE_ZAP_DEAD_LOCALS
- gen(env, _zap_dead_Java_locals_Java , zap_dead_locals_Type , zap_dead_Java_locals_C , 0 , false, true , false );
- gen(env, _zap_dead_native_locals_Java , zap_dead_locals_Type , zap_dead_native_locals_C , 0 , false, true , false );
-# endif
return true;
}
@@ -604,23 +595,6 @@
return TypeFunc::make(domain, range);
}
-# ifdef ENABLE_ZAP_DEAD_LOCALS
-// Type used for stub generation for zap_dead_locals.
-// No inputs or outputs
-const TypeFunc *OptoRuntime::zap_dead_locals_Type() {
- // create input type (domain)
- const Type **fields = TypeTuple::fields(0);
- const TypeTuple *domain = TypeTuple::make(TypeFunc::Parms,fields);
-
- // create result type (range)
- fields = TypeTuple::fields(0);
- const TypeTuple *range = TypeTuple::make(TypeFunc::Parms,fields);
-
- return TypeFunc::make(domain,range);
-}
-# endif
-
-
//-----------------------------------------------------------------------------
// Monitor Handling
const TypeFunc *OptoRuntime::complete_monitor_enter_Type() {
@@ -1648,67 +1622,3 @@
#endif // PRODUCT
-
-# ifdef ENABLE_ZAP_DEAD_LOCALS
-// Called from call sites in compiled code with oop maps (actually safepoints)
-// Zaps dead locals in first java frame.
-// Is entry because may need to lock to generate oop maps
-// Currently, only used for compiler frames, but someday may be used
-// for interpreter frames, too.
-
-int OptoRuntime::ZapDeadCompiledLocals_count = 0;
-
-// avoid pointers to member funcs with these helpers
-static bool is_java_frame( frame* f) { return f->is_java_frame(); }
-static bool is_native_frame(frame* f) { return f->is_native_frame(); }
-
-
-void OptoRuntime::zap_dead_java_or_native_locals(JavaThread* thread,
- bool (*is_this_the_right_frame_to_zap)(frame*)) {
- assert(JavaThread::current() == thread, "is this needed?");
-
- if ( !ZapDeadCompiledLocals ) return;
-
- bool skip = false;
-
- if ( ZapDeadCompiledLocalsFirst == 0 ) ; // nothing special
- else if ( ZapDeadCompiledLocalsFirst > ZapDeadCompiledLocals_count ) skip = true;
- else if ( ZapDeadCompiledLocalsFirst == ZapDeadCompiledLocals_count )
- warning("starting zapping after skipping");
-
- if ( ZapDeadCompiledLocalsLast == -1 ) ; // nothing special
- else if ( ZapDeadCompiledLocalsLast < ZapDeadCompiledLocals_count ) skip = true;
- else if ( ZapDeadCompiledLocalsLast == ZapDeadCompiledLocals_count )
- warning("about to zap last zap");
-
- ++ZapDeadCompiledLocals_count; // counts skipped zaps, too
-
- if ( skip ) return;
-
- // find java frame and zap it
-
- for (StackFrameStream sfs(thread); !sfs.is_done(); sfs.next()) {
- if (is_this_the_right_frame_to_zap(sfs.current()) ) {
- sfs.current()->zap_dead_locals(thread, sfs.register_map());
- return;
- }
- }
- warning("no frame found to zap in zap_dead_Java_locals_C");
-}
-
-JRT_LEAF(void, OptoRuntime::zap_dead_Java_locals_C(JavaThread* thread))
- zap_dead_java_or_native_locals(thread, is_java_frame);
-JRT_END
-
-// The following does not work because for one thing, the
-// thread state is wrong; it expects java, but it is native.
-// Also, the invariants in a native stub are different and
-// I'm not sure it is safe to have a MachCalRuntimeDirectNode
-// in there.
-// So for now, we do not zap in native stubs.
-
-JRT_LEAF(void, OptoRuntime::zap_dead_native_locals_C(JavaThread* thread))
- zap_dead_java_or_native_locals(thread, is_native_frame);
-JRT_END
-
-# endif