b2bcad7a94
* [ObjCRuntime] Add a BindingImplAttribute. * [linker] Make ProviderToString an extension method on ICustomAttributeProvider to make it more discoverable. * [generator] Use [BindingImpl] instead of [CompilerGenerated]. The entire diff is big (89MB), so it can't be gisted. However, most of it is either removal of `using System.Runtime.CompilerServices;` or the change from `[CompilerGenerated]` to `[BindingImpl (...)]` like this: https://gist.github.com/rolfbjarne/8bfda3ed37b956d0342a1c1e9b079244 If I remove those parts of the diff, there's nothing significant left: https://gist.github.com/rolfbjarne/4156164d6bdb1376366200394eb8a091 * [linker] Teach the linker about the new [BindingImpl] attribute. In addition to the existing logic where the linker would optimize some [CompilerGenerated] code (sometimes with additional requirements), it will now also optimize all [BindingImpl (Optimizable)] code (without any additional requirements). * [tests] Add tests to make sure [BindingImpl (Optimizable)] works as expected. * [linker] Check for [BindingImpl] before [CompilerGenerated] and stop checking for [CompilerGenerated] in XAMCORE_4_0. Check for [BindingImpl] before checking for [CompilerGenerated], since the former is more common. Also stop checking for [CompilerGenerated] (at least to mean that code is optimizable) in our next non-compatible evolutionary leap (XAMCORE_4_0): * [introspection] Impl a better typo check. |
||
---|---|---|
.. | ||
Extensions.cs | ||
InlinerSubStep.cs | ||
ListExportedSymbols.cs | ||
MetadataReducerSubStep.cs | ||
MonoTouchMarkStep.cs | ||
MonoTouchProfile.cs | ||
MonoTouchSweepStep.cs | ||
MonoTouchTypeMap.cs | ||
OptimizeGeneratedCodeSubStep.cs | ||
PreserveCode.cs | ||
PreserveSmartEnumConversionsSubStep.cs | ||
ProcessExportedFields.cs | ||
RemoveAttributes.cs | ||
RemoveCode.cs | ||
SealerSubStep.cs |