Merge pull request #4169 from evincarofautumn/fix-xmm-scanning-mac-x86
[mono.git] / mono / metadata / dynamic-image-internals.h
1 /* 
2  * Copyright 2016 Microsoft
3  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
4  */
5 #ifndef __MONO_METADATA_DYNAMIC_IMAGE_INTERNALS_H__
6 #define __MONO_METADATA_DYNAMIC_IMAGE_INTERNALS_H__
7
8 #include <mono/metadata/object.h>
9 #include <mono/metadata/metadata-internals.h>
10 #include <mono/metadata/object-internals.h>
11
12 typedef struct {
13         guint32 import_lookup_table;
14         guint32 timestamp;
15         guint32 forwarder;
16         guint32 name_rva;
17         guint32 import_address_table_rva;
18 } MonoIDT;
19
20 typedef struct {
21         guint32 name_rva;
22         guint32 flags;
23 } MonoILT;
24
25
26 void
27 mono_dynamic_images_init (void);
28
29 void
30 mono_dynamic_image_register_token (MonoDynamicImage *assembly, guint32 token, MonoObjectHandle obj);
31
32 gboolean
33 mono_dynamic_image_is_valid_token (MonoDynamicImage *image, guint32 token);
34
35 MonoDynamicImage*
36 mono_dynamic_image_create (MonoDynamicAssembly *assembly, char *assembly_name, char *module_name);
37
38 guint32
39 mono_dynamic_image_add_to_blob_cached (MonoDynamicImage *assembly, char *b1, int s1, char *b2, int s2);
40
41 void
42 mono_dynimage_alloc_table (MonoDynamicTable *table, guint nrows);
43
44 #endif  /* __MONO_METADATA_DYNAMIC_IMAGE_INTERNALS_H__ */
45