<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>ghc-7.4.2: The GHC API</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[ window.onload = function () {pageLoad();}; //]]> </script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">ghc-7.4.2: The GHC API</p></div><div id="content"><div id="description"><h1>ghc-7.4.2: The GHC API</h1><div class="doc"><p>GHC's functionality can be useful for more things than just compiling Haskell programs. Important use cases are programs that analyse (and perhaps transform) Haskell code. Others include loading Haskell code dynamically in a GHCi-like manner. For this reason, a lot of GHC's functionality is made available through this package. </p></div></div><div id="module-list"><p class="caption">Modules</p><ul><li><span class="module"><a href="Annotations.html">Annotations</a></span></li><li><span class="module"><a href="AsmCodeGen.html">AsmCodeGen</a></span></li><li><span class="module"><a href="Avail.html">Avail</a></span></li><li><span class="module"><a href="Bag.html">Bag</a></span></li><li><span class="module"><a href="BasicTypes.html">BasicTypes</a></span></li><li><span class="module"><a href="BinIface.html">BinIface</a></span></li><li><span class="module"><a href="Binary.html">Binary</a></span></li><li><span class="module"><a href="Bitmap.html">Bitmap</a></span></li><li><span class="module"><a href="BlockId.html">BlockId</a></span></li><li><span class="module"><a href="BreakArray.html">BreakArray</a></span></li><li><span class="module"><a href="BufWrite.html">BufWrite</a></span></li><li><span class="module"><a href="BuildTyCl.html">BuildTyCl</a></span></li><li><span class="module"><a href="ByteCodeAsm.html">ByteCodeAsm</a></span></li><li><span class="module"><a href="ByteCodeGen.html">ByteCodeGen</a></span></li><li><span class="module"><a href="ByteCodeInstr.html">ByteCodeInstr</a></span></li><li><span class="module"><a href="ByteCodeItbls.html">ByteCodeItbls</a></span></li><li><span class="module"><a href="ByteCodeLink.html">ByteCodeLink</a></span></li><li><span class="module"><a href="CLabel.html">CLabel</a></span></li><li><span class="module"><a href="CPrim.html">CPrim</a></span></li><li><span class="module"><a href="CSE.html">CSE</a></span></li><li><span class="module"><a href="CgBindery.html">CgBindery</a></span></li><li><span class="module"><a href="CgCallConv.html">CgCallConv</a></span></li><li><span class="module"><a href="CgCase.html">CgCase</a></span></li><li><span class="module"><a href="CgClosure.html">CgClosure</a></span></li><li><span class="module"><a href="CgCon.html">CgCon</a></span></li><li><span class="module"><a href="CgExpr.html">CgExpr</a></span></li><li><span class="module"><a href="CgExtCode.html">CgExtCode</a></span></li><li><span class="module"><a href="CgForeignCall.html">CgForeignCall</a></span></li><li><span class="module"><a href="CgHeapery.html">CgHeapery</a></span></li><li><span class="module"><a href="CgHpc.html">CgHpc</a></span></li><li><span class="module"><a href="CgInfoTbls.html">CgInfoTbls</a></span></li><li><span class="module"><a href="CgLetNoEscape.html">CgLetNoEscape</a></span></li><li><span class="module"><a href="CgMonad.html">CgMonad</a></span></li><li><span class="module"><a href="CgParallel.html">CgParallel</a></span></li><li><span class="module"><a href="CgPrimOp.html">CgPrimOp</a></span></li><li><span class="module"><a href="CgProf.html">CgProf</a></span></li><li><span class="module"><a href="CgStackery.html">CgStackery</a></span></li><li><span class="module"><a href="CgTailCall.html">CgTailCall</a></span></li><li><span class="module"><a href="CgTicky.html">CgTicky</a></span></li><li><span class="module"><a href="CgUtils.html">CgUtils</a></span></li><li><span class="module"><a href="Check.html">Check</a></span></li><li><span class="module"><a href="Class.html">Class</a></span></li><li><span class="module"><a href="ClosureInfo.html">ClosureInfo</a></span></li><li><span class="module"><a href="CmdLineParser.html">CmdLineParser</a></span></li><li><span class="module"><a href="Cmm.html">Cmm</a></span></li><li><span class="module"><a href="CmmBuildInfoTables.html">CmmBuildInfoTables</a></span></li><li><span class="module"><a href="CmmCallConv.html">CmmCallConv</a></span></li><li><span class="module"><a href="CmmCommonBlockElim.html">CmmCommonBlockElim</a></span></li><li><span class="module"><a href="CmmContFlowOpt.html">CmmContFlowOpt</a></span></li><li><span class="module"><a href="CmmCvt.html">CmmCvt</a></span></li><li><span class="module"><a href="CmmExpr.html">CmmExpr</a></span></li><li><span class="module"><a href="CmmInfo.html">CmmInfo</a></span></li><li><span class="module"><a href="CmmLex.html">CmmLex</a></span></li><li><span class="module"><a href="CmmLint.html">CmmLint</a></span></li><li><span class="module"><a href="CmmLive.html">CmmLive</a></span></li><li><span class="module"><a href="CmmMachOp.html">CmmMachOp</a></span></li><li><span class="module"><a href="CmmNode.html">CmmNode</a></span></li><li><span class="module"><a href="CmmOpt.html">CmmOpt</a></span></li><li><span class="module"><a href="CmmParse.html">CmmParse</a></span></li><li><span class="module"><a href="CmmPipeline.html">CmmPipeline</a></span></li><li><span class="module"><a href="CmmProcPoint.html">CmmProcPoint</a></span></li><li><span class="module"><a href="CmmRewriteAssignments.html">CmmRewriteAssignments</a></span></li><li><span class="module"><a href="CmmSpillReload.html">CmmSpillReload</a></span></li><li><span class="module"><a href="CmmStackLayout.html">CmmStackLayout</a></span></li><li><span class="module"><a href="CmmType.html">CmmType</a></span></li><li><span class="module"><a href="CmmUtils.html">CmmUtils</a></span></li><li><span class="module"><a href="CodeGen.html">CodeGen</a></span></li><li><span class="module"><a href="CodeOutput.html">CodeOutput</a></span></li><li><span class="module"><a href="Coercion.html">Coercion</a></span></li><li><span class="module"><a href="Config.html">Config</a></span></li><li><span class="module"><a href="Constants.html">Constants</a></span></li><li><span class="module"><a href="Convert.html">Convert</a></span></li><li><span class="module"><a href="CoreArity.html">CoreArity</a></span></li><li><span class="module"><a href="CoreFVs.html">CoreFVs</a></span></li><li><span class="module"><a href="CoreLint.html">CoreLint</a></span></li><li><span class="module"><a href="CoreMonad.html">CoreMonad</a></span></li><li><span class="module"><a href="CorePrep.html">CorePrep</a></span></li><li><span class="module"><a href="CoreSubst.html">CoreSubst</a></span></li><li><span class="module"><a href="CoreSyn.html">CoreSyn</a></span></li><li><span class="module"><a href="CoreTidy.html">CoreTidy</a></span></li><li><span class="module"><a href="CoreToStg.html">CoreToStg</a></span></li><li><span class="module"><a href="CoreUnfold.html">CoreUnfold</a></span></li><li><span class="module"><a href="CoreUtils.html">CoreUtils</a></span></li><li><span class="module"><a href="CostCentre.html">CostCentre</a></span></li><li><span class="module"><a href="Coverage.html">Coverage</a></span></li><li><span class="module"><a href="Ctype.html">Ctype</a></span></li><li><span class="module"><a href="DataCon.html">DataCon</a></span></li><li><span class="module"><a href="Debugger.html">Debugger</a></span></li><li><span class="module"><a href="DebuggerUtils.html">DebuggerUtils</a></span></li><li><span class="module"><a href="Demand.html">Demand</a></span></li><li><span class="module"><a href="Desugar.html">Desugar</a></span></li><li><span class="module"><a href="Digraph.html">Digraph</a></span></li><li><span class="module"><a href="DmdAnal.html">DmdAnal</a></span></li><li><span class="module"><a href="DriverMkDepend.html">DriverMkDepend</a></span></li><li><span class="module"><a href="DriverPhases.html">DriverPhases</a></span></li><li><span class="module"><a href="DriverPipeline.html">DriverPipeline</a></span></li><li><span class="module"><a href="DsArrows.html">DsArrows</a></span></li><li><span class="module"><a href="DsBinds.html">DsBinds</a></span></li><li><span class="module"><a href="DsCCall.html">DsCCall</a></span></li><li><span class="module"><a href="DsExpr.html">DsExpr</a></span></li><li><span class="module"><a href="DsForeign.html">DsForeign</a></span></li><li><span class="module"><a href="DsGRHSs.html">DsGRHSs</a></span></li><li><span class="module"><a href="DsListComp.html">DsListComp</a></span></li><li><span class="module"><a href="DsMeta.html">DsMeta</a></span></li><li><span class="module"><a href="DsMonad.html">DsMonad</a></span></li><li><span class="module"><a href="DsUtils.html">DsUtils</a></span></li><li><span class="module"><a href="DynFlags.html">DynFlags</a></span></li><li><span class="module"><a href="DynamicLoading.html">DynamicLoading</a></span></li><li><span class="module"><a href="Encoding.html">Encoding</a></span></li><li><span class="module"><a href="ErrUtils.html">ErrUtils</a></span></li><li><span class="module"><a href="Exception.html">Exception</a></span></li><li><span class="module"><a href="ExternalCore.html">ExternalCore</a></span></li><li><span class="module"><a href="FamInst.html">FamInst</a></span></li><li><span class="module"><a href="FamInstEnv.html">FamInstEnv</a></span></li><li><span class="module"><a href="FastBool.html">FastBool</a></span></li><li><span class="module"><a href="FastFunctions.html">FastFunctions</a></span></li><li><span class="module"><a href="FastMutInt.html">FastMutInt</a></span></li><li><span class="module"><a href="FastString.html">FastString</a></span></li><li><span class="module"><a href="FastTypes.html">FastTypes</a></span></li><li><span class="module"><a href="Finder.html">Finder</a></span></li><li><span class="module"><a href="Fingerprint.html">Fingerprint</a></span></li><li><span class="module"><a href="FiniteMap.html">FiniteMap</a></span></li><li><span class="module"><a href="FlagChecker.html">FlagChecker</a></span></li><li><span class="module"><a href="FloatIn.html">FloatIn</a></span></li><li><span class="module"><a href="FloatOut.html">FloatOut</a></span></li><li><span class="module"><a href="ForeignCall.html">ForeignCall</a></span></li><li><span class="module"><a href="FunDeps.html">FunDeps</a></span></li><li><span class="module"><a href="GHC.html">GHC</a></span></li><li><span class="module"><a href="GhcMake.html">GhcMake</a></span></li><li><span class="module"><a href="GhcMonad.html">GhcMonad</a></span></li><li><span class="module"><a href="GhcPlugins.html">GhcPlugins</a></span></li><li><span class="module"><a href="GraphBase.html">GraphBase</a></span></li><li><span class="module"><a href="GraphColor.html">GraphColor</a></span></li><li><span class="module"><a href="GraphOps.html">GraphOps</a></span></li><li><span class="module"><a href="GraphPpr.html">GraphPpr</a></span></li><li><span class="module"><a href="HaddockUtils.html">HaddockUtils</a></span></li><li><span class="module"><a href="HeaderInfo.html">HeaderInfo</a></span></li><li><span class="module"><a href="HsBinds.html">HsBinds</a></span></li><li><span class="module"><a href="HsDecls.html">HsDecls</a></span></li><li><span class="module"><a href="HsDoc.html">HsDoc</a></span></li><li><span class="module"><a href="HsExpr.html">HsExpr</a></span></li><li><span class="module"><a href="HsImpExp.html">HsImpExp</a></span></li><li><span class="module"><a href="HsLit.html">HsLit</a></span></li><li><span class="module"><a href="HsPat.html">HsPat</a></span></li><li><span class="module"><a href="HsSyn.html">HsSyn</a></span></li><li><span class="module"><a href="HsTypes.html">HsTypes</a></span></li><li><span class="module"><a href="HsUtils.html">HsUtils</a></span></li><li><span class="module"><a href="HscMain.html">HscMain</a></span></li><li><span class="module"><a href="HscStats.html">HscStats</a></span></li><li><span class="module"><a href="HscTypes.html">HscTypes</a></span></li><li><span class="module"><a href="IOEnv.html">IOEnv</a></span></li><li><span class="module"><a href="IParam.html">IParam</a></span></li><li><span class="module"><a href="Id.html">Id</a></span></li><li><span class="module"><a href="IdInfo.html">IdInfo</a></span></li><li><span class="module"><a href="IfaceEnv.html">IfaceEnv</a></span></li><li><span class="module"><a href="IfaceSyn.html">IfaceSyn</a></span></li><li><span class="module"><a href="IfaceType.html">IfaceType</a></span></li><li><span class="module"><a href="Inst.html">Inst</a></span></li><li><span class="module"><a href="InstEnv.html">InstEnv</a></span></li><li><span class="module"><a href="Instruction.html">Instruction</a></span></li><li><span class="module"><a href="InteractiveEval.html">InteractiveEval</a></span></li><li><span class="module"><a href="Interval.html">Interval</a></span></li><li><span class="module"><a href="Kind.html">Kind</a></span></li><li><span class="module"><a href="LexCore.html">LexCore</a></span></li><li><span class="module"><a href="Lexer.html">Lexer</a></span></li><li><span class="module"><a href="LibFFI.html">LibFFI</a></span></li><li><span class="module"><a href="LiberateCase.html">LiberateCase</a></span></li><li><span class="module"><a href="Linker.html">Linker</a></span></li><li><span class="module"><a href="ListSetOps.html">ListSetOps</a></span></li><li><span class="module"><a href="Literal.html">Literal</a></span></li><li><span class="module"><span id="control.n.171" class="collapser" onclick="toggleSection('n.171')"> </span><a href="Llvm.html">Llvm</a></span><ul id="section.n.171" class="show"><li><span class="module"><a href="Llvm-AbsSyn.html">Llvm.AbsSyn</a></span></li><li><span class="module"><a href="Llvm-PpLlvm.html">Llvm.PpLlvm</a></span></li><li><span class="module"><a href="Llvm-Types.html">Llvm.Types</a></span></li></ul></li><li><span class="module"><span id="control.n.172" class="collapser" onclick="toggleSection('n.172')"> </span><a href="LlvmCodeGen.html">LlvmCodeGen</a></span><ul id="section.n.172" class="show"><li><span class="module"><a href="LlvmCodeGen-Base.html">LlvmCodeGen.Base</a></span></li><li><span class="module"><a href="LlvmCodeGen-CodeGen.html">LlvmCodeGen.CodeGen</a></span></li><li><span class="module"><a href="LlvmCodeGen-Data.html">LlvmCodeGen.Data</a></span></li><li><span class="module"><a href="LlvmCodeGen-Ppr.html">LlvmCodeGen.Ppr</a></span></li><li><span class="module"><a href="LlvmCodeGen-Regs.html">LlvmCodeGen.Regs</a></span></li></ul></li><li><span class="module"><a href="LlvmMangler.html">LlvmMangler</a></span></li><li><span class="module"><a href="LoadIface.html">LoadIface</a></span></li><li><span class="module"><a href="Match.html">Match</a></span></li><li><span class="module"><a href="MatchCon.html">MatchCon</a></span></li><li><span class="module"><a href="MatchLit.html">MatchLit</a></span></li><li><span class="module"><a href="Maybes.html">Maybes</a></span></li><li><span class="module"><a href="MkCore.html">MkCore</a></span></li><li><span class="module"><a href="MkExternalCore.html">MkExternalCore</a></span></li><li><span class="module"><a href="MkGraph.html">MkGraph</a></span></li><li><span class="module"><a href="MkId.html">MkId</a></span></li><li><span class="module"><a href="MkIface.html">MkIface</a></span></li><li><span class="module"><a href="Module.html">Module</a></span></li><li><span class="module"><a href="MonadUtils.html">MonadUtils</a></span></li><li><span class="module"><a href="NCGMonad.html">NCGMonad</a></span></li><li><span class="module"><a href="Name.html">Name</a></span></li><li><span class="module"><a href="NameEnv.html">NameEnv</a></span></li><li><span class="module"><a href="NameSet.html">NameSet</a></span></li><li><span class="module"><a href="ObjLink.html">ObjLink</a></span></li><li><span class="module"><a href="OccName.html">OccName</a></span></li><li><span class="module"><a href="OccurAnal.html">OccurAnal</a></span></li><li><span class="module"><a href="OldCmm.html">OldCmm</a></span></li><li><span class="module"><a href="OldCmmUtils.html">OldCmmUtils</a></span></li><li><span class="module"><a href="OldPprCmm.html">OldPprCmm</a></span></li><li><span class="module"><a href="OptCoercion.html">OptCoercion</a></span></li><li><span class="module"><a href="OptimizationFuel.html">OptimizationFuel</a></span></li><li><span class="module"><a href="OrdList.html">OrdList</a></span></li><li><span class="module"><a href="Outputable.html">Outputable</a></span></li><li><span class="module"><a href="PIC.html">PIC</a></span></li><li><span id="control.n.201" class="module collapser" onclick="toggleSection('n.201')">PPC</span><ul id="section.n.201" class="show"><li><span class="module"><a href="PPC-CodeGen.html">PPC.CodeGen</a></span></li><li><span class="module"><a href="PPC-Cond.html">PPC.Cond</a></span></li><li><span class="module"><a href="PPC-Instr.html">PPC.Instr</a></span></li><li><span class="module"><a href="PPC-Ppr.html">PPC.Ppr</a></span></li><li><span class="module"><a href="PPC-RegInfo.html">PPC.RegInfo</a></span></li><li><span class="module"><a href="PPC-Regs.html">PPC.Regs</a></span></li></ul></li><li><span class="module"><a href="PackageConfig.html">PackageConfig</a></span></li><li><span class="module"><a href="Packages.html">Packages</a></span></li><li><span class="module"><a href="Pair.html">Pair</a></span></li><li><span class="module"><a href="Panic.html">Panic</a></span></li><li><span class="module"><a href="Parser.html">Parser</a></span></li><li><span class="module"><a href="ParserCore.html">ParserCore</a></span></li><li><span class="module"><a href="ParserCoreUtils.html">ParserCoreUtils</a></span></li><li><span class="module"><a href="Platform.html">Platform</a></span></li><li><span class="module"><a href="PprBase.html">PprBase</a></span></li><li><span class="module"><a href="PprC.html">PprC</a></span></li><li><span class="module"><a href="PprCmm.html">PprCmm</a></span></li><li><span class="module"><a href="PprCmmDecl.html">PprCmmDecl</a></span></li><li><span class="module"><a href="PprCmmExpr.html">PprCmmExpr</a></span></li><li><span class="module"><a href="PprCore.html">PprCore</a></span></li><li><span class="module"><a href="PprExternalCore.html">PprExternalCore</a></span></li><li><span class="module"><a href="PprTyThing.html">PprTyThing</a></span></li><li><span class="module"><a href="PrelInfo.html">PrelInfo</a></span></li><li><span class="module"><a href="PrelNames.html">PrelNames</a></span></li><li><span class="module"><a href="PrelRules.html">PrelRules</a></span></li><li><span class="module"><a href="Pretty.html">Pretty</a></span></li><li><span class="module"><a href="PrimOp.html">PrimOp</a></span></li><li><span class="module"><a href="ProfInit.html">ProfInit</a></span></li><li><span class="module"><a href="RdrHsSyn.html">RdrHsSyn</a></span></li><li><span class="module"><a href="RdrName.html">RdrName</a></span></li><li><span class="module"><a href="Reg.html">Reg</a></span></li><li><span id="control.n.227" class="module collapser" onclick="toggleSection('n.227')">RegAlloc</span><ul id="section.n.227" class="show"><li><span id="control.n.227.1" class="module collapser" onclick="toggleSection('n.227.1')">Graph</span><ul id="section.n.227.1" class="show"><li><span class="module"><a href="RegAlloc-Graph-ArchBase.html">RegAlloc.Graph.ArchBase</a></span></li><li><span class="module"><a href="RegAlloc-Graph-ArchX86.html">RegAlloc.Graph.ArchX86</a></span></li><li><span class="module"><a href="RegAlloc-Graph-Coalesce.html">RegAlloc.Graph.Coalesce</a></span></li><li><span class="module"><a href="RegAlloc-Graph-Main.html">RegAlloc.Graph.Main</a></span></li><li><span class="module"><a href="RegAlloc-Graph-Spill.html">RegAlloc.Graph.Spill</a></span></li><li><span class="module"><a href="RegAlloc-Graph-SpillClean.html">RegAlloc.Graph.SpillClean</a></span></li><li><span class="module"><a href="RegAlloc-Graph-SpillCost.html">RegAlloc.Graph.SpillCost</a></span></li><li><span class="module"><a href="RegAlloc-Graph-Stats.html">RegAlloc.Graph.Stats</a></span></li><li><span class="module"><a href="RegAlloc-Graph-TrivColorable.html">RegAlloc.Graph.TrivColorable</a></span></li></ul></li><li><span id="control.n.227.2" class="module collapser" onclick="toggleSection('n.227.2')">Linear</span><ul id="section.n.227.2" class="show"><li><span class="module"><a href="RegAlloc-Linear-Base.html">RegAlloc.Linear.Base</a></span></li><li><span class="module"><a href="RegAlloc-Linear-FreeRegs.html">RegAlloc.Linear.FreeRegs</a></span></li><li><span class="module"><a href="RegAlloc-Linear-JoinToTargets.html">RegAlloc.Linear.JoinToTargets</a></span></li><li><span class="module"><a href="RegAlloc-Linear-Main.html">RegAlloc.Linear.Main</a></span></li><li><span id="control.n.227.2.5" class="module collapser" onclick="toggleSection('n.227.2.5')">PPC</span><ul id="section.n.227.2.5" class="show"><li><span class="module"><a href="RegAlloc-Linear-PPC-FreeRegs.html">RegAlloc.Linear.PPC.FreeRegs</a></span></li></ul></li><li><span id="control.n.227.2.6" class="module collapser" onclick="toggleSection('n.227.2.6')">SPARC</span><ul id="section.n.227.2.6" class="show"><li><span class="module"><a href="RegAlloc-Linear-SPARC-FreeRegs.html">RegAlloc.Linear.SPARC.FreeRegs</a></span></li></ul></li><li><span class="module"><a href="RegAlloc-Linear-StackMap.html">RegAlloc.Linear.StackMap</a></span></li><li><span class="module"><a href="RegAlloc-Linear-State.html">RegAlloc.Linear.State</a></span></li><li><span class="module"><a href="RegAlloc-Linear-Stats.html">RegAlloc.Linear.Stats</a></span></li><li><span id="control.n.227.2.10" class="module collapser" onclick="toggleSection('n.227.2.10')">X86</span><ul id="section.n.227.2.10" class="show"><li><span class="module"><a href="RegAlloc-Linear-X86-FreeRegs.html">RegAlloc.Linear.X86.FreeRegs</a></span></li></ul></li></ul></li><li><span class="module"><a href="RegAlloc-Liveness.html">RegAlloc.Liveness</a></span></li></ul></li><li><span class="module"><a href="RegClass.html">RegClass</a></span></li><li><span class="module"><a href="RnBinds.html">RnBinds</a></span></li><li><span class="module"><a href="RnEnv.html">RnEnv</a></span></li><li><span class="module"><a href="RnExpr.html">RnExpr</a></span></li><li><span class="module"><a href="RnHsDoc.html">RnHsDoc</a></span></li><li><span class="module"><a href="RnHsSyn.html">RnHsSyn</a></span></li><li><span class="module"><a href="RnNames.html">RnNames</a></span></li><li><span class="module"><a href="RnPat.html">RnPat</a></span></li><li><span class="module"><a href="RnSource.html">RnSource</a></span></li><li><span class="module"><a href="RnTypes.html">RnTypes</a></span></li><li><span class="module"><a href="RtClosureInspect.html">RtClosureInspect</a></span></li><li><span class="module"><a href="Rules.html">Rules</a></span></li><li><span class="module"><a href="SAT.html">SAT</a></span></li><li><span class="module"><a href="SCCfinal.html">SCCfinal</a></span></li><li><span class="module"><a href="SMRep.html">SMRep</a></span></li><li><span id="control.n.243" class="module collapser" onclick="toggleSection('n.243')">SPARC</span><ul id="section.n.243" class="show"><li><span class="module"><a href="SPARC-AddrMode.html">SPARC.AddrMode</a></span></li><li><span class="module"><a href="SPARC-Base.html">SPARC.Base</a></span></li><li><span class="module"><span id="control.n.243.3" class="collapser" onclick="toggleSection('n.243.3')"> </span><a href="SPARC-CodeGen.html">SPARC.CodeGen</a></span><ul id="section.n.243.3" class="show"><li><span class="module"><a href="SPARC-CodeGen-Amode.html">SPARC.CodeGen.Amode</a></span></li><li><span class="module"><a href="SPARC-CodeGen-Base.html">SPARC.CodeGen.Base</a></span></li><li><span class="module"><a href="SPARC-CodeGen-CCall.html">SPARC.CodeGen.CCall</a></span></li><li><span class="module"><a href="SPARC-CodeGen-CondCode.html">SPARC.CodeGen.CondCode</a></span></li><li><span class="module"><a href="SPARC-CodeGen-Expand.html">SPARC.CodeGen.Expand</a></span></li><li><span class="module"><a href="SPARC-CodeGen-Gen32.html">SPARC.CodeGen.Gen32</a></span></li><li><span class="module"><a href="SPARC-CodeGen-Gen64.html">SPARC.CodeGen.Gen64</a></span></li><li><span class="module"><a href="SPARC-CodeGen-Sanity.html">SPARC.CodeGen.Sanity</a></span></li></ul></li><li><span class="module"><a href="SPARC-Cond.html">SPARC.Cond</a></span></li><li><span class="module"><a href="SPARC-Imm.html">SPARC.Imm</a></span></li><li><span class="module"><a href="SPARC-Instr.html">SPARC.Instr</a></span></li><li><span class="module"><a href="SPARC-Ppr.html">SPARC.Ppr</a></span></li><li><span class="module"><a href="SPARC-RegPlate.html">SPARC.RegPlate</a></span></li><li><span class="module"><a href="SPARC-Regs.html">SPARC.Regs</a></span></li><li><span class="module"><a href="SPARC-ShortcutJump.html">SPARC.ShortcutJump</a></span></li><li><span class="module"><a href="SPARC-Stack.html">SPARC.Stack</a></span></li></ul></li><li><span class="module"><a href="SRT.html">SRT</a></span></li><li><span class="module"><a href="Serialized.html">Serialized</a></span></li><li><span class="module"><a href="SetLevels.html">SetLevels</a></span></li><li><span class="module"><a href="SimplCore.html">SimplCore</a></span></li><li><span class="module"><a href="SimplEnv.html">SimplEnv</a></span></li><li><span class="module"><a href="SimplMonad.html">SimplMonad</a></span></li><li><span class="module"><a href="SimplStg.html">SimplStg</a></span></li><li><span class="module"><a href="SimplUtils.html">SimplUtils</a></span></li><li><span class="module"><a href="Simplify.html">Simplify</a></span></li><li><span class="module"><a href="Size.html">Size</a></span></li><li><span class="module"><a href="SpecConstr.html">SpecConstr</a></span></li><li><span class="module"><a href="Specialise.html">Specialise</a></span></li><li><span class="module"><a href="SrcLoc.html">SrcLoc</a></span></li><li><span class="module"><a href="State.html">State</a></span></li><li><span class="module"><a href="StaticFlagParser.html">StaticFlagParser</a></span></li><li><span class="module"><a href="StaticFlags.html">StaticFlags</a></span></li><li><span class="module"><a href="StgCmm.html">StgCmm</a></span></li><li><span class="module"><a href="StgCmmBind.html">StgCmmBind</a></span></li><li><span class="module"><a href="StgCmmClosure.html">StgCmmClosure</a></span></li><li><span class="module"><a href="StgCmmCon.html">StgCmmCon</a></span></li><li><span class="module"><a href="StgCmmEnv.html">StgCmmEnv</a></span></li><li><span class="module"><a href="StgCmmExpr.html">StgCmmExpr</a></span></li><li><span class="module"><a href="StgCmmForeign.html">StgCmmForeign</a></span></li><li><span class="module"><a href="StgCmmGran.html">StgCmmGran</a></span></li><li><span class="module"><a href="StgCmmHeap.html">StgCmmHeap</a></span></li><li><span class="module"><a href="StgCmmHpc.html">StgCmmHpc</a></span></li><li><span class="module"><a href="StgCmmLayout.html">StgCmmLayout</a></span></li><li><span class="module"><a href="StgCmmMonad.html">StgCmmMonad</a></span></li><li><span class="module"><a href="StgCmmPrim.html">StgCmmPrim</a></span></li><li><span class="module"><a href="StgCmmProf.html">StgCmmProf</a></span></li><li><span class="module"><a href="StgCmmTicky.html">StgCmmTicky</a></span></li><li><span class="module"><a href="StgCmmUtils.html">StgCmmUtils</a></span></li><li><span class="module"><a href="StgLint.html">StgLint</a></span></li><li><span class="module"><a href="StgStats.html">StgStats</a></span></li><li><span class="module"><a href="StgSyn.html">StgSyn</a></span></li><li><span class="module"><a href="StringBuffer.html">StringBuffer</a></span></li><li><span class="module"><a href="SysTools.html">SysTools</a></span></li><li><span class="module"><a href="TargetReg.html">TargetReg</a></span></li><li><span class="module"><a href="TcAnnotations.html">TcAnnotations</a></span></li><li><span class="module"><a href="TcArrows.html">TcArrows</a></span></li><li><span class="module"><a href="TcBinds.html">TcBinds</a></span></li><li><span class="module"><a href="TcCanonical.html">TcCanonical</a></span></li><li><span class="module"><a href="TcClassDcl.html">TcClassDcl</a></span></li><li><span class="module"><a href="TcDefaults.html">TcDefaults</a></span></li><li><span class="module"><a href="TcDeriv.html">TcDeriv</a></span></li><li><span class="module"><a href="TcEnv.html">TcEnv</a></span></li><li><span class="module"><a href="TcErrors.html">TcErrors</a></span></li><li><span class="module"><a href="TcEvidence.html">TcEvidence</a></span></li><li><span class="module"><a href="TcExpr.html">TcExpr</a></span></li><li><span class="module"><a href="TcForeign.html">TcForeign</a></span></li><li><span class="module"><a href="TcGenDeriv.html">TcGenDeriv</a></span></li><li><span class="module"><a href="TcGenGenerics.html">TcGenGenerics</a></span></li><li><span class="module"><a href="TcHsSyn.html">TcHsSyn</a></span></li><li><span class="module"><a href="TcHsType.html">TcHsType</a></span></li><li><span class="module"><a href="TcIface.html">TcIface</a></span></li><li><span class="module"><a href="TcInstDcls.html">TcInstDcls</a></span></li><li><span class="module"><a href="TcInteract.html">TcInteract</a></span></li><li><span class="module"><a href="TcMType.html">TcMType</a></span></li><li><span class="module"><a href="TcMatches.html">TcMatches</a></span></li><li><span class="module"><a href="TcPat.html">TcPat</a></span></li><li><span class="module"><a href="TcRnDriver.html">TcRnDriver</a></span></li><li><span class="module"><a href="TcRnMonad.html">TcRnMonad</a></span></li><li><span class="module"><a href="TcRnTypes.html">TcRnTypes</a></span></li><li><span class="module"><a href="TcRules.html">TcRules</a></span></li><li><span class="module"><a href="TcSMonad.html">TcSMonad</a></span></li><li><span class="module"><a href="TcSimplify.html">TcSimplify</a></span></li><li><span class="module"><a href="TcSplice.html">TcSplice</a></span></li><li><span class="module"><a href="TcTyClsDecls.html">TcTyClsDecls</a></span></li><li><span class="module"><a href="TcTyDecls.html">TcTyDecls</a></span></li><li><span class="module"><a href="TcType.html">TcType</a></span></li><li><span class="module"><a href="TcUnify.html">TcUnify</a></span></li><li><span class="module"><a href="TidyPgm.html">TidyPgm</a></span></li><li><span class="module"><a href="TrieMap.html">TrieMap</a></span></li><li><span class="module"><a href="TyCon.html">TyCon</a></span></li><li><span class="module"><a href="Type.html">Type</a></span></li><li><span class="module"><a href="TysPrim.html">TysPrim</a></span></li><li><span class="module"><a href="TysWiredIn.html">TysWiredIn</a></span></li><li><span class="module"><a href="Unify.html">Unify</a></span></li><li><span class="module"><a href="UniqFM.html">UniqFM</a></span></li><li><span class="module"><a href="UniqSet.html">UniqSet</a></span></li><li><span class="module"><a href="UniqSupply.html">UniqSupply</a></span></li><li><span class="module"><a href="Unique.html">Unique</a></span></li><li><span class="module"><a href="Util.html">Util</a></span></li><li><span class="module"><a href="Var.html">Var</a></span></li><li><span class="module"><a href="VarEnv.html">VarEnv</a></span></li><li><span class="module"><a href="VarSet.html">VarSet</a></span></li><li><span class="module"><span id="control.n.330" class="collapser" onclick="toggleSection('n.330')"> </span><a href="Vectorise.html">Vectorise</a></span><ul id="section.n.330" class="show"><li><span class="module"><span id="control.n.330.1" class="collapser" onclick="toggleSection('n.330.1')"> </span><a href="Vectorise-Builtins.html">Vectorise.Builtins</a></span><ul id="section.n.330.1" class="show"><li><span class="module"><a href="Vectorise-Builtins-Base.html">Vectorise.Builtins.Base</a></span></li><li><span class="module"><a href="Vectorise-Builtins-Initialise.html">Vectorise.Builtins.Initialise</a></span></li></ul></li><li><span class="module"><a href="Vectorise-Convert.html">Vectorise.Convert</a></span></li><li><span class="module"><a href="Vectorise-Env.html">Vectorise.Env</a></span></li><li><span class="module"><a href="Vectorise-Exp.html">Vectorise.Exp</a></span></li><li><span id="control.n.330.5" class="module collapser" onclick="toggleSection('n.330.5')">Generic</span><ul id="section.n.330.5" class="show"><li><span class="module"><a href="Vectorise-Generic-Description.html">Vectorise.Generic.Description</a></span></li><li><span class="module"><a href="Vectorise-Generic-PADict.html">Vectorise.Generic.PADict</a></span></li><li><span class="module"><a href="Vectorise-Generic-PAMethods.html">Vectorise.Generic.PAMethods</a></span></li><li><span class="module"><a href="Vectorise-Generic-PData.html">Vectorise.Generic.PData</a></span></li></ul></li><li><span class="module"><span id="control.n.330.6" class="collapser" onclick="toggleSection('n.330.6')"> </span><a href="Vectorise-Monad.html">Vectorise.Monad</a></span><ul id="section.n.330.6" class="show"><li><span class="module"><a href="Vectorise-Monad-Base.html">Vectorise.Monad.Base</a></span></li><li><span class="module"><a href="Vectorise-Monad-Global.html">Vectorise.Monad.Global</a></span></li><li><span class="module"><a href="Vectorise-Monad-InstEnv.html">Vectorise.Monad.InstEnv</a></span></li><li><span class="module"><a href="Vectorise-Monad-Local.html">Vectorise.Monad.Local</a></span></li><li><span class="module"><a href="Vectorise-Monad-Naming.html">Vectorise.Monad.Naming</a></span></li></ul></li><li><span id="control.n.330.7" class="module collapser" onclick="toggleSection('n.330.7')">Type</span><ul id="section.n.330.7" class="show"><li><span class="module"><a href="Vectorise-Type-Classify.html">Vectorise.Type.Classify</a></span></li><li><span class="module"><a href="Vectorise-Type-Env.html">Vectorise.Type.Env</a></span></li><li><span class="module"><a href="Vectorise-Type-TyConDecl.html">Vectorise.Type.TyConDecl</a></span></li><li><span class="module"><a href="Vectorise-Type-Type.html">Vectorise.Type.Type</a></span></li></ul></li><li><span class="module"><span id="control.n.330.8" class="collapser" onclick="toggleSection('n.330.8')"> </span><a href="Vectorise-Utils.html">Vectorise.Utils</a></span><ul id="section.n.330.8" class="show"><li><span class="module"><a href="Vectorise-Utils-Base.html">Vectorise.Utils.Base</a></span></li><li><span class="module"><a href="Vectorise-Utils-Closure.html">Vectorise.Utils.Closure</a></span></li><li><span class="module"><a href="Vectorise-Utils-Hoisting.html">Vectorise.Utils.Hoisting</a></span></li><li><span class="module"><a href="Vectorise-Utils-PADict.html">Vectorise.Utils.PADict</a></span></li><li><span class="module"><a href="Vectorise-Utils-Poly.html">Vectorise.Utils.Poly</a></span></li></ul></li><li><span class="module"><a href="Vectorise-Var.html">Vectorise.Var</a></span></li><li><span class="module"><a href="Vectorise-Vect.html">Vectorise.Vect</a></span></li></ul></li><li><span class="module"><a href="WorkWrap.html">WorkWrap</a></span></li><li><span class="module"><a href="WwLib.html">WwLib</a></span></li><li><span id="control.n.333" class="module collapser" onclick="toggleSection('n.333')">X86</span><ul id="section.n.333" class="show"><li><span class="module"><a href="X86-CodeGen.html">X86.CodeGen</a></span></li><li><span class="module"><a href="X86-Cond.html">X86.Cond</a></span></li><li><span class="module"><a href="X86-Instr.html">X86.Instr</a></span></li><li><span class="module"><a href="X86-Ppr.html">X86.Ppr</a></span></li><li><span class="module"><a href="X86-RegInfo.html">X86.RegInfo</a></span></li><li><span class="module"><a href="X86-Regs.html">X86.Regs</a></span></li></ul></li></ul></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.11.0</p></div></body></html>