Sophie

Sophie

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

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>LlvmCodeGen.Base</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_LlvmCodeGen-Base.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">LlvmCodeGen.Base</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Base LLVM Code Generation module
</p><p>Contains functions useful through out the code generator.
</p></div></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:LlvmCmmDecl">LlvmCmmDecl</a> = <a href="Cmm.html#t:GenCmmDecl">GenCmmDecl</a> [<a href="LlvmCodeGen-Base.html#t:LlvmData">LlvmData</a>] (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Cmm.html#t:CmmStatics">CmmStatics</a>) (<a href="OldCmm.html#t:ListGraph">ListGraph</a> <a href="Llvm-AbsSyn.html#t:LlvmStatement">LlvmStatement</a>)</li><li class="src short"><span class="keyword">type</span> <a href="#t:LlvmBasicBlock">LlvmBasicBlock</a> = <a href="OldCmm.html#t:GenBasicBlock">GenBasicBlock</a> <a href="Llvm-AbsSyn.html#t:LlvmStatement">LlvmStatement</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:LlvmUnresData">LlvmUnresData</a> = (<a href="CLabel.html#t:CLabel">CLabel</a>, <a href="Cmm.html#t:Section">Section</a>, <a href="Llvm-Types.html#t:LlvmType">LlvmType</a>, [<a href="LlvmCodeGen-Base.html#t:UnresStatic">UnresStatic</a>])</li><li class="src short"><span class="keyword">type</span> <a href="#t:LlvmData">LlvmData</a> = ([<a href="Llvm-Types.html#t:LMGlobal">LMGlobal</a>], [<a href="Llvm-Types.html#t:LlvmType">LlvmType</a>])</li><li class="src short"><span class="keyword">type</span> <a href="#t:UnresLabel">UnresLabel</a> = <a href="CmmExpr.html#t:CmmLit">CmmLit</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:UnresStatic">UnresStatic</a> = <a href="../base-4.5.1.0/Data-Either.html#t:Either">Either</a> <a href="LlvmCodeGen-Base.html#t:UnresLabel">UnresLabel</a> <a href="Llvm-Types.html#t:LlvmStatic">LlvmStatic</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:LlvmVersion">LlvmVersion</a> = <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a></li><li class="src short"><a href="#v:defaultLlvmVersion">defaultLlvmVersion</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmVersion">LlvmVersion</a></li><li class="src short"><span class="keyword">data</span>  <a href="#t:LlvmEnv">LlvmEnv</a> </li><li class="src short"><a href="#v:initLlvmEnv">initLlvmEnv</a> :: <a href="Platform.html#t:Platform">Platform</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></li><li class="src short"><a href="#v:clearVars">clearVars</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></li><li class="src short"><a href="#v:varLookup">varLookup</a> :: <a href="Unique.html#t:Uniquable">Uniquable</a> key =&gt; key -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></li><li class="src short"><a href="#v:varInsert">varInsert</a> :: <a href="Unique.html#t:Uniquable">Uniquable</a> key =&gt; key -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></li><li class="src short"><a href="#v:funLookup">funLookup</a> :: <a href="Unique.html#t:Uniquable">Uniquable</a> key =&gt; key -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></li><li class="src short"><a href="#v:funInsert">funInsert</a> :: <a href="Unique.html#t:Uniquable">Uniquable</a> key =&gt; key -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></li><li class="src short"><a href="#v:getLlvmVer">getLlvmVer</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmVersion">LlvmVersion</a></li><li class="src short"><a href="#v:setLlvmVer">setLlvmVer</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmVersion">LlvmVersion</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></li><li class="src short"><a href="#v:getLlvmPlatform">getLlvmPlatform</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="Platform.html#t:Platform">Platform</a></li><li class="src short"><a href="#v:ghcInternalFunctions">ghcInternalFunctions</a> :: [(<a href="Llvm-Types.html#t:LMString">LMString</a>, <a href="Llvm-Types.html#t:LlvmFunctionDecl">LlvmFunctionDecl</a>)]</li><li class="src short"><a href="#v:cmmToLlvmType">cmmToLlvmType</a> :: <a href="CmmType.html#t:CmmType">CmmType</a> -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></li><li class="src short"><a href="#v:widthToLlvmFloat">widthToLlvmFloat</a> :: <a href="CmmType.html#t:Width">Width</a> -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></li><li class="src short"><a href="#v:widthToLlvmInt">widthToLlvmInt</a> :: <a href="CmmType.html#t:Width">Width</a> -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></li><li class="src short"><a href="#v:llvmFunTy">llvmFunTy</a> :: <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></li><li class="src short"><a href="#v:llvmFunSig">llvmFunSig</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="CLabel.html#t:CLabel">CLabel</a> -&gt; <a href="Llvm-Types.html#t:LlvmLinkageType">LlvmLinkageType</a> -&gt; <a href="Llvm-Types.html#t:LlvmFunctionDecl">LlvmFunctionDecl</a></li><li class="src short"><a href="#v:llvmStdFunAttrs">llvmStdFunAttrs</a> :: [<a href="Llvm-Types.html#t:LlvmFuncAttr">LlvmFuncAttr</a>]</li><li class="src short"><a href="#v:llvmFunAlign">llvmFunAlign</a> :: <a href="Llvm-Types.html#t:LMAlign">LMAlign</a></li><li class="src short"><a href="#v:llvmInfAlign">llvmInfAlign</a> :: <a href="Llvm-Types.html#t:LMAlign">LMAlign</a></li><li class="src short"><a href="#v:llvmPtrBits">llvmPtrBits</a> :: <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a></li><li class="src short"><a href="#v:mkLlvmFunc">mkLlvmFunc</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="CLabel.html#t:CLabel">CLabel</a> -&gt; <a href="Llvm-Types.html#t:LlvmLinkageType">LlvmLinkageType</a> -&gt; <a href="Llvm-Types.html#t:LMSection">LMSection</a> -&gt; <a href="Llvm-AbsSyn.html#t:LlvmBlocks">LlvmBlocks</a> -&gt; <a href="Llvm-AbsSyn.html#t:LlvmFunction">LlvmFunction</a></li><li class="src short"><a href="#v:tysToParams">tysToParams</a> :: [<a href="Llvm-Types.html#t:LlvmType">LlvmType</a>] -&gt; [<a href="Llvm-Types.html#t:LlvmParameter">LlvmParameter</a>]</li><li class="src short"><a href="#v:strCLabel_llvm">strCLabel_llvm</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="CLabel.html#t:CLabel">CLabel</a> -&gt; <a href="Llvm-Types.html#t:LMString">LMString</a></li><li class="src short"><a href="#v:genCmmLabelRef">genCmmLabelRef</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="CLabel.html#t:CLabel">CLabel</a> -&gt; <a href="Llvm-Types.html#t:LMGlobal">LMGlobal</a></li><li class="src short"><a href="#v:genStringLabelRef">genStringLabelRef</a> :: <a href="Llvm-Types.html#t:LMString">LMString</a> -&gt; <a href="Llvm-Types.html#t:LMGlobal">LMGlobal</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:LlvmCmmDecl" class="def">LlvmCmmDecl</a> = <a href="Cmm.html#t:GenCmmDecl">GenCmmDecl</a> [<a href="LlvmCodeGen-Base.html#t:LlvmData">LlvmData</a>] (<a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Cmm.html#t:CmmStatics">CmmStatics</a>) (<a href="OldCmm.html#t:ListGraph">ListGraph</a> <a href="Llvm-AbsSyn.html#t:LlvmStatement">LlvmStatement</a>)</p></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:LlvmBasicBlock" class="def">LlvmBasicBlock</a> = <a href="OldCmm.html#t:GenBasicBlock">GenBasicBlock</a> <a href="Llvm-AbsSyn.html#t:LlvmStatement">LlvmStatement</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:LlvmUnresData" class="def">LlvmUnresData</a> = (<a href="CLabel.html#t:CLabel">CLabel</a>, <a href="Cmm.html#t:Section">Section</a>, <a href="Llvm-Types.html#t:LlvmType">LlvmType</a>, [<a href="LlvmCodeGen-Base.html#t:UnresStatic">UnresStatic</a>])</p><div class="doc"><p>Unresolved code.
 Of the form: (data label, data type, unresolved data)
</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:LlvmData" class="def">LlvmData</a> = ([<a href="Llvm-Types.html#t:LMGlobal">LMGlobal</a>], [<a href="Llvm-Types.html#t:LlvmType">LlvmType</a>])</p><div class="doc"><p>Top level LLVM Data (globals and type aliases)
</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:UnresLabel" class="def">UnresLabel</a> = <a href="CmmExpr.html#t:CmmLit">CmmLit</a></p><div class="doc"><p>An unresolved Label.
</p><p>Labels are unresolved when we haven't yet determined if they are defined in
 the module we are currently compiling, or an external one.
</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:UnresStatic" class="def">UnresStatic</a> = <a href="../base-4.5.1.0/Data-Either.html#t:Either">Either</a> <a href="LlvmCodeGen-Base.html#t:UnresLabel">UnresLabel</a> <a href="Llvm-Types.html#t:LlvmStatic">LlvmStatic</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:LlvmVersion" class="def">LlvmVersion</a> = <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a></p><div class="doc"><p>LLVM Version Number
</p></div></div><div class="top"><p class="src"><a name="v:defaultLlvmVersion" class="def">defaultLlvmVersion</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmVersion">LlvmVersion</a></p><div class="doc"><p>The LLVM Version we assume if we don't know
</p></div></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:LlvmEnv" class="def">LlvmEnv</a>  </p></div><div class="top"><p class="src"><a name="v:initLlvmEnv" class="def">initLlvmEnv</a> :: <a href="Platform.html#t:Platform">Platform</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></p><div class="doc"><p>Get initial Llvm environment.
</p></div></div><div class="top"><p class="src"><a name="v:clearVars" class="def">clearVars</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></p><div class="doc"><p>Clear variables from the environment.
</p></div></div><div class="top"><p class="src"><a name="v:varLookup" class="def">varLookup</a> :: <a href="Unique.html#t:Uniquable">Uniquable</a> key =&gt; key -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></p><div class="doc"><p>Lookup local variables in the environment.
</p></div></div><div class="top"><p class="src"><a name="v:varInsert" class="def">varInsert</a> :: <a href="Unique.html#t:Uniquable">Uniquable</a> key =&gt; key -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></p><div class="doc"><p>Insert local variables into the environment.
</p></div></div><div class="top"><p class="src"><a name="v:funLookup" class="def">funLookup</a> :: <a href="Unique.html#t:Uniquable">Uniquable</a> key =&gt; key -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="../base-4.5.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></p><div class="doc"><p>Lookup functions in the environment.
</p></div></div><div class="top"><p class="src"><a name="v:funInsert" class="def">funInsert</a> :: <a href="Unique.html#t:Uniquable">Uniquable</a> key =&gt; key -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></p><div class="doc"><p>Insert functions into the environment.
</p></div></div><div class="top"><p class="src"><a name="v:getLlvmVer" class="def">getLlvmVer</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmVersion">LlvmVersion</a></p><div class="doc"><p>Get the LLVM version we are generating code for
</p></div></div><div class="top"><p class="src"><a name="v:setLlvmVer" class="def">setLlvmVer</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmVersion">LlvmVersion</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a></p><div class="doc"><p>Set the LLVM version we are generating code for
</p></div></div><div class="top"><p class="src"><a name="v:getLlvmPlatform" class="def">getLlvmPlatform</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="Platform.html#t:Platform">Platform</a></p><div class="doc"><p>Get the platform we are generating code for
</p></div></div><div class="top"><p class="src"><a name="v:ghcInternalFunctions" class="def">ghcInternalFunctions</a> :: [(<a href="Llvm-Types.html#t:LMString">LMString</a>, <a href="Llvm-Types.html#t:LlvmFunctionDecl">LlvmFunctionDecl</a>)]</p><div class="doc"><p>Here we pre-initialise some functions that are used internally by GHC
 so as to make sure they have the most general type in the case that
 user code also uses these functions but with a different type than GHC
 internally. (Main offender is treating return type as <code>void</code> instead of
 'void *'. Fixes trac #5486.
</p></div></div><div class="top"><p class="src"><a name="v:cmmToLlvmType" class="def">cmmToLlvmType</a> :: <a href="CmmType.html#t:CmmType">CmmType</a> -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></p><div class="doc"><p>Translate a basic CmmType to an LlvmType.
</p></div></div><div class="top"><p class="src"><a name="v:widthToLlvmFloat" class="def">widthToLlvmFloat</a> :: <a href="CmmType.html#t:Width">Width</a> -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></p><div class="doc"><p>Translate a Cmm Float Width to a LlvmType.
</p></div></div><div class="top"><p class="src"><a name="v:widthToLlvmInt" class="def">widthToLlvmInt</a> :: <a href="CmmType.html#t:Width">Width</a> -&gt; <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></p><div class="doc"><p>Translate a Cmm Bit Width to a LlvmType.
</p></div></div><div class="top"><p class="src"><a name="v:llvmFunTy" class="def">llvmFunTy</a> :: <a href="Llvm-Types.html#t:LlvmType">LlvmType</a></p><div class="doc"><p>Llvm Function type for Cmm function
</p></div></div><div class="top"><p class="src"><a name="v:llvmFunSig" class="def">llvmFunSig</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="CLabel.html#t:CLabel">CLabel</a> -&gt; <a href="Llvm-Types.html#t:LlvmLinkageType">LlvmLinkageType</a> -&gt; <a href="Llvm-Types.html#t:LlvmFunctionDecl">LlvmFunctionDecl</a></p><div class="doc"><p>Llvm Function signature
</p></div></div><div class="top"><p class="src"><a name="v:llvmStdFunAttrs" class="def">llvmStdFunAttrs</a> :: [<a href="Llvm-Types.html#t:LlvmFuncAttr">LlvmFuncAttr</a>]</p><div class="doc"><p>Llvm standard fun attributes
</p></div></div><div class="top"><p class="src"><a name="v:llvmFunAlign" class="def">llvmFunAlign</a> :: <a href="Llvm-Types.html#t:LMAlign">LMAlign</a></p><div class="doc"><p>Alignment to use for functions
</p></div></div><div class="top"><p class="src"><a name="v:llvmInfAlign" class="def">llvmInfAlign</a> :: <a href="Llvm-Types.html#t:LMAlign">LMAlign</a></p><div class="doc"><p>Alignment to use for into tables
</p></div></div><div class="top"><p class="src"><a name="v:llvmPtrBits" class="def">llvmPtrBits</a> :: <a href="../base-4.5.1.0/Data-Int.html#t:Int">Int</a></p><div class="doc"><p>Pointer width
</p></div></div><div class="top"><p class="src"><a name="v:mkLlvmFunc" class="def">mkLlvmFunc</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="CLabel.html#t:CLabel">CLabel</a> -&gt; <a href="Llvm-Types.html#t:LlvmLinkageType">LlvmLinkageType</a> -&gt; <a href="Llvm-Types.html#t:LMSection">LMSection</a> -&gt; <a href="Llvm-AbsSyn.html#t:LlvmBlocks">LlvmBlocks</a> -&gt; <a href="Llvm-AbsSyn.html#t:LlvmFunction">LlvmFunction</a></p><div class="doc"><p>Create a Haskell function in LLVM.
</p></div></div><div class="top"><p class="src"><a name="v:tysToParams" class="def">tysToParams</a> :: [<a href="Llvm-Types.html#t:LlvmType">LlvmType</a>] -&gt; [<a href="Llvm-Types.html#t:LlvmParameter">LlvmParameter</a>]</p><div class="doc"><p>Convert a list of types to a list of function parameters
 (each with no parameter attributes)
</p></div></div><div class="top"><p class="src"><a name="v:strCLabel_llvm" class="def">strCLabel_llvm</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="CLabel.html#t:CLabel">CLabel</a> -&gt; <a href="Llvm-Types.html#t:LMString">LMString</a></p><div class="doc"><p>Pretty print a <code><a href="CLabel.html#t:CLabel">CLabel</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:genCmmLabelRef" class="def">genCmmLabelRef</a> :: <a href="LlvmCodeGen-Base.html#t:LlvmEnv">LlvmEnv</a> -&gt; <a href="CLabel.html#t:CLabel">CLabel</a> -&gt; <a href="Llvm-Types.html#t:LMGlobal">LMGlobal</a></p><div class="doc"><p>Create an external definition for a <code><a href="CLabel.html#t:CLabel">CLabel</a></code> defined in another module.
</p></div></div><div class="top"><p class="src"><a name="v:genStringLabelRef" class="def">genStringLabelRef</a> :: <a href="Llvm-Types.html#t:LMString">LMString</a> -&gt; <a href="Llvm-Types.html#t:LMGlobal">LMGlobal</a></p><div class="doc"><p>As above (<code><a href="LlvmCodeGen-Base.html#v:genCmmLabelRef">genCmmLabelRef</a></code>) but taking a <code><a href="Llvm-Types.html#t:LMString">LMString</a></code>, not <code><a href="CLabel.html#t:CLabel">CLabel</a></code>.
</p></div></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>