GHC.Core.Opt.ConstantFold

ghc-9.14.0.20251028: The GHC API

Safe Haskell | None
Language | GHC2021

GHC.Core.Opt.ConstantFold

Description

Constant Folder

Synopsis

- primOpRules :: Name -> PrimOp -> Maybe CoreRule
- builtinRules :: [CoreRule]
- caseRules :: Platform -> CoreExpr -> Maybe (CoreExpr, AltCon -> Maybe AltCon, Id -> CoreExpr)
- caseRules2 :: InExpr -> InId -> [InAlt] -> Maybe (InExpr, InId, [InAlt])

# Documentation

primOpRules :: Name -> PrimOp -> Maybe CoreRule Source #

builtinRules :: [CoreRule] Source #

caseRules :: Platform -> CoreExpr -> Maybe (CoreExpr, AltCon -> Maybe AltCon, Id -> CoreExpr) Source #

Match the scrutinee of a case and potentially return a new scrutinee and a function to apply to each literal alternative.

caseRules2 Source #

Arguments

:: InExpr | Scutinee
-> InId | Case-binder
-> [InAlt] | Alternatives in standard (increasing) order
-> Maybe (InExpr, InId, [InAlt]) |

Case rules

It's important that occurrence info are present, hence the use of In* types.