ghc-7.10.2: The GHC API

Safe HaskellNone
LanguageHaskell2010

X86.Regs

Synopsis

Documentation

virtualRegSqueeze :: RegClass -> VirtualReg -> FastInt

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.

data AddrMode

Constructors

AddrBaseIndex EABase EAIndex Displacement 
ImmAddr Imm Int 

spRel

Arguments

:: DynFlags 
-> Int

desired stack offset in bytes, positive or negative

-> AddrMode 

argRegs :: RegNo -> [Reg]

callClobberedRegs :: Platform -> [Reg]

these are the regs which we cannot assume stay alive over a C call.

allMachRegNos :: Platform -> [RegNo]

The complete set of machine registers.

classOfRealReg :: Platform -> RealReg -> RegClass

Take the class of a register.

showReg :: Platform -> RegNo -> String

Get the name of the register with this number.

data EAIndex

Constructors

EAIndexNone 
EAIndex Reg Int 

eax :: Reg

ebx :: Reg

ecx :: Reg

edx :: Reg

esi :: Reg

edi :: Reg

ebp :: Reg

esp :: Reg

rax :: Reg

rbx :: Reg

rcx :: Reg

rdx :: Reg

rsi :: Reg

rdi :: Reg

rbp :: Reg

rsp :: Reg

r8 :: Reg

r9 :: Reg

r10 :: Reg

r11 :: Reg

r12 :: Reg

r13 :: Reg

r14 :: Reg

r15 :: Reg

xmm :: RegNo -> Reg

ripRel :: Displacement -> AddrMode