From 29f69007591631be384594e108ea7804e7966018 Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Thu, 27 Mar 2014 01:38:48 +0000 Subject: [PATCH] inalloca: *Really* fix the docs llvm-svn: 204890 --- docs/InAlloca.rst | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/docs/InAlloca.rst b/docs/InAlloca.rst index 8bc83d8622f..c7609cddb4f 100644 --- a/docs/InAlloca.rst +++ b/docs/InAlloca.rst @@ -5,8 +5,6 @@ Design and Usage of the InAlloca Attribute Introduction ============ -.. Warning:: This feature is unstable and not fully implemented. - The :ref:`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 ``Foo`` objects to ``g`` in the 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