[mono][AOT] linked away methods are emmited into final binary
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 45/100
Research direction
The report provides no repository file or test path. Start by reproducing the C# BDD example after IL trimming and compare the emitted WebAssembly; done means the linked-away Equals method is absent from the final binary.
Written by the indexing model from the issue text.
Description
This is a method after IL trimming
public sealed class BDD : IEquatable<BDD>
{
[MethodImpl(MethodImplOptions.NoInlining)]
public bool Equals(BDD other) => throw new NotSupportedException("Linked away");
}
The wasm code emmited is quite large
(func $Wasm_Browser_Sample_BDD_Equals_BDD (;35420;) (param $var0 i32) (param $var1 i32) (param $var2 i32) (result i32)
(local $var3 i32)
(local $var4 i32)
global.get $__stack_pointer
i32.const 16
i32.sub
local.tee $var4
global.set $__stack_pointer
local.get $var4
i32.const 3996424
i32.load
i32.const 21
call $aot_wrapper_icall_mono_helper_ldstr
local.tee $var3
i32.store offset=12
local.get $var4
i32.const 33554635
local.get $var3
call $mono_create_corlib_exception_1
local.tee $var3
i32.store offset=8
local.get $var3
call $mini_llvmonly_throw_exception
unreachable
)
- Dominant language
- C#
- Stars
- 18.3k
- Forks
- 5.6k
- PR merge metrics
- PR metrics pending
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from dotnet/runtime
-
agentic-workflows untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
area-System.Reflection blocking-clean-ci-optional Known Build Error os-mac-os-x untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
area-CodeGen-coreclr untriaged
Difficulty 1/5 Under an hour Newbie friendliness 92/100
-
agentic-workflows untriaged
Difficulty 1/5 Under an hour Newbie friendliness 78/100
-
area-VM-meta-mono untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
-
:watch: Not Triaged 11.0 fundamentals/subsvc
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
dotnet/AspNetCore.Docs#37699 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
SubtitleEdit/subtitleedit#15108 · 1 comment ·
-
area/docs-content Bug pulumi/docs
Difficulty 1/5 1-3 hours Newbie friendliness 94/100
-
Create parent directories only after the containment check in InstallHelper.TryExtractToDirectory Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
PowerShell/PSResourceGet#2056 ·