hotspot/src/share/vm/interpreter/interpreterRuntime.hpp
changeset 2570 ecc7862946d4
parent 2534 08dac9ce0cd7
child 3696 9e5d9b5e1049
equal deleted inserted replaced
2569:9e8daec25638 2570:ecc7862946d4
    40     return Bytecodes::code_at(bcp(thread), method(thread));
    40     return Bytecodes::code_at(bcp(thread), method(thread));
    41   }
    41   }
    42   static bool      already_resolved(JavaThread *thread) { return cache_entry(thread)->is_resolved(code(thread)); }
    42   static bool      already_resolved(JavaThread *thread) { return cache_entry(thread)->is_resolved(code(thread)); }
    43   static int       one_byte_index(JavaThread *thread)   { return bcp(thread)[1]; }
    43   static int       one_byte_index(JavaThread *thread)   { return bcp(thread)[1]; }
    44   static int       two_byte_index(JavaThread *thread)   { return Bytes::get_Java_u2(bcp(thread) + 1); }
    44   static int       two_byte_index(JavaThread *thread)   { return Bytes::get_Java_u2(bcp(thread) + 1); }
       
    45   static int       four_byte_index(JavaThread *thread)  { return Bytes::get_native_u4(bcp(thread) + 1); }
    45   static int       number_of_dimensions(JavaThread *thread)  { return bcp(thread)[3]; }
    46   static int       number_of_dimensions(JavaThread *thread)  { return bcp(thread)[3]; }
    46   static ConstantPoolCacheEntry* cache_entry(JavaThread *thread)  { return method(thread)->constants()->cache()->entry_at(Bytes::get_native_u2(bcp(thread) + 1)); }
    47 
       
    48   static ConstantPoolCacheEntry* cache_entry_at(JavaThread *thread, int i)  { return method(thread)->constants()->cache()->entry_at(i); }
       
    49   static ConstantPoolCacheEntry* cache_entry(JavaThread *thread)            { return cache_entry_at(thread, Bytes::get_native_u2(bcp(thread) + 1)); }
    47   static void      note_trap(JavaThread *thread, int reason, TRAPS);
    50   static void      note_trap(JavaThread *thread, int reason, TRAPS);
    48 
    51 
    49  public:
    52  public:
    50   // Constants
    53   // Constants
    51   static void    ldc           (JavaThread* thread, bool wide);
    54   static void    ldc           (JavaThread* thread, bool wide);
    81 
    84 
    82   static void    throw_illegal_monitor_state_exception(JavaThread* thread);
    85   static void    throw_illegal_monitor_state_exception(JavaThread* thread);
    83   static void    new_illegal_monitor_state_exception(JavaThread* thread);
    86   static void    new_illegal_monitor_state_exception(JavaThread* thread);
    84 
    87 
    85   // Calls
    88   // Calls
    86   static void    resolve_invoke     (JavaThread* thread, Bytecodes::Code bytecode);
    89   static void    resolve_invoke       (JavaThread* thread, Bytecodes::Code bytecode);
       
    90   static void    resolve_invokedynamic(JavaThread* thread);
       
    91   static void  bootstrap_invokedynamic(JavaThread* thread, oopDesc* call_site);
    87 
    92 
    88   // Breakpoints
    93   // Breakpoints
    89   static void _breakpoint(JavaThread* thread, methodOopDesc* method, address bcp);
    94   static void _breakpoint(JavaThread* thread, methodOopDesc* method, address bcp);
    90   static Bytecodes::Code get_original_bytecode_at(JavaThread* thread, methodOopDesc* method, address bcp);
    95   static Bytecodes::Code get_original_bytecode_at(JavaThread* thread, methodOopDesc* method, address bcp);
    91   static void            set_original_bytecode_at(JavaThread* thread, methodOopDesc* method, address bcp, Bytecodes::Code new_code);
    96   static void            set_original_bytecode_at(JavaThread* thread, methodOopDesc* method, address bcp, Bytecodes::Code new_code);