diff options
author | ed <ed@FreeBSD.org> | 2010-06-09 18:11:12 +0000 |
---|---|---|
committer | ed <ed@FreeBSD.org> | 2010-06-09 18:11:12 +0000 |
commit | a1185afe0f653cca036f117b540fefc6f799e95d (patch) | |
tree | 8b9786210f005ec3c3b7b19ee52714d390c2b121 /contrib/llvm/examples/ModuleMaker/ModuleMaker.cpp | |
parent | 92026fed219b8457b0b6d9ed33a538b105a670cc (diff) | |
download | FreeBSD-src-a1185afe0f653cca036f117b540fefc6f799e95d.zip FreeBSD-src-a1185afe0f653cca036f117b540fefc6f799e95d.tar.gz |
Remove unneeded directories.
Even though Roman removed these directories in his working copy, they
weren't removed from the actual repository, also causing his working
copy to be corrupted.
Diffstat (limited to 'contrib/llvm/examples/ModuleMaker/ModuleMaker.cpp')
-rw-r--r-- | contrib/llvm/examples/ModuleMaker/ModuleMaker.cpp | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/contrib/llvm/examples/ModuleMaker/ModuleMaker.cpp b/contrib/llvm/examples/ModuleMaker/ModuleMaker.cpp deleted file mode 100644 index 6bc52c1..0000000 --- a/contrib/llvm/examples/ModuleMaker/ModuleMaker.cpp +++ /dev/null @@ -1,64 +0,0 @@ -//===- examples/ModuleMaker/ModuleMaker.cpp - Example project ---*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This programs is a simple example that creates an LLVM module "from scratch", -// emitting it as a bitcode file to standard out. This is just to show how -// LLVM projects work and to demonstrate some of the LLVM APIs. -// -//===----------------------------------------------------------------------===// - -#include "llvm/LLVMContext.h" -#include "llvm/Module.h" -#include "llvm/DerivedTypes.h" -#include "llvm/Constants.h" -#include "llvm/Instructions.h" -#include "llvm/Bitcode/ReaderWriter.h" -#include "llvm/Support/raw_ostream.h" -using namespace llvm; - -int main() { - LLVMContext Context; - - // Create the "module" or "program" or "translation unit" to hold the - // function - Module *M = new Module("test", Context); - - // Create the main function: first create the type 'int ()' - FunctionType *FT = - FunctionType::get(Type::getInt32Ty(Context), /*not vararg*/false); - - // By passing a module as the last parameter to the Function constructor, - // it automatically gets appended to the Module. - Function *F = Function::Create(FT, Function::ExternalLinkage, "main", M); - - // Add a basic block to the function... again, it automatically inserts - // because of the last argument. - BasicBlock *BB = BasicBlock::Create(Context, "EntryBlock", F); - - // Get pointers to the constant integers... - Value *Two = ConstantInt::get(Type::getInt32Ty(Context), 2); - Value *Three = ConstantInt::get(Type::getInt32Ty(Context), 3); - - // Create the add instruction... does not insert... - Instruction *Add = BinaryOperator::Create(Instruction::Add, Two, Three, - "addresult"); - - // explicitly insert it into the basic block... - BB->getInstList().push_back(Add); - - // Create the return instruction and add it to the basic block - BB->getInstList().push_back(ReturnInst::Create(Context, Add)); - - // Output the bitcode file to stdout - WriteBitcodeToFile(M, outs()); - - // Delete the module and all of its contents. - delete M; - return 0; -} |