blob: f8bf21e5ea800a3153d77e7a14706abdc2ecde44 [file] [log] [blame]
//===- lib/Linker/Linker.cpp - Basic Linker functionality ----------------===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file contains basic Linker functionality that all usages will need.
//
//===----------------------------------------------------------------------===//
#include "llvm/Linker.h"
#include "llvm/Bitcode/ReaderWriter.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/system_error.h"
using namespace llvm;
Linker::Linker(StringRef modname,
LLVMContext& C):
Context(C),
Composite(new Module(modname, C)) { }
Linker::Linker(Module* aModule) :
Context(aModule->getContext()),
Composite(aModule) { }
Linker::~Linker() {
delete Composite;
}