hotspot/src/share/vm/runtime/thread.cpp
changeset 9437 9981851b4b8c
parent 8883 5569135acca3
child 9942 2e86734ba620
equal deleted inserted replaced
9436:2a355fa03145 9437:9981851b4b8c
    29 #include "classfile/vmSymbols.hpp"
    29 #include "classfile/vmSymbols.hpp"
    30 #include "code/scopeDesc.hpp"
    30 #include "code/scopeDesc.hpp"
    31 #include "compiler/compileBroker.hpp"
    31 #include "compiler/compileBroker.hpp"
    32 #include "interpreter/interpreter.hpp"
    32 #include "interpreter/interpreter.hpp"
    33 #include "interpreter/linkResolver.hpp"
    33 #include "interpreter/linkResolver.hpp"
       
    34 #include "interpreter/oopMapCache.hpp"
    34 #include "jvmtifiles/jvmtiEnv.hpp"
    35 #include "jvmtifiles/jvmtiEnv.hpp"
    35 #include "memory/oopFactory.hpp"
    36 #include "memory/oopFactory.hpp"
    36 #include "memory/universe.inline.hpp"
    37 #include "memory/universe.inline.hpp"
    37 #include "oops/instanceKlass.hpp"
    38 #include "oops/instanceKlass.hpp"
    38 #include "oops/objArrayOop.hpp"
    39 #include "oops/objArrayOop.hpp"
  2858     tty->cr();
  2859     tty->cr();
  2859   }
  2860   }
  2860 }
  2861 }
  2861 
  2862 
  2862 
  2863 
       
  2864 // Print or validate the layout of stack frames
       
  2865 void JavaThread::print_frame_layout(int depth, bool validate_only) {
       
  2866   ResourceMark rm;
       
  2867   PRESERVE_EXCEPTION_MARK;
       
  2868   FrameValues values;
       
  2869   int frame_no = 0;
       
  2870   for(StackFrameStream fst(this, false); !fst.is_done(); fst.next()) {
       
  2871     fst.current()->describe(values, ++frame_no);
       
  2872     if (depth == frame_no) break;
       
  2873   }
       
  2874   if (validate_only) {
       
  2875     values.validate();
       
  2876   } else {
       
  2877     tty->print_cr("[Describe stack layout]");
       
  2878     values.print();
       
  2879   }
       
  2880 }
       
  2881 
       
  2882 
  2863 void JavaThread::trace_stack_from(vframe* start_vf) {
  2883 void JavaThread::trace_stack_from(vframe* start_vf) {
  2864   ResourceMark rm;
  2884   ResourceMark rm;
  2865   int vframe_no = 1;
  2885   int vframe_no = 1;
  2866   for (vframe* f = start_vf; f; f = f->sender() ) {
  2886   for (vframe* f = start_vf; f; f = f->sender() ) {
  2867     if (f->is_java_frame()) {
  2887     if (f->is_java_frame()) {