summaryrefslogtreecommitdiff
path: root/docs/LangRef.html
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2007-01-28 14:30:45 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2007-01-28 14:30:45 +0000
commit34d6dea84935d865965b9fc63ef6d42192da0a51 (patch)
treebe7e47d8cd46361d5c558b47083b298da55754ec /docs/LangRef.html
parent9adeaa2f5989239c18109fb79dc75847ec21ea39 (diff)
downloadllvm-34d6dea84935d865965b9fc63ef6d42192da0a51.tar.gz
llvm-34d6dea84935d865965b9fc63ef6d42192da0a51.tar.bz2
llvm-34d6dea84935d865965b9fc63ef6d42192da0a51.tar.xz
Document 'inreg' & 'sret'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33600 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/LangRef.html')
-rw-r--r--docs/LangRef.html26
1 files changed, 7 insertions, 19 deletions
diff --git a/docs/LangRef.html b/docs/LangRef.html
index a1c9a2808d..4de7f3609b 100644
--- a/docs/LangRef.html
+++ b/docs/LangRef.html
@@ -530,19 +530,6 @@ the future:</p>
prototype and implemented declaration of the function (as does normal C).
</dd>
- <dt><b>"<tt>csretcc</tt>" - The C struct return calling convention</b>:</dt>
-
- <dd>This calling convention matches the target C calling conventions, except
- that functions with this convention are required to take a pointer as their
- first argument, and the return type of the function must be void. This is
- used for C functions that return aggregates by-value. In this case, the
- function has been transformed to take a pointer to the struct as the first
- argument to the function. For targets where the ABI specifies specific
- behavior for structure-return calls, the calling convention can be used to
- distinguish between struct return functions and other functions that take a
- pointer to a struct as the first argument.
- </dd>
-
<dt><b>"<tt>fastcc</tt>" - The fast calling convention</b>:</dt>
<dd>This calling convention attempts to make calls as fast as possible
@@ -743,14 +730,15 @@ a power of 2.</p>
<dt><tt>sext</tt></dt>
<dd>This indicates that the parameter should be sign extended just before
a call to this function.</dd>
+ <dt><tt>inreg</tt></dt>
+ <dd>This indicates that the parameter should be placed in register (if
+ possible) during assembling function call. It's currently supported in x86
+ backend only.</dd>
+ <dt><tt>sret</tt></dt>
+ <dd>This indicates, that the parameter is special hidden pointer to struct
+ to return. Usually such parameter needs special handling during codegen.</dd>
</dl>
- <p>The current motivation for parameter attributes is to enable the sign and
- zero extend information necessary for the C calling convention to be passed
- from the front end to LLVM. The <tt>zext</tt> and <tt>sext</tt> attributes
- are used by the code generator to perform the required extension. However,
- parameter attributes are an orthogonal feature to calling conventions and
- may be used for other purposes in the future.</p>
</div>
<!-- ======================================================================= -->