| ||||||||||||||||||||
| ||||||||||||||||||||
| ||||||||||||||||||||
| 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 | ||||||||||||||||||||
| ||||||||||||||||||||
| ripRel | ||||||||||||||||||||
| rax :: Reg | ||||||||||||||||||||
| rbx :: Reg | ||||||||||||||||||||
| rcx :: Reg | ||||||||||||||||||||
| rdx :: Reg | ||||||||||||||||||||
| rsi :: Reg | ||||||||||||||||||||
| rdi :: Reg | ||||||||||||||||||||
| rbp :: Reg | ||||||||||||||||||||
| rsp :: Reg | ||||||||||||||||||||
| eax | ||||||||||||||||||||
| ebx | ||||||||||||||||||||
| ecx | ||||||||||||||||||||
| edx | ||||||||||||||||||||
| esi | ||||||||||||||||||||
| edi | ||||||||||||||||||||
| ebp | ||||||||||||||||||||
| esp | ||||||||||||||||||||
| r8 :: Reg | ||||||||||||||||||||
| r9 :: Reg | ||||||||||||||||||||
| r10 :: Reg | ||||||||||||||||||||
| r11 :: Reg | ||||||||||||||||||||
| r12 :: Reg | ||||||||||||||||||||
| r13 :: Reg | ||||||||||||||||||||
| r14 :: Reg | ||||||||||||||||||||
| r15 :: Reg | ||||||||||||||||||||
| xmm0 :: Reg | ||||||||||||||||||||
| xmm1 :: Reg | ||||||||||||||||||||
| xmm2 :: Reg | ||||||||||||||||||||
| xmm3 :: Reg | ||||||||||||||||||||
| xmm4 :: Reg | ||||||||||||||||||||
| xmm5 :: Reg | ||||||||||||||||||||
| xmm6 :: Reg | ||||||||||||||||||||
| xmm7 :: Reg | ||||||||||||||||||||
| xmm8 :: Reg | ||||||||||||||||||||
| xmm9 :: Reg | ||||||||||||||||||||
| xmm10 :: Reg | ||||||||||||||||||||
| xmm11 :: Reg | ||||||||||||||||||||
| xmm12 :: Reg | ||||||||||||||||||||
| xmm13 :: Reg | ||||||||||||||||||||
| xmm14 :: Reg | ||||||||||||||||||||
| xmm15 :: Reg | ||||||||||||||||||||
| xmm | ||||||||||||||||||||
| addrModeRegs :: AddrMode -> [Reg] | ||||||||||||||||||||
| allFPArgRegs :: [Reg] | ||||||||||||||||||||
| Produced by Haddock version 2.4.2 |