llvm-mirror/include/llvm-c
Reid Kleckner f795c3e4a9 Begin adding docs and IR-level support for the inalloca attribute
The inalloca attribute is designed to support passing C++ objects by
value in the Microsoft C++ ABI.  It behaves the same as byval, except
that it always implies that the argument is in memory and that the bytes
are never copied.  This attribute allows the caller to take the address
of an outgoing argument's memory and execute arbitrary code to store
into it.

This patch adds basic IR support, docs, and verification.  It does not
attempt to implement any lowering or fix any possibly broken transforms.

When this patch lands, a complete description of this feature should
appear at http://llvm.org/docs/InAlloca.html .

Differential Revision: http://llvm-reviews.chandlerc.com/D2173

llvm-svn: 197645
2013-12-19 02:14:12 +00:00
..
Transforms Add a Scalarizer pass. 2013-11-22 16:58:05 +00:00
Analysis.h Organize LLVM C API docs into doxygen modules; add docs 2012-03-21 03:54:29 +00:00
BitReader.h include/llvm-c: Whitespace. 2013-10-23 17:56:29 +00:00
BitWriter.h include/llvm-c: Whitespace. 2013-10-23 17:56:29 +00:00
Core.h Begin adding docs and IR-level support for the inalloca attribute 2013-12-19 02:14:12 +00:00
Disassembler.h Add to the disassembler C API output reference types for 2013-11-01 00:00:07 +00:00
ExecutionEngine.h include/llvm-c: Whitespace. 2013-10-23 17:56:29 +00:00
Initialization.h Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00
IRReader.h [llvm-c] Expose IRReader interface 2013-11-06 09:21:15 +00:00
Linker.h Supply a C interface to the "LinkModules" method. 2012-05-09 08:55:40 +00:00
LinkTimeOptimizer.h include/llvm-c: Whitespace. 2013-10-23 17:56:29 +00:00
lto.h Use LTO_SYMBOL_SCOPE_DEFAULT_CAN_BE_HIDDEN instead of the "dso list". 2013-10-31 20:51:58 +00:00
Object.h include/llvm-c: Whitespace. 2013-10-23 17:56:29 +00:00
Support.h Make sure LLVMLoadLibraryPermanently gets an extern "C" symbol. 2013-11-13 15:35:13 +00:00
Target.h [llvm-c] Remove dead typedef 2013-11-11 14:47:01 +00:00
TargetMachine.h [llvm-c] Add missing const qualifiers to LLVMCreateTargetMachine 2013-11-15 02:51:12 +00:00