ELSEIF
Your brief EB
379 stories from 115 feeds 448 clusters Refreshed 13 minutes ago next pull 14:37

OBSERVABILITY Signal 410

Incomplete LLVM fix leaves Rust-to-WebAssembly debug builds 40x slower

Illustration only Photo by Hunter Haley on Unsplash

A known LLVM bug, fixed for clang but incompletely, causes Rust-to-WebAssembly builds with full debug info to take dramatically longer due to quadratic scanning of DBG_VALUE records.

WHY IT MATTERS

Engineers compiling Rust to WebAssembly with debug info enabled can see build times balloon from seconds to minutes, even for small crates. The incomplete LLVM fix means this is not yet resolved, so teams must either disable debug info or accept the slowdown.

Written by elseif from the cluster below · every claim links back to a source

The three things worth knowing

01

Debug info creates DBG_VALUE records that must be moved with instructions, and WebAssembly's stack machine forces many such moves.

02

The Register Stackify pass rescans its instruction list quadratically and even adds new records, making large functions disproportionately slow.

03

LLVM issue #168326 was fixed for clang but the fix is incomplete, leaving Rust-to-WebAssembly builds with debug=2 severely affected.

THE CLUSTER

Same story, 1 feed.

ORDERED BY FIRST SEEN
00f.net via Lobsters Why compiling Rust to WebAssembly is slow Open ↗