Structs§
- Final stage of move resolution: finding or using scratch registers, creating them if necessary by using stackslots, and ensuring that the final list of moves contains no stack-to-stack moves.
- A
ParallelMoves
represents a list of alloc-to-alloc moves that must happen in parallel – i.e., all reads of sources semantically happen before all writes of destinations, and destinations are allowed to overwrite sources. It can compute a list of sequential moves that will produce the equivalent data movement, possibly using a scratch register if one is necessary.
Enums§
- A list of moves to be performance in sequence, like a
MoveVec<T>
, except that an unchosen scratch space may occur as well, represented byAllocation::none()
.
Type Aliases§
- A list of moves to be performed in sequence, with auxiliary data attached to each.