[llvm-commits] CVS: llvm/docs/LangRef.html
Reid Spencer
reid at x10sys.com
Tue Mar 27 19:46:47 PDT 2007
Changes in directory llvm/docs:
LangRef.html updated: 1.216 -> 1.217
---
Log message:
Undocument the implementation keyword
Docuemnt the checkpoint keyword
---
Diffs of the changes: (+12 -13)
LangRef.html | 25 ++++++++++++-------------
1 files changed, 12 insertions(+), 13 deletions(-)
Index: llvm/docs/LangRef.html
diff -u llvm/docs/LangRef.html:1.216 llvm/docs/LangRef.html:1.217
--- llvm/docs/LangRef.html:1.216 Sat Mar 24 17:40:44 2007
+++ llvm/docs/LangRef.html Tue Mar 27 21:46:29 2007
@@ -27,6 +27,7 @@
<li><a href="#paramattrs">Parameter Attributes</a></li>
<li><a href="#moduleasm">Module-Level Inline Assembly</a></li>
<li><a href="#datalayout">Data Layout</a></li>
+ <li><a href="#checkpoint">Check Points</a></li>
</ol>
</li>
<li><a href="#typesystem">Type System</a>
@@ -371,9 +372,6 @@
<i>; External declaration of the puts function</i>
<a href="#functionstructure">declare</a> i32 %puts(i8 *) <i>; i32(i8 *)* </i>
-<i>; Global variable / Function body section separator</i>
-implementation
-
<i>; Definition of main function</i>
define i32 %main() { <i>; i32()* </i>
<i>; Convert [13x i8 ]* to i8 *...</i>
@@ -397,13 +395,6 @@
array of char, and a pointer to a function), and have one of the following <a
href="#linkage">linkage types</a>.</p>
-<p>Due to a limitation in the current LLVM assembly parser (it is limited by
-one-token lookahead), modules are split into two pieces by the "implementation"
-keyword. Global variable prototypes and definitions must occur before the
-keyword, and function definitions must occur after it. Function prototypes may
-occur either before or after it. In the future, the implementation keyword may
-become a noop, if the parser gets smarter.</p>
-
</div>
<!-- ======================================================================= -->
@@ -856,6 +847,16 @@
terms of 64 <2 x double>, for example.</li>
</ol>
</div>
+<!-- ======================================================================= -->
+<div class="doc_subsection">
+ <a name="datalayout">Data Layout</a>
+</div>
+<div class="doc_text">
+ <p>At the top level, the keyword <tt>checkpoint</tt> may be used to force the
+ assembler to check point the types and values it has defined so far. Any
+ unresolved types or references will generate error messages. This is useful
+ as an assertion point or for debugging.</p>
+</div>
<!-- *********************************************************************** -->
<div class="doc_section"> <a name="typesystem">Type System</a> </div>
@@ -2719,8 +2720,6 @@
%RT = type { i8 , [10 x [20 x i32]], i8 }
%ST = type { i32, double, %RT }
- implementation
-
define i32* %foo(%ST* %s) {
entry:
%reg = getelementptr %ST* %s, i32 1, i32 2, i32 1, i32 5, i32 13
@@ -4612,7 +4611,7 @@
<a href="mailto:sabre at nondot.org">Chris Lattner</a><br>
<a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br>
- Last modified: $Date: 2007/03/24 22:40:44 $
+ Last modified: $Date: 2007/03/28 02:46:29 $
</address>
</body>
</html>
More information about the llvm-commits
mailing list