diff options
author | Chris Lattner <sabre@nondot.org> | 2011-07-14 05:53:17 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2011-07-14 05:53:17 +0000 |
commit | d91aa14075d5c4c093ed1a84ea4b5397ce5f6eb4 (patch) | |
tree | 4989d5dde177efca1e5ad9e6e0df53ade3bc7c90 /lib/VMCore/Core.cpp | |
parent | 672b93a3324cc1da6d374eed4c75c050a9cad7be (diff) | |
download | llvm-d91aa14075d5c4c093ed1a84ea4b5397ce5f6eb4.tar.gz llvm-d91aa14075d5c4c093ed1a84ea4b5397ce5f6eb4.tar.bz2 llvm-d91aa14075d5c4c093ed1a84ea4b5397ce5f6eb4.tar.xz |
add C api for hte new type system rewrite API. Patch by Vitaly Lugovskiy!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135132 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/VMCore/Core.cpp')
-rw-r--r-- | lib/VMCore/Core.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/VMCore/Core.cpp b/lib/VMCore/Core.cpp index 1df74de36b..da7ac42e03 100644 --- a/lib/VMCore/Core.cpp +++ b/lib/VMCore/Core.cpp @@ -304,6 +304,19 @@ LLVMTypeRef LLVMStructType(LLVMTypeRef *ElementTypes, ElementCount, Packed); } +LLVMTypeRef LLVMStructCreateNamed(LLVMContextRef C, const char *Name) +{ + return wrap(StructType::createNamed(*unwrap(C), Name)); +} + +void LLVMStructSetBody(LLVMTypeRef StructTy, LLVMTypeRef *ElementTypes, + unsigned ElementCount, LLVMBool Packed) { + std::vector<Type*> Tys; + for (LLVMTypeRef *I = ElementTypes, + *E = ElementTypes + ElementCount; I != E; ++I) + Tys.push_back(unwrap(*I)); + unwrap<StructType>(StructTy)->setBody(Tys, Packed != 0); +} unsigned LLVMCountStructElementTypes(LLVMTypeRef StructTy) { return unwrap<StructType>(StructTy)->getNumElements(); |