mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
clarify why prototype::codegen returns a function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43725 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
99005a4b3b
commit
cf9893d28c
@ -293,7 +293,13 @@ Function *PrototypeAST::Codegen() {
|
||||
</pre>
|
||||
</div>
|
||||
|
||||
<p>This code packs a lot of power into a few lines. The first step is to create
|
||||
<p>This code packs a lot of power into a few lines. Note first that this
|
||||
function returns a Function* instead of a Value*. Because a "prototype" really
|
||||
talks about the external interface for a function (not the value computed by
|
||||
an expression), it makes sense for it to return the LLVM Function it corresponds
|
||||
to when codegen'd.</p>
|
||||
|
||||
<p>The next step is to create
|
||||
the <tt>FunctionType</tt> that should be used for a given Prototype. Since all
|
||||
function arguments in Kaleidoscope are of type double, the first line creates
|
||||
a vector of "N" LLVM Double types. It then uses the <tt>FunctionType::get</tt>
|
||||
|
Loading…
Reference in New Issue
Block a user