| Safe Haskell | None | 
|---|---|
| Language | Haskell2010 | 
SPARC.CodeGen.Base
- type InstrBlock = OrdList Instr
 - data CondCode = CondCode Bool Cond InstrBlock
 - data ChildCode64 = ChildCode64 InstrBlock Reg
 - data Amode = Amode AddrMode InstrBlock
 - data Register
- = Fixed Format Reg InstrBlock
 - | Any Format (Reg -> InstrBlock)
 
 - setFormatOfRegister :: Register -> Format -> Register
 - getRegisterReg :: Platform -> CmmReg -> Reg
 - mangleIndexTree :: DynFlags -> CmmExpr -> CmmExpr
 
Documentation
type InstrBlock = OrdList Instr Source #
InstrBlocks are the insn sequences generated by the insn selectors.
      They are really trees of insns to facilitate fast appending, where a
      left-to-right traversal yields the insns in the correct order.
data ChildCode64 Source #
a.k.a Register64 Reg is the lower 32-bit temporary which contains the result. Use getHiVRegFromLo to find the other VRegUnique.
Rules of this simplified insn selection game are therefore that the returned Reg may be modified
Constructors
| ChildCode64 InstrBlock Reg | 
Holds code that references a memory address.
Constructors
| Amode AddrMode InstrBlock | 
Code to produce a result into a register. If the result must go in a specific register, it comes out as Fixed. Otherwise, the parent can decide which register to put it in.
Constructors
| Fixed Format Reg InstrBlock | |
| Any Format (Reg -> InstrBlock) |