Skip to content

[User Story] RyuJIT for WebAssembly (Wasm) #121141

@JulieLeeMSFT

Description

@JulieLeeMSFT

We are bringing RyuJIT support to WebAssembly in .NET 11 as an early preview, focused on delivering a functional, though not yet fully optimized, experience for Blazor and .NET applications targeting Wasm.

.NET 11, the early preview, will enable basic scenarios and validate the new backend, allowing the team to gather feedback and address gaps ahead of broader migration from Mono runtime. Performance improvements, expanded feature coverage, and full consolidation are planned for subsequent releases, with .NET 12 and beyond targeting production readiness and optimized developer experience.

RyuJIT Base Line

Exception Handling & GC Support

  • EH & GC Design
  • Stack Tracing
  • Conservative GC
  • Shadow Stack Walker for Exception Handling

SIMD, Interop, and Basic Optimizations

  • Interop/Pinvoke Design
  • Interop/Pinvoke
  • SIMD & Intrinsics
  • Runtime Async
  • Profiling (Identify key methods)
  • Diagnostics (event pipe)
  • Precise GC
  • Performance for a few scenarios (Size & Speed)

Out of Scope (Needs to revisit later)

  • Multi-threading for browser
  • WASI
  • WASM64

Sub-issues

Metadata

Metadata

Assignees

Labels

User StoryA single user-facing feature. Can be grouped under an epic.area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions