[llvm-commits] [llvm] r45998 - /llvm/trunk/docs/LangRef.html

Chris Lattner sabre at nondot.org
Mon Jan 14 20:34:24 PST 2008


Author: lattner
Date: Mon Jan 14 22:34:22 2008
New Revision: 45998

URL: http://llvm.org/viewvc/llvm-project?rev=45998&view=rev
Log:
clarify that byval is valid for any pointer argument.

Modified:
    llvm/trunk/docs/LangRef.html

Modified: llvm/trunk/docs/LangRef.html
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/LangRef.html?rev=45998&r1=45997&r2=45998&view=diff

==============================================================================
--- llvm/trunk/docs/LangRef.html (original)
+++ llvm/trunk/docs/LangRef.html Mon Jan 14 22:34:22 2008
@@ -810,11 +810,12 @@
     target-specific</dd>
 
     <dt><tt>byval</tt></dt>
-    <dd>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.</dd>
+    <dd>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).</dd>
 
     <dt><tt>sret</tt></dt>
     <dd>This indicates that the parameter specifies the address of a structure





More information about the llvm-commits mailing list