projects
/
mono.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add two wrappers which are used to transition between normal and gsharedvt code.
[mono.git]
/
mono
/
metadata
/
mono-debug.h
diff --git
a/mono/metadata/mono-debug.h
b/mono/metadata/mono-debug.h
index 32d6dfcd25fc8b35b8b92e36771d803bad2cb77f..9494a79f6770197ccacea4561f71a68bcf05668b 100644
(file)
--- a/
mono/metadata/mono-debug.h
+++ b/
mono/metadata/mono-debug.h
@@
-6,10
+6,12
@@
#ifndef __MONO_DEBUG_H__
#define __MONO_DEBUG_H__
#ifndef __MONO_DEBUG_H__
#define __MONO_DEBUG_H__
-#include <
g
lib.h>
+#include <
mono/utils/mono-pub
lib.h>
#include <mono/metadata/image.h>
#include <mono/metadata/appdomain.h>
#include <mono/metadata/image.h>
#include <mono/metadata/appdomain.h>
+MONO_BEGIN_DECLS
+
typedef struct _MonoSymbolTable MonoSymbolTable;
typedef struct _MonoDebugDataTable MonoDebugDataTable;
typedef struct _MonoSymbolTable MonoSymbolTable;
typedef struct _MonoDebugDataTable MonoDebugDataTable;
@@
-26,6
+28,7
@@
typedef struct _MonoDebugMethodAddressList MonoDebugMethodAddressList;
typedef struct _MonoDebugClassEntry MonoDebugClassEntry;
typedef struct _MonoDebugMethodInfo MonoDebugMethodInfo;
typedef struct _MonoDebugClassEntry MonoDebugClassEntry;
typedef struct _MonoDebugMethodInfo MonoDebugMethodInfo;
+typedef struct _MonoDebugLocalsInfo MonoDebugLocalsInfo;
typedef struct _MonoDebugSourceLocation MonoDebugSourceLocation;
typedef struct _MonoDebugList MonoDebugList;
typedef struct _MonoDebugSourceLocation MonoDebugSourceLocation;
typedef struct _MonoDebugList MonoDebugList;
@@
-43,13
+46,13
@@
typedef enum {
*/
struct _MonoDebugList {
MonoDebugList *next;
*/
struct _MonoDebugList {
MonoDebugList *next;
-
gconstpointer
data;
+
const void*
data;
};
struct _MonoSymbolTable {
};
struct _MonoSymbolTable {
-
guint64
magic;
-
guint32
version;
-
guint32
total_size;
+
uint64_t
magic;
+
uint32_t
version;
+
uint32_t
total_size;
/*
* Corlib and metadata info.
/*
* Corlib and metadata info.
@@
-65,7
+68,7
@@
struct _MonoSymbolTable {
};
struct _MonoDebugHandle {
};
struct _MonoDebugHandle {
-
guint32
index;
+
uint32_t
index;
char *image_file;
MonoImage *image;
MonoDebugDataTable *type_table;
char *image_file;
MonoImage *image;
MonoDebugDataTable *type_table;
@@
-73,30
+76,30
@@
struct _MonoDebugHandle {
};
struct _MonoDebugMethodJitInfo {
};
struct _MonoDebugMethodJitInfo {
- const
guint8
*code_start;
-
guint32
code_size;
-
guint32
prologue_end;
-
guint32
epilogue_begin;
- const
guint8
*wrapper_addr;
-
guint32
num_line_numbers;
+ const
mono_byte
*code_start;
+
uint32_t
code_size;
+
uint32_t
prologue_end;
+
uint32_t
epilogue_begin;
+ const
mono_byte
*wrapper_addr;
+
uint32_t
num_line_numbers;
MonoDebugLineNumberEntry *line_numbers;
MonoDebugLineNumberEntry *line_numbers;
-
guint32
num_params;
+
uint32_t
num_params;
MonoDebugVarInfo *this_var;
MonoDebugVarInfo *params;
MonoDebugVarInfo *this_var;
MonoDebugVarInfo *params;
-
guint32
num_locals;
+
uint32_t
num_locals;
MonoDebugVarInfo *locals;
};
struct _MonoDebugMethodAddressList {
MonoDebugVarInfo *locals;
};
struct _MonoDebugMethodAddressList {
-
guint32
size;
-
guint32
count;
-
guint8
data [MONO_ZERO_LEN_ARRAY];
+
uint32_t
size;
+
uint32_t
count;
+
mono_byte
data [MONO_ZERO_LEN_ARRAY];
};
struct _MonoDebugSourceLocation {
};
struct _MonoDebugSourceLocation {
-
g
char *source_file;
-
guint32
row, column;
-
guint32
il_offset;
+ char *source_file;
+
uint32_t
row, column;
+
uint32_t
il_offset;
};
/*
};
/*
@@
-120,29
+123,28
@@
struct _MonoDebugSourceLocation {
#define MONO_DEBUG_VAR_ADDRESS_MODE_DEAD 0x30000000
struct _MonoDebugVarInfo {
#define MONO_DEBUG_VAR_ADDRESS_MODE_DEAD 0x30000000
struct _MonoDebugVarInfo {
-
guint32
index;
-
guint32
offset;
-
guint32
size;
-
guint32
begin_scope;
-
guint32
end_scope;
+
uint32_t
index;
+
uint32_t
offset;
+
uint32_t
size;
+
uint32_t
begin_scope;
+
uint32_t
end_scope;
MonoType *type;
};
#define MONO_DEBUGGER_MAJOR_VERSION 81
MonoType *type;
};
#define MONO_DEBUGGER_MAJOR_VERSION 81
-#define MONO_DEBUGGER_MINOR_VERSION
3
+#define MONO_DEBUGGER_MINOR_VERSION
6
#define MONO_DEBUGGER_MAGIC 0x7aff65af4253d427ULL
extern MonoSymbolTable *mono_symbol_table;
extern MonoDebugFormat mono_debug_format;
#define MONO_DEBUGGER_MAGIC 0x7aff65af4253d427ULL
extern MonoSymbolTable *mono_symbol_table;
extern MonoDebugFormat mono_debug_format;
-extern GHashTable *mono_debug_handles;
-extern gint32 mono_debug_debugger_version;
-extern gint32 _mono_debug_using_mono_debugger;
+extern int32_t mono_debug_debugger_version;
+extern int32_t _mono_debug_using_mono_debugger;
-void mono_debug_list_add (MonoDebugList **list,
gconstpointer
data);
-void mono_debug_list_remove (MonoDebugList **list,
gconstpointer
data);
+void mono_debug_list_add (MonoDebugList **list,
const void*
data);
+void mono_debug_list_remove (MonoDebugList **list,
const void*
data);
void mono_debug_init (MonoDebugFormat format);
void mono_debug_init (MonoDebugFormat format);
-void mono_debug_open_image_from_memory (MonoImage *image, const
guint8
*raw_contents, int size);
+void mono_debug_open_image_from_memory (MonoImage *image, const
mono_byte
*raw_contents, int size);
void mono_debug_cleanup (void);
void mono_debug_close_image (MonoImage *image);
void mono_debug_cleanup (void);
void mono_debug_close_image (MonoImage *image);
@@
-150,11
+152,14
@@
void mono_debug_close_image (MonoImage *image);
void mono_debug_domain_unload (MonoDomain *domain);
void mono_debug_domain_create (MonoDomain *domain);
void mono_debug_domain_unload (MonoDomain *domain);
void mono_debug_domain_create (MonoDomain *domain);
-
gboolean
mono_debug_using_mono_debugger (void);
+
mono_bool
mono_debug_using_mono_debugger (void);
MonoDebugMethodAddress *
mono_debug_add_method (MonoMethod *method, MonoDebugMethodJitInfo *jit, MonoDomain *domain);
MonoDebugMethodAddress *
mono_debug_add_method (MonoMethod *method, MonoDebugMethodJitInfo *jit, MonoDomain *domain);
+void
+mono_debug_remove_method (MonoMethod *method, MonoDomain *domain);
+
MonoDebugMethodInfo *
mono_debug_lookup_method (MonoMethod *method);
MonoDebugMethodInfo *
mono_debug_lookup_method (MonoMethod *method);
@@
-169,23
+174,26
@@
mono_debug_free_method_jit_info (MonoDebugMethodJitInfo *jit);
void
void
-mono_debug_add_delegate_trampoline (
gpointer
code, int size);
+mono_debug_add_delegate_trampoline (
void*
code, int size);
-int
-mono_debug_lookup_locals (MonoMethod *method
, char ***names, int **indexes
);
+MonoDebugLocalsInfo*
+mono_debug_lookup_locals (MonoMethod *method);
/*
* Line number support.
*/
MonoDebugSourceLocation *
/*
* Line number support.
*/
MonoDebugSourceLocation *
-mono_debug_lookup_source_location (MonoMethod *method, guint32 address, MonoDomain *domain);
+mono_debug_lookup_source_location (MonoMethod *method, uint32_t address, MonoDomain *domain);
+
+int32_t
+mono_debug_il_offset_from_address (MonoMethod *method, MonoDomain *domain, uint32_t native_offset);
void
mono_debug_free_source_location (MonoDebugSourceLocation *location);
void
mono_debug_free_source_location (MonoDebugSourceLocation *location);
-
g
char *
-mono_debug_print_stack_frame (MonoMethod *method,
guint32
native_offset, MonoDomain *domain);
+char *
+mono_debug_print_stack_frame (MonoMethod *method,
uint32_t
native_offset, MonoDomain *domain);
/*
* Mono Debugger support functions
/*
* Mono Debugger support functions
@@
-194,6
+202,11
@@
mono_debug_print_stack_frame (MonoMethod *method, guint32 native_offset, MonoDom
*/
int mono_debugger_method_has_breakpoint (MonoMethod *method);
*/
int mono_debugger_method_has_breakpoint (MonoMethod *method);
-int mono_debugger_insert_breakpoint (const gchar *method_name, gboolean include_namespace);
+int mono_debugger_insert_breakpoint (const char *method_name, mono_bool include_namespace);
+
+void mono_set_is_debugger_attached (mono_bool attached);
+mono_bool mono_is_debugger_attached (void);
+
+MONO_END_DECLS
#endif /* __MONO_DEBUG_H__ */
#endif /* __MONO_DEBUG_H__ */