From 352ab9b4a2a6ac23865f37ee129bfdcbab3aed07 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 15 Jan 2008 04:34:22 +0000 Subject: clarify that byval is valid for any pointer argument. llvm-svn: 45998 --- llvm/docs/LangRef.html | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'llvm/docs') diff --git a/llvm/docs/LangRef.html b/llvm/docs/LangRef.html index fa5019370a4..49bcc974f08 100644 --- a/llvm/docs/LangRef.html +++ b/llvm/docs/LangRef.html @@ -810,11 +810,12 @@ declare i32 @atoi(i8*) nounwind readonly target-specific
byval
-
This indicates that the pointer parameter is really an aggregate that - was passed by value to the function. The attribute implies that a hidden - copy of the struct is made between the caller and the callee, so the - callee is unable to modify the struct in the callee. This attribute is only - valid on llvm pointer arguments.
+
This indicates that the pointer parameter should really be passed by + value to the function. The attribute implies that a hidden copy of the + pointee is made between the caller and the callee, so the callee is unable + to modify the value in the callee. This attribute is only valid on llvm + pointer arguments. It is generally used to pass structs and arrays by + value, but is also valid on scalars (even though this is silly).
sret
This indicates that the parameter specifies the address of a structure -- cgit v1.2.3