[llvm] r204890 - inalloca: *Really* fix the docs
Reid Kleckner
reid at kleckner.net
Wed Mar 26 18:38:48 PDT 2014
Author: rnk
Date: Wed Mar 26 20:38:48 2014
New Revision: 204890
URL: http://llvm.org/viewvc/llvm-project?rev=204890&view=rev
Log:
inalloca: *Really* fix the docs
Modified:
llvm/trunk/docs/InAlloca.rst
Modified: llvm/trunk/docs/InAlloca.rst
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/InAlloca.rst?rev=204890&r1=204889&r2=204890&view=diff
==============================================================================
--- llvm/trunk/docs/InAlloca.rst (original)
+++ llvm/trunk/docs/InAlloca.rst Wed Mar 26 20:38:48 2014
@@ -5,8 +5,6 @@ Design and Usage of the InAlloca Attribu
Introduction
============
-.. Warning:: This feature is unstable and not fully implemented.
-
The :ref:`inalloca <attr_inalloca>` attribute is designed to allow
taking the address of an aggregate argument that is being passed by
value through memory. Primarily, this feature is required for
@@ -54,11 +52,11 @@ that passes two default-constructed ``Fo
entry:
%base = call i8* @llvm.stacksave()
%memargs = alloca <{ %struct.Foo, %struct.Foo }>
- %b = getelementptr <{ %struct.Foo, %struct.Foo }>*, i32 1
+ %b = getelementptr <{ %struct.Foo, %struct.Foo }>* %memargs, i32 1
call void @Foo_ctor(%struct.Foo* %b)
; If a's ctor throws, we must destruct b.
- %a = getelementptr <{ %struct.Foo, %struct.Foo }>*, i32 0
+ %a = getelementptr <{ %struct.Foo, %struct.Foo }>* %memargs, i32 0
invoke void @Foo_ctor(%struct.Foo* %a)
to label %invoke.cont unwind %invoke.unwind
More information about the llvm-commits
mailing list