mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-17 21:29:20 +00:00
Decribe the "implementation" keyword.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28762 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
e67304fb78
commit
81c01f0d2c
@ -350,6 +350,9 @@ symbol table entries. Here is an example of the "hello world" module:</p>
|
||||
<i>; External declaration of the puts function</i>
|
||||
<a href="#functionstructure">declare</a> int %puts(sbyte*) <i>; int(sbyte*)* </i>
|
||||
|
||||
<i>; Global variable / Function body section separator</i>
|
||||
implementation
|
||||
|
||||
<i>; Definition of main function</i>
|
||||
int %main() { <i>; int()* </i>
|
||||
<i>; Convert [13x sbyte]* to sbyte *...</i>
|
||||
@ -373,6 +376,13 @@ represented by a pointer to a memory location (in this case, a pointer to an
|
||||
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>
|
||||
|
||||
<!-- ======================================================================= -->
|
||||
|
Loading…
Reference in New Issue
Block a user