< prev index next >

src/hotspot/share/interpreter/interpreterRuntime.hpp

Print this page


 172   // bytecode tracing is only used by the TraceBytecodes
 173   static intptr_t trace_bytecode(JavaThread* thread, intptr_t preserve_this_value, intptr_t tos, intptr_t tos2) PRODUCT_RETURN0;
 174 
 175   // Platform dependent stuff
 176 #include CPU_HEADER(interpreterRT)
 177 
 178   // optional normalization of fingerprints to reduce the number of adapters
 179   static uint64_t normalize_fast_native_fingerprint(uint64_t fingerprint);
 180 
 181   // Interpreter's frequency counter overflow
 182   static nmethod* frequency_counter_overflow(JavaThread* thread, address branch_bcp);
 183 
 184   // Interpreter profiling support
 185   static jint    bcp_to_di(Method* method, address cur_bcp);
 186   static void    profile_method(JavaThread* thread);
 187   static void    update_mdp_for_ret(JavaThread* thread, int bci);
 188 #ifdef ASSERT
 189   static void    verify_mdp(Method* method, address bcp, address mdp);
 190 #endif // ASSERT
 191   static MethodCounters* build_method_counters(JavaThread* thread, Method* m);


 192 };
 193 
 194 
 195 class SignatureHandlerLibrary: public AllStatic {
 196  public:
 197   enum { buffer_size =  1*K }; // the size of the temporary code buffer
 198   enum { blob_size   = 32*K }; // the size of a handler code blob.
 199 
 200  private:
 201   static BufferBlob*              _handler_blob; // the current buffer blob containing the generated handlers
 202   static address                  _handler;      // next available address within _handler_blob;
 203   static GrowableArray<uint64_t>* _fingerprints; // the fingerprint collection
 204   static GrowableArray<address>*  _handlers;     // the corresponding handlers
 205   static address                  _buffer;       // the temporary code buffer
 206 
 207   static address set_handler_blob();
 208   static void initialize();
 209   static address set_handler(CodeBuffer* buffer);
 210   static void pd_set_handler(address handler);
 211 


 172   // bytecode tracing is only used by the TraceBytecodes
 173   static intptr_t trace_bytecode(JavaThread* thread, intptr_t preserve_this_value, intptr_t tos, intptr_t tos2) PRODUCT_RETURN0;
 174 
 175   // Platform dependent stuff
 176 #include CPU_HEADER(interpreterRT)
 177 
 178   // optional normalization of fingerprints to reduce the number of adapters
 179   static uint64_t normalize_fast_native_fingerprint(uint64_t fingerprint);
 180 
 181   // Interpreter's frequency counter overflow
 182   static nmethod* frequency_counter_overflow(JavaThread* thread, address branch_bcp);
 183 
 184   // Interpreter profiling support
 185   static jint    bcp_to_di(Method* method, address cur_bcp);
 186   static void    profile_method(JavaThread* thread);
 187   static void    update_mdp_for_ret(JavaThread* thread, int bci);
 188 #ifdef ASSERT
 189   static void    verify_mdp(Method* method, address bcp, address mdp);
 190 #endif // ASSERT
 191   static MethodCounters* build_method_counters(JavaThread* thread, Method* m);
 192 
 193   static void deoptimize_caller_frame_for_vt(JavaThread* thread, Method* callee);
 194 };
 195 
 196 
 197 class SignatureHandlerLibrary: public AllStatic {
 198  public:
 199   enum { buffer_size =  1*K }; // the size of the temporary code buffer
 200   enum { blob_size   = 32*K }; // the size of a handler code blob.
 201 
 202  private:
 203   static BufferBlob*              _handler_blob; // the current buffer blob containing the generated handlers
 204   static address                  _handler;      // next available address within _handler_blob;
 205   static GrowableArray<uint64_t>* _fingerprints; // the fingerprint collection
 206   static GrowableArray<address>*  _handlers;     // the corresponding handlers
 207   static address                  _buffer;       // the temporary code buffer
 208 
 209   static address set_handler_blob();
 210   static void initialize();
 211   static address set_handler(CodeBuffer* buffer);
 212   static void pd_set_handler(address handler);
 213 
< prev index next >