Update Function type documentation to clarify how multiple return values are supported.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48721 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/docs/LangRef.html b/docs/LangRef.html
index 096acf2..8122d43 100644
--- a/docs/LangRef.html
+++ b/docs/LangRef.html
@@ -1225,8 +1225,10 @@
<div class="doc_text">
<h5>Overview:</h5>
<p>The function type can be thought of as a function signature. It
-consists of a return type and a list of formal parameter types.
-Function types are usually used to build virtual function tables
+consists of a return type and a list of formal parameter types. The
+return type of a function type is a scalar type or a struct type. If the
+return type is a struct type then all struct elements must be of a first
+class type. Function types are usually used to build virtual function tables
(which are structures of pointers to functions), for indirect function
calls, and when defining a function.</p>
@@ -1260,6 +1262,11 @@
which returns an integer. This is the signature for <tt>printf</tt> in
LLVM.
</td>
+ </tr><tr class="layout">
+ <td class="left"><tt>{i32, i32} (i32)</tt></td>
+ <td class="left">A function taking an <tt>i32></tt>, returning two values
+ <tt> i32 </tt> as an arggregate of type <tt>{ i32, i32 }</tt>
+ </td>
</tr>
</table>