< prev index next >

src/hotspot/share/jfr/jni/jfrJavaSupport.hpp

Print this page
*** 71,10 ***
--- 71,18 ---
  
    static jobject new_java_lang_Boolean(bool value, TRAPS);
    static jobject new_java_lang_Integer(jint value, TRAPS);
    static jobject new_java_lang_Long(jlong value, TRAPS);
  
+   // fields
+   static bool compute_field_offset(int &dest_offset,
+                                    Klass* klass,
+                                    Symbol* name_symbol,
+                                    Symbol* signature_symbol,
+                                    bool is_static = false,
+                                    bool allow_super = false);
+ 
    // misc
    static Klass* klass(const jobject handle);
    static const char* c_str(jstring string, JavaThread* jt, bool c_heap = false);
    static const char* c_str(oop string, JavaThread* jt, bool c_heap = false);
  

*** 84,18 ***
    static void throw_internal_error(const char* message, TRAPS);
    static void throw_out_of_memory_error(const char* message, TRAPS);
    static void throw_class_format_error(const char* message, TRAPS);
    static void throw_runtime_exception(const char* message, TRAPS);
  
    static bool is_jdk_jfr_module_available();
    static bool is_jdk_jfr_module_available(outputStream* stream, TRAPS);
  
    static jlong jfr_thread_id(jobject thread);
    static void exclude(jobject thread);
    static void include(jobject thread);
    static bool is_excluded(jobject thread);
!   static void on_thread_start(Thread* t);
  
    static jobject get_handler(jobject clazz, TRAPS);
    static bool set_handler(jobject clazz, jobject handler, TRAPS);
  
    // critical
--- 92,21 ---
    static void throw_internal_error(const char* message, TRAPS);
    static void throw_out_of_memory_error(const char* message, TRAPS);
    static void throw_class_format_error(const char* message, TRAPS);
    static void throw_runtime_exception(const char* message, TRAPS);
  
+   // visibility graph
    static bool is_jdk_jfr_module_available();
    static bool is_jdk_jfr_module_available(outputStream* stream, TRAPS);
  
+   // thread
+   static JavaThread* get_native(jobject thread);
    static jlong jfr_thread_id(jobject thread);
    static void exclude(jobject thread);
    static void include(jobject thread);
    static bool is_excluded(jobject thread);
!   static bool on_thread_start(JavaThread* jt, jobject vthread = NULL);
  
    static jobject get_handler(jobject clazz, TRAPS);
    static bool set_handler(jobject clazz, jobject handler, TRAPS);
  
    // critical

*** 103,10 ***
--- 114,11 ---
    static void uncaught_exception(jthrowable throwable, JavaThread* t);
  
    // asserts
    DEBUG_ONLY(static void check_java_thread_in_vm(JavaThread* t);)
    DEBUG_ONLY(static void check_java_thread_in_native(JavaThread* t);)
+   DEBUG_ONLY(static void check_java_thread_in_java(JavaThread* t););
  
    enum CAUSE {
      VM_ERROR,
      OUT_OF_MEMORY,
      STACK_OVERFLOW,
< prev index next >