$ the-wire · showcase
Miri learns semaphores and more AVX shims
By RepoJournal · Filed · About Rust · Composed from the cited sources · methodology
Miri's interpreter gained semaphore support for pthread and macOS APIs plus new SIMD shims, while the compiler repo landed a performance rework of caller-location tracking and a clearer error for literals in lint attributes.
implement semaphores (pthread and macOS APIs) rust-lang/miri
Miri can now interpret the pthread and macOS semaphore APIs, closing an issue that has tracked the gap. Code that coordinates threads through semaphores is no longer a hard stop under Miri; a follow-up commit adds timeout support to macOS dispatch_semaphore_wait.
consteval: Rework caller location handling rust-lang/rust
Consteval no longer walks up the call stack every time it needs a caller location. It now emulates the runtime behavior of passing an implicit caller location argument in #[track_caller] functions, recording that argument in each frame, though inlined functions still do a stack walk within the frame.
add avx512 pternlog.q shim rust-lang/miri
The AVX-512 pternlog.q shim lands, and the existing shim for pternlog.d now reads lanes at the element size instead of assuming 32 bits. The reporter's motivation was concrete: AVX-512 VBMI code running under Miri in CI stopped at pternlog.q, and the tests were validated on real Zen 5 hardware.
improve diagnostic for literals in lint attributes rust-lang/rust
A literal inside a lint attribute like #[allow("meow")] or #[deny(1.0)] used to surface a bare "bad attribute argument" span. The E0452 diagnostic now says more about what is wrong with the input.
support _mm256_mulhi_epi16, _mm256_mulhi_epu16 rust-lang/miri
Rounding out the SIMD desk: Miri added direct implementations for _mm256_mulhi_epi16 and _mm256_mulhi_epu16, needed now that stdarch builds these AVX2 intrinsics on those implementations. Elsewhere, a rollup renamed the bstr module and feature to byte_str, and check_shim_sig now transmutes arguments to their expected types.