ghc-9.8.0.20230929: The GHC API
Safe HaskellNone
LanguageHaskell2010

GHC.CmmToAsm.X86.Regs

Synopsis

Documentation

virtualRegSqueeze :: RegClass -> VirtualReg -> Int Source #

regSqueeze_class reg Calculate 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 Source #

Constructors

AddrBaseIndex EABase EAIndex Displacement 
ImmAddr Imm Int 

spRel Source #

Arguments

:: Platform 
-> Int

desired stack offset in bytes, positive or negative

-> AddrMode 

callClobberedRegs :: Platform -> [Reg] Source #

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

allMachRegNos :: Platform -> [RegNo] Source #

The complete set of machine registers.

classOfRealReg :: Platform -> RealReg -> RegClass Source #

Take the class of a register.

showReg :: Platform -> RegNo -> String Source #

Get the name of the register with this number. NOTE: fixme, we dont track which "way" the XMM registers are used

ripRel :: Displacement -> AddrMode Source #

allFPArgRegs :: Platform -> [Reg] Source #

on 64bit platforms we pass the first 8 float/double arguments in the xmm registers.