Sophie

Sophie

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

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>PPC.Regs</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_PPC-Regs.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">PPC.Regs</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"><a href="#v:virtualRegSqueeze">virtualRegSqueeze</a> :: <a href="RegClass.html#t:RegClass">RegClass</a> -&gt; <a href="Reg.html#t:VirtualReg">VirtualReg</a> -&gt; <a href="FastTypes.html#t:FastInt">FastInt</a></li><li class="src short"><a href="#v:realRegSqueeze">realRegSqueeze</a> :: <a href="RegClass.html#t:RegClass">RegClass</a> -&gt; <a href="Reg.html#t:RealReg">RealReg</a> -&gt; <a href="FastTypes.html#t:FastInt">FastInt</a></li><li class="src short"><a href="#v:mkVirtualReg">mkVirtualReg</a> :: <a href="Unique.html#t:Unique">Unique</a> -&gt; <a href="Size.html#t:Size">Size</a> -&gt; <a href="Reg.html#t:VirtualReg">VirtualReg</a></li><li class="src short"><a href="#v:regDotColor">regDotColor</a> :: <a href="Reg.html#t:RealReg">RealReg</a> -&gt; <a href="Outputable.html#t:SDoc">SDoc</a></li><li class="src short"><span class="keyword">data</span>  <a href="#t:Imm">Imm</a> <ul class="subs"><li>= <a href="#v:ImmInt">ImmInt</a> <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a>  </li><li>| <a href="#v:ImmInteger">ImmInteger</a> <a href="../base-4.5.1.0/Prelude.html#t:Integer">Integer</a>  </li><li>| <a href="#v:ImmCLbl">ImmCLbl</a> <a href="CLabel.html#t:CLabel">CLabel</a>  </li><li>| <a href="#v:ImmLit">ImmLit</a> <a href="Pretty.html#t:Doc">Doc</a>  </li><li>| <a href="#v:ImmIndex">ImmIndex</a> <a href="CLabel.html#t:CLabel">CLabel</a> <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a>  </li><li>| <a href="#v:ImmFloat">ImmFloat</a> <a href="../base-4.5.1.0/Prelude.html#t:Rational">Rational</a>  </li><li>| <a href="#v:ImmDouble">ImmDouble</a> <a href="../base-4.5.1.0/Prelude.html#t:Rational">Rational</a>  </li><li>| <a href="#v:ImmConstantSum">ImmConstantSum</a> <a href="PPC-Regs.html#t:Imm">Imm</a> <a href="PPC-Regs.html#t:Imm">Imm</a>  </li><li>| <a href="#v:ImmConstantDiff">ImmConstantDiff</a> <a href="PPC-Regs.html#t:Imm">Imm</a> <a href="PPC-Regs.html#t:Imm">Imm</a>  </li><li>| <a href="#v:LO">LO</a> <a href="PPC-Regs.html#t:Imm">Imm</a>  </li><li>| <a href="#v:HI">HI</a> <a href="PPC-Regs.html#t:Imm">Imm</a>  </li><li>| <a href="#v:HA">HA</a> <a href="PPC-Regs.html#t:Imm">Imm</a>  </li></ul></li><li class="src short"><a href="#v:strImmLit">strImmLit</a> :: <a href="../base-4.5.1.0/Data-String.html#t:String">String</a> -&gt; <a href="PPC-Regs.html#t:Imm">Imm</a></li><li class="src short"><a href="#v:litToImm">litToImm</a> :: <a href="CmmExpr.html#t:CmmLit">CmmLit</a> -&gt; <a href="PPC-Regs.html#t:Imm">Imm</a></li><li class="src short"><span class="keyword">data</span>  <a href="#t:AddrMode">AddrMode</a> <ul class="subs"><li>= <a href="#v:AddrRegReg">AddrRegReg</a> <a href="Reg.html#t:Reg">Reg</a> <a href="Reg.html#t:Reg">Reg</a>  </li><li>| <a href="#v:AddrRegImm">AddrRegImm</a> <a href="Reg.html#t:Reg">Reg</a> <a href="PPC-Regs.html#t:Imm">Imm</a>  </li></ul></li><li class="src short"><a href="#v:addrOffset">addrOffset</a> :: <a href="PPC-Regs.html#t:AddrMode">AddrMode</a> -&gt; <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="PPC-Regs.html#t:AddrMode">AddrMode</a></li><li class="src short"><a href="#v:spRel">spRel</a> :: <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="PPC-Regs.html#t:AddrMode">AddrMode</a></li><li class="src short"><a href="#v:argRegs">argRegs</a> :: <a href="Reg.html#t:RegNo">RegNo</a> -&gt; [<a href="Reg.html#t:Reg">Reg</a>]</li><li class="src short"><a href="#v:allArgRegs">allArgRegs</a> :: [<a href="Reg.html#t:Reg">Reg</a>]</li><li class="src short"><a href="#v:callClobberedRegs">callClobberedRegs</a> :: [<a href="Reg.html#t:Reg">Reg</a>]</li><li class="src short"><a href="#v:allMachRegNos">allMachRegNos</a> :: [<a href="Reg.html#t:RegNo">RegNo</a>]</li><li class="src short"><a href="#v:classOfRealReg">classOfRealReg</a> :: <a href="Reg.html#t:RealReg">RealReg</a> -&gt; <a href="RegClass.html#t:RegClass">RegClass</a></li><li class="src short"><a href="#v:showReg">showReg</a> :: <a href="Reg.html#t:RegNo">RegNo</a> -&gt; <a href="../base-4.5.1.0/Data-String.html#t:String">String</a></li><li class="src short"><a href="#v:allFPArgRegs">allFPArgRegs</a> :: [<a href="Reg.html#t:Reg">Reg</a>]</li><li class="src short"><a href="#v:fits16Bits">fits16Bits</a> :: <a href="../base-4.5.1.0/Prelude.html#t:Integral">Integral</a> a =&gt; a -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:makeImmediate">makeImmediate</a> :: <a href="../base-4.5.1.0/Prelude.html#t:Integral">Integral</a> a =&gt; <a href="CmmType.html#t:Width">Width</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; a -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="PPC-Regs.html#t:Imm">Imm</a></li><li class="src short"><a href="#v:fReg">fReg</a> :: <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Reg.html#t:RegNo">RegNo</a></li><li class="src short"><a href="#v:sp">sp</a> :: <a href="Reg.html#t:Reg">Reg</a></li><li class="src short"><a href="#v:r3">r3</a> :: <a href="Reg.html#t:Reg">Reg</a></li><li class="src short"><a href="#v:r4">r4</a> :: <a href="Reg.html#t:Reg">Reg</a></li><li class="src short"><a href="#v:r27">r27</a> :: <a href="Reg.html#t:Reg">Reg</a></li><li class="src short"><a href="#v:r28">r28</a> :: <a href="Reg.html#t:Reg">Reg</a></li><li class="src short"><a href="#v:f1">f1</a> :: <a href="Reg.html#t:Reg">Reg</a></li><li class="src short"><a href="#v:f20">f20</a> :: <a href="Reg.html#t:Reg">Reg</a></li><li class="src short"><a href="#v:f21">f21</a> :: <a href="Reg.html#t:Reg">Reg</a></li><li class="src short"><a href="#v:freeReg">freeReg</a> :: <a href="Reg.html#t:RegNo">RegNo</a> -&gt; <a href="FastBool.html#t:FastBool">FastBool</a></li><li class="src short"><a href="#v:globalRegMaybe">globalRegMaybe</a> :: <a href="CmmExpr.html#t:GlobalReg">GlobalReg</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Reg.html#t:Reg">Reg</a></li><li class="src short"><a href="#v:allocatableRegs">allocatableRegs</a> :: [<a href="Reg.html#t:RealReg">RealReg</a>]</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:virtualRegSqueeze" class="def">virtualRegSqueeze</a> :: <a href="RegClass.html#t:RegClass">RegClass</a> -&gt; <a href="Reg.html#t:VirtualReg">VirtualReg</a> -&gt; <a href="FastTypes.html#t:FastInt">FastInt</a></p><div class="doc"><p>regSqueeze_class reg
	Calculuate the maximum number of register colors that could be
	denied to a node of this class due to having this reg 
	as a neighbour.
</p></div></div><div class="top"><p class="src"><a name="v:realRegSqueeze" class="def">realRegSqueeze</a> :: <a href="RegClass.html#t:RegClass">RegClass</a> -&gt; <a href="Reg.html#t:RealReg">RealReg</a> -&gt; <a href="FastTypes.html#t:FastInt">FastInt</a></p></div><div class="top"><p class="src"><a name="v:mkVirtualReg" class="def">mkVirtualReg</a> :: <a href="Unique.html#t:Unique">Unique</a> -&gt; <a href="Size.html#t:Size">Size</a> -&gt; <a href="Reg.html#t:VirtualReg">VirtualReg</a></p></div><div class="top"><p class="src"><a name="v:regDotColor" class="def">regDotColor</a> :: <a href="Reg.html#t:RealReg">RealReg</a> -&gt; <a href="Outputable.html#t:SDoc">SDoc</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:Imm" class="def">Imm</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:ImmInt" class="def">ImmInt</a> <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:ImmInteger" class="def">ImmInteger</a> <a href="../base-4.5.1.0/Prelude.html#t:Integer">Integer</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:ImmCLbl" class="def">ImmCLbl</a> <a href="CLabel.html#t:CLabel">CLabel</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:ImmLit" class="def">ImmLit</a> <a href="Pretty.html#t:Doc">Doc</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:ImmIndex" class="def">ImmIndex</a> <a href="CLabel.html#t:CLabel">CLabel</a> <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:ImmFloat" class="def">ImmFloat</a> <a href="../base-4.5.1.0/Prelude.html#t:Rational">Rational</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:ImmDouble" class="def">ImmDouble</a> <a href="../base-4.5.1.0/Prelude.html#t:Rational">Rational</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:ImmConstantSum" class="def">ImmConstantSum</a> <a href="PPC-Regs.html#t:Imm">Imm</a> <a href="PPC-Regs.html#t:Imm">Imm</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:ImmConstantDiff" class="def">ImmConstantDiff</a> <a href="PPC-Regs.html#t:Imm">Imm</a> <a href="PPC-Regs.html#t:Imm">Imm</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:LO" class="def">LO</a> <a href="PPC-Regs.html#t:Imm">Imm</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:HI" class="def">HI</a> <a href="PPC-Regs.html#t:Imm">Imm</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:HA" class="def">HA</a> <a href="PPC-Regs.html#t:Imm">Imm</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><a name="v:strImmLit" class="def">strImmLit</a> :: <a href="../base-4.5.1.0/Data-String.html#t:String">String</a> -&gt; <a href="PPC-Regs.html#t:Imm">Imm</a></p></div><div class="top"><p class="src"><a name="v:litToImm" class="def">litToImm</a> :: <a href="CmmExpr.html#t:CmmLit">CmmLit</a> -&gt; <a href="PPC-Regs.html#t:Imm">Imm</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:AddrMode" class="def">AddrMode</a>  </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:AddrRegReg" class="def">AddrRegReg</a> <a href="Reg.html#t:Reg">Reg</a> <a href="Reg.html#t:Reg">Reg</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a name="v:AddrRegImm" class="def">AddrRegImm</a> <a href="Reg.html#t:Reg">Reg</a> <a href="PPC-Regs.html#t:Imm">Imm</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><a name="v:addrOffset" class="def">addrOffset</a> :: <a href="PPC-Regs.html#t:AddrMode">AddrMode</a> -&gt; <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="PPC-Regs.html#t:AddrMode">AddrMode</a></p></div><div class="top"><p class="src"><a name="v:spRel" class="def">spRel</a> :: <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="PPC-Regs.html#t:AddrMode">AddrMode</a></p></div><div class="top"><p class="src"><a name="v:argRegs" class="def">argRegs</a> :: <a href="Reg.html#t:RegNo">RegNo</a> -&gt; [<a href="Reg.html#t:Reg">Reg</a>]</p></div><div class="top"><p class="src"><a name="v:allArgRegs" class="def">allArgRegs</a> :: [<a href="Reg.html#t:Reg">Reg</a>]</p></div><div class="top"><p class="src"><a name="v:callClobberedRegs" class="def">callClobberedRegs</a> :: [<a href="Reg.html#t:Reg">Reg</a>]</p></div><div class="top"><p class="src"><a name="v:allMachRegNos" class="def">allMachRegNos</a> :: [<a href="Reg.html#t:RegNo">RegNo</a>]</p></div><div class="top"><p class="src"><a name="v:classOfRealReg" class="def">classOfRealReg</a> :: <a href="Reg.html#t:RealReg">RealReg</a> -&gt; <a href="RegClass.html#t:RegClass">RegClass</a></p></div><div class="top"><p class="src"><a name="v:showReg" class="def">showReg</a> :: <a href="Reg.html#t:RegNo">RegNo</a> -&gt; <a href="../base-4.5.1.0/Data-String.html#t:String">String</a></p></div><div class="top"><p class="src"><a name="v:allFPArgRegs" class="def">allFPArgRegs</a> :: [<a href="Reg.html#t:Reg">Reg</a>]</p></div><div class="top"><p class="src"><a name="v:fits16Bits" class="def">fits16Bits</a> :: <a href="../base-4.5.1.0/Prelude.html#t:Integral">Integral</a> a =&gt; a -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:makeImmediate" class="def">makeImmediate</a> :: <a href="../base-4.5.1.0/Prelude.html#t:Integral">Integral</a> a =&gt; <a href="CmmType.html#t:Width">Width</a> -&gt; <a href="../base-4.5.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; a -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="PPC-Regs.html#t:Imm">Imm</a></p></div><div class="top"><p class="src"><a name="v:fReg" class="def">fReg</a> :: <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Reg.html#t:RegNo">RegNo</a></p></div><div class="top"><p class="src"><a name="v:sp" class="def">sp</a> :: <a href="Reg.html#t:Reg">Reg</a></p></div><div class="top"><p class="src"><a name="v:r3" class="def">r3</a> :: <a href="Reg.html#t:Reg">Reg</a></p></div><div class="top"><p class="src"><a name="v:r4" class="def">r4</a> :: <a href="Reg.html#t:Reg">Reg</a></p></div><div class="top"><p class="src"><a name="v:r27" class="def">r27</a> :: <a href="Reg.html#t:Reg">Reg</a></p></div><div class="top"><p class="src"><a name="v:r28" class="def">r28</a> :: <a href="Reg.html#t:Reg">Reg</a></p></div><div class="top"><p class="src"><a name="v:f1" class="def">f1</a> :: <a href="Reg.html#t:Reg">Reg</a></p></div><div class="top"><p class="src"><a name="v:f20" class="def">f20</a> :: <a href="Reg.html#t:Reg">Reg</a></p></div><div class="top"><p class="src"><a name="v:f21" class="def">f21</a> :: <a href="Reg.html#t:Reg">Reg</a></p></div><div class="top"><p class="src"><a name="v:freeReg" class="def">freeReg</a> :: <a href="Reg.html#t:RegNo">RegNo</a> -&gt; <a href="FastBool.html#t:FastBool">FastBool</a></p></div><div class="top"><p class="src"><a name="v:globalRegMaybe" class="def">globalRegMaybe</a> :: <a href="CmmExpr.html#t:GlobalReg">GlobalReg</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Reg.html#t:Reg">Reg</a></p></div><div class="top"><p class="src"><a name="v:allocatableRegs" class="def">allocatableRegs</a> :: [<a href="Reg.html#t:RealReg">RealReg</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>