-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Description
This is a tracking issue to audit the public embedding API for correctness with respect to assembly load context support.
The goal is to consider how each function in the headers below will behave when there are multiple ALCs in the managed code, and to decide whether the function behavior needs to be corrected, or if it is not feasible to correct, whether the function's documentation should be updated with a deprecation note and a new ALC-aware replacement added.
The top priority are functions that are mentioned in xamarin-macios exports.t4 or headers that are used in the source code in the xamarin android monodroid/jni directory, and Java.Interop
mono/utils- mono-logger.h
- mono-error.h
- mono-forward.h
- mono-publib.h
- mono-jemalloc.h
- mono-dl-fallback.h
- mono-counters.h
mono/metadata- appdomain.h
- assembly.h
- attrdefs.h
- blob.h
- class.h
- debug-helpers.h
- debug-mono-symfile.h
- environment.h
- exception.h
- image.h
- loader.h
- metadata.h
- mono-config.h
- mono-debug.h
- mono-gc.h
- object.h
- object-forward.h
- opcodes.h
- profiler.h
- profiler-events.h
- reflection.h
- row-indexes.h
- sgen-bridge.h
- threads.h
- tokentype.h
- verify.h
mono/mini- jit.h
The following headers aren't installed, but they have MONO_API functions, and should be audited too:
Mini
-
mono/utils/mini-runtime.h -
mono/utils/monovm.h -
mono/utils/mini.h -
mono/utils/mini-llvm.h -
mono/utils/aot-runtime.h -
mono/utils/debugger-agent.h
Metadata:
-
mono/metadata/cil-coff.h -
mono/metadata/marshal-ilgen.h -
mono/metadata/marshal.h -
mono/metadata/coree.h -
mono/metadata/assembly-internals.h -
mono/metadata/sgen-toggleref.h -
mono/metadata/class-internals.h -
mono/metadata/w32file.h -
mono/metadata/security-core-clr.h -
mono/metadata/metadata-internals.h -
mono/metadata/monitor.h -
mono/metadata/object-internals.h -
mono/metadata/mono-mlist.h -
mono/metadata/method-builder-ilgen.h -
mono/metadata/filewatcher.h -
mono/metadata/threads-types.h -
mono/metadata/cominterop.h -
mono/metadata/mempool.h -
mono/metadata/mono-perfcounters.h -
mono/metadata/icall-table.h -
mono/metadata/mono-hash.h -
mono/metadata/gc-internals.h
Utils
-
mono/utils/mono-path.h -
mono/utils/mono-linked-list-set.h -
mono/utils/mono-proclib.h -
mono/utils/mono-logger-internals.h -
mono/utils/strenc.h -
mono/utils/hazard-pointer.h -
mono/utils/mono-threads-api.h -
mono/utils/mono-dl-fallback.h -
mono/utils/mono-embed.h -
mono/utils/mono-error-internals.h -
mono/utils/mono-digest.h -
mono/utils/os-event.h -
mono/utils/mono-threads.h -
mono/utils/monobitset.h -
mono/utils/mono-uri.h -
mono/utils/mono-mmap.h -
mono/utils/lock-free-alloc.h -
mono/utils/mono-conc-hashtable.h -
mono/utils/lock-free-queue.h -
mono/utils/mono-logger.h -
mono/utils/mono-poll.h