diff --git a/quest/m3/ts-unsafe/README.md b/quest/m3/ts-unsafe/README.md index e54d29d86..2adf7741a 100644 --- a/quest/m3/ts-unsafe/README.md +++ b/quest/m3/ts-unsafe/README.md @@ -74,7 +74,6 @@ Public API: the translator's output. - [A raw pointer behind a reference](/quest/m3/ts-unsafe/raw-behind-ref.md) - `&raw const *r` of a value JS copies points where the reference came from - [Vec::from_raw_parts of a typed allocation](/quest/m3/ts-unsafe/vec-from-raw-parts.md) - a `Vec` adopts an `alloc`ed array of `T`s, with its length, capacity, and drops -- [Vec::drain from std's MIR](/quest/m3/ts-unsafe/vec-drain-mir.md) - std's `Drain` translates, replacing the runtime's port - [BinaryHeap from std's MIR](/quest/m3/ts-unsafe/binary-heap-mir.md) - std's `BinaryHeap` and `PeekMut` translate, replacing the runtime's port - [Unchecked integer operations](/quest/m3/ts-unsafe/unchecked-ops.md) - `unchecked_*` and `NonZero::new_unchecked` translate, aborting on a violated precondition - [NonZero's unchecked arithmetic](/quest/m3/ts-unsafe/nonzero-unchecked-ops.md) - `NonZero::unchecked_add` and `unchecked_mul` translate, aborting at std's site diff --git a/quest/m3/ts-unsafe/vec-drain-mir.md b/quest/m3/ts-unsafe/vec-drain-mir.md deleted file mode 100644 index 891bbd26e..000000000 --- a/quest/m3/ts-unsafe/vec-drain-mir.md +++ /dev/null @@ -1,19 +0,0 @@ -# [M] Vec::drain from std's MIR - -## Goal - -[rust2-ts](/ts/README.md) translates `Vec::drain` from std's MIR, whose `Drain` reads its -range out and moves the tail back through raw pointers into the `Vec`'s storage, -replacing `rs.vecDrain` and `rs.byteVecDrain`, the runtime port that -[the slice gaps' PR](https://github.com/moq-dev/rust2/pull/259) mapped it to -(`ts/src/lower/library.rs`). The lang fixture's `slices::drains` differential case proves -it still matches std's items, drops, and what a forgotten drain leaves. - -## Plan - -moq calls it (`client.rs:821`, `priority.rs:216`) and the port works, so this is fidelity -to std rather than a blocker: the port must track std by hand. The B-tree port of -[#577](https://github.com/moq-dev/rust2/pull/577) is the precedent. Measure the TS -bench's drain-heavy workloads against the port. - -Public API: the translator's output.