Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
pavelsavara opened this issue Feb 13, 2024 · 2 comments
Assignees
Labels
arch-wasm WebAssembly architecture area-System.Runtime.InteropServices.JavaScript os-browser Browser variant of arch-wasm
Milestone

Comments

@pavelsavara
Copy link
Member

pavelsavara commented Feb 13, 2024

  • 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
  • Add unit tests to src\mono\wasm\Wasm.Build.Tests\MainWithArgsTests.cs for each combination of Main method name, signature and visibility.
@pavelsavara pavelsavara added arch-wasm WebAssembly architecture area-System.Runtime.InteropServices.JavaScript os-browser Browser variant of arch-wasm labels Feb 13, 2024
@pavelsavara pavelsavara added this to the 9.0.0 milestone Feb 13, 2024
@pavelsavara pavelsavara self-assigned this Feb 13, 2024
@ghost
Copy link

ghost commented Feb 13, 2024

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

@pavelsavara pavelsavara changed the title [browser][MT] use code generator to get JSExport methods [browser][MT] use code generator to get JSExport methods/ reduce reflection Feb 13, 2024
@pavelsavara pavelsavara modified the milestones: 9.0.0, Future Mar 28, 2024
@maxkatz6
Copy link
Contributor

I would assume this is also necessary for NativeAOT-LLVM compatibility dotnet/runtimelab#2626

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch-wasm WebAssembly architecture area-System.Runtime.InteropServices.JavaScript os-browser Browser variant of arch-wasm
Projects
None yet
Development

No branches or pull requests

2 participants