@@ -19,7 +19,7 @@ import LLVM.General.Target ( TargetMachine
1919 , initializeAllTargets, lookupTarget
2020 )
2121import LLVM.General.AST.DataLayout
22−import LLVM.General.PassManager
22+import qualified LLVM.General.PassManager as PM
2323import qualified LLVM.General.Module as M
2424import qualified LLVM.General.AST.IntegerPredicate as IPred
2525import qualified LLVM.General.AST.Linkage as L
@@ -59,7 +59,7 @@ data Target = Target { triple :: String, dataLayout :: DataLayout }
5959codegenLLVM :: [(TT.Name, SDecl)] ->
6060 String -> -- target triple
6161 String -> -- target CPU
62− Int -> -- Optimization degree
62+ Word -> -- Optimization degree
6363 FilePath -> -- output file name
6464 OutputType ->
6565 IO ()
@@ -71,12 +71,12 @@ codegenLLVM defs triple cpu optimize file outty = withContext $ \context -> do
7171 do layout <- getTargetMachineDataLayout tm
7272 let ast = codegen (Target triple layout) (map snd defs)
7373 result <- runErrorT . M.withModuleFromAST context ast $ \m ->
74− do let opts = defaultCuratedPassSetSpec
75− { optLevel = Just optimize
76− , simplifyLibCalls = Just True
77− , useInlinerWithThreshold = Just 225
74+ do let opts = PM.defaultCuratedPassSetSpec
75+ { PM.optLevel = Just optimize
76+ , PM.simplifyLibCalls = Just True
77+ , PM.useInlinerWithThreshold = Just 225
7878 }
79− when (optimize /= 0) $ withPassManager opts $ void . flip runPassManager m
79+ when (optimize /= 0) $ PM.withPassManager opts $ void . flip PM.runPassManager m
8080 outputModule tm file outty m
8181 case result of
8282 Right _ -> return ()