RepoJournal
.NET

@dotnet

The .NET runtime, ASP.NET, and the C# tooling

Keep up with .NET in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

One email a day. Unsubscribe in one click.

Pick a date

Topics: .NET Full archive →

The Wire · Showcase

WASM EXCEPTION HANDLING LANDS IN DOTNET RUNTIME

By RepoJournal · Filed · About .NET

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.

One email a day. Unsubscribe in one click.

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.

More from @dotnet

Daily updates, in your inbox

Follow .NET

Keep up with .NET in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?

We use privacy-friendly analytics (Google Analytics, IP-anonymized) to see which pages help readers. No ads, and we never sell your data. See our Privacy Policy.