107 wires and counting
$ status: archived — this briefing has stopped; the archive stays readable. browse live briefings →

$ status

wire 2026-06-14
stories 69

© 2026 RepoJournal Home Showcase How it works Privacy

$ the-wire · showcase

WASM EXCEPTION HANDLING LANDS IN DOTNET RUNTIME

By RepoJournal · Filed · About .NET · Composed from the cited sources · methodology

The .NET runtime shipped R2R infrastructure for WebAssembly exception handling, unblocking finally clauses and catch bodies in compiled Wasm code.

This is the infrastructure milestone the Wasm team has been building toward. Add Wasm EH R2R infrastructure [1] delivers runtime and JIT support for exception flow in ReadyToRun scenarios, including exports for RtlRestoreContext tags and new relocation types. Finally clauses and catch execution both work; resume-after-catch still needs additional JIT changes, but the foundation is solid. The stack includes a critical fix [8] that corrects argument ordering in InterpToR2R thunks (this before retbuf), which was causing synchronized struct returns to crash. On the optimization front, JIT now forward-substitutes cheap address temps with multiple uses [5], eliminating spill blockers in Lowering and unlocking address-mode containment. LLVM continues its parallel work: Xtensa ESP32S2 support ships [2], clang-tidy gains smarter overload detection [3] to avoid conflicting rewrites, and AMDGPU gfx1251 cost modeling lands [4]. One housekeeping note: Mariner platform detection removed [6] as early Azure Linux versions are no longer supported. A revert [7] pulled back interpreter native EH work that wasn't stable enough.

Action items

References

  1. [1] Add Wasm EH R2R infrastructure ↗ dotnet/runtime
  2. [2] [Xtensa] Implement support of the ESP32S2 target. ↗ dotnet/llvm-project
  3. [3] [clang-tidy] Avoid non-const-parameter fix-it conflicts with overloads ↗ dotnet/llvm-project
  4. [4] [AMDGPU] gfx1251 cost model ↗ dotnet/llvm-project
  5. [5] JIT: forward-sub cheap address temps with multiple uses ↗ dotnet/runtime
  6. [6] Delete PlatformDetection.IsMariner (#129370) ↗ dotnet/runtime
  7. [7] Revert "Resume after catch for interpreter via native EH" ↗ dotnet/runtime
  8. [8] Wasm R2R: push this before retbuf in InterpToR2R thunk args (#129356) ↗ dotnet/runtime

Quick answers

What shipped in .NET on June 14, 2026?
The .NET runtime shipped R2R infrastructure for WebAssembly exception handling, unblocking finally clauses and catch bodies in compiled Wasm code. In total, 35 commits and 34 pull requests landed.
Who contributed to .NET on June 14, 2026?
6 developers shipped this update, including davidwrighton, andreisfr, zeyi2, rampitec, AndyAyersMS, and jkotas.
What were the notable .NET updates?
Add Wasm EH R2R infrastructure, [Xtensa] Implement support of the ESP32S2 target, and [clang-tidy] Avoid non-const-parameter fix-it conflicts with overloads.