dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
14.95k stars 4.65k forks source link

[browser][MT] use code generator to get JSExport methods/ reduce reflection #98366

Open pavelsavara opened 7 months ago

pavelsavara commented 7 months ago
ghost commented 7 months ago

Tagging subscribers to 'arch-wasm': @lewing See info in area-owners.md if you want to be subscribed.

Issue Details
- no reflection or move reflection to C# of `BindManagedFunctionImpl` - `Interop.Runtime.BindCSFunction` should be only passing `MethodHandle` to JS - drop `mono_wasm_assembly_load`, `mono_wasm_assembly_find_class`, `mono_wasm_runtime_run_module_cctor`, `mono_wasm_assembly_find_method` - don't breach GC barrier
Author: pavelsavara
Assignees: pavelsavara
Labels: `arch-wasm`, `area-System.Runtime.InteropServices.JavaScript`, `os-browser`
Milestone: 9.0.0
maxkatz6 commented 4 weeks ago

I would assume this is also necessary for NativeAOT-LLVM compatibility https://github.com/dotnet/runtimelab/issues/2626