diff --git a/dotnet/targets/Microsoft.Sdk.R2R.targets b/dotnet/targets/Microsoft.Sdk.R2R.targets index b20190e56ef9..d33eb253e862 100644 --- a/dotnet/targets/Microsoft.Sdk.R2R.targets +++ b/dotnet/targets/Microsoft.Sdk.R2R.targets @@ -1,6 +1,7 @@ + @@ -21,13 +22,25 @@ + + + + <_ReadyToRunCompileList> + RTR_HEADER_$([System.Text.RegularExpressions.Regex]::Replace ($([System.IO.Path]::GetFileName ('%(_ReadyToRunCompileList.OutputR2RImage)')), '[^a-zA-Z0-9_]', '_')) + + + + - - + + + <_Crossgen2Path Condition="'$(Crossgen2Path)' != ''">$(Crossgen2Path) <_FlattenedCrossgen2Packs>@(ResolvedCrossgen2Pack->'%(PackageDirectory)') <_Crossgen2Path Condition="'$(Crossgen2Path)' == '' And !$([MSBuild]::IsOSPlatform('windows'))">$(_FlattenedCrossgen2Packs)/tools/crossgen2 @@ -67,19 +85,24 @@ <_TargetOS>$(RuntimeIdentifier.Split('-')[0]) - + - - - - + + + + + + + + + - + @@ -96,7 +119,7 @@ User assembly is defined as anything not coming from a NuGet package. --> <_ResolvedAssembliesToPublish Include="@(ResolvedFileToPublish)" Condition="'%(Extension)' == '.dll' And '%(ResolvedFileToPublish.Culture)' == '' And '%(ResolvedFileToPublish.DestinationSubDirectory)' == ''" /> @@ -139,25 +162,27 @@ - + <_CreateR2RFrameworkDependsOn> _CollectR2RObjectFilesForLinking; - _PrepareR2RFrameworkCreation; - _CreateR2RFrameworkStructure; - _ForceLinkR2RFramework; - _LinkR2RFramework; + _PrepareR2RModules; + _RegisterR2RNativeReferences; + _CreateR2RModuleFrameworks; + _AddR2RModuleRegistrationToMainFile; - + <_DesktopFramework Condition="'$(_PlatformName)' == 'macOS' Or '$(_PlatformName)' == 'MacCatalyst'">true <_DesktopFramework Condition="'$(_PlatformName)' != 'macOS' And '$(_PlatformName)' != 'MacCatalyst'">false @@ -165,84 +190,86 @@ <_R2RFrameworkBinaryInfix Condition="'$(_DesktopFramework)' == 'true'">/Versions/A <_R2RFrameworkResourcesInfix Condition="'$(_DesktopFramework)' == 'true'">/Versions/A/Resources - <_R2RFrameworkIntermediateOutputPath Condition="'$(_R2RFrameworkIntermediateOutputPath)' == ''">$(DeviceSpecificIntermediateOutputPath)r2rframework/ - <_R2RFrameworkName Condition="'$(_R2RFrameworkName)' == ''">$(AssemblyName) - <_R2RFrameworkPath Condition="'$(_R2RFrameworkPath)' == ''">$(_R2RFrameworkIntermediateOutputPath)$(_R2RFrameworkName).framework - <_R2RFrameworkOutput Condition="'$(_R2RFrameworkOutput)' == ''">$(_R2RFrameworkPath)$(_R2RFrameworkBinaryInfix)/$(_R2RFrameworkName) - - <_R2RFrameworkStructureStampFile>$(_R2RFrameworkIntermediateOutputPath)$(_R2RFrameworkName)-structure.stamp - - <_R2RFrameworkInfoPlistPath>$(_R2RFrameworkPath)$(_R2RFrameworkResourcesInfix)/Info.plist - - <_R2RFrameworkCachePath>$(_R2RFrameworkIntermediateOutputPath)cache.txt - <_R2RFrameworkCachePath2>$(_R2RFrameworkCachePath).uptodate + <_R2RModuleIntermediateOutputPath Condition="'$(_R2RModuleIntermediateOutputPath)' == ''">$(DeviceSpecificIntermediateOutputPath)r2rframework/ + <_R2RModuleRegistrationFile>$(_R2RModuleIntermediateOutputPath)r2r_modules.mm - - - + + - <_R2RFrameworkDirectories Include="$(_R2RFrameworkPath)" /> - - <_R2RFrameworkInputs Include="@(_R2RObjectFilesForLinking)" /> - <_R2RFrameworkLinkerFlags Include="-dynamiclib" /> - <_R2RFrameworkLinkerFlags Include="-Wl,-dead_strip" /> - <_R2RFrameworkLinkerFlags Include="-Wl,-install_name,@rpath/$(_R2RFrameworkName).framework/$(_R2RFrameworkName)" /> - - <_FrameworkNativeReference Include="$(_R2RFrameworkPath)/$(_R2RFrameworkName)" Kind="Framework" /> + <_R2RModule Include="@(_ReadyToRunObjectFilesToLink)"> + + %(Filename)%(Extension) + + $([System.Text.RegularExpressions.Regex]::Replace ('%(Filename)', '\.r2r$', '')) + + $([System.Text.RegularExpressions.Regex]::Replace ($([System.IO.Path]::GetFileName ('%(NativeLinkerInputPath)')), '[^a-zA-Z0-9_]', '_')) + + <_R2RModule Update="@(_R2RModule)"> + RTR_HEADER_%(SanitizedName) + %(NativeLinkerInputPath) + %(ShortName).r2r + $(_R2RModuleIntermediateOutputPath)%(ShortName).r2r.framework + $(_R2RModuleIntermediateOutputPath)%(ShortName).r2r.framework$(_R2RFrameworkBinaryInfix)/%(ShortName).r2r + $(_R2RModuleIntermediateOutputPath)%(ShortName).r2r.framework$(_R2RFrameworkResourcesInfix)/Info.plist + $(_R2RModuleIntermediateOutputPath)%(ShortName).r2r.dylib + + - - <_R2RFrameworkDirectories Include="$(_R2RFrameworkPath)/Versions/A/Resources" /> - - <_R2RFrameworkSymlinks Include="$(_R2RFrameworkPath)/Resources" SymlinkTo="Versions/A/Resources" /> - <_R2RFrameworkSymlinks Include="$(_R2RFrameworkPath)/$(_R2RFrameworkName)" SymlinkTo="Versions/A/$(_R2RFrameworkName)" /> - <_R2RFrameworkSymlinks Include="$(_R2RFrameworkPath)/Versions/Current" SymlinkTo="A" /> + + + + <_FrameworkNativeReference Include="@(_R2RModule->'%(FrameworkPath)/%(FrameworkName)')" Kind="Framework" /> - - - - <_R2RFrameworkCache Include="@(_R2RFrameworkInputs)" /> - <_R2RFrameworkCache Include="@(_R2RFrameworkLinkerFlags)" /> - <_R2RFrameworkCache Include="$(_R2RFrameworkOutput)" /> - <_R2RFrameworkCache Include="$(_MinimumOSVersion)" /> - - - - - - - - - - + + <_FileNativeReference Include="@(_R2RModule->'%(DylibOutput)')" Kind="Dynamic"> + + - + + + + + + - - + - - - + <_CurrentR2RModuleLinkerFlags Remove="@(_CurrentR2RModuleLinkerFlags)" /> + <_CurrentR2RModuleLinkerFlags Include="-dynamiclib" /> + <_CurrentR2RModuleLinkerFlags Include="-Wl,-dead_strip" /> + <_CurrentR2RModuleLinkerFlags Include="-Wl,-install_name,@rpath/%(_R2RModule.FrameworkName).framework/%(_R2RModule.FrameworkName)" /> - - - - - - - - - + - - + + MinimumOSVersion="$(_MinimumOSVersion)" + SdkDevPath="$(_SdkDevPath)" + SdkIsSimulator="$(_SdkIsSimulator)" + SdkRoot="$(_SdkRoot)" + TargetArchitectures="$(TargetArchitectures)" + TargetFrameworkMoniker="$(_ComputedTargetFrameworkMoniker)" + /> - + + + + - - - - - <_CreateR2RDylibDependsOn> - _CollectR2RObjectFilesForLinking; - _PrepareR2RDylibCreation; - _ForceLinkR2RDylib; - _LinkR2RDylib; - - - - + - - <_R2RDylibIntermediateOutputPath Condition="'$(_R2RDylibIntermediateOutputPath)' == ''">$(DeviceSpecificIntermediateOutputPath)r2rdylib/ - <_R2RDylibName Condition="'$(_R2RDylibName)' == ''">$(AssemblyName) - <_R2RDylibPath Condition="'$(_R2RDylibPath)' == ''">$(_R2RDylibIntermediateOutputPath) - <_R2RDylibOutput Condition="'$(_R2RDylibOutput)' == ''">$(_R2RDylibPath)$(_R2RDylibName).r2r.dylib - - - <_R2RDylibInputs Include="@(_R2RObjectFilesForLinking)" /> - <_R2RDylibLinkerFlags Include="-dynamiclib" /> - <_R2RDylibLinkerFlags Include="-Wl,-dead_strip" /> - <_R2RDylibLinkerFlags Include="-Wl,-install_name,@rpath/$(_R2RDylibName).r2r.dylib" /> + - <_FileNativeReference Include="$(_R2RDylibOutput)" Kind="Dynamic" /> + + + <_CurrentR2RDylibLinkerFlags Remove="@(_CurrentR2RDylibLinkerFlags)" /> + <_CurrentR2RDylibLinkerFlags Include="-dynamiclib" /> + <_CurrentR2RDylibLinkerFlags Include="-Wl,-dead_strip" /> + <_CurrentR2RDylibLinkerFlags Include="-Wl,-install_name,@rpath/%(_R2RModule.ModuleName)" /> - - - <_R2RDylibCachePath>$(_R2RDylibIntermediateOutputPath)cache.txt - <_R2RDylibCachePath2>$(_R2RDylibCachePath).uptodate - + + - <_R2RDylibCache Include="@(_R2RDylibInputs)" /> - <_R2RDylibCache Include="@(_R2RDylibLinkerFlags)" /> - <_R2RDylibCache Include="$(_R2RDylibOutput)" /> - <_R2RDylibCache Include="$(_MinimumOSVersion)" /> + + - - - + + - + - + - - + - - - + <_MainFile Include="$(_R2RModuleRegistrationFile)" Condition="Exists('$(_R2RModuleRegistrationFile)')"> + $(TargetArchitectures.ToLowerInvariant()) + - - + - - + + + <_CreateR2RDylibDependsOn> + _CollectR2RObjectFilesForLinking; + _PrepareR2RModules; + _RegisterR2RNativeReferences; + _CreateR2RModuleDylibs; + _AddR2RModuleRegistrationToMainFile; + + - + <_PostProcessingItem Include="@(_CreatedFrameworksFromDylibs->'$([System.IO.Path]::GetFileName($(AppBundleDir)))/$(_AppFrameworksRelativePath)%(Filename).framework/%(Filename)')"> Framework + %(Filename) %(Filename).framework.dSYM - + <_PostProcessingItem - Include="$([System.IO.Path]::GetFileName('$(AppBundleDir)'))/$(_AppFrameworksRelativePath)$(_R2RFrameworkName).framework/$(_R2RFrameworkName)" Condition="'$(CreateR2RFramework)' == 'true'"> + Include="@(_R2RModule->'$([System.IO.Path]::GetFileName($(AppBundleDir)))/$(_AppFrameworksRelativePath)%(FrameworkName).framework/%(FrameworkName)')" Condition="'$(CreateR2RFramework)' == 'true'"> Framework - $(_R2RFrameworkName).framework.dSYM + %(_R2RModule.FrameworkName).framework.dSYM diff --git a/msbuild/Xamarin.MacDev.Tasks/Tasks/GenerateR2RModuleRegistration.cs b/msbuild/Xamarin.MacDev.Tasks/Tasks/GenerateR2RModuleRegistration.cs new file mode 100644 index 000000000000..c6f4f11a8fd2 --- /dev/null +++ b/msbuild/Xamarin.MacDev.Tasks/Tasks/GenerateR2RModuleRegistration.cs @@ -0,0 +1,89 @@ +using System.IO; +using System.Linq; +using System.Collections.Generic; +using System.Text; + +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; + +using Xamarin.Messaging.Build.Client; + +#nullable enable + +namespace Xamarin.MacDev.Tasks { + public class GenerateR2RModuleRegistration : XamarinTask, ITaskCallback { + + #region Inputs + [Required] + public ITaskItem [] R2RModules { get; set; } = []; + + [Required] + public string OutputFile { get; set; } = ""; + #endregion + + public override bool Execute () + { + if (ShouldExecuteRemotely ()) + return ExecuteRemotely (); + + var sb = new StringBuilder (); + + sb.AppendLine ("#include \"xamarin/xamarin.h\""); + sb.AppendLine (); + + foreach (var module in R2RModules) { + var symbolName = module.GetMetadata ("SymbolName"); + if (string.IsNullOrEmpty (symbolName)) { + Log.LogError ("Missing '{0}' metadata on item '{1}'.", "SymbolName", module.ItemSpec); + continue; + } + sb.AppendLine ($"extern void* {symbolName};"); + } + + sb.AppendLine (); + sb.AppendLine ("static struct xamarin_r2r_module r2r_module_entries [] = {"); + + foreach (var module in R2RModules) { + var moduleName = module.GetMetadata ("ModuleName"); + var symbolName = module.GetMetadata ("SymbolName"); + if (string.IsNullOrEmpty (moduleName)) { + Log.LogError ("Missing '{0}' metadata on item '{1}'.", "ModuleName", module.ItemSpec); + continue; + } + if (string.IsNullOrEmpty (symbolName)) + continue; // already reported above + var escapedModuleName = moduleName.Replace ("\\", "\\\\").Replace ("\"", "\\\""); + sb.AppendLine ($"\t{{ \"{escapedModuleName}\", &{symbolName} }},"); + } + + sb.AppendLine ("};"); + sb.AppendLine (); + + sb.AppendLine ("__attribute__ ((constructor))"); + sb.AppendLine ("static void xamarin_register_r2r_modules ()"); + sb.AppendLine ("{"); + sb.AppendLine ("\txamarin_r2r_modules = r2r_module_entries;"); + sb.AppendLine ("\txamarin_r2r_module_count = sizeof (r2r_module_entries) / sizeof (r2r_module_entries [0]);"); + sb.AppendLine ("}"); + + if (Log.HasLoggedErrors) + return false; + + var content = sb.ToString (); + var outputDir = Path.GetDirectoryName (OutputFile); + if (!string.IsNullOrEmpty (outputDir)) + Directory.CreateDirectory (outputDir); + + if (!File.Exists (OutputFile) || File.ReadAllText (OutputFile) != content) + File.WriteAllText (OutputFile, content); + + return !Log.HasLoggedErrors; + } + + public bool ShouldCopyToBuildServer (ITaskItem item) => false; + + public bool ShouldCreateOutputFile (ITaskItem item) => true; + + public IEnumerable GetAdditionalItemsToBeCopied () => Enumerable.Empty (); + } +} diff --git a/runtime/runtime.m b/runtime/runtime.m index 41fbe8ba9264..106650caf60c 100644 --- a/runtime/runtime.m +++ b/runtime/runtime.m @@ -80,7 +80,8 @@ enum XamarinNativeLinkMode xamarin_libmono_native_link_mode = XamarinNativeLinkModeStaticObject; const char **xamarin_runtime_libraries = NULL; -void *xamarin_rtr_header = NULL; +struct xamarin_r2r_module *xamarin_r2r_modules = NULL; +int xamarin_r2r_module_count = 0; /* Callbacks */ @@ -2439,9 +2440,17 @@ -(struct NSObjectData*) xamarinGetNSObjectData; if (!context || !data || !context->assembly_path || !context->owner_composite_name) return false; - void* r2r_header = xamarin_rtr_header; + void* r2r_header = NULL; + + for (int i = 0; i < xamarin_r2r_module_count; i++) { + if (strcmp (xamarin_r2r_modules [i].name, context->owner_composite_name) == 0) { + r2r_header = xamarin_r2r_modules [i].header; + break; + } + } + if (r2r_header == NULL) - xamarin_assertion_message ("Failed to find the RTR_HEADER symbol."); + return false; Dl_info info; if (dladdr (r2r_header, &info) == 0) diff --git a/runtime/xamarin/main.h b/runtime/xamarin/main.h index eedfc65f300b..d986b6324de4 100644 --- a/runtime/xamarin/main.h +++ b/runtime/xamarin/main.h @@ -127,7 +127,14 @@ extern bool xamarin_supports_dynamic_registration; extern const char *xamarin_runtime_configuration_name; extern enum XamarinNativeLinkMode xamarin_libmono_native_link_mode; extern const char** xamarin_runtime_libraries; -extern void *xamarin_rtr_header; + +struct xamarin_r2r_module { + const char *name; + void *header; +}; + +extern struct xamarin_r2r_module *xamarin_r2r_modules; +extern int xamarin_r2r_module_count; typedef void (*xamarin_setup_callback) (); typedef int (*xamarin_extension_main_callback) (int argc, char** argv); diff --git a/tests/dotnet/UnitTests/BundleStructureTest.cs b/tests/dotnet/UnitTests/BundleStructureTest.cs index 9a6a794f76c6..237b98255058 100644 --- a/tests/dotnet/UnitTests/BundleStructureTest.cs +++ b/tests/dotnet/UnitTests/BundleStructureTest.cs @@ -131,7 +131,7 @@ internal static void CheckAppBundleContents (ApplePlatform platform, IEnumerable // macOS bundle checks use '/'. Handle both when extracting the framework name. var slashIdx = fwIdx > 0 ? v.LastIndexOfAny ([Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar], fwIdx - 1) : -1; var frameworkName = v.Substring (slashIdx + 1, fwIdx - slashIdx - 1); - if (frameworkName.StartsWith ("lib", StringComparison.Ordinal) || frameworkName == "BundleStructure") + if (frameworkName.StartsWith ("lib", StringComparison.Ordinal) || frameworkName == "BundleStructure" || frameworkName.EndsWith (".r2r", StringComparison.Ordinal)) return true; } } diff --git a/tests/dotnet/UnitTests/ProjectTest.cs b/tests/dotnet/UnitTests/ProjectTest.cs index 1ae7a1c69fef..e08fd11270f2 100644 --- a/tests/dotnet/UnitTests/ProjectTest.cs +++ b/tests/dotnet/UnitTests/ProjectTest.cs @@ -3040,7 +3040,7 @@ public void AppendRuntimeIdentifierToOutputPath_DisableDirectoryBuildProps (Appl "@rpath/libSystem.Native.framework/libSystem.Native", "@rpath/libSystem.Net.Security.Native.framework/libSystem.Net.Security.Native", "@rpath/libSystem.Security.Cryptography.Native.Apple.framework/libSystem.Security.Cryptography.Native.Apple", - "@rpath/MySimpleApp.framework/MySimpleApp", + "@rpath/MySimpleApp.r2r.framework/MySimpleApp.r2r", ]; static string [] coreclrFrameworks_tvOS = [ @@ -3051,7 +3051,7 @@ public void AppendRuntimeIdentifierToOutputPath_DisableDirectoryBuildProps (Appl "@rpath/libSystem.IO.Compression.Native.framework/libSystem.IO.Compression.Native", "@rpath/libSystem.Native.framework/libSystem.Native", "@rpath/libSystem.Security.Cryptography.Native.Apple.framework/libSystem.Security.Cryptography.Native.Apple", - "@rpath/MySimpleApp.framework/MySimpleApp", + "@rpath/MySimpleApp.r2r.framework/MySimpleApp.r2r", ]; static string [] coreclrFrameworks_MacCatalyst = [ diff --git a/tests/dotnet/UnitTests/expected/MacCatalyst-CoreCLR-Interpreter-size.txt b/tests/dotnet/UnitTests/expected/MacCatalyst-CoreCLR-Interpreter-size.txt index 1188b2ae0ed2..4c77f3aa0f46 100644 --- a/tests/dotnet/UnitTests/expected/MacCatalyst-CoreCLR-Interpreter-size.txt +++ b/tests/dotnet/UnitTests/expected/MacCatalyst-CoreCLR-Interpreter-size.txt @@ -1,15 +1,15 @@ -AppBundleSize: 10,463,475 bytes (10,218.2 KB = 10.0 MB) +AppBundleSize: 10,464,199 bytes (10,218.9 KB = 10.0 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: Contents/_CodeSignature/CodeResources: 4,951 bytes (4.8 KB = 0.0 MB) -Contents/Info.plist: 1,099 bytes (1.1 KB = 0.0 MB) -Contents/MacOS/SizeTestApp: 242,128 bytes (236.5 KB = 0.2 MB) +Contents/Info.plist: 1,119 bytes (1.1 KB = 0.0 MB) +Contents/MacOS/SizeTestApp: 242,320 bytes (236.6 KB = 0.2 MB) Contents/MonoBundle/libcoreclr.dylib: 6,386,608 bytes (6,236.9 KB = 6.1 MB) Contents/MonoBundle/libSystem.Globalization.Native.dylib: 110,432 bytes (107.8 KB = 0.1 MB) Contents/MonoBundle/libSystem.IO.Compression.Native.dylib: 1,442,208 bytes (1,408.4 KB = 1.4 MB) Contents/MonoBundle/libSystem.Native.dylib: 146,768 bytes (143.3 KB = 0.1 MB) Contents/MonoBundle/libSystem.Net.Security.Native.dylib: 71,120 bytes (69.5 KB = 0.1 MB) Contents/MonoBundle/libSystem.Security.Cryptography.Native.Apple.dylib: 204,768 bytes (200.0 KB = 0.2 MB) -Contents/MonoBundle/Microsoft.MacCatalyst.dll: 101,888 bytes (99.5 KB = 0.1 MB) +Contents/MonoBundle/Microsoft.MacCatalyst.dll: 102,400 bytes (100.0 KB = 0.1 MB) Contents/MonoBundle/runtimeconfig.bin: 1,481 bytes (1.4 KB = 0.0 MB) Contents/MonoBundle/SizeTestApp.dll: 7,680 bytes (7.5 KB = 0.0 MB) Contents/MonoBundle/System.Collections.Immutable.dll: 14,848 bytes (14.5 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/MacCatalyst-CoreCLR-R2R-size.txt b/tests/dotnet/UnitTests/expected/MacCatalyst-CoreCLR-R2R-size.txt index 25f95b4add07..52f322c6257a 100644 --- a/tests/dotnet/UnitTests/expected/MacCatalyst-CoreCLR-R2R-size.txt +++ b/tests/dotnet/UnitTests/expected/MacCatalyst-CoreCLR-R2R-size.txt @@ -1,8 +1,8 @@ -AppBundleSize: 19,324,509 bytes (18,871.6 KB = 18.4 MB) +AppBundleSize: 19,325,345 bytes (18,872.4 KB = 18.4 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: Contents/_CodeSignature/CodeResources: 5,105 bytes (5.0 KB = 0.0 MB) -Contents/Info.plist: 1,099 bytes (1.1 KB = 0.0 MB) -Contents/MacOS/SizeTestApp: 242,176 bytes (236.5 KB = 0.2 MB) +Contents/Info.plist: 1,119 bytes (1.1 KB = 0.0 MB) +Contents/MacOS/SizeTestApp: 242,960 bytes (237.3 KB = 0.2 MB) Contents/MonoBundle/libcoreclr.dylib: 6,386,608 bytes (6,236.9 KB = 6.1 MB) Contents/MonoBundle/libSystem.Globalization.Native.dylib: 110,432 bytes (107.8 KB = 0.1 MB) Contents/MonoBundle/libSystem.IO.Compression.Native.dylib: 1,442,208 bytes (1,408.4 KB = 1.4 MB) @@ -12,7 +12,7 @@ Contents/MonoBundle/libSystem.Security.Cryptography.Native.Apple.dylib: 204,768 Contents/MonoBundle/Microsoft.MacCatalyst.dll: 101,888 bytes (99.5 KB = 0.1 MB) Contents/MonoBundle/runtimeconfig.bin: 1,481 bytes (1.4 KB = 0.0 MB) Contents/MonoBundle/SizeTestApp.dll: 7,680 bytes (7.5 KB = 0.0 MB) -Contents/MonoBundle/SizeTestApp.r2r.dylib: 8,847,008 bytes (8,639.7 KB = 8.4 MB) +Contents/MonoBundle/SizeTestApp.r2r.dylib: 8,847,040 bytes (8,639.7 KB = 8.4 MB) Contents/MonoBundle/System.Collections.Immutable.dll: 13,824 bytes (13.5 KB = 0.0 MB) Contents/MonoBundle/System.Diagnostics.StackTrace.dll: 7,680 bytes (7.5 KB = 0.0 MB) Contents/MonoBundle/System.IO.Compression.dll: 22,016 bytes (21.5 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/MacCatalyst-MonoVM-interpreter-size.txt b/tests/dotnet/UnitTests/expected/MacCatalyst-MonoVM-interpreter-size.txt index 3828d79e6957..293e83e1c9a4 100644 --- a/tests/dotnet/UnitTests/expected/MacCatalyst-MonoVM-interpreter-size.txt +++ b/tests/dotnet/UnitTests/expected/MacCatalyst-MonoVM-interpreter-size.txt @@ -1,8 +1,8 @@ -AppBundleSize: 5,814,166 bytes (5,677.9 KB = 5.5 MB) +AppBundleSize: 5,813,322 bytes (5,677.1 KB = 5.5 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: Contents/_CodeSignature/CodeResources: 3,310 bytes (3.2 KB = 0.0 MB) -Contents/Info.plist: 1,099 bytes (1.1 KB = 0.0 MB) -Contents/MacOS/SizeTestApp: 4,569,408 bytes (4,462.3 KB = 4.4 MB) +Contents/Info.plist: 1,119 bytes (1.1 KB = 0.0 MB) +Contents/MacOS/SizeTestApp: 4,568,544 bytes (4,461.5 KB = 4.4 MB) Contents/MonoBundle/Microsoft.MacCatalyst.dll: 157,696 bytes (154.0 KB = 0.2 MB) Contents/MonoBundle/runtimeconfig.bin: 1,405 bytes (1.4 KB = 0.0 MB) Contents/MonoBundle/SizeTestApp.dll: 7,680 bytes (7.5 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/MacCatalyst-MonoVM-size.txt b/tests/dotnet/UnitTests/expected/MacCatalyst-MonoVM-size.txt index f69e6829026d..7e33b5b75a65 100644 --- a/tests/dotnet/UnitTests/expected/MacCatalyst-MonoVM-size.txt +++ b/tests/dotnet/UnitTests/expected/MacCatalyst-MonoVM-size.txt @@ -1,8 +1,8 @@ -AppBundleSize: 16,525,506 bytes (16,138.2 KB = 15.8 MB) +AppBundleSize: 16,524,646 bytes (16,137.3 KB = 15.8 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: Contents/_CodeSignature/CodeResources: 4,134 bytes (4.0 KB = 0.0 MB) -Contents/Info.plist: 1,099 bytes (1.1 KB = 0.0 MB) -Contents/MacOS/SizeTestApp: 13,984,464 bytes (13,656.7 KB = 13.3 MB) +Contents/Info.plist: 1,119 bytes (1.1 KB = 0.0 MB) +Contents/MacOS/SizeTestApp: 13,983,584 bytes (13,655.8 KB = 13.3 MB) Contents/MonoBundle/aot-instances.aotdata.arm64: 1,037,632 bytes (1,013.3 KB = 1.0 MB) Contents/MonoBundle/Microsoft.MacCatalyst.aotdata.arm64: 35,976 bytes (35.1 KB = 0.0 MB) Contents/MonoBundle/Microsoft.MacCatalyst.dll: 51,200 bytes (50.0 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/MacCatalyst-NativeAOT-size.txt b/tests/dotnet/UnitTests/expected/MacCatalyst-NativeAOT-size.txt index 2c53322aefb9..7eb03909c29a 100644 --- a/tests/dotnet/UnitTests/expected/MacCatalyst-NativeAOT-size.txt +++ b/tests/dotnet/UnitTests/expected/MacCatalyst-NativeAOT-size.txt @@ -1,7 +1,7 @@ -AppBundleSize: 2,815,241 bytes (2,749.3 KB = 2.7 MB) +AppBundleSize: 2,815,261 bytes (2,749.3 KB = 2.7 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: Contents/_CodeSignature/CodeResources: 2,358 bytes (2.3 KB = 0.0 MB) -Contents/Info.plist: 1,099 bytes (1.1 KB = 0.0 MB) +Contents/Info.plist: 1,119 bytes (1.1 KB = 0.0 MB) Contents/MacOS/SizeTestApp: 2,809,968 bytes (2,744.1 KB = 2.7 MB) Contents/MonoBundle/runtimeconfig.bin: 1,808 bytes (1.8 KB = 0.0 MB) Contents/PkgInfo: 8 bytes (0.0 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/MacOSX-CoreCLR-Interpreter-size.txt b/tests/dotnet/UnitTests/expected/MacOSX-CoreCLR-Interpreter-size.txt index 38ac47ac2bbc..277d931923ce 100644 --- a/tests/dotnet/UnitTests/expected/MacOSX-CoreCLR-Interpreter-size.txt +++ b/tests/dotnet/UnitTests/expected/MacOSX-CoreCLR-Interpreter-size.txt @@ -1,8 +1,8 @@ -AppBundleSize: 246,986,938 bytes (241,198.2 KB = 235.5 MB) +AppBundleSize: 246,987,182 bytes (241,198.4 KB = 235.5 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: Contents/_CodeSignature/CodeResources: 54,948 bytes (53.7 KB = 0.1 MB) -Contents/Info.plist: 730 bytes (0.7 KB = 0.0 MB) -Contents/MacOS/SizeTestApp: 7,963,952 bytes (7,777.3 KB = 7.6 MB) +Contents/Info.plist: 750 bytes (0.7 KB = 0.0 MB) +Contents/MacOS/SizeTestApp: 7,964,176 bytes (7,777.5 KB = 7.6 MB) Contents/MonoBundle/.xamarin/osx-arm64/Microsoft.CSharp.dll: 884,224 bytes (863.5 KB = 0.8 MB) Contents/MonoBundle/.xamarin/osx-arm64/Microsoft.Extensions.Caching.Abstractions.dll: 56,320 bytes (55.0 KB = 0.1 MB) Contents/MonoBundle/.xamarin/osx-arm64/Microsoft.Extensions.Configuration.Abstractions.dll: 28,160 bytes (27.5 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/MacOSX-CoreCLR-R2R-size.txt b/tests/dotnet/UnitTests/expected/MacOSX-CoreCLR-R2R-size.txt index ddb515429633..b0d41b6c8931 100644 --- a/tests/dotnet/UnitTests/expected/MacOSX-CoreCLR-R2R-size.txt +++ b/tests/dotnet/UnitTests/expected/MacOSX-CoreCLR-R2R-size.txt @@ -1,8 +1,8 @@ -AppBundleSize: 313,861,306 bytes (306,505.2 KB = 299.3 MB) +AppBundleSize: 313,862,062 bytes (306,505.9 KB = 299.3 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: Contents/_CodeSignature/CodeResources: 54,948 bytes (53.7 KB = 0.1 MB) -Contents/Info.plist: 730 bytes (0.7 KB = 0.0 MB) -Contents/MacOS/SizeTestApp: 7,963,952 bytes (7,777.3 KB = 7.6 MB) +Contents/Info.plist: 750 bytes (0.7 KB = 0.0 MB) +Contents/MacOS/SizeTestApp: 7,964,176 bytes (7,777.5 KB = 7.6 MB) Contents/MonoBundle/.xamarin/osx-arm64/Microsoft.CSharp.dll: 884,224 bytes (863.5 KB = 0.8 MB) Contents/MonoBundle/.xamarin/osx-arm64/Microsoft.Extensions.Caching.Abstractions.dll: 56,320 bytes (55.0 KB = 0.1 MB) Contents/MonoBundle/.xamarin/osx-arm64/Microsoft.Extensions.Configuration.Abstractions.dll: 28,160 bytes (27.5 KB = 0.0 MB) @@ -116,7 +116,7 @@ Contents/MonoBundle/.xamarin/osx-x64/Microsoft.Extensions.Hosting.Abstractions.d Contents/MonoBundle/.xamarin/osx-x64/Microsoft.Extensions.Logging.Abstractions.dll: 132,096 bytes (129.0 KB = 0.1 MB) Contents/MonoBundle/.xamarin/osx-x64/Microsoft.Extensions.Options.dll: 118,272 bytes (115.5 KB = 0.1 MB) Contents/MonoBundle/.xamarin/osx-x64/Microsoft.Extensions.Primitives.dll: 63,488 bytes (62.0 KB = 0.1 MB) -Contents/MonoBundle/.xamarin/osx-x64/Microsoft.macOS.dll: 64,387,584 bytes (62,878.5 KB = 61.4 MB) +Contents/MonoBundle/.xamarin/osx-x64/Microsoft.macOS.dll: 64,388,096 bytes (62,879.0 KB = 61.4 MB) Contents/MonoBundle/.xamarin/osx-x64/Microsoft.VisualBasic.Core.dll: 1,155,072 bytes (1,128.0 KB = 1.1 MB) Contents/MonoBundle/.xamarin/osx-x64/Microsoft.Win32.Registry.dll: 24,064 bytes (23.5 KB = 0.0 MB) Contents/MonoBundle/.xamarin/osx-x64/SizeTestApp.dll: 9,728 bytes (9.5 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/MacOSX-NativeAOT-size.txt b/tests/dotnet/UnitTests/expected/MacOSX-NativeAOT-size.txt index 0a5e2c42e299..c7678b8c44b2 100644 --- a/tests/dotnet/UnitTests/expected/MacOSX-NativeAOT-size.txt +++ b/tests/dotnet/UnitTests/expected/MacOSX-NativeAOT-size.txt @@ -1,7 +1,7 @@ -AppBundleSize: 6,087,693 bytes (5,945.0 KB = 5.8 MB) +AppBundleSize: 6,087,713 bytes (5,945.0 KB = 5.8 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: Contents/_CodeSignature/CodeResources: 2,644 bytes (2.6 KB = 0.0 MB) -Contents/Info.plist: 730 bytes (0.7 KB = 0.0 MB) +Contents/Info.plist: 750 bytes (0.7 KB = 0.0 MB) Contents/MacOS/SizeTestApp: 6,082,304 bytes (5,939.8 KB = 5.8 MB) Contents/MonoBundle/runtimeconfig.bin: 1,766 bytes (1.7 KB = 0.0 MB) Contents/PkgInfo: 8 bytes (0.0 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/TVOS-CoreCLR-Interpreter-size.txt b/tests/dotnet/UnitTests/expected/TVOS-CoreCLR-Interpreter-size.txt index d0985c362b6c..1743754490c6 100644 --- a/tests/dotnet/UnitTests/expected/TVOS-CoreCLR-Interpreter-size.txt +++ b/tests/dotnet/UnitTests/expected/TVOS-CoreCLR-Interpreter-size.txt @@ -1,23 +1,23 @@ -AppBundleSize: 9,187,098 bytes (8,971.8 KB = 8.8 MB) +AppBundleSize: 9,187,218 bytes (8,971.9 KB = 8.8 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: _CodeSignature/CodeResources: 9,851 bytes (9.6 KB = 0.0 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) Frameworks/libcoreclr.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libcoreclr.framework/Info.plist: 789 bytes (0.8 KB = 0.0 MB) +Frameworks/libcoreclr.framework/Info.plist: 809 bytes (0.8 KB = 0.0 MB) Frameworks/libcoreclr.framework/libcoreclr: 5,216,464 bytes (5,094.2 KB = 5.0 MB) Frameworks/libSystem.Globalization.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Globalization.Native.framework/Info.plist: 831 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Globalization.Native.framework/Info.plist: 851 bytes (0.8 KB = 0.0 MB) Frameworks/libSystem.Globalization.Native.framework/libSystem.Globalization.Native: 109,776 bytes (107.2 KB = 0.1 MB) Frameworks/libSystem.IO.Compression.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.IO.Compression.Native.framework/Info.plist: 833 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.IO.Compression.Native.framework/Info.plist: 853 bytes (0.8 KB = 0.0 MB) Frameworks/libSystem.IO.Compression.Native.framework/libSystem.IO.Compression.Native: 1,439,536 bytes (1,405.8 KB = 1.4 MB) Frameworks/libSystem.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Native.framework/Info.plist: 803 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Native.framework/Info.plist: 823 bytes (0.8 KB = 0.0 MB) Frameworks/libSystem.Native.framework/libSystem.Native: 162,480 bytes (158.7 KB = 0.2 MB) Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/Info.plist: 859 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/Info.plist: 879 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/libSystem.Security.Cryptography.Native.Apple: 195,232 bytes (190.7 KB = 0.2 MB) -Info.plist: 1,117 bytes (1.1 KB = 0.0 MB) +Info.plist: 1,137 bytes (1.1 KB = 0.0 MB) Microsoft.tvOS.dll: 99,328 bytes (97.0 KB = 0.1 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) runtimeconfig.bin: 1,481 bytes (1.4 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/TVOS-CoreCLR-R2R-size.txt b/tests/dotnet/UnitTests/expected/TVOS-CoreCLR-R2R-size.txt index 805b44955d1f..855fcac626f8 100644 --- a/tests/dotnet/UnitTests/expected/TVOS-CoreCLR-R2R-size.txt +++ b/tests/dotnet/UnitTests/expected/TVOS-CoreCLR-R2R-size.txt @@ -1,30 +1,30 @@ -AppBundleSize: 12,628,622 bytes (12,332.6 KB = 12.0 MB) +AppBundleSize: 12,628,883 bytes (12,332.9 KB = 12.0 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: -_CodeSignature/CodeResources: 10,705 bytes (10.5 KB = 0.0 MB) +_CodeSignature/CodeResources: 10,737 bytes (10.5 KB = 0.0 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) Frameworks/libcoreclr.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libcoreclr.framework/Info.plist: 789 bytes (0.8 KB = 0.0 MB) +Frameworks/libcoreclr.framework/Info.plist: 809 bytes (0.8 KB = 0.0 MB) Frameworks/libcoreclr.framework/libcoreclr: 5,216,464 bytes (5,094.2 KB = 5.0 MB) Frameworks/libSystem.Globalization.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Globalization.Native.framework/Info.plist: 831 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Globalization.Native.framework/Info.plist: 851 bytes (0.8 KB = 0.0 MB) Frameworks/libSystem.Globalization.Native.framework/libSystem.Globalization.Native: 109,776 bytes (107.2 KB = 0.1 MB) Frameworks/libSystem.IO.Compression.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.IO.Compression.Native.framework/Info.plist: 833 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.IO.Compression.Native.framework/Info.plist: 853 bytes (0.8 KB = 0.0 MB) Frameworks/libSystem.IO.Compression.Native.framework/libSystem.IO.Compression.Native: 1,439,536 bytes (1,405.8 KB = 1.4 MB) Frameworks/libSystem.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Native.framework/Info.plist: 803 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Native.framework/Info.plist: 823 bytes (0.8 KB = 0.0 MB) Frameworks/libSystem.Native.framework/libSystem.Native: 162,480 bytes (158.7 KB = 0.2 MB) Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/Info.plist: 859 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/Info.plist: 879 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/libSystem.Security.Cryptography.Native.Apple: 195,232 bytes (190.7 KB = 0.2 MB) -Frameworks/SizeTestApp.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/SizeTestApp.framework/Info.plist: 792 bytes (0.8 KB = 0.0 MB) -Frameworks/SizeTestApp.framework/SizeTestApp: 3,424,688 bytes (3,344.4 KB = 3.3 MB) -Info.plist: 1,117 bytes (1.1 KB = 0.0 MB) +Frameworks/SizeTestApp.r2r.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) +Frameworks/SizeTestApp.r2r.framework/Info.plist: 821 bytes (0.8 KB = 0.0 MB) +Frameworks/SizeTestApp.r2r.framework/SizeTestApp.r2r: 3,424,720 bytes (3,344.5 KB = 3.3 MB) +Info.plist: 1,137 bytes (1.1 KB = 0.0 MB) Microsoft.tvOS.dll: 98,816 bytes (96.5 KB = 0.1 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) runtimeconfig.bin: 1,481 bytes (1.4 KB = 0.0 MB) -SizeTestApp: 197,104 bytes (192.5 KB = 0.2 MB) +SizeTestApp: 197,152 bytes (192.5 KB = 0.2 MB) SizeTestApp.dll: 7,680 bytes (7.5 KB = 0.0 MB) System.Collections.Immutable.dll: 13,824 bytes (13.5 KB = 0.0 MB) System.Diagnostics.StackTrace.dll: 7,680 bytes (7.5 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/TVOS-MonoVM-interpreter-size.txt b/tests/dotnet/UnitTests/expected/TVOS-MonoVM-interpreter-size.txt index 8fd6cd4deab4..11e26a652bc5 100644 --- a/tests/dotnet/UnitTests/expected/TVOS-MonoVM-interpreter-size.txt +++ b/tests/dotnet/UnitTests/expected/TVOS-MonoVM-interpreter-size.txt @@ -1,8 +1,8 @@ -AppBundleSize: 3,637,817 bytes (3,552.6 KB = 3.5 MB) +AppBundleSize: 3,637,837 bytes (3,552.6 KB = 3.5 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: _CodeSignature/CodeResources: 3,999 bytes (3.9 KB = 0.0 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) -Info.plist: 1,117 bytes (1.1 KB = 0.0 MB) +Info.plist: 1,137 bytes (1.1 KB = 0.0 MB) Microsoft.tvOS.dll: 154,624 bytes (151.0 KB = 0.1 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) runtimeconfig.bin: 1,405 bytes (1.4 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/TVOS-MonoVM-size.txt b/tests/dotnet/UnitTests/expected/TVOS-MonoVM-size.txt index 76e4c9384a09..6255862f4728 100644 --- a/tests/dotnet/UnitTests/expected/TVOS-MonoVM-size.txt +++ b/tests/dotnet/UnitTests/expected/TVOS-MonoVM-size.txt @@ -1,9 +1,9 @@ -AppBundleSize: 9,503,383 bytes (9,280.6 KB = 9.1 MB) +AppBundleSize: 9,503,403 bytes (9,280.7 KB = 9.1 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: _CodeSignature/CodeResources: 5,233 bytes (5.1 KB = 0.0 MB) aot-instances.aotdata.arm64: 818,536 bytes (799.4 KB = 0.8 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) -Info.plist: 1,117 bytes (1.1 KB = 0.0 MB) +Info.plist: 1,137 bytes (1.1 KB = 0.0 MB) Microsoft.tvOS.aotdata.arm64: 22,584 bytes (22.1 KB = 0.0 MB) Microsoft.tvOS.dll: 49,152 bytes (48.0 KB = 0.0 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/TVOS-NativeAOT-size.txt b/tests/dotnet/UnitTests/expected/TVOS-NativeAOT-size.txt index daacc6d7e0dc..42073af95b9b 100644 --- a/tests/dotnet/UnitTests/expected/TVOS-NativeAOT-size.txt +++ b/tests/dotnet/UnitTests/expected/TVOS-NativeAOT-size.txt @@ -1,8 +1,8 @@ -AppBundleSize: 2,849,442 bytes (2,782.7 KB = 2.7 MB) +AppBundleSize: 2,849,462 bytes (2,782.7 KB = 2.7 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: _CodeSignature/CodeResources: 2,589 bytes (2.5 KB = 0.0 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) -Info.plist: 1,117 bytes (1.1 KB = 0.0 MB) +Info.plist: 1,137 bytes (1.1 KB = 0.0 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) runtimeconfig.bin: 1,808 bytes (1.8 KB = 0.0 MB) SizeTestApp: 2,843,536 bytes (2,776.9 KB = 2.7 MB) diff --git a/tests/dotnet/UnitTests/expected/iOS-CoreCLR-Interpreter-size.txt b/tests/dotnet/UnitTests/expected/iOS-CoreCLR-Interpreter-size.txt index 612738da6cc9..016cde2ba86d 100644 --- a/tests/dotnet/UnitTests/expected/iOS-CoreCLR-Interpreter-size.txt +++ b/tests/dotnet/UnitTests/expected/iOS-CoreCLR-Interpreter-size.txt @@ -1,26 +1,26 @@ -AppBundleSize: 9,255,337 bytes (9,038.4 KB = 8.8 MB) +AppBundleSize: 9,255,477 bytes (9,038.6 KB = 8.8 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: _CodeSignature/CodeResources: 10,847 bytes (10.6 KB = 0.0 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) Frameworks/libcoreclr.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libcoreclr.framework/Info.plist: 813 bytes (0.8 KB = 0.0 MB) +Frameworks/libcoreclr.framework/Info.plist: 833 bytes (0.8 KB = 0.0 MB) Frameworks/libcoreclr.framework/libcoreclr: 5,203,936 bytes (5,082.0 KB = 5.0 MB) Frameworks/libSystem.Globalization.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Globalization.Native.framework/Info.plist: 855 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Globalization.Native.framework/Info.plist: 875 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.Globalization.Native.framework/libSystem.Globalization.Native: 109,232 bytes (106.7 KB = 0.1 MB) Frameworks/libSystem.IO.Compression.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.IO.Compression.Native.framework/Info.plist: 857 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.IO.Compression.Native.framework/Info.plist: 877 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.IO.Compression.Native.framework/libSystem.IO.Compression.Native: 1,431,280 bytes (1,397.7 KB = 1.4 MB) Frameworks/libSystem.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Native.framework/Info.plist: 827 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Native.framework/Info.plist: 847 bytes (0.8 KB = 0.0 MB) Frameworks/libSystem.Native.framework/libSystem.Native: 162,256 bytes (158.5 KB = 0.2 MB) Frameworks/libSystem.Net.Security.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Net.Security.Native.framework/Info.plist: 853 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Net.Security.Native.framework/Info.plist: 873 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.Net.Security.Native.framework/libSystem.Net.Security.Native: 88,000 bytes (85.9 KB = 0.1 MB) Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/Info.plist: 883 bytes (0.9 KB = 0.0 MB) +Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/Info.plist: 903 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/libSystem.Security.Cryptography.Native.Apple: 194,256 bytes (189.7 KB = 0.2 MB) -Info.plist: 1,141 bytes (1.1 KB = 0.0 MB) +Info.plist: 1,161 bytes (1.1 KB = 0.0 MB) Microsoft.iOS.dll: 99,328 bytes (97.0 KB = 0.1 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) runtimeconfig.bin: 1,481 bytes (1.4 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/iOS-CoreCLR-R2R-size.txt b/tests/dotnet/UnitTests/expected/iOS-CoreCLR-R2R-size.txt index 7256e3308504..6448362c0c9e 100644 --- a/tests/dotnet/UnitTests/expected/iOS-CoreCLR-R2R-size.txt +++ b/tests/dotnet/UnitTests/expected/iOS-CoreCLR-R2R-size.txt @@ -1,33 +1,33 @@ -AppBundleSize: 12,677,045 bytes (12,379.9 KB = 12.1 MB) +AppBundleSize: 12,677,326 bytes (12,380.2 KB = 12.1 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: -_CodeSignature/CodeResources: 11,701 bytes (11.4 KB = 0.0 MB) +_CodeSignature/CodeResources: 11,733 bytes (11.5 KB = 0.0 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) Frameworks/libcoreclr.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libcoreclr.framework/Info.plist: 813 bytes (0.8 KB = 0.0 MB) +Frameworks/libcoreclr.framework/Info.plist: 833 bytes (0.8 KB = 0.0 MB) Frameworks/libcoreclr.framework/libcoreclr: 5,203,936 bytes (5,082.0 KB = 5.0 MB) Frameworks/libSystem.Globalization.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Globalization.Native.framework/Info.plist: 855 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Globalization.Native.framework/Info.plist: 875 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.Globalization.Native.framework/libSystem.Globalization.Native: 109,232 bytes (106.7 KB = 0.1 MB) Frameworks/libSystem.IO.Compression.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.IO.Compression.Native.framework/Info.plist: 857 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.IO.Compression.Native.framework/Info.plist: 877 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.IO.Compression.Native.framework/libSystem.IO.Compression.Native: 1,431,280 bytes (1,397.7 KB = 1.4 MB) Frameworks/libSystem.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Native.framework/Info.plist: 827 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Native.framework/Info.plist: 847 bytes (0.8 KB = 0.0 MB) Frameworks/libSystem.Native.framework/libSystem.Native: 162,256 bytes (158.5 KB = 0.2 MB) Frameworks/libSystem.Net.Security.Native.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Net.Security.Native.framework/Info.plist: 853 bytes (0.8 KB = 0.0 MB) +Frameworks/libSystem.Net.Security.Native.framework/Info.plist: 873 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.Net.Security.Native.framework/libSystem.Net.Security.Native: 88,000 bytes (85.9 KB = 0.1 MB) Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/Info.plist: 883 bytes (0.9 KB = 0.0 MB) +Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/Info.plist: 903 bytes (0.9 KB = 0.0 MB) Frameworks/libSystem.Security.Cryptography.Native.Apple.framework/libSystem.Security.Cryptography.Native.Apple: 194,256 bytes (189.7 KB = 0.2 MB) -Frameworks/SizeTestApp.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) -Frameworks/SizeTestApp.framework/Info.plist: 816 bytes (0.8 KB = 0.0 MB) -Frameworks/SizeTestApp.framework/SizeTestApp: 3,404,880 bytes (3,325.1 KB = 3.2 MB) -Info.plist: 1,141 bytes (1.1 KB = 0.0 MB) +Frameworks/SizeTestApp.r2r.framework/_CodeSignature/CodeResources: 1,798 bytes (1.8 KB = 0.0 MB) +Frameworks/SizeTestApp.r2r.framework/Info.plist: 845 bytes (0.8 KB = 0.0 MB) +Frameworks/SizeTestApp.r2r.framework/SizeTestApp.r2r: 3,404,912 bytes (3,325.1 KB = 3.2 MB) +Info.plist: 1,161 bytes (1.1 KB = 0.0 MB) Microsoft.iOS.dll: 98,816 bytes (96.5 KB = 0.1 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) runtimeconfig.bin: 1,481 bytes (1.4 KB = 0.0 MB) -SizeTestApp: 196,048 bytes (191.5 KB = 0.2 MB) +SizeTestApp: 196,096 bytes (191.5 KB = 0.2 MB) SizeTestApp.dll: 7,680 bytes (7.5 KB = 0.0 MB) System.Collections.Immutable.dll: 13,824 bytes (13.5 KB = 0.0 MB) System.Diagnostics.StackTrace.dll: 7,680 bytes (7.5 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/iOS-MonoVM-interpreter-size.txt b/tests/dotnet/UnitTests/expected/iOS-MonoVM-interpreter-size.txt index 53977d8b9561..2ff4293035dc 100644 --- a/tests/dotnet/UnitTests/expected/iOS-MonoVM-interpreter-size.txt +++ b/tests/dotnet/UnitTests/expected/iOS-MonoVM-interpreter-size.txt @@ -1,8 +1,8 @@ -AppBundleSize: 3,624,255 bytes (3,539.3 KB = 3.5 MB) +AppBundleSize: 3,624,275 bytes (3,539.3 KB = 3.5 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: _CodeSignature/CodeResources: 3,997 bytes (3.9 KB = 0.0 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) -Info.plist: 1,141 bytes (1.1 KB = 0.0 MB) +Info.plist: 1,161 bytes (1.1 KB = 0.0 MB) Microsoft.iOS.dll: 154,624 bytes (151.0 KB = 0.1 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) runtimeconfig.bin: 1,405 bytes (1.4 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/iOS-MonoVM-size.txt b/tests/dotnet/UnitTests/expected/iOS-MonoVM-size.txt index 85c091554a05..c5658e78ce94 100644 --- a/tests/dotnet/UnitTests/expected/iOS-MonoVM-size.txt +++ b/tests/dotnet/UnitTests/expected/iOS-MonoVM-size.txt @@ -1,9 +1,9 @@ -AppBundleSize: 9,460,643 bytes (9,238.9 KB = 9.0 MB) +AppBundleSize: 9,460,663 bytes (9,238.9 KB = 9.0 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: _CodeSignature/CodeResources: 5,229 bytes (5.1 KB = 0.0 MB) aot-instances.aotdata.arm64: 818,536 bytes (799.4 KB = 0.8 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) -Info.plist: 1,141 bytes (1.1 KB = 0.0 MB) +Info.plist: 1,161 bytes (1.1 KB = 0.0 MB) Microsoft.iOS.aotdata.arm64: 22,944 bytes (22.4 KB = 0.0 MB) Microsoft.iOS.dll: 49,152 bytes (48.0 KB = 0.0 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) diff --git a/tests/dotnet/UnitTests/expected/iOS-NativeAOT-size.txt b/tests/dotnet/UnitTests/expected/iOS-NativeAOT-size.txt index 931608ccc372..d655efa679ab 100644 --- a/tests/dotnet/UnitTests/expected/iOS-NativeAOT-size.txt +++ b/tests/dotnet/UnitTests/expected/iOS-NativeAOT-size.txt @@ -1,8 +1,8 @@ -AppBundleSize: 2,849,802 bytes (2,783.0 KB = 2.7 MB) +AppBundleSize: 2,849,822 bytes (2,783.0 KB = 2.7 MB) # The following list of files and their sizes is just informational / for review, and isn't used in the test: _CodeSignature/CodeResources: 2,589 bytes (2.5 KB = 0.0 MB) archived-expanded-entitlements.xcent: 384 bytes (0.4 KB = 0.0 MB) -Info.plist: 1,141 bytes (1.1 KB = 0.0 MB) +Info.plist: 1,161 bytes (1.1 KB = 0.0 MB) PkgInfo: 8 bytes (0.0 KB = 0.0 MB) runtimeconfig.bin: 1,808 bytes (1.8 KB = 0.0 MB) SizeTestApp: 2,843,872 bytes (2,777.2 KB = 2.7 MB) diff --git a/tools/common/Target.cs b/tools/common/Target.cs index 64cc8fa88dd7..7970c889b403 100644 --- a/tools/common/Target.cs +++ b/tools/common/Target.cs @@ -344,11 +344,6 @@ void GenerateMainImpl (StringWriter sw, Abi abi) sw.WriteLine (); sw.WriteLine (assembly_externs); - if (app.PublishReadyToRun == true && app.PublishReadyToRunContainerFormat == "macho") { - sw.WriteLine ("extern void* RTR_HEADER;"); - sw.WriteLine (); - } - sw.WriteLine ("void xamarin_register_modules_impl ()"); sw.WriteLine ("{"); sw.WriteLine (assembly_aot_modules); @@ -440,8 +435,6 @@ void GenerateMainImpl (StringWriter sw, Abi abi) sw.WriteLine ("\txamarin_runtime_configuration_name = {0};", string.IsNullOrEmpty (app.RuntimeConfigurationFile) ? "NULL" : $"\"{app.RuntimeConfigurationFile}\""); if (app.Registrar == RegistrarMode.ManagedStatic) sw.WriteLine ("\txamarin_set_is_managed_static_registrar (true);"); - if (app.PublishReadyToRun == true && app.PublishReadyToRunContainerFormat == "macho") - sw.WriteLine ("\txamarin_rtr_header = &RTR_HEADER;"); sw.WriteLine ("}"); sw.WriteLine (); sw.Write ("int main");