Commit 146d36e8 authored by batterseapower's avatar batterseapower
Browse files

Handle introduction of MkCore in DsExpr

parent 1375f908
...@@ -42,6 +42,7 @@ import TcType ...@@ -42,6 +42,7 @@ import TcType
import Type import Type
import CoreSyn import CoreSyn
import CoreUtils import CoreUtils
import MkCore
import DynFlags import DynFlags
import CostCentre import CostCentre
...@@ -211,7 +212,7 @@ dsExpr (HsLam a_Match) ...@@ -211,7 +212,7 @@ dsExpr (HsLam a_Match)
= uncurry mkLams <$> matchWrapper LambdaExpr a_Match = uncurry mkLams <$> matchWrapper LambdaExpr a_Match
dsExpr (HsApp fun arg) dsExpr (HsApp fun arg)
= mkDsApp <$> dsLExpr fun <*> dsLExpr arg = mkCoreApp <$> dsLExpr fun <*> dsLExpr arg
\end{code} \end{code}
Operator sections. At first it looks as if we can convert Operator sections. At first it looks as if we can convert
...@@ -238,10 +239,10 @@ will sort it out. ...@@ -238,10 +239,10 @@ will sort it out.
\begin{code} \begin{code}
dsExpr (OpApp e1 op _ e2) dsExpr (OpApp e1 op _ e2)
= -- for the type of y, we need the type of op's 2nd argument = -- for the type of y, we need the type of op's 2nd argument
mkDsApps <$> dsLExpr op <*> mapM dsLExpr [e1, e2] mkCoreApps <$> dsLExpr op <*> mapM dsLExpr [e1, e2]
dsExpr (SectionL expr op) -- Desugar (e !) to ((!) e) dsExpr (SectionL expr op) -- Desugar (e !) to ((!) e)
= mkDsApp <$> dsLExpr op <*> dsLExpr expr = mkCoreApp <$> dsLExpr op <*> dsLExpr expr
-- dsLExpr (SectionR op expr) -- \ x -> op x expr -- dsLExpr (SectionR op expr) -- \ x -> op x expr
dsExpr (SectionR op expr) = do dsExpr (SectionR op expr) = do
...@@ -253,7 +254,7 @@ dsExpr (SectionR op expr) = do ...@@ -253,7 +254,7 @@ dsExpr (SectionR op expr) = do
x_id <- newSysLocalDs x_ty x_id <- newSysLocalDs x_ty
y_id <- newSysLocalDs y_ty y_id <- newSysLocalDs y_ty
return (bindNonRec y_id y_core $ return (bindNonRec y_id y_core $
Lam x_id (mkDsApps core_op [Var x_id, Var y_id])) Lam x_id (mkCoreApps core_op [Var x_id, Var y_id]))
dsExpr (HsSCC cc expr) = do dsExpr (HsSCC cc expr) = do
mod_name <- getModuleDs mod_name <- getModuleDs
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment