Safe Haskell | Safe-Infered |
---|
- showReg :: RegNo -> String
- virtualRegSqueeze :: RegClass -> VirtualReg -> FastInt
- realRegSqueeze :: RegClass -> RealReg -> FastInt
- classOfRealReg :: RealReg -> RegClass
- allRealRegs :: [RealReg]
- gReg, fReg, oReg, iReg, lReg :: Int -> RegNo
- g0, f27, f26, f22, f8, f6, f1, f0, o1, o0, sp, fp, g2, g1 :: Reg
- allocatableRegs :: [RealReg]
- argRegs :: RegNo -> [Reg]
- allArgRegs :: [Reg]
- callClobberedRegs :: [Reg]
- mkVirtualReg :: Unique -> Size -> VirtualReg
- regDotColor :: RealReg -> SDoc
Documentation
virtualRegSqueeze :: RegClass -> VirtualReg -> FastIntSource
regSqueeze_class reg Calculuate the maximum number of register colors that could be denied to a node of this class due to having this reg as a neighbour.
realRegSqueeze :: RegClass -> RealReg -> FastIntSource
allRealRegs :: [RealReg]Source
All the allocatable registers in the machine, including register pairs.
g0, f27, f26, f22, f8, f6, f1, f0, o1, o0, sp, fp, g2, g1 :: RegSource
Some specific regs used by the code generator.
allocatableRegs :: [RealReg]Source
Produce the second-half-of-a-double register given the first half.
All the regs that the register allocator can allocate to, with the the fixed use regs removed.
argRegs :: RegNo -> [Reg]Source
The registers to place arguments for function calls, for some number of arguments.
allArgRegs :: [Reg]Source
All all the regs that could possibly be returned by argRegs
mkVirtualReg :: Unique -> Size -> VirtualRegSource
Make a virtual reg with this size.
regDotColor :: RealReg -> SDocSource