| ||||||||||||||||||||
| ||||||||||||||||||||
| ||||||||||||||||||||
| Synopsis | ||||||||||||||||||||
| Immediate values | ||||||||||||||||||||
| data Imm | ||||||||||||||||||||
| ||||||||||||||||||||
| strImmLit | ||||||||||||||||||||
| litToImm :: CmmLit -> Imm | ||||||||||||||||||||
| Addressing modes | ||||||||||||||||||||
| data AddrMode | ||||||||||||||||||||
| ||||||||||||||||||||
| addrOffset :: AddrMode -> Int -> Maybe AddrMode | ||||||||||||||||||||
| The Reg type | ||||||||||||||||||||
| type RegNo = Int | ||||||||||||||||||||
| data Reg | ||||||||||||||||||||
| ||||||||||||||||||||
| isRealReg :: Reg -> Bool | ||||||||||||||||||||
| isVirtualReg :: Reg -> Bool | ||||||||||||||||||||
| renameVirtualReg :: Unique -> Reg -> Reg | ||||||||||||||||||||
| data RegClass | ||||||||||||||||||||
| ||||||||||||||||||||
| regClass | ||||||||||||||||||||
| trivColorable :: RegClass -> UniqSet Reg -> UniqSet Reg -> Bool | ||||||||||||||||||||
| getHiVRegFromLo | ||||||||||||||||||||
| mkVReg :: Unique -> MachRep -> Reg | ||||||||||||||||||||
| Global registers | ||||||||||||||||||||
| get_GlobalReg_reg_or_addr :: GlobalReg -> Either Reg CmmExpr | ||||||||||||||||||||
| Machine-dependent register-related stuff | ||||||||||||||||||||
| allocatableRegs :: [RegNo] | ||||||||||||||||||||
| argRegs :: RegNo -> [Reg] | ||||||||||||||||||||
| allArgRegs :: [Reg] | ||||||||||||||||||||
| callClobberedRegs :: [Reg] | ||||||||||||||||||||
| allocatableRegsInClass :: RegClass -> Int | ||||||||||||||||||||
| The number of regs in each class. We go via top level CAFs to ensure that we're not recomputing the length of these lists each time the fn is called. | ||||||||||||||||||||
| freeReg :: RegNo -> FastBool | ||||||||||||||||||||
| spRel :: Int -> AddrMode | ||||||||||||||||||||
| data EABase | ||||||||||||||||||||
| ||||||||||||||||||||
| data EAIndex | ||||||||||||||||||||
| ||||||||||||||||||||
| eax :: Reg | ||||||||||||||||||||
| ebx :: Reg | ||||||||||||||||||||
| ecx :: Reg | ||||||||||||||||||||
| edx :: Reg | ||||||||||||||||||||
| esi :: Reg | ||||||||||||||||||||
| edi :: Reg | ||||||||||||||||||||
| ebp :: Reg | ||||||||||||||||||||
| esp :: Reg | ||||||||||||||||||||
| fake0 :: Reg | ||||||||||||||||||||
| fake1 :: Reg | ||||||||||||||||||||
| fake2 :: Reg | ||||||||||||||||||||
| fake3 :: Reg | ||||||||||||||||||||
| fake4 :: Reg | ||||||||||||||||||||
| fake5 :: Reg | ||||||||||||||||||||
| addrModeRegs :: AddrMode -> [Reg] | ||||||||||||||||||||
| Produced by Haddock version 2.4.2 |