ghc-8.0.2: The GHC API

Safe HaskellNone
LanguageHaskell2010

X86.Regs

Synopsis

Documentation

virtualRegSqueeze :: RegClass -> VirtualReg -> Int #

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 #