rust-lang / miri

An interpreter for Rust's mid-level intermediate representation
Apache License 2.0
4.14k stars 318 forks source link

completely refactor how we manage blocking and unblocking threads #3631

Closed RalfJung closed 1 month ago

RalfJung commented 1 month ago

This hides a lot of invariants from the implementation of the synchronization primitives, and makes sure we never have to release or acquire a vector clock on another thread but the active one.

RalfJung commented 1 month ago

@bors r+

bors commented 1 month ago

:pushpin: Commit 2e1bf9cbc44cbd3ef1dae90fecd641f7bb2da431 has been approved by RalfJung

It is now in the queue for this repository.

bors commented 1 month ago

:hourglass: Testing commit 2e1bf9cbc44cbd3ef1dae90fecd641f7bb2da431 with merge 5cbb61fce80bce3b639a757c2b1ce57322e4118b...

bors commented 1 month ago

:sunny: Test successful - checks-actions Approved by: RalfJung Pushing 5cbb61fce80bce3b639a757c2b1ce57322e4118b to master...