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

[wasm] reduce legacy interop usage #72021

Merged
merged 17 commits into from
Jul 28, 2022
Merged

Conversation

pavelsavara
Copy link
Member

@pavelsavara pavelsavara commented Jul 12, 2022

  • removed unused icalls
  • replaced INTERNAL.mono_bind_static_method with public API
  • removed Uri from managed method signatures and creating it's instance via reflection in hope to trim it out when not used. This could force the user code to keep Uri(string uri) constructor alive by other means. But also save lot of download size.
  • moved legacy internal exports to LegacyExports.
  • moved legacy interop JS code to net6-legacy folder.
  • added cache to mono_wasm_get_assembly_exports
  • added cache to mono_bind_method and to mono_bind_static_method
  • added thisArg to mono_bind_method
  • made cswraps and cwraps laziness optional.
  • implemented _wrap_delegate_gc_handle_as_function using mono_bind_method
  • implemented mono_call_assembly_entry_point using mono_bind_method.
  • deleted call_method_ref and replaced it with mono_bind_method
  • deleted internal call_static_method
  • added javaScriptExports in managed-exports.ts which support all the needs of the new interop
  • refactored code into new alloc_stack_frame and invoke_method_and_handle_exception
  • separated exports.ts into multiple files

Next PR

@pavelsavara pavelsavara added this to the 7.0.0 milestone Jul 12, 2022
@pavelsavara pavelsavara requested review from kg and maraf July 12, 2022 13:46
@pavelsavara pavelsavara self-assigned this Jul 12, 2022
@ghost
Copy link

ghost commented Jul 12, 2022

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

Issue Details

still work in progress

Author: pavelsavara
Assignees: pavelsavara
Labels:

arch-wasm, area-System.Runtime.InteropServices.JavaScript

Milestone: 7.0.0

@pavelsavara pavelsavara force-pushed the wasm_cswraps branch 2 times, most recently from 7f937e3 to 6dfa388 Compare July 13, 2022 14:29
@pavelsavara pavelsavara force-pushed the wasm_cswraps branch 2 times, most recently from 7b0f983 to e1fa625 Compare July 13, 2022 21:11
@pavelsavara pavelsavara marked this pull request as ready for review July 13, 2022 21:24
@pavelsavara pavelsavara changed the title [wip][wasm] reduce legacy interop usage [wasm] reduce legacy interop usage Jul 13, 2022
@pavelsavara
Copy link
Member Author

/azp run runtime-wasm

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@pavelsavara
Copy link
Member Author

/azp run runtime-wasm

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@pavelsavara
Copy link
Member Author

/azp run runtime-wasm

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@pavelsavara pavelsavara modified the milestones: 8.0.0, 7.0.0 Jul 26, 2022
@pavelsavara
Copy link
Member Author

There is JIT/Performance/CodeQuality/Benchstones/BenchI/8Queens/8Queens/8Queens.sh [FAIL] Log

@pavelsavara
Copy link
Member Author

/azp run runtime-wasm

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@pavelsavara pavelsavara marked this pull request as ready for review July 27, 2022 15:35
# Conflicts:
#	src/mono/wasm/runtime/cjs/dotnet.cjs.lib.js
#	src/mono/wasm/runtime/exports.ts
@pavelsavara
Copy link
Member Author

/azp run runtime-wasm

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@pavelsavara
Copy link
Member Author

/azp run runtime-wasm

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@pavelsavara pavelsavara merged commit d7c8bc1 into dotnet:main Jul 28, 2022
@pavelsavara pavelsavara deleted the wasm_cswraps branch July 29, 2022 09:14
@ghost ghost locked as resolved and limited conversation to collaborators Sep 2, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants