diff options
author | John Ericson <John.Ericson@Obsidian.Systems> | 2022-05-26 16:11:58 +0000 |
---|---|---|
committer | John Ericson <John.Ericson@Obsidian.Systems> | 2023-01-17 19:04:50 -0500 |
commit | 4322de246d35091e5e95a3a87fb4c1f9b7a61ee9 (patch) | |
tree | 092cd0e518b59d5fc0d666c6f1bf56e0b3c421c2 /compiler/GHC/Core/Lint.hs | |
parent | f4d50bafb7e14f76273aaf6f634815d5628ccc86 (diff) | |
download | haskell-wip/rules-module.tar.gz |
Split up `GHC.Core` somewhatwip/rules-module
- `GHC.Core.Annotated` now contains annotated Core
- `GHC.Core.Rules` now contains the rules definitions
- `GHC.Core.Orphans` now contains the orphans *something*
- `GHC.Core.Unfoldings` now contains the unfoldings defintions
- The old `GHC.Core.Rules`, which was about applying rules, is now
`GHC.Core.Rules.Apply`. Compare with `GHC.Core.Simplify.Inlin` which was also
about operations not the data structures and simple predictes
themselves (which is `GHC.Core.Unfold`).
Diffstat (limited to 'compiler/GHC/Core/Lint.hs')
-rw-r--r-- | compiler/GHC/Core/Lint.hs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/GHC/Core/Lint.hs b/compiler/GHC/Core/Lint.hs index 73faebd80d..4c1bfdad80 100644 --- a/compiler/GHC/Core/Lint.hs +++ b/compiler/GHC/Core/Lint.hs @@ -38,6 +38,7 @@ import GHC.Unit.Module.ModGuts import GHC.Platform import GHC.Core +import GHC.Core.Rules import GHC.Core.FVs import GHC.Core.Utils import GHC.Core.Stats ( coreBindsStats ) @@ -60,6 +61,7 @@ import GHC.Core.Coercion.Opt ( checkAxInstCo ) import GHC.Core.Opt.Arity ( typeArity, exprIsDeadEnd ) import GHC.Core.Opt.Monad +import GHC.Core.Unfoldings import GHC.Types.Literal import GHC.Types.Var as Var @@ -2037,7 +2039,7 @@ lintCoreRule fun fun_ty rule@(Rule { ru_name = name, ru_bndrs = bndrs rhs_fvs = exprFreeVars rhs is_bad_bndr :: Var -> Bool - -- See Note [Unbound RULE binders] in GHC.Core.Rules + -- See Note [Unbound RULE binders] in GHC.Core.Rules.Apply is_bad_bndr bndr = not (bndr `elemVarSet` lhs_fvs) && bndr `elemVarSet` rhs_fvs && isNothing (isReflCoVar_maybe bndr) |