xamarin-macios/runtime
Rolf Bjarne Kvinge 386c15c503 Merge pull request #153 from rolfbjarne/more-exceptions
Handle any exceptions when returning from managed code back to our native runtime.
2016-06-09 18:13:23 +02:00
..
xamarin [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
.gitignore [mtouch/runtime] Implement support for tvOS extensions. 2016-04-25 18:15:02 -04:00
COOP.md Initial review pass for COOP for watchOS. 2016-05-26 17:47:10 +02:00
Delegates.cs.t4 [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
EXCEPTIONS.md [runtime] Improve documentation about exceptions a little bit. 2016-06-08 20:11:07 +02:00
Makefile [Mac] Add support for os x extensions (#83) 2016-05-25 17:20:33 -04:00
README.md Initial review pass for COOP for watchOS. 2016-05-26 17:47:10 +02:00
bindings-generator.cs [runtime] Generated binding wrappers that catch ObjC exceptions are supposed to always convert to managed exceptions. (#133) 2016-06-06 14:33:37 +02:00
bindings-generator.csproj Build our runtime. 2016-04-24 14:47:24 -04:00
bindings.h Build our runtime. 2016-04-24 14:47:24 -04:00
bindings.m [runtime] Use xamarin_process_nsexception instead of xamarin_throw_ns_exception in our generated bindings. (#84) 2016-05-26 13:36:56 +02:00
delegates.h.t4 Build our runtime. 2016-04-24 14:47:24 -04:00
delegates.inc.t4 Build our runtime. 2016-04-24 14:47:24 -04:00
delegates.t4 [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
exports.t4 [runtime] Catch and process managed exceptions that are thrown in reverse P/Invoke (delegate) callbacks. 2016-06-08 20:05:54 +02:00
extension-main.m [mtouch/runtime] Implement support for tvOS extensions. 2016-04-25 18:15:02 -04:00
launcher.h Build our runtime. 2016-04-24 14:47:24 -04:00
launcher.m [XM] Dynamically look up NSExtensionMain to unbreak pre-10.10 XM apps (#154) 2016-06-09 00:19:16 +02:00
libmonotouch.csproj Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
libxammac.csproj [Mac] Add support for os x extensions (#83) 2016-05-25 17:20:33 -04:00
main-internal.h [Mac] Add support for os x extensions (#83) 2016-05-25 17:20:33 -04:00
mono-runtime.h.t4 [runtime] Catch and process managed exceptions that are thrown in reverse P/Invoke (delegate) callbacks. 2016-06-08 20:05:54 +02:00
mono-runtime.m.t4 Build our runtime. 2016-04-24 14:47:24 -04:00
monotouch-debug.h Build our runtime. 2016-04-24 14:47:24 -04:00
monotouch-debug.m [runtime] Use the same coop gc macro names as mono master does. 2016-05-26 17:47:10 +02:00
monotouch-main.m [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
monotouch-support.h [runtime] Add dummy _stret symbols for iOS/ARM64 (#66) 2016-05-18 16:51:45 -04:00
nsstring-localization.m Build our runtime. 2016-04-24 14:47:24 -04:00
product.h Build our runtime. 2016-04-24 14:47:24 -04:00
runtime-internal.h [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
runtime.m [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
shared.h Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
shared.m [runtime] Use the same coop gc macro names as mono master does. 2016-05-26 17:47:10 +02:00
slinked-list.h Build our runtime. 2016-04-24 14:47:24 -04:00
trampolines-i386-asm.s [runtime] Make the existing trampolines exception-aware. 2016-05-17 11:20:26 +02:00
trampolines-i386-objc_msgSend-copyframe.inc [runtime] Don't store xmm registers where we store other registers. 2016-05-17 11:24:02 +02:00
trampolines-i386-objc_msgSend-post.inc [runtime] Make sure the stack is correctly aligned to 16 bytes. 2016-05-17 11:24:03 +02:00
trampolines-i386-objc_msgSend-pre.inc [runtime] Make sure the stack is correctly aligned to 16 bytes. 2016-05-17 11:24:03 +02:00
trampolines-i386-objc_msgSend.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-i386-objc_msgSendSuper.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-i386-objc_msgSendSuper_stret.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-i386-objc_msgSend_stret.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-i386.h Build our runtime. 2016-04-24 14:47:24 -04:00
trampolines-i386.m [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
trampolines-internal.h [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
trampolines-invoke.m [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
trampolines-varargs.h Build our runtime. 2016-04-24 14:47:24 -04:00
trampolines-varargs.m [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
trampolines-x86_64-asm.s [runtime] Make the existing trampolines exception-aware. 2016-05-17 11:20:26 +02:00
trampolines-x86_64-objc_msgSend-copyframe.inc Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSend-post.inc Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSend-pre.inc Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSend.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSendSuper.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSendSuper_stret.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64-objc_msgSend_stret.s Implement support for exception marshalling. 2016-05-17 11:23:48 +02:00
trampolines-x86_64.h Build our runtime. 2016-04-24 14:47:24 -04:00
trampolines-x86_64.m [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
trampolines.m [runtime] Handle any exceptions whenever we return from managed code. 2016-06-08 20:05:54 +02:00
xamarin-support.m Initial review pass for COOP for watchOS. 2016-05-26 17:47:10 +02:00

README.md

Native runtime

This directory contains the native runtime for Xamarin.iOS and Xamarin.Mac.

Cooperative GC

See COOP.md

Generated code

A few files are generated automatically:

delegates.h|inc, Delegates.cs

These files contain the code required to glue the native runtime and the managed runtime.

mono-runtime.m, xamarin/mono-runtime.h

These files contain code that makes other code, consumers of the mono runtime, oblivious to whether the mono runtime is linked statically, dynamically, or using dlopen at runtime.

If you need to use a new function from the Mono headers, add it to exports.t4.

If you need a new enum / constant / typedef / etc, add it to mono-runtime.h.t4.

Shipped headers

These are the headers shipped with XI/XM (they're not for public consumption, but we need them to build generated code on customers machine, in particular main.m and registrar.m)

xamarin/runtime.h xamarin/trampolines.h xamarin/main.h xamarin/xamarin.h