CACAO
Data Structures | Macros | Functions | Variables
cacaodbg.h File Reference

Go to the source code of this file.

Data Structures

struct  genericEventData
 
struct  _jrawMonitorID
 
struct  _brkpt
 
struct  brkpts
 
struct  cacaodbgcommunication
 

Macros

#define SETSYSBRKPT   0 /* used for setsysbrkpt calls */
 
#define CACAODBGSERVERQUIT   1
 
#define NOTHARDCODEDBRK
 
#define THREADSTARTBRK   2
 
#define THREADENDBRK   3
 
#define CLASSLOADBRK   4
 
#define CLASSPREPARERK   5
 
#define CLASSFILELOADHOOKBRK   6
 
#define COMPILEDMETHODLOADBRK   7
 
#define COMPILEDMETHODUNLOADBRK   8
 
#define BEGINUSERBRK
 

Functions

jvmtiEnvjvmti_new_environment ()
 
void jvmti_set_phase (jvmtiPhase p)
 
void jvmti_fireEvent (genericEventData *data)
 
void jvmti_agentload (char *opt_arg, bool agentbypath, lt_dlhandle *handle, char **libname)
 
void jvmti_agentunload ()
 
void jvmti_add_breakpoint (void *addr, jmethodID method, jlocation location)
 
void jvmti_set_system_breakpoint (int sysbrk, bool mode)
 
jvmtiError jvmti_get_all_threads (jint *threads_count_ptr, threadobject ***threads_ptr)
 
jthread jvmti_get_current_thread ()
 
void jvmti_cacao_debug_init ()
 
void jvmti_cacaodbgserver_quit ()
 
void jvmti_ClassLoadPrepare (bool prepared, classinfo *c)
 
void jvmti_ClassFileLoadHook (utf *name, int class_data_len, unsigned char *class_data, java_objectheader *loader, java_objectheader *protection_domain, jint *new_class_data_len, unsigned char **new_class_data)
 
void jvmti_MonitorContendedEntering (bool entered, jobject obj)
 
void jvmti_MonitorWaiting (bool wait, jobject obj, jlong timeout)
 
void jvmti_ThreadStartEnd (jvmtiEvent ev)
 
void jvmti_NativeMethodBind (jmethodID method, void *address, void **new_address_ptr)
 

Variables

cacaodbgcommunicationdbgcom
 
bool jvmti
 
mutex_t dbgcomlock
 

Macro Definition Documentation

#define BEGINUSERBRK
Value:
9 /* here is where the first user breakpoint
is stored */

Definition at line 87 of file cacaodbg.h.

#define CACAODBGSERVERQUIT   1

Definition at line 77 of file cacaodbg.h.

#define CLASSFILELOADHOOKBRK   6

Definition at line 84 of file cacaodbg.h.

#define CLASSLOADBRK   4

Definition at line 82 of file cacaodbg.h.

#define CLASSPREPARERK   5

Definition at line 83 of file cacaodbg.h.

#define COMPILEDMETHODLOADBRK   7

Definition at line 85 of file cacaodbg.h.

#define COMPILEDMETHODUNLOADBRK   8

Definition at line 86 of file cacaodbg.h.

#define NOTHARDCODEDBRK
Value:
2 /* here is where the first not hard coded
breakpoint is stored */

Definition at line 78 of file cacaodbg.h.

#define SETSYSBRKPT   0 /* used for setsysbrkpt calls */

Definition at line 76 of file cacaodbg.h.

#define THREADENDBRK   3

Definition at line 81 of file cacaodbg.h.

#define THREADSTARTBRK   2

Definition at line 80 of file cacaodbg.h.

Function Documentation

void jvmti_add_breakpoint ( void addr,
jmethodID  method,
jlocation  location 
)

Definition at line 180 of file cacaodbg.c.

void jvmti_agentload ( char *  opt_arg,
bool  agentbypath,
lt_dlhandle *  handle,
char **  libname 
)

Definition at line 4465 of file jvmti.c.

void jvmti_agentunload ( )

Definition at line 4533 of file jvmti.c.

void jvmti_cacao_debug_init ( )

Definition at line 272 of file cacaodbg.c.

void jvmti_cacaodbgserver_quit ( )

Definition at line 211 of file cacaodbg.c.

void jvmti_ClassFileLoadHook ( utf *  name,
int  class_data_len,
unsigned char *  class_data,
java_objectheader *  loader,
java_objectheader *  protection_domain,
jint *  new_class_data_len,
unsigned char **  new_class_data 
)

Definition at line 317 of file cacaodbg.c.

void jvmti_ClassLoadPrepare ( bool  prepared,
classinfo c 
)

Definition at line 347 of file cacaodbg.c.

void jvmti_fireEvent ( genericEventData data)

Definition at line 402 of file jvmti.c.

jvmtiError jvmti_get_all_threads ( jint *  threads_count_ptr,
threadobject ***  threads_ptr 
)

Definition at line 52 of file cacaodbg.c.

jthread jvmti_get_current_thread ( )

Definition at line 95 of file cacaodbg.c.

void jvmti_MonitorContendedEntering ( bool  entered,
jobject  obj 
)

Definition at line 366 of file cacaodbg.c.

void jvmti_MonitorWaiting ( bool  wait,
jobject  obj,
jlong  timeout 
)

Definition at line 385 of file cacaodbg.c.

void jvmti_NativeMethodBind ( jmethodID  method,
void address,
void **  new_address_ptr 
)

Definition at line 420 of file cacaodbg.c.

jvmtiEnv* jvmti_new_environment ( )

Definition at line 4429 of file jvmti.c.

void jvmti_set_phase ( jvmtiPhase  p)

Definition at line 4386 of file jvmti.c.

void jvmti_set_system_breakpoint ( int  sysbrk,
bool  mode 
)

Definition at line 134 of file cacaodbg.c.

void jvmti_ThreadStartEnd ( jvmtiEvent  ev)

Definition at line 407 of file cacaodbg.c.

Variable Documentation

Definition at line 112 of file cacaodbg.h.

mutex_t dbgcomlock

Definition at line 79 of file jvmti.c.

bool jvmti

Definition at line 114 of file cacaodbg.h.