From 34d6dea84935d865965b9fc63ef6d42192da0a51 Mon Sep 17 00:00:00 2001 From: Anton Korobeynikov Date: Sun, 28 Jan 2007 14:30:45 +0000 Subject: [PATCH] Document 'inreg' & 'sret' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33600 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/LangRef.html | 26 +++++++------------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/docs/LangRef.html b/docs/LangRef.html index a1c9a2808da..4de7f3609b5 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -530,19 +530,6 @@ the future:

prototype and implemented declaration of the function (as does normal C). -
"csretcc" - The C struct return calling convention:
- -
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. -
-
"fastcc" - The fast calling convention:
This calling convention attempts to make calls as fast as possible @@ -743,14 +730,15 @@ a power of 2.

sext
This indicates that the parameter should be sign extended just before a call to this function.
+
inreg
+
This indicates that the parameter should be placed in register (if + possible) during assembling function call. It's currently supported in x86 + backend only.
+
sret
+
This indicates, that the parameter is special hidden pointer to struct + to return. Usually such parameter needs special handling during codegen.
-

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 zext and sext 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.

-- 2.34.1