| Safe Haskell | None |
|---|
RegAlloc.Linear.JoinToTargets
Description
Handles joining of a jump instruction to its targets.
- joinToTargets :: (FR freeRegs, Instruction instr) => Platform -> BlockMap RegSet -> BlockId -> instr -> RegM freeRegs ([NatBasicBlock instr], instr)
Documentation
Arguments
| :: (FR freeRegs, Instruction instr) | |
| => Platform | |
| -> BlockMap RegSet | maps the unique of the blockid to the set of vregs that are known to be live on the entry to each block. |
| -> BlockId | id of the current block |
| -> instr | branch instr on the end of the source block. |
| -> RegM freeRegs ([NatBasicBlock instr], instr) |
For a jump instruction at the end of a block, generate fixup code so its vregs are in the correct regs for its destination.