Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-release > by-pkgid > 6e204a966e8c42d976f99a1700ce5f20 > files > 2948

ghc-7.4.2-4.mga5.i586.rpm

<!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>MkGraph</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();setSynopsis("mini_MkGraph.html");};
//]]>
</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="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">MkGraph</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">type</span> <a href="#t:CmmAGraph">CmmAGraph</a> = <a href="UniqSupply.html#t:UniqSM">UniqSM</a> CmmGraphOC</li><li class="src short"><a href="#v:emptyAGraph">emptyAGraph</a> :: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:-60--42--62-">(&lt;*&gt;)</a> :: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:catAGraphs">catAGraphs</a> :: [<a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>] -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:outOfLine">outOfLine</a> :: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkLabel">mkLabel</a> :: <a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkMiddle">mkMiddle</a> :: <a href="CmmNode.html#t:CmmNode">CmmNode</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkLast">mkLast</a> :: <a href="CmmNode.html#t:CmmNode">CmmNode</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:C">C</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:withFreshLabel">withFreshLabel</a> :: <a href="../base-4.5.1.0/Data-String.html#t:String">String</a> -&gt; (<a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>) -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:withUnique">withUnique</a> :: (<a href="Unique.html#t:Unique">Unique</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>) -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:lgraphOfAGraph">lgraphOfAGraph</a> :: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="UniqSupply.html#t:UniqSM">UniqSM</a> <a href="Cmm.html#t:CmmGraph">CmmGraph</a></li><li class="src short"><a href="#v:labelAGraph">labelAGraph</a> :: <a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="UniqSupply.html#t:UniqSM">UniqSM</a> <a href="Cmm.html#t:CmmGraph">CmmGraph</a></li><li class="src short"><a href="#v:stackStubExpr">stackStubExpr</a> :: <a href="CmmType.html#t:Width">Width</a> -&gt; <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a></li><li class="src short"><a href="#v:mkNop">mkNop</a> :: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkAssign">mkAssign</a> :: <a href="CmmExpr.html#t:CmmReg">CmmReg</a> -&gt; <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkStore">mkStore</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkCall">mkCall</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; (<a href="CmmNode.html#t:Convention">Convention</a>, <a href="CmmNode.html#t:Convention">Convention</a>) -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkCmmCall">mkCmmCall</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkSafeCall">mkSafeCall</a> :: <a href="CmmNode.html#t:ForeignTarget">ForeignTarget</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkUnsafeCall">mkUnsafeCall</a> :: <a href="CmmNode.html#t:ForeignTarget">ForeignTarget</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkFinalCall">mkFinalCall</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="ForeignCall.html#t:CCallConv">CCallConv</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkJump">mkJump</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkDirectJump">mkDirectJump</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkForeignJump">mkForeignJump</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkJumpGC">mkJumpGC</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkCbranch">mkCbranch</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkSwitch">mkSwitch</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="BlockId.html#t:BlockId">BlockId</a>] -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkReturn">mkReturn</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkReturnSimple">mkReturnSimple</a> :: [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkComment">mkComment</a> :: <a href="FastString.html#t:FastString">FastString</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkCallEntry">mkCallEntry</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; (<a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a>, <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>)</li><li class="src short"><a href="#v:mkBranch">mkBranch</a> :: <a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkCmmIfThenElse">mkCmmIfThenElse</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkCmmIfThen">mkCmmIfThen</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:mkCmmWhileDo">mkCmmWhileDo</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></li><li class="src short"><a href="#v:copyInOflow">copyInOflow</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; <a href="CmmExpr.html#t:Area">Area</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; (<a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a>, <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>)</li><li class="src short"><a href="#v:copyInSlot">copyInSlot</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmNode">CmmNode</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a>]</li><li class="src short"><a href="#v:copyOutOflow">copyOutOflow</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; Transfer -&gt; <a href="CmmExpr.html#t:Area">Area</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; (<a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a>, <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>)</li><li class="src short"><a href="#v:copyOutSlot">copyOutSlot</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; [<a href="CmmExpr.html#t:LocalReg">LocalReg</a>] -&gt; [<a href="CmmNode.html#t:CmmNode">CmmNode</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a>]</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:CmmAGraph" class="def">CmmAGraph</a> = <a href="UniqSupply.html#t:UniqSM">UniqSM</a> CmmGraphOC</p></div><div class="top"><p class="src"><a name="v:emptyAGraph" class="def">emptyAGraph</a> :: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:-60--42--62-" class="def">(&lt;*&gt;)</a> :: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:catAGraphs" class="def">catAGraphs</a> :: [<a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>] -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:outOfLine" class="def">outOfLine</a> :: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p><div class="doc"><p>The argument is an CmmAGraph that must have an
 empty entry sequence and be closed at the end.
 The result is a new CmmAGraph that is open at the
 end and goes directly from entry to exit, with the
 original graph sitting to the side out-of-line.
</p><p>Example:  mkMiddle (x = 3)
           <a href="*">*</a> outOfLine (mkLabel L <a href="*">*</a> ...stuff...)
           <a href="*">*</a> mkMiddle (y = x)
 Control will flow directly from x=3 to y=x;
 the block starting with L is <a href="on the side.html">on the side</a>.
</p><p>N.B. algebraically forall g g' : g <a href="*">*</a> outOfLine g' == outOfLine g' <a href="*">*</a> g
</p></div></div><div class="top"><p class="src"><a name="v:mkLabel" class="def">mkLabel</a> :: <a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkMiddle" class="def">mkMiddle</a> :: <a href="CmmNode.html#t:CmmNode">CmmNode</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkLast" class="def">mkLast</a> :: <a href="CmmNode.html#t:CmmNode">CmmNode</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:C">C</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:withFreshLabel" class="def">withFreshLabel</a> :: <a href="../base-4.5.1.0/Data-String.html#t:String">String</a> -&gt; (<a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>) -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:withUnique" class="def">withUnique</a> :: (<a href="Unique.html#t:Unique">Unique</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>) -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:lgraphOfAGraph" class="def">lgraphOfAGraph</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="UniqSupply.html#t:UniqSM">UniqSM</a> <a href="Cmm.html#t:CmmGraph">CmmGraph</a></td><td class="doc"><p>allocate a fresh label for the entry point
</p></td></tr></table></div></div><div class="top"><p class="src"><a name="v:labelAGraph" class="def">labelAGraph</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="BlockId.html#t:BlockId">BlockId</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="UniqSupply.html#t:UniqSM">UniqSM</a> <a href="Cmm.html#t:CmmGraph">CmmGraph</a></td><td class="doc"><p>use the given BlockId as the label of the entry point
</p></td></tr></table></div></div><div class="top"><p class="src"><a name="v:stackStubExpr" class="def">stackStubExpr</a> :: <a href="CmmType.html#t:Width">Width</a> -&gt; <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a></p></div><div class="top"><p class="src"><a name="v:mkNop" class="def">mkNop</a> :: <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkAssign" class="def">mkAssign</a> :: <a href="CmmExpr.html#t:CmmReg">CmmReg</a> -&gt; <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkStore" class="def">mkStore</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkCall" class="def">mkCall</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; (<a href="CmmNode.html#t:Convention">Convention</a>, <a href="CmmNode.html#t:Convention">Convention</a>) -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkCmmCall" class="def">mkCmmCall</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkSafeCall" class="def">mkSafeCall</a> :: <a href="CmmNode.html#t:ForeignTarget">ForeignTarget</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkUnsafeCall" class="def">mkUnsafeCall</a> :: <a href="CmmNode.html#t:ForeignTarget">ForeignTarget</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkFinalCall" class="def">mkFinalCall</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="ForeignCall.html#t:CCallConv">CCallConv</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkJump" class="def">mkJump</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkDirectJump" class="def">mkDirectJump</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkForeignJump" class="def">mkForeignJump</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkJumpGC" class="def">mkJumpGC</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkCbranch" class="def">mkCbranch</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkSwitch" class="def">mkSwitch</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="BlockId.html#t:BlockId">BlockId</a>] -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkReturn" class="def">mkReturn</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkReturnSimple" class="def">mkReturnSimple</a> :: [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkComment" class="def">mkComment</a> :: <a href="FastString.html#t:FastString">FastString</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkCallEntry" class="def">mkCallEntry</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; (<a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a>, <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>)</p></div><div class="top"><p class="src"><a name="v:mkBranch" class="def">mkBranch</a> :: <a href="BlockId.html#t:BlockId">BlockId</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkCmmIfThenElse" class="def">mkCmmIfThenElse</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkCmmIfThen" class="def">mkCmmIfThen</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:mkCmmWhileDo" class="def">mkCmmWhileDo</a> :: <a href="CmmExpr.html#t:CmmExpr">CmmExpr</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a> -&gt; <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a></p></div><div class="top"><p class="src"><a name="v:copyInOflow" class="def">copyInOflow</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; <a href="CmmExpr.html#t:Area">Area</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; (<a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a>, <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>)</p></div><div class="top"><p class="src"><a name="v:copyInSlot" class="def">copyInSlot</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; [<a href="CmmNode.html#t:CmmFormal">CmmFormal</a>] -&gt; [<a href="CmmNode.html#t:CmmNode">CmmNode</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a>]</p></div><div class="top"><p class="src"><a name="v:copyOutOflow" class="def">copyOutOflow</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; Transfer -&gt; <a href="CmmExpr.html#t:Area">Area</a> -&gt; [<a href="CmmNode.html#t:CmmActual">CmmActual</a>] -&gt; <a href="CmmNode.html#t:UpdFrameOffset">UpdFrameOffset</a> -&gt; (<a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a>, <a href="MkGraph.html#t:CmmAGraph">CmmAGraph</a>)</p></div><div class="top"><p class="src"><a name="v:copyOutSlot" class="def">copyOutSlot</a> :: <a href="CmmNode.html#t:Convention">Convention</a> -&gt; [<a href="CmmExpr.html#t:LocalReg">LocalReg</a>] -&gt; [<a href="CmmNode.html#t:CmmNode">CmmNode</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a> <a href="../hoopl-3.8.7.3/Compiler-Hoopl.html#t:O">O</a>]</p></div></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>