The tag on a pointer (from the dynamic-tagging paper)
Moduleghc-10.0.0.20260917GHC2024
GHC.StgToCmm.Closure
- 7 types
- 49 values
- Packageghc-10.0.0.20260917
- Exports56
- LanguageGHC2024
- LicenceBSD-3-Clause
- SourceTag.hs
Is a data type family small enough that each constructor can get its own pointer tag?
Assumes that there is at most one PrimRep of the type. This assumption holds after unarise. See Note [Post-unarisation invariants] in GHC.Stg.Unarise. See Note [VoidRep] in GHC.Types.RepType.
Assumes that Ids have one PrimRep, which holds after unarisation. See Note [Post-unarisation invariants] in GHC.Stg.Unarise.
Assumes that arguments have one PrimRep, which holds after unarisation. See Note [Post-unarisation invariants] in GHC.Stg.Unarise.
Constructors
NonVoid a
Instances3Eq, Show, Outputable
Eq a => Eq (NonVoid a)Defined in ghc-10.0.0.20260917 · GHC.StgToCmm.ClosureShow a => Show (NonVoid a)Defined in ghc-10.0.0.20260917 · GHC.StgToCmm.ClosureOutputable a => Outputable (NonVoid a)Defined in ghc-10.0.0.20260917 · GHC.StgToCmm.Closure
Used in places where some invariant ensures that all these Ids are non-void; e.g. constructor field binders in case expressions. See Note [Post-unarisation invariants] in GHC.Stg.Unarise.
Used in places where some invariant ensures that all these arguments are non-void; e.g. constructor arguments. See Note [Post-unarisation invariants] in GHC.Stg.Unarise.
LambdaFormInfo
15 declarationsInformation about an identifier, from the code generator's point of view. Every identifier is bound to a LambdaFormInfo in the environment, which gives the code generator enough info to be able to tail call or return that identifier.
Instances1Outputable
Outputable LambdaFormInfoDefined in ghc-10.0.0.20260917 · GHC.StgToCmm.Types
StandardFormInfo tells whether this thunk has one of a small number of standard forms
Instances2Eq, Outputable
Eq StandardFormInfoDefined in ghc-10.0.0.20260917 · GHC.StgToCmm.TypesOutputable StandardFormInfoDefined in ghc-10.0.0.20260917 · GHC.StgToCmm.Types
The LambdaFormInfo of an imported Id. See Note [The LFInfo of Imported Ids]
Return the tag in the low order bits of a variable bound to this LambdaForm
Used by other modules
7 declarationsInstances1OutputableP
OutputableP Platform CgLocDefined in ghc-10.0.0.20260917 · GHC.StgToCmm.Closure
Constructors
EnterItNo args, not a function
JumpToIt BlockId [LocalReg]ReturnItInferedReturnItSlowCallDirectEntry CLabel RepArity
Instances1Outputable
Outputable CallMethodDefined in ghc-10.0.0.20260917 · GHC.StgToCmm.Closure
ClosureInfo
3 declarationsConvert from ClosureInfo to CmmInfoTable.
Inspection
Labels
Predicates
InfoTables
5 declarationsGet the info table label for a *thunk*.