ghc-10.0.0.20260917: The GHC API
Safe HaskellNone
LanguageGHC2024

GHC.Stg.EnforceEpt.Types

Synopsis

Documentation

combineAltInfo :: TagInfo -> TagInfo -> TagInfo Source #

Combine TagInfo from the alternatives of a case expression. Note that this operates at the value level: case alternatives return values. See Note [TagSig and TagInfo].

extendSigEnv :: TagEnv p -> [(Id, TagSig)] -> TagEnv p Source #

Extend the tag environment.

lookupInfo :: TagEnv p -> StgArg -> TagInfo Source #

Look up a value-level tag for an argument: either from the env (where a function-typed argument flattens to TagEPT — its closure is tagged) or derived from information on the variable itself.

lookupReturnInfo :: TagEnv p -> Id -> Maybe TagInfo Source #

Look up the return-value tag of a function for saturated call analysis. Returns 'Just retInfo' if the function binding has a TagFun signature, Nothing otherwise.

makeTagged :: TagEnv p -> TagEnv 'InferTaggedBinders Source #

Simple convert env to a env of the 'InferTaggedBinders pass with no other changes.

noSig :: TagEnv p -> BinderP p -> (Id, TagSig) Source #

data TagEnv (p :: StgPass) Source #

Constructors

TE 

Fields

Instances

Instances details
Outputable (TagEnv p) Source # 
Instance details

Defined in GHC.Stg.EnforceEpt.Types

Methods

ppr :: TagEnv p -> SDoc Source #