-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Open
Milestone
Description
This is a list (not all inclusive and in no particular order) of limitations in the interpreter and/or runtime that we don't currently plan to address but may make plans to address in the future.
- Tiered compilation causes crashes in the interpreter if it recompiles an interpreted method. We currently disable tiered compilation if the interpreter is enabled at all.
- Many invocations go through stubs that don't need to, i.e. interpreter-to-interpreter invocations of pinvokes or delegates. This will need to be addressed eventually for WASM and iOS but is not currently causing problems.
- Mixed-mode debugging does not work reliably and will trigger assertions or fail to properly walk the stack.
- We do not put debug fill patterns (0xCDCDCDCD) in place of local variables that have their address exposed like the JIT does. This breaks JIT\Directed\debugging\poisoning\poison.
- Varargs, managed C++, exception handling interop, built-in COM interop, and other Windows specific runtime features
- Marshalled calli
- COM support
- Interop with externally thrown C++/SEH exceptions
- Values on the IL stack are reported conservatively to the GC