[arm64] Scan simd registers on apple
[mono.git] / mono / utils / mono-codeman.h
index 17d53b3b0328ab81161646b1e4fade010c367af2..64cff52da7f98c471292d8977dc9be3d8302e73e 100644 (file)
@@ -1,3 +1,7 @@
+/**
+ * \file
+ */
+
 #ifndef __MONO_CODEMAN_H__
 #define __MONO_CODEMAN_H__
 
@@ -5,6 +9,11 @@
 
 typedef struct _MonoCodeManager MonoCodeManager;
 
+typedef struct {
+       void (*chunk_new) (void *chunk, int size);
+       void (*chunk_destroy) (void *chunk);
+} MonoCodeManagerCallbacks;
+
 MONO_API MonoCodeManager* mono_code_manager_new     (void);
 MONO_API MonoCodeManager* mono_code_manager_new_dynamic (void);
 MONO_API void             mono_code_manager_destroy (MonoCodeManager *cman);
@@ -18,32 +27,11 @@ MONO_API void             mono_code_manager_commit  (MonoCodeManager *cman, void
 MONO_API int              mono_code_manager_size    (MonoCodeManager *cman, int *used_size);
 MONO_API void             mono_code_manager_init (void);
 MONO_API void             mono_code_manager_cleanup (void);
+MONO_API void             mono_code_manager_install_callbacks (MonoCodeManagerCallbacks* callbacks);
 
 /* find the extra block allocated to resolve branches close to code */
 typedef int    (*MonoCodeManagerFunc)      (void *data, int csize, int size, void *user_data);
 void            mono_code_manager_foreach  (MonoCodeManager *cman, MonoCodeManagerFunc func, void *user_data);
 
-#if defined( __native_client_codegen__ ) && defined( __native_client__ )
-
-#ifdef __arm__
-#define kNaClBundleSize 16
-#else
-#define kNaClBundleSize 32
-#endif
-#define kNaClBundleMask (kNaClBundleSize-1)
-
-#ifndef USE_JUMP_TABLES
-extern __thread unsigned char **patch_source_base;
-extern __thread unsigned char **patch_dest_base;
-extern __thread int patch_current_depth;
-#endif
-
-int              nacl_is_code_address             (void *target);
-void*            nacl_code_manager_get_code_dest  (MonoCodeManager *cman, void *data);
-void             nacl_allow_target_modification   (int val);
-void*            nacl_modify_patch_target         (unsigned char *target);
-void*            nacl_inverse_modify_patch_target (unsigned char *target);
-#endif /* __native_client__ */
-
 #endif /* __MONO_CODEMAN_H__ */