Skip to content

Commit 5a71983

Browse files
committed
* update mono-ios tag:mono-6.12.0.148
1 parent d04836e commit 5a71983

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+762
-83
lines changed

DemoProject/Assets/Editor.meta

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

DemoProject/Assets/Plugins/PureScript/ScriptEngine/ios.meta

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

DemoProject/Assets/Plugins/PureScript/iOS.meta

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

DemoProject/Assets/StreamingAssets.meta

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ScriptEngine/Tools/Adapter.wrapper.dll.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
-r:../Managed/netstandard.dll
88
-r:../Managed/UnityEngine.CoreModule.dll
99
-define:WRAPPER_SIDE
10+
-define:IOS
1011
/Users/long/Documents/Project/PureScript/ScriptEngine/Adapter/glue/Binder.define.cs
1112
/Users/long/Documents/Project/PureScript/ScriptEngine/Adapter/glue/Binder.funcdeser.cs
1213
/Users/long/Documents/Project/PureScript/ScriptEngine/Adapter/Tools/CustomBinder.cs
-5 KB
Binary file not shown.
47.2 KB
Binary file not shown.
42.8 KB
Binary file not shown.

ScriptEngine/lib/include/mono/cil/opcode.def

Lines changed: 349 additions & 0 deletions
Large diffs are not rendered by default.

ScriptEngine/lib/include/mono/jit/jit.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ typedef enum {
6565
MONO_AOT_MODE_INTERP_LLVMONLY,
6666
/* Use only llvm compiled code, fall back to the interpeter */
6767
MONO_AOT_MODE_LLVMONLY_INTERP,
68+
/* Same as --interp */
69+
MONO_AOT_MODE_INTERP_ONLY,
6870
/* Sentinel value used internally by the runtime. We use a large number to avoid clashing with some internal values. */
6971
MONO_AOT_MODE_LAST = 1000,
7072
} MonoAotMode;
@@ -112,7 +114,6 @@ mono_aot_register_module (void **aot_info);
112114
MONO_API MONO_RT_EXTERNAL_ONLY
113115
MonoDomain* mono_jit_thread_attach (MonoDomain *domain);
114116

115-
116117
MONO_END_DECLS
117118

118119
#endif
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
/**
2+
* \file
3+
*
4+
* Private unstable APIs.
5+
*
6+
* WARNING: The declarations and behavior of functions in this header are NOT STABLE and can be modified or removed at
7+
* any time.
8+
*
9+
*/
10+
11+
12+
#ifndef __MONO_JIT_MONO_PRIVATE_UNSTABLE_H__
13+
#define __MONO_JIT_MONO_PRIVATE_UNSTABLE_H__
14+
15+
#include <mono/utils/mono-publib.h>
16+
#include <mono/metadata/image.h>
17+
18+
/* These are used to load the AOT data for aot images compiled with MONO_AOT_FILE_FLAG_SEPARATE_DATA */
19+
/*
20+
* Return the AOT data for ASSEMBLY. SIZE is the size of the data. OUT_HANDLE should be set to a handle which is later
21+
* passed to the free function.
22+
*/
23+
typedef unsigned char* (*MonoLoadAotDataFunc) (MonoAssembly *assembly, int size, void* user_data, void **out_handle);
24+
/* Not yet used */
25+
typedef void (*MonoFreeAotDataFunc) (MonoAssembly *assembly, int size, void* user_data, void *handle);
26+
MONO_API MONO_RT_EXTERNAL_ONLY void
27+
mono_install_load_aot_data_hook (MonoLoadAotDataFunc load_func, MonoFreeAotDataFunc free_func, void* user_data);
28+
29+
MONO_API int
30+
monovm_initialize (int propertyCount, const char **propertyKeys, const char **propertyValues);
31+
32+
//#ifdef HOST_WASM
33+
typedef void* (*MonoWasmGetNativeToInterpTramp) (MonoMethod *method, void *extra_arg);
34+
35+
MONO_API void
36+
mono_wasm_install_get_native_to_interp_tramp (MonoWasmGetNativeToInterpTramp cb);
37+
//#endif
38+
39+
#endif /*__MONO_JIT_MONO_PRIVATE_UNSTABLE_H__*/

ScriptEngine/lib/include/mono/metadata/appdomain.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,9 @@ mono_domain_foreach (MonoDomainFunc func, void* user_data);
106106
MONO_API MONO_RT_EXTERNAL_ONLY MonoAssembly *
107107
mono_domain_assembly_open (MonoDomain *domain, const char *name);
108108

109+
MONO_API void
110+
mono_domain_ensure_entry_assembly (MonoDomain *domain, MonoAssembly *assembly);
111+
109112
MONO_API mono_bool
110113
mono_domain_finalize (MonoDomain *domain, uint32_t timeout);
111114

ScriptEngine/lib/include/mono/metadata/assembly.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ MONO_API MONO_RT_EXTERNAL_ONLY
1919
MonoAssembly *mono_assembly_open_full (const char *filename,
2020
MonoImageOpenStatus *status,
2121
mono_bool refonly);
22-
MONO_API MonoAssembly* mono_assembly_load (MonoAssemblyName *aname,
22+
MONO_API MONO_RT_EXTERNAL_ONLY
23+
MonoAssembly* mono_assembly_load (MonoAssemblyName *aname,
2324
const char *basedir,
2425
MonoImageOpenStatus *status);
2526
MONO_API MONO_RT_EXTERNAL_ONLY

ScriptEngine/lib/include/mono/metadata/blob.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,8 @@ typedef enum {
8181
MONO_TABLE_TYPESPEC,
8282
MONO_TABLE_IMPLMAP,
8383
MONO_TABLE_FIELDRVA,
84-
MONO_TABLE_UNUSED6,
85-
MONO_TABLE_UNUSED7,
84+
MONO_TABLE_ENCLOG,
85+
MONO_TABLE_ENCMAP,
8686
MONO_TABLE_ASSEMBLY, /* 0x20 */
8787
MONO_TABLE_ASSEMBLYPROCESSOR,
8888
MONO_TABLE_ASSEMBLYOS,

ScriptEngine/lib/include/mono/metadata/class.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,13 @@ typedef struct _MonoClassField MonoClassField;
1818
typedef struct _MonoProperty MonoProperty;
1919
typedef struct _MonoEvent MonoEvent;
2020

21+
typedef enum {
22+
MONO_TYPE_NAME_FORMAT_IL,
23+
MONO_TYPE_NAME_FORMAT_REFLECTION,
24+
MONO_TYPE_NAME_FORMAT_FULL_NAME,
25+
MONO_TYPE_NAME_FORMAT_ASSEMBLY_QUALIFIED
26+
} MonoTypeNameFormat;
27+
2128
MONO_API MONO_RT_EXTERNAL_ONLY
2229
MonoClass *
2330
mono_class_get (MonoImage *image, uint32_t type_token);
@@ -130,6 +137,9 @@ MONO_API MONO_RT_EXTERNAL_ONLY
130137
void*
131138
mono_ldtoken (MonoImage *image, uint32_t token, MonoClass **retclass, MonoGenericContext *context);
132139

140+
MONO_API char *
141+
mono_type_get_name_full (MonoType *type, MonoTypeNameFormat format);
142+
133143
MONO_API char*
134144
mono_type_get_name (MonoType *type);
135145

ScriptEngine/lib/include/mono/metadata/exception.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,7 @@ mono_get_exception_argument_null (const char *arg);
106106
MONO_API MonoException *
107107
mono_get_exception_argument (const char *arg, const char *msg);
108108

109-
MONO_API MONO_RT_EXTERNAL_ONLY
110-
MonoException *
109+
MONO_API MonoException *
111110
mono_get_exception_argument_out_of_range (const char *arg);
112111

113112
MONO_API MONO_RT_EXTERNAL_ONLY

ScriptEngine/lib/include/mono/metadata/image.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,8 @@ MONO_API void mono_image_add_to_name_cache (MonoImage *image,
9292
const char *nspace, const char *name, uint32_t idx);
9393
MONO_API mono_bool mono_image_has_authenticode_entry (MonoImage *image);
9494

95+
mono_bool mono_has_pdb_checksum (char *raw_data, uint32_t raw_data_len);
96+
9597
MONO_END_DECLS
9698

9799
#endif

ScriptEngine/lib/include/mono/metadata/metadata.h

Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,11 @@ typedef enum {
3737
MONO_CALL_STDCALL,
3838
MONO_CALL_THISCALL,
3939
MONO_CALL_FASTCALL,
40-
MONO_CALL_VARARG
40+
MONO_CALL_VARARG = 0x05,
41+
/* unused, */
42+
/* unused, */
43+
/* unused, */
44+
MONO_CALL_UNMANAGED_MD = 0x09, /* default unmanaged calling convention, with additional attributed encoded in modopts */
4145
} MonoCallConvention;
4246

4347
/* ECMA lamespec: the old spec had more info... */
@@ -171,7 +175,9 @@ typedef enum {
171175
MONO_MARSHAL_CONV_SB_UTF8STR,
172176
MONO_MARSHAL_CONV_UTF8STR_STR,
173177
MONO_MARSHAL_CONV_UTF8STR_SB,
174-
MONO_MARSHAL_CONV_FIXED_BUFFER
178+
MONO_MARSHAL_CONV_FIXED_BUFFER,
179+
MONO_MARSHAL_CONV_ANSIBSTR_STR,
180+
MONO_MARSHAL_CONV_TBSTR_STR
175181
} MonoMarshalConv;
176182

177183
#define MONO_MARSHAL_CONV_INVALID ((MonoMarshalConv)-1)
@@ -199,13 +205,15 @@ typedef struct {
199205

200206
MONO_API void mono_metadata_init (void);
201207

208+
void mono_metadata_decode_row_raw (const MonoTableInfo *t, int idx, uint32_t *res, int res_size);
209+
202210
MONO_API void mono_metadata_decode_row (const MonoTableInfo *t,
203211
int idx,
204212
uint32_t *res,
205213
int res_size);
206214

207-
MONO_API uint32_t mono_metadata_decode_row_col (const MonoTableInfo *t,
208-
int idx,
215+
MONO_API uint32_t mono_metadata_decode_row_col (const MonoTableInfo *t,
216+
int idx,
209217
unsigned int col);
210218

211219
/*
@@ -224,7 +232,7 @@ MONO_API int mono_metadata_compute_size (MonoImage *meta,
224232
*/
225233
MONO_API const char *mono_metadata_locate (MonoImage *meta, int table, int idx);
226234
MONO_API const char *mono_metadata_locate_token (MonoImage *meta, uint32_t token);
227-
235+
228236
MONO_API const char *mono_metadata_string_heap (MonoImage *meta, uint32_t table_index);
229237
MONO_API const char *mono_metadata_blob_heap (MonoImage *meta, uint32_t table_index);
230238
MONO_API const char *mono_metadata_user_string (MonoImage *meta, uint32_t table_index);
@@ -252,7 +260,7 @@ MONO_API void mono_metadata_free_marshal_spec (MonoMarshalSpec *spec);
252260

253261
MONO_API uint32_t mono_metadata_implmap_from_method (MonoImage *meta, uint32_t method_idx);
254262

255-
MONO_API void mono_metadata_field_info (MonoImage *meta,
263+
MONO_API void mono_metadata_field_info (MonoImage *meta,
256264
uint32_t table_index,
257265
uint32_t *offset,
258266
uint32_t *rva,
@@ -367,10 +375,10 @@ MONO_API mono_bool mono_type_is_pointer (MonoType *type);
367375
MONO_API mono_bool mono_type_is_reference (MonoType *type);
368376
MONO_API mono_bool mono_type_is_generic_parameter (MonoType *type);
369377

370-
MONO_API MonoType*
378+
MONO_API MONO_RT_EXTERNAL_ONLY MonoType*
371379
mono_signature_get_return_type (MonoMethodSignature *sig);
372380

373-
MONO_API MonoType*
381+
MONO_API MONO_RT_EXTERNAL_ONLY MonoType*
374382
mono_signature_get_params (MonoMethodSignature *sig, void **iter);
375383

376384
MONO_API uint32_t
@@ -421,9 +429,9 @@ MONO_API MONO_RT_EXTERNAL_ONLY
421429
MonoType *mono_type_create_from_typespec (MonoImage *image,
422430
uint32_t type_spec);
423431
MONO_API void mono_metadata_free_type (MonoType *type);
424-
MONO_API int mono_type_size (MonoType *type,
432+
MONO_API int mono_type_size (MonoType *type,
425433
int *alignment);
426-
MONO_API int mono_type_stack_size (MonoType *type,
434+
MONO_API int mono_type_stack_size (MonoType *type,
427435
int *alignment);
428436

429437
MONO_API mono_bool mono_type_generic_inst_is_valuetype (MonoType *type);
@@ -437,7 +445,7 @@ MONO_API MonoMethodSignature *mono_metadata_signature_alloc (MonoImage *image,
437445
MONO_API MonoMethodSignature *mono_metadata_signature_dup (MonoMethodSignature *sig);
438446

439447
MONO_API MONO_RT_EXTERNAL_ONLY
440-
MonoMethodSignature *mono_metadata_parse_signature (MonoImage *image,
448+
MonoMethodSignature *mono_metadata_parse_signature (MonoImage *image,
441449
uint32_t token);
442450

443451
MONO_API MONO_RT_EXTERNAL_ONLY
@@ -447,7 +455,7 @@ MonoMethodSignature *mono_metadata_parse_method_signature (MonoImage
447455
const char **rptr);
448456
MONO_API void mono_metadata_free_method_signature (MonoMethodSignature *method);
449457

450-
MONO_API mono_bool mono_metadata_signature_equal (MonoMethodSignature *sig1,
458+
MONO_API mono_bool mono_metadata_signature_equal (MonoMethodSignature *sig1,
451459
MonoMethodSignature *sig2);
452460

453461
MONO_API unsigned int mono_signature_hash (MonoMethodSignature *sig);
@@ -456,7 +464,7 @@ MONO_API MONO_RT_EXTERNAL_ONLY
456464
MonoMethodHeader *mono_metadata_parse_mh (MonoImage *m, const char *ptr);
457465
MONO_API void mono_metadata_free_mh (MonoMethodHeader *mh);
458466

459-
/* MonoMethodHeader acccessors */
467+
/* MonoMethodHeader accessors */
460468
MONO_API const unsigned char*
461469
mono_method_header_get_code (MonoMethodHeader *header, uint32_t* code_size, uint32_t* max_stack);
462470

@@ -469,8 +477,8 @@ mono_method_header_get_num_clauses (MonoMethodHeader *header);
469477
MONO_API int
470478
mono_method_header_get_clauses (MonoMethodHeader *header, MonoMethod *method, void **iter, MonoExceptionClause *clause);
471479

472-
MONO_API uint32_t
473-
mono_type_to_unmanaged (MonoType *type, MonoMarshalSpec *mspec,
480+
MONO_API uint32_t
481+
mono_type_to_unmanaged (MonoType *type, MonoMarshalSpec *mspec,
474482
mono_bool as_field, mono_bool unicode, MonoMarshalConv *conv);
475483

476484
/*
@@ -507,7 +515,7 @@ MONO_API void mono_metadata_decode_table_row (MonoImage *image, int table,
507515
int res_size);
508516

509517
MONO_API uint32_t mono_metadata_decode_table_row_col (MonoImage *image, int table,
510-
int idx,
518+
int idx,
511519
unsigned int col);
512520

513521
MONO_END_DECLS

ScriptEngine/lib/include/mono/metadata/mono-debug.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,6 @@ mono_debug_lookup_locals (MonoMethod *method);
194194
MonoDebugMethodAsyncInfo*
195195
mono_debug_lookup_method_async_debug_info (MonoMethod *method);
196196

197-
// The intent here is really MONO_LLVM_INTERNAL but that is not necessarily available.
198197
MONO_API
199198
MonoDebugSourceLocation *
200199
mono_debug_method_lookup_location (MonoDebugMethodInfo *minfo, int il_offset);

ScriptEngine/lib/include/mono/metadata/mono-gc.h

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,15 @@ MONO_API int mono_gc_invoke_finalizers (void);
123123
/* heap walking is only valid in the pre-stop-world event callback */
124124
MONO_API int mono_gc_walk_heap (int flags, MonoGCReferences callback, void *data);
125125

126+
MONO_API MONO_RT_EXTERNAL_ONLY void
127+
mono_gc_init_finalizer_thread (void);
128+
129+
/*
130+
* Only supported under SGen. These two with Sgen will take and release the LOCK_GC
131+
*/
132+
void mono_gc_stop_world (void);
133+
void mono_gc_restart_world (void);
134+
126135
MONO_END_DECLS
127136

128137
#endif /* __METADATA_MONO_GC_H__ */
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
/**
2+
* \file
3+
*
4+
* Private unstable APIs.
5+
*
6+
* WARNING: The declarations and behavior of functions in this header are NOT STABLE and can be modified or removed at
7+
* any time.
8+
*
9+
*/
10+
11+
12+
#ifndef __MONO_METADATA_MONO_PRIVATE_UNSTABLE_H__
13+
#define __MONO_METADATA_MONO_PRIVATE_UNSTABLE_H__
14+
15+
#include <mono/utils/mono-publib.h>
16+
17+
typedef MonoGCHandle MonoAssemblyLoadContextGCHandle;
18+
19+
MONO_API MONO_RT_EXTERNAL_ONLY MonoAssembly *
20+
mono_assembly_load_full_alc (MonoAssemblyLoadContextGCHandle alc_gchandle, MonoAssemblyName *aname, const char *basedir, MonoImageOpenStatus *status);
21+
22+
MONO_API MONO_RT_EXTERNAL_ONLY MonoImage *
23+
mono_image_open_from_data_alc (MonoAssemblyLoadContextGCHandle alc_gchandle, char *data, uint32_t data_len, mono_bool need_copy, MonoImageOpenStatus *status, const char *name);
24+
25+
typedef MonoAssembly * (*MonoAssemblyPreLoadFuncV3) (MonoAssemblyLoadContextGCHandle alc_gchandle, MonoAssemblyName *aname, char **assemblies_path, void *user_data, MonoError *error);
26+
27+
MONO_API MONO_RT_EXTERNAL_ONLY void
28+
mono_install_assembly_preload_hook_v3 (MonoAssemblyPreLoadFuncV3 func, void *user_data, mono_bool append);
29+
30+
MONO_API MONO_RT_EXTERNAL_ONLY MonoAssemblyLoadContextGCHandle
31+
mono_alc_get_default_gchandle (void);
32+
33+
typedef struct _MonoBundledSatelliteAssembly MonoBundledSatelliteAssembly;
34+
35+
MONO_API void
36+
mono_register_bundled_satellite_assemblies (const MonoBundledSatelliteAssembly **assemblies);
37+
38+
MONO_API MonoBundledSatelliteAssembly *
39+
mono_create_new_bundled_satellite_assembly (const char *name, const char *culture, const unsigned char *data, unsigned int size);
40+
41+
#endif /*__MONO_METADATA_MONO_PRIVATE_UNSTABLE_H__*/

ScriptEngine/lib/include/mono/metadata/object.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -372,6 +372,11 @@ MONO_API MONO_RT_EXTERNAL_ONLY uint32_t mono_gchandle_new_weakref (MonoObjec
372372
MONO_API MONO_RT_EXTERNAL_ONLY MonoObject* mono_gchandle_get_target (uint32_t gchandle);
373373
MONO_API MONO_RT_EXTERNAL_ONLY void mono_gchandle_free (uint32_t gchandle);
374374

375+
MONO_API MONO_RT_EXTERNAL_ONLY MonoGCHandle mono_gchandle_new_v2 (MonoObject *obj, mono_bool pinned);
376+
MONO_API MONO_RT_EXTERNAL_ONLY MonoGCHandle mono_gchandle_new_weakref_v2 (MonoObject *obj, mono_bool track_resurrection);
377+
MONO_API MONO_RT_EXTERNAL_ONLY MonoObject* mono_gchandle_get_target_v2 (MonoGCHandle gchandle);
378+
MONO_API MONO_RT_EXTERNAL_ONLY void mono_gchandle_free_v2 (MonoGCHandle gchandle);
379+
375380
/* Reference queue support
376381
*
377382
* A reference queue is used to get notifications of when objects are collected.

ScriptEngine/lib/include/mono/metadata/opcodes.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,9 @@ typedef struct {
6767
unsigned short opval;
6868
} MonoOpcode;
6969

70+
MONO_BEGIN_DECLS
7071
MONO_API_DATA const MonoOpcode mono_opcodes [];
72+
MONO_END_DECLS
7173

7274
MONO_API const char*
7375
mono_opcode_name (int opcode);

0 commit comments

Comments
 (0)