xamarin-macios/tools/linker
Rolf Bjarne Kvinge e013c10a30
Add support for function pointers to BlockLiteral. (#17672)
Add support for function pointers to BlockLiteral, and use it to update
almost all manually bound block code to use function pointers (in .NET).

Also add support to the linker for optimizing the new block API.

Contributes towards https://github.com/xamarin/xamarin-macios/issues/15783.
2023-03-06 10:26:08 +01:00
..
MonoTouch.Tuner [autoformat] Add mtouch.csproj. (#16316) 2022-10-13 10:42:41 +02:00
ApplyPreserveAttribute.cs [autoformat] Add dotnet-linker to the projects to autoformat. (#16178) 2022-09-30 09:32:42 +02:00
BaseProfile.cs [autoformat] Add mmp.csproj. (#16313) 2022-10-11 22:36:58 +02:00
ChangeLog Build mmp. 2016-04-24 14:47:26 -04:00
CoreHttpMessageHandler.cs [autoformat] Add mmp.csproj. (#16313) 2022-10-11 22:36:58 +02:00
CoreMarkStep.cs [autoformat] Add mmp.csproj. (#16313) 2022-10-11 22:36:58 +02:00
CoreOptimizeGeneratedCode.cs Add support for function pointers to BlockLiteral. (#17672) 2023-03-06 10:26:08 +01:00
CorePreserveCode.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
CoreRemoveAttributes.cs [autoformat] Add mmp.csproj. (#16313) 2022-10-11 22:36:58 +02:00
CoreRemoveSecurity.cs [linker] Always create the CoreRemoveSecurity step, and instead detect if it should be active using the LinkContext field. 2020-05-07 15:51:38 +02:00
CoreSweepStep.cs [linker] Find linked away interfaces when resolving removed interfaces. Fixes #3513. (#3515) (#3524) 2018-02-19 15:24:40 +01:00
CoreTypeMapStep.cs [autoformat] Add dotnet-linker to the projects to autoformat. (#16178) 2022-09-30 09:32:42 +02:00
CustomSymbolWriter.cs [autoformat] Add dotnet-linker to the projects to autoformat. (#16178) 2022-09-30 09:32:42 +02:00
ExceptionalSubStep.cs [autoformat] Add dotnet-linker to the projects to autoformat. (#16178) 2022-09-30 09:32:42 +02:00
MarkNSObjects.cs [linker] Preserve the NativeHandle constructor now. 2021-11-26 14:25:21 +01:00
MobileApplyPreserveAttribute.cs [autoformat] Add mmp.csproj. (#16313) 2022-10-11 22:36:58 +02:00
MobileExtensions.cs [autoformat] Add dotnet-linker to the projects to autoformat. (#16178) 2022-09-30 09:32:42 +02:00
MobileMarkStep.cs [autoformat] Add mmp.csproj. (#16313) 2022-10-11 22:36:58 +02:00
MobileProfile.cs [mtouch] Make 'MonoTouch.Dialog-1' and 'MonoTouch.NUnitLite' SDK assemblies, not product assemblies. Fixes #12862. (#12919) 2021-10-04 19:14:34 +02:00
MobileRemoveAttributes.cs [linker] Remove internal [NullablePublicOnly] attribute from apps (#8568) 2020-05-11 19:39:43 -04:00
MobileResolveMainAssemblyStep.cs [autoformat] Add mtouch.csproj. (#16316) 2022-10-13 10:42:41 +02:00
MobileSweepStep.cs [linker] Remove code to deal with ExportedTypes (#8632) 2020-05-21 08:44:48 -04:00
ObjCExtensions.cs [AVKit and AVRouting] Updates for Xcode14 Beta3 (#15811) 2022-09-08 15:13:15 -05:00
README.linker Build mmp. 2016-04-24 14:47:26 -04:00
RegistrarRemovalTrackingStep.cs Add support for function pointers to BlockLiteral. (#17672) 2023-03-06 10:26:08 +01:00
RemoveRejectedTypesStep.cs [autoformat] Add mtouch.csproj. (#16316) 2022-10-13 10:42:41 +02:00
RemoveSelectors.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00
RemoveUserResourcesSubStep.cs [autoformat] Add dotnet-linker to the projects to autoformat. (#16178) 2022-09-30 09:32:42 +02:00
ScanTypeReferenceStep.cs Fix some whitespace issues in various files. (#12399) 2021-08-11 10:06:46 +02:00

README.linker

README.linker

Q: Why some stuff is not linked out ?

A: In most case this is because:
	a) the BCL uses it internally
	b) the mono runtime depends on the type, methods, class layout


= mscorlib.dll =

System.Security.PermissionSet
	* Assembly has (3) fields of that type
	* mscorlib.xml preserve all fields from Assembly (object-internals.h)
	* code is "stubified" by the linker
System.Security.Policy.ApplicationTrust: 
	* Used as a field in AppDomainSetup;
	* Field also exists in unmanaged code (domain-internals.h);
	* mscorlib.xml preserve all fields from AppDomainSetup
	* only the default .ctor remains and is stubified by the linker
System.Security.Policy.Evidence
	* Used by AppDomain.Load[Assembly]
	* Used by Assembly.LoadWithPartialName overloads
	* code is "stubified" by the linker


= System.dll =

System.Text.RegularExpressions.*
	* Included because there is 2 regex in UriParser