ghc-7.0.4: The GHC API

PPC.Regs

Synopsis

- virtualRegSqueeze :: RegClass -> VirtualReg -> FastInt
- realRegSqueeze :: RegClass -> RealReg -> FastInt
- mkVirtualReg :: Unique -> Size -> VirtualReg
- regDotColor :: RealReg -> SDoc
- data Imm
  - = ImmInt Int
  - | ImmInteger Integer
  - | ImmCLbl CLabel
  - | ImmLit Doc
  - | ImmIndex CLabel Int
  - | ImmFloat Rational
  - | ImmDouble Rational
  - | ImmConstantSum Imm Imm
  - | ImmConstantDiff Imm Imm
  - | LO Imm
  - | HI Imm
  - | HA Imm
- strImmLit :: String -> Imm
- litToImm :: CmmLit -> Imm
- data AddrMode
  - = AddrRegReg Reg Reg
  - | AddrRegImm Reg Imm
- addrOffset :: AddrMode -> Int -> Maybe AddrMode
- spRel :: Int -> AddrMode
- argRegs :: RegNo -> [Reg]
- allArgRegs :: [Reg]
- callClobberedRegs :: [Reg]
- allMachRegNos :: [RegNo]
- classOfRealReg :: RealReg -> RegClass
- showReg :: RegNo -> String
- allFPArgRegs :: [Reg]
- fits16Bits :: Integral a => a -> Bool
- makeImmediate :: Integral a => Width -> Bool -> a -> Maybe Imm
- fReg :: Int -> RegNo
- sp :: Reg
- r3 :: Reg
- r4 :: Reg
- r27 :: Reg
- r28 :: Reg
- f1 :: Reg
- f20 :: Reg
- f21 :: Reg
- freeReg :: RegNo -> FastBool
- globalRegMaybe :: GlobalReg -> Maybe Reg
- allocatableRegs :: [RealReg]

# Documentation

virtualRegSqueeze :: RegClass -> VirtualReg -> FastInt Source

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 -> FastInt Source

mkVirtualReg :: Unique -> Size -> VirtualReg Source

regDotColor :: RealReg -> SDoc Source

data Imm Source

Constructors

ImmInt Int |
ImmInteger Integer |
ImmCLbl CLabel |
ImmLit Doc |
ImmIndex CLabel Int |
ImmFloat Rational |
ImmDouble Rational |
ImmConstantSum Imm Imm |
ImmConstantDiff Imm Imm |
LO Imm |
HI Imm |
HA Imm |

strImmLit :: String -> Imm Source

litToImm :: CmmLit -> Imm Source

data AddrMode Source

Constructors

AddrRegReg Reg Reg |
AddrRegImm Reg Imm |

addrOffset :: AddrMode -> Int -> Maybe AddrMode Source

spRel :: Int -> AddrMode Source

argRegs :: RegNo -> [Reg]Source

allArgRegs :: [Reg]Source

callClobberedRegs :: [Reg]Source

allMachRegNos :: [RegNo]Source

classOfRealReg :: RealReg -> RegClass Source

showReg :: RegNo -> String Source

allFPArgRegs :: [Reg]Source

fits16Bits :: Integral a => a -> Bool Source

makeImmediate :: Integral a => Width -> Bool -> a -> Maybe Imm Source

fReg :: Int -> RegNo Source

sp :: Reg Source

r3 :: Reg Source

r4 :: Reg Source

r27 :: Reg Source

r28 :: Reg Source

f1 :: Reg Source

f20 :: Reg Source

f21 :: Reg Source

freeReg :: RegNo -> FastBool Source

globalRegMaybe :: GlobalReg -> Maybe Reg Source

allocatableRegs :: [RealReg]Source