interpreter.cpp File Reference

#include "incls/_precompiled.incl"
#include "incls/_interpreter.cpp.incl"

Include dependency graph for interpreter.cpp:

Go to the source code of this file.

Classes

class  InterpreterGenerator

Functions

char * InterpreterCodeStatus ()
void loop_counter_overflow ()
void inline_cache_miss ()
void verifyPIC (oop pic)
void trace_send (oop receiver, methodOop method)
oop allocateBlock (smiOop nofArgs)
oop allocateBlock0 ()
oop allocateBlock1 ()
oop allocateBlock2 ()
oop allocateContext (smiOop nofVars)
oop allocateContext0 ()
oop allocateContext1 ()
oop allocateContext2 ()
void suspend_on_error (InterpreterErrorConstants error_code)
void interpreter_init ()

Variables

static const int float_0_offset = oopSize * (frame_temp_offset - 3)
static const int temp_1_offset = oopSize * (frame_temp_offset - 1)
static const int temp_0_offset = oopSize * frame_temp_offset
static const int esi_offset = oopSize * frame_hp_offset
static const int self_offset = oopSize * frame_receiver_offset
static const int link_offset = oopSize * frame_link_offset
static const int ret_addr_offset = oopSize * frame_return_addr_offset
static const int arg_n_offset = oopSize * (frame_arg_offset - 1)
static const int max_nof_temps = 256
static const int max_nof_floats = 256
 interpreter_loop_counter
 interpreter_loop_counter_limit
char * interpreter_begin_addr
char * interpreter_end_addr
char * method_entry_point = NULL
char * block_entry_point = NULL
char * nlr_testpoint_entry = NULL
contextOop nlr_home_context
static const int interpreter_size = 40000
static char interpreter_code [interpreter_size]


Function Documentation

oop allocateBlock ( smiOop  nofArgs  ) 

Definition at line 54 of file block_prims.cpp.

Referenced by allocate_block_for().

oop allocateBlock0 (  ) 

Referenced by InterpreterGenerator::generate_instruction().

oop allocateBlock1 (  ) 

Referenced by InterpreterGenerator::generate_instruction().

oop allocateBlock2 (  ) 

Referenced by InterpreterGenerator::generate_instruction().

oop allocateContext ( smiOop  nofVars  ) 

oop allocateContext0 (  ) 

Referenced by InterpreterGenerator::generate_instruction().

oop allocateContext1 (  ) 

Referenced by InterpreterGenerator::generate_instruction().

oop allocateContext2 (  ) 

Referenced by InterpreterGenerator::generate_instruction().

void inline_cache_miss (  ) 

Definition at line 148 of file interpreter.cpp.

References InterpretedIC::inline_cache_miss().

Here is the call graph for this function:

void interpreter_init (  ) 

Definition at line 2508 of file interpreter.cpp.

References outputStream::print(), and std.

Here is the call graph for this function:

char* InterpreterCodeStatus (  ) 

Referenced by Interpreter::can_trace_bytecodes(), Interpreter::can_trace_sends(), Interpreter::has_assertions(), Interpreter::has_stack_checks(), Interpreter::has_timers(), and Interpreter::is_optimized().

void loop_counter_overflow (  ) 

Definition at line 99 of file interpreter.cpp.

References Interpreter::loop_counter_overflow().

Here is the call graph for this function:

void suspend_on_error ( InterpreterErrorConstants  error_code  ) 

Definition at line 1153 of file process.cpp.

References boolean_error, boolean_expected, float_error, float_expected, handle_error(), NLR_error, nonlocal_return_error, primitive_lookup_error, and primitive_lookup_failed.

Here is the call graph for this function:

void trace_send ( oop  receiver,
methodOop  method 
)

Definition at line 161 of file interpreter.cpp.

References outputStream::cr(), outputStream::print(), oopDesc::print_value(), methodOopDesc::selector(), and std.

Here is the call graph for this function:

void verifyPIC ( oop  pic  ) 

Definition at line 153 of file interpreter.cpp.

References fatal, Universe::is_heap(), objArrayOopDesc::length(), size_of_largest_interpreterPIC, and size_of_smallest_interpreterPIC.

Here is the call graph for this function:


Variable Documentation

const int arg_n_offset = oopSize * (frame_arg_offset - 1) [static]

Definition at line 47 of file interpreter.cpp.

Referenced by InterpreterGenerator::arg_addr().

char* block_entry_point = NULL

Definition at line 1418 of file interpreter.cpp.

const int esi_offset = oopSize * frame_hp_offset [static]

Definition at line 43 of file interpreter.cpp.

Referenced by InterpreterGenerator::esi_addr().

const int float_0_offset = oopSize * (frame_temp_offset - 3) [static]

Definition at line 40 of file interpreter.cpp.

Referenced by InterpreterGenerator::float_addr(), and Interpreter::oopify_FloatValue().

char* interpreter_begin_addr

Definition at line 62 of file interpreter.cpp.

Referenced by Interpreter::contains().

char interpreter_code[interpreter_size] [static]

Definition at line 2505 of file interpreter.cpp.

char* interpreter_end_addr

Definition at line 63 of file interpreter.cpp.

Referenced by Interpreter::contains().

interpreter_loop_counter

Definition at line 57 of file interpreter.cpp.

Referenced by Interpreter::loop_counter(), and Interpreter::reset_loop_counter().

interpreter_loop_counter_limit

Definition at line 58 of file interpreter.cpp.

Referenced by Interpreter::loop_counter_limit(), and Interpreter::set_loop_counter_limit().

const int interpreter_size = 40000 [static]

Definition at line 2504 of file interpreter.cpp.

const int link_offset = oopSize * frame_link_offset [static]

Definition at line 45 of file interpreter.cpp.

const int max_nof_floats = 256 [static]

Definition at line 50 of file interpreter.cpp.

Referenced by InterpreterGenerator::float_addr(), and Interpreter::oopify_FloatValue().

const int max_nof_temps = 256 [static]

Definition at line 49 of file interpreter.cpp.

Referenced by InterpreterGenerator::temp_addr().

char* method_entry_point = NULL

Definition at line 1417 of file interpreter.cpp.

contextOop nlr_home_context

Definition at line 1822 of file interpreter.cpp.

char* nlr_testpoint_entry = NULL

Definition at line 1821 of file interpreter.cpp.

const int ret_addr_offset = oopSize * frame_return_addr_offset [static]

Definition at line 46 of file interpreter.cpp.

const int self_offset = oopSize * frame_receiver_offset [static]

Definition at line 44 of file interpreter.cpp.

Referenced by InterpreterGenerator::self_addr().

const int temp_0_offset = oopSize * frame_temp_offset [static]

Definition at line 42 of file interpreter.cpp.

Referenced by InterpreterGenerator::context_addr(), and InterpreterGenerator::temp_addr().

const int temp_1_offset = oopSize * (frame_temp_offset - 1) [static]

Definition at line 41 of file interpreter.cpp.


Generated on Mon Oct 9 13:41:38 2006 for Strongtalk VM by  doxygen 1.4.7