summaryrefslogtreecommitdiff
path: root/compiler/vectorise/Vectorise/Utils
diff options
context:
space:
mode:
authorManuel M T Chakravarty <chak@cse.unsw.edu.au>2011-11-25 22:57:40 +1100
committerManuel M T Chakravarty <chak@cse.unsw.edu.au>2011-11-25 23:03:01 +1100
commit18aae18503442276e14a47eabf4786bc7210662e (patch)
treedfc556a1b047c0031342db4b8e8d429b5f230613 /compiler/vectorise/Vectorise/Utils
parent498467cf44e871a6abdb1e16714f6e91c7b10a80 (diff)
downloadhaskell-18aae18503442276e14a47eabf4786bc7210662e.tar.gz
Fix newtype wrapper for 'PData[s] (Wrap a)' and fix VECTORISE type and instance pragmas
* Correct usage of new type wrappers from MkId * 'VECTORISE [SCALAR] type T = S' didn't work correctly across module boundaries * Clean up 'VECTORISE SCALAR instance'
Diffstat (limited to 'compiler/vectorise/Vectorise/Utils')
-rw-r--r--compiler/vectorise/Vectorise/Utils/Base.hs4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/vectorise/Vectorise/Utils/Base.hs b/compiler/vectorise/Vectorise/Utils/Base.hs
index 6a576659f0..0c111f49c7 100644
--- a/compiler/vectorise/Vectorise/Utils/Base.hs
+++ b/compiler/vectorise/Vectorise/Utils/Base.hs
@@ -156,7 +156,7 @@ wrapNewTypeBodyOfPDataWrap :: CoreExpr -> Type -> VM CoreExpr
wrapNewTypeBodyOfPDataWrap e ty
= do { wrap_tc <- builtin wrapTyCon
; pwrap_tc <- pdataReprTyConExact wrap_tc
- ; return $ wrapFamInstBody pwrap_tc [ty] (wrapNewTypeBody pwrap_tc [ty] e)
+ ; return $ wrapNewTypeBody pwrap_tc [ty] e
}
-- |Strip the constructor wrapper of the 'PData' /newtype/ instance of 'Wrap'.
@@ -174,7 +174,7 @@ wrapNewTypeBodyOfPDatasWrap :: CoreExpr -> Type -> VM CoreExpr
wrapNewTypeBodyOfPDatasWrap e ty
= do { wrap_tc <- builtin wrapTyCon
; pwrap_tc <- pdatasReprTyConExact wrap_tc
- ; return $ wrapFamInstBody pwrap_tc [ty] (wrapNewTypeBody pwrap_tc [ty] e)
+ ; return $ wrapNewTypeBody pwrap_tc [ty] e
}
-- |Strip the constructor wrapper of the 'PDatas' /newtype/ instance of 'Wrap'.