ghc-9.10.0.20240426: The GHC API
Safe HaskellNone
LanguageGHC2021

GHC.CmmToLlvm.Regs

Description

Deal with Cmm registers

Synopsis

Documentation

lmGlobalRegArg :: Platform -> GlobalReg -> LlvmVar Source #

Get the LlvmVar function argument storing the real register

lmGlobalRegVar :: Platform -> GlobalReg -> LlvmVar Source #

Get the LlvmVar function variable storing the real register

alwaysLive :: [GlobalReg] Source #

A list of STG Registers that should always be considered alive

stgTBAA :: [(Unique, LMString, Maybe Unique)] Source #

STG Type Based Alias Analysis hierarchy

baseN :: Unique Source #

Id values The rootN node is the root (there can be more than one) of the TBAA hierarchy and as of LLVM 4.0 should *only* be referenced by other nodes. It should never occur in any LLVM instruction statement.

stackN :: Unique Source #

Id values The rootN node is the root (there can be more than one) of the TBAA hierarchy and as of LLVM 4.0 should *only* be referenced by other nodes. It should never occur in any LLVM instruction statement.

heapN :: Unique Source #

Id values The rootN node is the root (there can be more than one) of the TBAA hierarchy and as of LLVM 4.0 should *only* be referenced by other nodes. It should never occur in any LLVM instruction statement.

rxN :: Unique Source #

Id values The rootN node is the root (there can be more than one) of the TBAA hierarchy and as of LLVM 4.0 should *only* be referenced by other nodes. It should never occur in any LLVM instruction statement.

topN :: Unique Source #

Id values The rootN node is the root (there can be more than one) of the TBAA hierarchy and as of LLVM 4.0 should *only* be referenced by other nodes. It should never occur in any LLVM instruction statement.

tbaa :: LMString Source #

The TBAA metadata identifier

getTBAA :: GlobalReg -> Unique Source #

Get the correct TBAA metadata information for this register type