CACAO
|
Go to the source code of this file.
Data Structures | |
struct | patchref_t |
Typedefs | |
typedef struct patchref_t | patchref_t |
#define PATCHER_breakpoint (functionptr) patcher_breakpoint |
Definition at line 118 of file patcher-common.hpp.
#define PATCHER_checkcast_interface (functionptr) patcher_checkcast_interface |
Definition at line 155 of file patcher-common.hpp.
#define PATCHER_get_putfield (functionptr) patcher_get_putfield |
Definition at line 136 of file patcher-common.hpp.
#define PATCHER_get_putstatic (functionptr) patcher_get_putstatic |
Definition at line 123 of file patcher-common.hpp.
#define PATCHER_initialize_class (functionptr) patcher_initialize_class |
Definition at line 100 of file patcher-common.hpp.
#define PATCHER_instanceof_interface (functionptr) patcher_instanceof_interface |
Definition at line 158 of file patcher-common.hpp.
#define PATCHER_invokeinterface (functionptr) patcher_invokeinterface |
Definition at line 152 of file patcher-common.hpp.
#define PATCHER_invokestatic_special (functionptr) patcher_invokestatic_special |
Definition at line 146 of file patcher-common.hpp.
#define PATCHER_invokevirtual (functionptr) patcher_invokevirtual |
Definition at line 149 of file patcher-common.hpp.
#define PATCHER_resolve_class (functionptr) patcher_resolve_class |
Definition at line 97 of file patcher-common.hpp.
#define PATCHER_resolve_classref_to_classinfo (functionptr) patcher_resolve_classref_to_classinfo |
Definition at line 103 of file patcher-common.hpp.
#define PATCHER_resolve_classref_to_flags (functionptr) patcher_resolve_classref_to_flags |
Definition at line 112 of file patcher-common.hpp.
#define PATCHER_resolve_classref_to_index (functionptr) patcher_resolve_classref_to_index |
Definition at line 109 of file patcher-common.hpp.
#define PATCHER_resolve_classref_to_vftbl (functionptr) patcher_resolve_classref_to_vftbl |
Definition at line 106 of file patcher-common.hpp.
#define PATCHER_resolve_native_function (functionptr) patcher_resolve_native_function |
Definition at line 115 of file patcher-common.hpp.
typedef struct patchref_t patchref_t |
Definition at line 31 of file patcher-common.hpp.
patchref_t* patcher_add_patch_ref | ( | jitdata * | jd, |
functionptr | patcher, | ||
void * | ref, | ||
s4 | disp | ||
) |
Definition at line 172 of file patcher-common.cpp.
bool patcher_breakpoint | ( | patchref_t * | pr | ) |
Deals with breakpoint instructions (ICMD_BREAKPOINT) compiled into a JIT method.
This patcher might never patch back the original machine code because breakpoints are kept active.
Definition at line 480 of file patcher-common.cpp.
bool patcher_checkcast_interface | ( | patchref_t * | pr | ) |
Definition at line 526 of file patcher.cpp.
bool patcher_get_putfield | ( | patchref_t * | pr | ) |
Definition at line 308 of file patcher.cpp.
bool patcher_get_putstatic | ( | patchref_t * | pr | ) |
Definition at line 264 of file patcher.cpp.
bool patcher_handler | ( | u1 * | pc | ) |
Definition at line 287 of file patcher-common.cpp.
bool patcher_initialize_class | ( | patchref_t * | pr | ) |
Definition at line 382 of file patcher-common.cpp.
bool patcher_instanceof_interface | ( | patchref_t * | pr | ) |
Definition at line 572 of file patcher.cpp.
bool patcher_invokeinterface | ( | patchref_t * | pr | ) |
Definition at line 477 of file patcher.cpp.
bool patcher_invokestatic_special | ( | patchref_t * | pr | ) |
Definition at line 392 of file patcher.cpp.
bool patcher_invokevirtual | ( | patchref_t * | pr | ) |
Definition at line 433 of file patcher.cpp.
bool patcher_is_patched | ( | patchref_t * | pr | ) |
bool patcher_is_patched_at | ( | void * | pc | ) |
Definition at line 250 of file patcher-common.cpp.
bool patcher_is_valid_trap_instruction_at | ( | void * | pc | ) |
Check if the trap instruction at the given PC is valid.
pc | Program counter. |
Definition at line 72 of file patcher.cpp.
Definition at line 70 of file patcher-common.cpp.
Definition at line 97 of file patcher-common.cpp.
Definition at line 83 of file patcher-common.cpp.
Show the content of the whole patcher reference list for debugging purposes.
code | The codeinfo containing the patcher list. |
Definition at line 150 of file patcher-common.cpp.
void patcher_patch_code | ( | patchref_t * | pr | ) |
Definition at line 114 of file patcher.cpp.
Resolve all patchers in the current JIT run.
jd | JIT data-structure |
Definition at line 236 of file patcher-common.cpp.
bool patcher_resolve_class | ( | patchref_t * | pr | ) |
Definition at line 412 of file patcher-common.cpp.
bool patcher_resolve_classref_to_classinfo | ( | patchref_t * | pr | ) |
Definition at line 148 of file patcher.cpp.
bool patcher_resolve_classref_to_flags | ( | patchref_t * | pr | ) |
Definition at line 225 of file patcher.cpp.
bool patcher_resolve_classref_to_index | ( | patchref_t * | pr | ) |
Definition at line 372 of file patcher.cpp.
bool patcher_resolve_classref_to_vftbl | ( | patchref_t * | pr | ) |
Definition at line 188 of file patcher.cpp.
bool patcher_resolve_native_function | ( | patchref_t * | pr | ) |
Definition at line 441 of file patcher-common.cpp.