mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-03 09:21:02 +00:00
Fix description of the call instruction. There are two types, with one being
optional. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41785 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
418d360518
commit
db7e3c9e99
@ -3581,7 +3581,7 @@ value argument; otherwise, it returns the second value argument.
|
||||
|
||||
<h5>Syntax:</h5>
|
||||
<pre>
|
||||
<result> = [tail] call [<a href="#callingconv">cconv</a>] <ty>* <fnptrval>(<param list>)
|
||||
<result> = [tail] call [<a href="#callingconv">cconv</a>] <ty> [<fnty>*] <fnptrval>(<param list>)
|
||||
</pre>
|
||||
|
||||
<h5>Overview:</h5>
|
||||
@ -3606,10 +3606,15 @@ value argument; otherwise, it returns the second value argument.
|
||||
to using C calling conventions.
|
||||
</li>
|
||||
<li>
|
||||
<p>'<tt>ty</tt>': shall be the signature of the pointer to function value
|
||||
being invoked. The argument types must match the types implied by this
|
||||
signature. This type can be omitted if the function is not varargs and
|
||||
if the function type does not return a pointer to a function.</p>
|
||||
<p>'<tt>ty</tt>': the type of the call instruction itself which is also
|
||||
the type of the return value. Functions that return no value are marked
|
||||
<tt><a href="#t_void">void</a></tt>.</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>'<tt>fnty</tt>': shall be the signature of the pointer to function
|
||||
value being invoked. The argument types must match the types implied by
|
||||
this signature. This type can be omitted if the function is not varargs
|
||||
and if the function type does not return a pointer to a function.</p>
|
||||
</li>
|
||||
<li>
|
||||
<p>'<tt>fnptrval</tt>': An LLVM value containing a pointer to a function to
|
||||
@ -3639,10 +3644,11 @@ the <a href="#i_invoke">invoke</a> instruction.</p>
|
||||
<h5>Example:</h5>
|
||||
|
||||
<pre>
|
||||
%retval = call i32 %test(i32 %argc)
|
||||
call i32(i8 *, ...) *%printf(i8 * %msg, i32 12, i8 42);
|
||||
%X = tail call i32 %foo()
|
||||
%Y = tail call <a href="#callingconv">fastcc</a> i32 %foo()
|
||||
%retval = call i32 @test(i32 %argc)
|
||||
call i32 (i8 *, ...)* @printf(i8 * %msg, i32 12, i8 42);
|
||||
%X = tail call i32 @foo()
|
||||
%Y = tail call <a href="#callingconv">fastcc</a> i32 @foo()
|
||||
%Z = call void %foo(i8 97 signext)
|
||||
</pre>
|
||||
|
||||
</div>
|
||||
|
Loading…
Reference in New Issue
Block a user