ghc-9.15: The GHC API
Safe HaskellNone
LanguageGHC2024

GHC.CmmToAsm.Reg.Regs

Synopsis

Documentation

newtype Regs Source #

A set of registers, with their respective formats, mostly for use in register liveness analysis. See Note [Register formats in liveness analysis] in GHC.CmmToAsm.Reg.Liveness.

Constructors

Regs 

Instances

Instances details
Outputable Regs Source # 
Instance details

Defined in GHC.CmmToAsm.Reg.Regs

Methods

ppr :: Regs -> SDoc Source #

Eq Regs Source # 
Instance details

Defined in GHC.CmmToAsm.Reg.Regs

Methods

(==) :: Regs -> Regs -> Bool Source #

(/=) :: Regs -> Regs -> Bool Source #

minusCoveredRegs :: Regs -> Regs -> Regs Source #

Remove 2nd argument registers from the 1st argument, but only if the format in the second argument is at least as large as the format in the first argument.

minusRegs :: Regs -> Regs -> Regs Source #

Remove 2nd argument registers from the 1st argument, regardless of format.

See also minusCoveredRegs, which looks at the formats.

shrinkingRegs :: Regs -> Regs -> Regs Source #

Computes the set of registers in both arguments whose size is smaller in the second argument than in the first.

mapRegs :: (Reg -> Reg) -> Regs -> Regs Source #

Map a function that may change the Unique of the register, which entails going via lists.

See Note [UniqSet invariant] in GHC.Types.Unique.Set.