[bcl] Enable tests for the monodroid profile.
[mono.git] / mono / metadata / mono-basic-block.h
1 #ifndef __MONO_METADATA_BASIC_BLOCK_H__
2 #define __MONO_METADATA_BASIC_BLOCK_H__
3
4 #include <glib.h>
5 #include <mono/metadata/metadata.h>
6 #include <mono/utils/mono-compiler.h>
7 #include <mono/utils/mono-error.h>
8
9 G_BEGIN_DECLS
10
11 typedef struct _MonoSimpleBasicBlock MonoSimpleBasicBlock;
12
13 struct _MonoSimpleBasicBlock {
14         MonoSimpleBasicBlock *next, *left, *right, *parent;
15         GSList *out_bb;
16         int start, end;
17         unsigned colour   : 1;
18         unsigned dead     : 1;
19 };
20
21 MonoSimpleBasicBlock*
22 mono_basic_block_split (MonoMethod *method, MonoError *error, MonoMethodHeader *header);
23
24 void
25 mono_basic_block_free (MonoSimpleBasicBlock *bb);
26
27
28 /*This function is here because opcodes.h is a public header*/
29 int
30 mono_opcode_value_and_size (const unsigned char **ip, const unsigned char *end, int *value);
31
32 int
33 mono_opcode_size (const unsigned char *ip, const unsigned char *end);
34
35 G_END_DECLS
36
37 #endif  /* __MONO_METADATA_BASIC_BLOCK_H__ */
38