#include <dispatchTable.hpp>
Inheritance diagram for dispatchTable:
Static Public Member Functions | |
static u_char ** | table () |
static void | reset () |
static void | intercept_for_step () |
static void | intercept_for_next (int *fr) |
static void | intercept_for_return (int *fr) |
static bool | in_normal_mode () |
static bool | in_step_mode () |
static bool | in_next_mode () |
static bool | in_return_mode () |
Private Types | |
normal_mode = 0 | |
step_mode = 1 | |
next_mode = 2 | |
return_mode = 3 | |
enum | Mode { normal_mode = 0, step_mode = 1, next_mode = 2, return_mode = 3 } |
Static Private Member Functions | |
static void | patch_with_sst_stub () |
Static Private Attributes | |
static Mode | mode |
Definition at line 26 of file dispatchTable.hpp.
enum dispatchTable::Mode [private] |
Definition at line 28 of file dispatchTable.hpp.
static bool dispatchTable::in_next_mode | ( | ) | [inline, static] |
Definition at line 53 of file dispatchTable.hpp.
References mode, and next_mode.
Referenced by intercept_for_next().
static bool dispatchTable::in_normal_mode | ( | ) | [inline, static] |
static bool dispatchTable::in_return_mode | ( | ) | [inline, static] |
static bool dispatchTable::in_step_mode | ( | ) | [inline, static] |
Definition at line 52 of file dispatchTable.hpp.
References mode, and step_mode.
Referenced by intercept_for_step().
void dispatchTable::intercept_for_next | ( | int * | fr | ) | [static] |
Definition at line 130 of file dispatchTable.cpp.
References frame_breakpoint, in_next_mode(), mode, next_mode, and patch_with_sst_stub().
Referenced by evaluator::process_line().
Here is the call graph for this function:
void dispatchTable::intercept_for_return | ( | int * | fr | ) | [static] |
Definition at line 159 of file dispatchTable.cpp.
References dispatch_table, mode, next_mode, original_table, reset(), return_codes, return_codes_size, Bytecodes::single_step(), and single_step_stub().
Referenced by evaluator::process_line().
Here is the call graph for this function:
void dispatchTable::intercept_for_step | ( | ) | [static] |
Definition at line 121 of file dispatchTable.cpp.
References frame_breakpoint, in_step_mode(), mode, patch_with_sst_stub(), and step_mode.
Referenced by PRIM_DECL_0(), PRIM_DECL_1(), and evaluator::process_line().
Here is the call graph for this function:
void dispatchTable::patch_with_sst_stub | ( | ) | [static, private] |
Definition at line 110 of file dispatchTable.cpp.
References dispatch_table, Bytecodes::number_of_codes, original_table, Bytecodes::single_step(), and single_step_stub().
Referenced by intercept_for_next(), and intercept_for_step().
Here is the call graph for this function:
void dispatchTable::reset | ( | ) | [static] |
Definition at line 102 of file dispatchTable.cpp.
References dispatch_table, mode, normal_mode, Bytecodes::number_of_codes, and original_table.
Referenced by intercept_for_return(), and evaluator::process_line().
u_char ** dispatchTable::table | ( | ) | [static] |
Definition at line 97 of file dispatchTable.cpp.
References dispatch_table.
Referenced by InterpreterGenerator::jump_ebx(), InterpreterGenerator::load_edi(), and print_dt().
dispatchTable::Mode dispatchTable::mode [static, private] |
Definition at line 35 of file dispatchTable.hpp.
Referenced by in_next_mode(), in_normal_mode(), in_return_mode(), in_step_mode(), intercept_for_next(), intercept_for_return(), intercept_for_step(), and reset().