<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">I was reading various documents in the llvm/docs/ directory and found a few minor typos.<o:p></o:p></p>
<p class="MsoNormal">I don’t have write access so if someone could apply these for me, that would be great.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">---<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Index: docs/LangRef.rst<o:p></o:p></p>
<p class="MsoNormal">===================================================================<o:p></o:p></p>
<p class="MsoNormal">--- docs/LangRef.rst        (revision 228410)<o:p></o:p></p>
<p class="MsoNormal">+++ docs/LangRef.rst     (working copy)<o:p></o:p></p>
<p class="MsoNormal">@@ -368,7 +368,7 @@<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">     The idea behind this convention is to support calls to runtime functions<o:p></o:p></p>
<p class="MsoNormal">     that have a hot path and a cold path. The hot path is usually a small piece<o:p></o:p></p>
<p class="MsoNormal">-    of code that doesn't many registers. The cold path might need to call out to<o:p></o:p></p>
<p class="MsoNormal">+    of code that doesn't use many registers. The cold path might need to call out to<o:p></o:p></p>
<p class="MsoNormal">     another function and therefore only needs to preserve the caller-saved<o:p></o:p></p>
<p class="MsoNormal">     registers, which haven't already been saved by the caller. The<o:p></o:p></p>
<p class="MsoNormal">     `PreserveMost` calling convention is very similar to the `cold` calling<o:p></o:p></p>
<p class="MsoNormal">@@ -521,7 +521,7 @@<o:p></o:p></p>
<p class="MsoNormal">Global variables define regions of memory allocated at compilation time<o:p></o:p></p>
<p class="MsoNormal">instead of run-time.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">-Global variables definitions must be initialized.<o:p></o:p></p>
<p class="MsoNormal">+Global variable definitions must be initialized.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"> Global variables in other translation units can also be declared, in which<o:p></o:p></p>
<p class="MsoNormal">case they don't have an initializer.<o:p></o:p></p>
<p class="MsoNormal">@@ -666,7 +666,7 @@<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"> LLVM allows an explicit section to be specified for functions. If the<o:p></o:p></p>
<p class="MsoNormal">target supports it, it will emit functions to the section specified.<o:p></o:p></p>
<p class="MsoNormal">-Additionally, the function can placed in a COMDAT.<o:p></o:p></p>
<p class="MsoNormal">+Additionally, the function can be placed in a COMDAT.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"> An explicit alignment may be specified for a function. If not present,<o:p></o:p></p>
<p class="MsoNormal">or if the alignment is set to zero, the alignment of the function is set<o:p></o:p></p>
<p class="MsoNormal">@@ -674,7 +674,7 @@<o:p></o:p></p>
<p class="MsoNormal">is specified, the function is forced to have at least that much<o:p></o:p></p>
<p class="MsoNormal">alignment. All alignments must be a power of 2.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">-If the ``unnamed_addr`` attribute is given, the address is know to not<o:p></o:p></p>
<p class="MsoNormal">+If the ``unnamed_addr`` attribute is given, the address is known to not<o:p></o:p></p>
<p class="MsoNormal">be significant and two identical functions can be merged.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"> Syntax::<o:p></o:p></p>
<p class="MsoNormal">@@ -716,7 +716,7 @@<o:p></o:p></p>
<p class="MsoNormal">``linkonce_odr``, ``weak_odr``, ``external``. Note that some system linkers<o:p></o:p></p>
<p class="MsoNormal">might not correctly handle dropping a weak symbol that is aliased.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">-Alias that are not ``unnamed_addr`` are guaranteed to have the same address as<o:p></o:p></p>
<p class="MsoNormal">+Aliases that are not ``unnamed_addr`` are guaranteed to have the same address as<o:p></o:p></p>
<p class="MsoNormal">the aliasee expression. ``unnamed_addr`` ones are only guaranteed to point<o:p></o:p></p>
<p class="MsoNormal">to the same content.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">@@ -1779,7 +1779,7 @@<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"> LLVM IR floating-point binary ops (:ref:`fadd <i_fadd>`,<o:p></o:p></p>
<p class="MsoNormal">:ref:`fsub <i_fsub>`, :ref:`fmul <i_fmul>`, :ref:`fdiv <i_fdiv>`,<o:p></o:p></p>
<p class="MsoNormal">-:ref:`frem <i_frem>`) have the following flags that can set to enable<o:p></o:p></p>
<p class="MsoNormal">+:ref:`frem <i_frem>`) have the following flags that can be set to enable<o:p></o:p></p>
<p class="MsoNormal">otherwise unsafe floating point operations<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal"> ``nnan``<o:p></o:p></p>
<p class="MsoNormal">Index: docs/CodeGenerator.rst<o:p></o:p></p>
<p class="MsoNormal">===================================================================<o:p></o:p></p>
<p class="MsoNormal">--- docs/CodeGenerator.rst        (revision 227370)<o:p></o:p></p>
<p class="MsoNormal">+++ docs/CodeGenerator.rst     (working copy)<o:p></o:p></p>
<p class="MsoNormal">@@ -1340,7 +1340,7 @@<o:p></o:p></p>
<p class="MsoNormal">If the indirect strategy is used, after all the virtual registers have been<o:p></o:p></p>
<p class="MsoNormal">mapped to physical registers or stack slots, it is necessary to use a spiller<o:p></o:p></p>
<p class="MsoNormal">object to place load and store instructions in the code. Every virtual that has<o:p></o:p></p>
<p class="MsoNormal">-been mapped to a stack slot will be stored to memory after been defined and will<o:p></o:p></p>
<p class="MsoNormal">+been mapped to a stack slot will be stored to memory after being defined and will<o:p></o:p></p>
<p class="MsoNormal">be loaded before being used. The implementation of the spiller tries to recycle<o:p></o:p></p>
<p class="MsoNormal">load/store instructions, avoiding unnecessary instructions. For an example of<o:p></o:p></p>
<p class="MsoNormal">how to invoke the spiller, see ``RegAllocLinearScan::runOnMachineFunction`` in<o:p></o:p></p>
<p class="MsoNormal">@@ -1353,7 +1353,7 @@<o:p></o:p></p>
<p class="MsoNormal">instructions are three address instructions. That is, each instruction is<o:p></o:p></p>
<p class="MsoNormal">expected to define at most one register, and to use at most two registers.<o:p></o:p></p>
<p class="MsoNormal">However, some architectures use two address instructions. In this case, the<o:p></o:p></p>
<p class="MsoNormal">-defined register is also one of the used register. For instance, an instruction<o:p></o:p></p>
<p class="MsoNormal">+defined register is also one of the used registers. For instance, an instruction<o:p></o:p></p>
<p class="MsoNormal">such as ``ADD %EAX, %EBX``, in X86 is actually equivalent to ``%EAX = %EAX +<o:p></o:p></p>
<p class="MsoNormal">%EBX``.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">@@ -1578,7 +1578,7 @@<o:p></o:p></p>
<p class="MsoNormal">    correspond to. The MCInsts that are generated by this are fed into the<o:p></o:p></p>
<p class="MsoNormal">    instruction printer or the encoder.<o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">-Finally, at your choosing, you can also implement an subclass of MCCodeEmitter<o:p></o:p></p>
<p class="MsoNormal">+Finally, at your choosing, you can also implement a subclass of MCCodeEmitter<o:p></o:p></p>
<p class="MsoNormal">which lowers MCInst's into machine code bytes and relocations.  This is<o:p></o:p></p>
<p class="MsoNormal">important if you want to support direct .o file emission, or would like to<o:p></o:p></p>
<p class="MsoNormal">implement an assembler for your target.<o:p></o:p></p>
</div>
</body>
</html>