< prev index next >

src/hotspot/share/jvmci/jvmciEnv.hpp

Print this page

        

@@ -42,12 +42,15 @@
 
 // Helper to log more context on a JNI exception
 #define JVMCI_EXCEPTION_CHECK(env, ...) \
   do { \
     if (env->ExceptionCheck()) { \
-      if (env != JavaThread::current()->jni_environment() && JVMCIEnv::get_shared_library_path() != NULL) { \
-        tty->print_cr("In JVMCI shared library (%s):", JVMCIEnv::get_shared_library_path()); \
+      if (env != JavaThread::current()->jni_environment()) { \
+        char* sl_path; \
+        if (::JVMCI::get_shared_library(sl_path, false) != NULL) { \
+          tty->print_cr("In JVMCI shared library (%s):", sl_path); \
+        } \
       } \
       tty->print_cr(__VA_ARGS__); \
       return; \
     } \
   } while(0)

@@ -139,20 +142,10 @@
 // interactions with JVMCI objects so that a single version of the
 // HotSpot C++ code can can work with either runtime.
 class JVMCIEnv : public ResourceObj {
   friend class JNIAccessMark;
 
-  static char*   _shared_library_path;   // argument to os:dll_load
-  static void*   _shared_library_handle; // result of os::dll_load
-  static JavaVM* _shared_library_javavm; // result of calling JNI_CreateJavaVM in shared library
-
-  // Initializes the shared library JavaVM if not already initialized.
-  // Returns the JNI interface pointer for the current thread
-  // if initialization was performed by this call, NULL if
-  // initialization was performed by a previous call.
-  static JNIEnv* init_shared_library(JavaThread* thread);
-
   // Initializes the _env, _mode and _runtime fields.
   void init_env_mode_runtime(JavaThread* thread, JNIEnv* parent_env);
 
   void init(JavaThread* thread, bool is_hotspot, const char* file, int line);
 

@@ -380,14 +373,12 @@
   oop resolve_handle(jlong objectHandle);
 
   // These are analagous to the JNI routines
   JVMCIObject make_local(JVMCIObject object);
   JVMCIObject make_global(JVMCIObject object);
-  JVMCIObject make_weak(JVMCIObject object);
   void destroy_local(JVMCIObject object);
   void destroy_global(JVMCIObject object);
-  void destroy_weak(JVMCIObject object);
 
   // Deoptimizes the nmethod (if any) in the HotSpotNmethod.address
   // field of mirror. The field is subsequently zeroed.
   void invalidate_nmethod_mirror(JVMCIObject mirror, JVMCI_TRAPS);
 

@@ -395,13 +386,10 @@
 
  private:
   JVMCICompileState* _compile_state;
 
  public:
-  static JavaVM* get_shared_library_javavm() { return _shared_library_javavm; }
-  static void* get_shared_library_handle()   { return _shared_library_handle; }
-  static char* get_shared_library_path()     { return _shared_library_path; }
 
   // Determines if this is for the JVMCI runtime in the HotSpot
   // heap (true) or the shared library heap (false).
   bool is_hotspot() { return _is_hotspot; }
 
< prev index next >