From 05fffb8560d7eaf5f0bd8ddb56cc83b3c99b9512 Mon Sep 17 00:00:00 2001 From: Jonathan Peppers Date: Mon, 14 Oct 2024 12:19:28 -0500 Subject: [PATCH] Fix docs about "LLVM Marshal Methods" It appears this section might have been AI generated, as it appeared to contain "hallucinated" MSBuild property names. It also didn't make sense that the example set things to `false`. I updated the section as appropriate. We also have made the feature non-default in: * https://github.com/dotnet/android/pull/9336 I also linked to GitHub commits, as we have more detailed text inside, generally, than pull requests. --- docs/whats-new/dotnet-9.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/docs/whats-new/dotnet-9.md b/docs/whats-new/dotnet-9.md index 1db76be4b..d751de4d3 100644 --- a/docs/whats-new/dotnet-9.md +++ b/docs/whats-new/dotnet-9.md @@ -545,19 +545,20 @@ For more information about Android asset packs, see [Android asset packs](~/andr net9.0-android35 ``` -### LLVM marshalled methods +### LLVM Marshal Methods -Low-level Virtual Machine (LLVM) marshalled methods are now enabled by default in .NET for Android 9 in non-Blazor apps. This has resulted in a [~10% improvement in performance in a test app](https://github.com/xamarin/xamarin-android/pull/8925). +Improvements to Low-level Virtual Machine (LLVM) Marshal Methods in .NET 9, has made the feature work more reliably in applications but is not yet the default. Enabling this feature has resulted in a [~10% improvement in performance in a test app](https://github.com/dotnet/android/commit/a9706b6ef0429250ecaf1e500d77cd19e94e2eb5). -LLVM marshalled methods can be disabled in your project file (*.csproj*): +LLVM Marshal Methods can be enabled in your project file (*.csproj*) via the `$(AndroidEnableMarshalMethods)` property: ```xml - - false - false + + true ``` +For specific details about the feature, see the [implementation on GitHub](https://github.com/dotnet/android/commit/8bc7a3e84f95e70fe12790ac31ecd97957771cb2). + ### Trimming enhancements .NET for Android 9 includes fixes for when using full trimming to reduce app size. Full trimming is usually only enabled for release builds of your app, and can be configured in your project file (*.csproj*):