src/share/vm/runtime/thread.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7009361 Sdiff src/share/vm/runtime

src/share/vm/runtime/thread.hpp

Print this page




1363   // Accessing frames
1364   frame last_frame() {
1365     _anchor.make_walkable(this);
1366     return pd_last_frame();
1367   }
1368   javaVFrame* last_java_vframe(RegisterMap* reg_map);
1369 
1370   // Returns method at 'depth' java or native frames down the stack
1371   // Used for security checks
1372   klassOop security_get_caller_class(int depth);
1373 
1374   // Print stack trace in external format
1375   void print_stack_on(outputStream* st);
1376   void print_stack() { print_stack_on(tty); }
1377 
1378   // Print stack traces in various internal formats
1379   void trace_stack()                             PRODUCT_RETURN;
1380   void trace_stack_from(vframe* start_vf)        PRODUCT_RETURN;
1381   void trace_frames()                            PRODUCT_RETURN;
1382 






1383   // Returns the number of stack frames on the stack
1384   int depth() const;
1385 
1386   // Function for testing deoptimization
1387   void deoptimize();
1388   void make_zombies();
1389 
1390   void deoptimized_wrt_marked_nmethods();
1391 
1392   // Profiling operation (see fprofile.cpp)
1393  public:
1394    bool profile_last_Java_frame(frame* fr);
1395 
1396  private:
1397    ThreadProfiler* _thread_profiler;
1398  private:
1399    friend class FlatProfiler;                    // uses both [gs]et_thread_profiler.
1400    friend class FlatProfilerTask;                // uses get_thread_profiler.
1401    friend class ThreadProfilerMark;              // uses get_thread_profiler.
1402    ThreadProfiler* get_thread_profiler()         { return _thread_profiler; }




1363   // Accessing frames
1364   frame last_frame() {
1365     _anchor.make_walkable(this);
1366     return pd_last_frame();
1367   }
1368   javaVFrame* last_java_vframe(RegisterMap* reg_map);
1369 
1370   // Returns method at 'depth' java or native frames down the stack
1371   // Used for security checks
1372   klassOop security_get_caller_class(int depth);
1373 
1374   // Print stack trace in external format
1375   void print_stack_on(outputStream* st);
1376   void print_stack() { print_stack_on(tty); }
1377 
1378   // Print stack traces in various internal formats
1379   void trace_stack()                             PRODUCT_RETURN;
1380   void trace_stack_from(vframe* start_vf)        PRODUCT_RETURN;
1381   void trace_frames()                            PRODUCT_RETURN;
1382 
1383   // Print an annotated view of the stack frames
1384   void print_frame_layout(int depth = 0, bool validate_only = false);
1385   void validate_frame_layout() {
1386     print_frame_layout(0, true);
1387   }
1388 
1389   // Returns the number of stack frames on the stack
1390   int depth() const;
1391 
1392   // Function for testing deoptimization
1393   void deoptimize();
1394   void make_zombies();
1395 
1396   void deoptimized_wrt_marked_nmethods();
1397 
1398   // Profiling operation (see fprofile.cpp)
1399  public:
1400    bool profile_last_Java_frame(frame* fr);
1401 
1402  private:
1403    ThreadProfiler* _thread_profiler;
1404  private:
1405    friend class FlatProfiler;                    // uses both [gs]et_thread_profiler.
1406    friend class FlatProfilerTask;                // uses get_thread_profiler.
1407    friend class ThreadProfilerMark;              // uses get_thread_profiler.
1408    ThreadProfiler* get_thread_profiler()         { return _thread_profiler; }


src/share/vm/runtime/thread.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File