summaryrefslogtreecommitdiff
path: root/compiler/coreSyn/CoreFVs.hs
diff options
context:
space:
mode:
authorJoachim Breitner <mail@joachim-breitner.de>2016-10-21 19:07:51 -0400
committerJoachim Breitner <mail@joachim-breitner.de>2016-10-21 20:07:26 -0400
commit201332eda995ffe5faee07849e629eea09ec84d4 (patch)
tree55c093a0ca53125c243eb682a42498cd8f08d3a1 /compiler/coreSyn/CoreFVs.hs
parenta875ab3b4c3bce7e52ffa270f4c82e79f62b3fb8 (diff)
downloadhaskell-wip/T12618.tar.gz
Cache the analysis of the data con typewip/T12618
for faster compression/decompression.
Diffstat (limited to 'compiler/coreSyn/CoreFVs.hs')
-rw-r--r--compiler/coreSyn/CoreFVs.hs4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/coreSyn/CoreFVs.hs b/compiler/coreSyn/CoreFVs.hs
index 12544b89d2..5f1fad2f2e 100644
--- a/compiler/coreSyn/CoreFVs.hs
+++ b/compiler/coreSyn/CoreFVs.hs
@@ -74,7 +74,7 @@ import Type
import TyCoRep
import TyCon
import CompressArgs
-import DataCon ( dataConRepType, dataConWorkId )
+import DataCon ( dataConRepType, dataConCompressScheme, dataConWorkId )
import CoAxiom
import FamInstEnv
import TysPrim( funTyConName )
@@ -752,7 +752,7 @@ freeVars = go
, AnnConApp dc cargs' )
where
cargs' = map go cargs
- args = uncompressArgs exprTypeFV (go . Type) dc_ty cargs'
+ args = uncompressArgs exprTypeFV (go . Type) (dataConCompressScheme dc) cargs'
dc_ty = dataConRepType dc
res_ty = foldl applyTypeToArg dc_ty (map deAnnotate args)
-- Why does this not work? Isn't piResultTys just iterated application