src/hotspot/share/prims/nativeLookup.hpp
changeset 54669 ad45b3802d4e
parent 53244 9807daeb47c4
child 57600 3d44a84147cc
equal deleted inserted replaced
54668:0bda2308eded 54669:ad45b3802d4e
    31 // NativeLookup provides an interface for finding DLL entry points for
    31 // NativeLookup provides an interface for finding DLL entry points for
    32 // Java native functions.
    32 // Java native functions.
    33 
    33 
    34 class NativeLookup : AllStatic {
    34 class NativeLookup : AllStatic {
    35  private:
    35  private:
    36   // JNI name computation
       
    37   static char* pure_jni_name(const methodHandle& method);
       
    38   static char* long_jni_name(const methodHandle& method);
       
    39   static char* critical_jni_name(const methodHandle& method);
       
    40 
       
    41   // Style specific lookup
    36   // Style specific lookup
    42   static address lookup_style(const methodHandle& method, char* pure_name, const char* long_name, int args_size, bool os_style, bool& in_base_library, TRAPS);
    37   static address lookup_style(const methodHandle& method, char* pure_name, const char* long_name, int args_size, bool os_style, bool& in_base_library, TRAPS);
    43   static address lookup_critical_style(const methodHandle& method, char* pure_name, const char* long_name, int args_size, bool os_style);
    38   static address lookup_critical_style(const methodHandle& method, char* pure_name, const char* long_name, int args_size, bool os_style);
    44   static address lookup_base (const methodHandle& method, bool& in_base_library, TRAPS);
    39   static address lookup_base (const methodHandle& method, bool& in_base_library, TRAPS);
    45   static address lookup_entry(const methodHandle& method, bool& in_base_library, TRAPS);
    40   static address lookup_entry(const methodHandle& method, bool& in_base_library, TRAPS);
    46   static address lookup_entry_prefixed(const methodHandle& method, bool& in_base_library, TRAPS);
    41   static address lookup_entry_prefixed(const methodHandle& method, bool& in_base_library, TRAPS);
    47  public:
    42  public:
       
    43   // JNI name computation
       
    44   static char* pure_jni_name(const methodHandle& method);
       
    45   static char* long_jni_name(const methodHandle& method);
       
    46   static char* critical_jni_name(const methodHandle& method);
       
    47 
    48   // Lookup native function. May throw UnsatisfiedLinkError.
    48   // Lookup native function. May throw UnsatisfiedLinkError.
    49   static address lookup(const methodHandle& method, bool& in_base_library, TRAPS);
    49   static address lookup(const methodHandle& method, bool& in_base_library, TRAPS);
    50   static address lookup_critical_entry(const methodHandle& method);
    50   static address lookup_critical_entry(const methodHandle& method);
    51 
    51 
    52   // Lookup native functions in base library.
    52   // Lookup native functions in base library.