< prev index next >

src/hotspot/share/interpreter/abstractInterpreter.hpp

Print this page

 87     java_util_zip_CRC32C_updateBytes,                           // implementation of java.util.zip.CRC32C.updateBytes(crc, b[], off, end)
 88     java_util_zip_CRC32C_updateDirectByteBuffer,                // implementation of java.util.zip.CRC32C.updateDirectByteBuffer(crc, address, off, end)
 89     java_lang_Float_intBitsToFloat,                             // implementation of java.lang.Float.intBitsToFloat()
 90     java_lang_Float_floatToRawIntBits,                          // implementation of java.lang.Float.floatToRawIntBits()
 91     java_lang_Double_longBitsToDouble,                          // implementation of java.lang.Double.longBitsToDouble()
 92     java_lang_Double_doubleToRawLongBits,                       // implementation of java.lang.Double.doubleToRawLongBits()
 93     java_lang_Thread_currentThread,                             // implementation of java.lang.Thread.currentThread()
 94     number_of_method_entries,
 95     invalid = -1
 96   };
 97 
 98   // Conversion from the part of the above enum to vmIntrinsics::_invokeExact, etc.
 99   static vmIntrinsics::ID method_handle_intrinsic(MethodKind kind) {
100     if (kind >= method_handle_invoke_FIRST && kind <= method_handle_invoke_LAST)
101       return vmIntrinsics::ID_from(static_cast<int>(vmIntrinsics::FIRST_MH_SIG_POLY) + (kind - method_handle_invoke_FIRST));
102     else
103       return vmIntrinsics::_none;
104   }
105 
106   enum SomeConstants {
107     number_of_result_handlers = 10                              // number of result handlers for native calls
108   };
109 
110  protected:
111   static StubQueue* _code;                                      // the interpreter code (codelets)
112 
113   static bool       _notice_safepoints;                         // true if safepoints are activated
114 
115   static address    _native_entry_begin;                        // Region for native entry code
116   static address    _native_entry_end;
117 
118   // method entry points
119   static address    _entry_table[number_of_method_entries];     // entry points for a given method
120   static address    _native_abi_to_tosca[number_of_result_handlers];  // for native method result handlers
121   static address    _slow_signature_handler;                              // the native method generic (slow) signature handler
122 
123   static address    _rethrow_exception_entry;                   // rethrows an activation in previous frame
124 
125   friend class      AbstractInterpreterGenerator;
126   friend class      InterpreterMacroAssembler;
127 

 87     java_util_zip_CRC32C_updateBytes,                           // implementation of java.util.zip.CRC32C.updateBytes(crc, b[], off, end)
 88     java_util_zip_CRC32C_updateDirectByteBuffer,                // implementation of java.util.zip.CRC32C.updateDirectByteBuffer(crc, address, off, end)
 89     java_lang_Float_intBitsToFloat,                             // implementation of java.lang.Float.intBitsToFloat()
 90     java_lang_Float_floatToRawIntBits,                          // implementation of java.lang.Float.floatToRawIntBits()
 91     java_lang_Double_longBitsToDouble,                          // implementation of java.lang.Double.longBitsToDouble()
 92     java_lang_Double_doubleToRawLongBits,                       // implementation of java.lang.Double.doubleToRawLongBits()
 93     java_lang_Thread_currentThread,                             // implementation of java.lang.Thread.currentThread()
 94     number_of_method_entries,
 95     invalid = -1
 96   };
 97 
 98   // Conversion from the part of the above enum to vmIntrinsics::_invokeExact, etc.
 99   static vmIntrinsics::ID method_handle_intrinsic(MethodKind kind) {
100     if (kind >= method_handle_invoke_FIRST && kind <= method_handle_invoke_LAST)
101       return vmIntrinsics::ID_from(static_cast<int>(vmIntrinsics::FIRST_MH_SIG_POLY) + (kind - method_handle_invoke_FIRST));
102     else
103       return vmIntrinsics::_none;
104   }
105 
106   enum SomeConstants {
107     number_of_result_handlers = 11                              // number of result handlers for native calls
108   };
109 
110  protected:
111   static StubQueue* _code;                                      // the interpreter code (codelets)
112 
113   static bool       _notice_safepoints;                         // true if safepoints are activated
114 
115   static address    _native_entry_begin;                        // Region for native entry code
116   static address    _native_entry_end;
117 
118   // method entry points
119   static address    _entry_table[number_of_method_entries];     // entry points for a given method
120   static address    _native_abi_to_tosca[number_of_result_handlers];  // for native method result handlers
121   static address    _slow_signature_handler;                              // the native method generic (slow) signature handler
122 
123   static address    _rethrow_exception_entry;                   // rethrows an activation in previous frame
124 
125   friend class      AbstractInterpreterGenerator;
126   friend class      InterpreterMacroAssembler;
127 
< prev index next >