ghc-7.0.4: The GHC API

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

:: Int

desired stack offset in words, positive or negative

-> AddrMode 

argRegs :: RegNo -> [Reg]

allMachRegNos :: [RegNo]

The complete set of machine registers.

classOfRealReg :: RealReg -> RegClass

Take the class of a register.

showReg :: RegNo -> String

Get the name of the register with this number.

data EABase

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

allocatableRegs :: [RealReg]

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