xref: /linux/tools/perf/jvmti/jvmti_agent.h (revision 209045adc2bbdb2b315fa5539cec54d01cd3e7db)
1*209045adSStephane Eranian #ifndef __JVMTI_AGENT_H__
2*209045adSStephane Eranian #define __JVMTI_AGENT_H__
3*209045adSStephane Eranian 
4*209045adSStephane Eranian #include <sys/types.h>
5*209045adSStephane Eranian #include <stdint.h>
6*209045adSStephane Eranian #include <jvmti.h>
7*209045adSStephane Eranian 
8*209045adSStephane Eranian #define __unused __attribute__((unused))
9*209045adSStephane Eranian 
10*209045adSStephane Eranian #if defined(__cplusplus)
11*209045adSStephane Eranian extern "C" {
12*209045adSStephane Eranian #endif
13*209045adSStephane Eranian 
14*209045adSStephane Eranian void *jvmti_open(void);
15*209045adSStephane Eranian int   jvmti_close(void *agent);
16*209045adSStephane Eranian int   jvmti_write_code(void *agent, char const *symbol_name,
17*209045adSStephane Eranian 		       uint64_t vma, void const *code,
18*209045adSStephane Eranian 		       const unsigned int code_size);
19*209045adSStephane Eranian int   jvmti_write_debug_info(void *agent,
20*209045adSStephane Eranian 		             uint64_t code,
21*209045adSStephane Eranian 			     const char *file,
22*209045adSStephane Eranian 			     jvmtiAddrLocationMap const *map,
23*209045adSStephane Eranian 			     jvmtiLineNumberEntry *tab, jint nr);
24*209045adSStephane Eranian 
25*209045adSStephane Eranian #if defined(__cplusplus)
26*209045adSStephane Eranian }
27*209045adSStephane Eranian 
28*209045adSStephane Eranian #endif
29*209045adSStephane Eranian #endif /* __JVMTI_H__ */
30