switch this to bitcode instead of bytecode

llvm-svn: 36867
This commit is contained in:
Chris Lattner 2007-05-06 09:29:13 +00:00
parent 15273e4d91
commit 41528e6e42
5 changed files with 17 additions and 33 deletions

View File

@ -9,6 +9,6 @@
LEVEL=../..
TOOLNAME=ModuleMaker
EXAMPLE_TOOL = 1
LINK_COMPONENTS := bcwriter
LINK_COMPONENTS := bitwriter
include $(LEVEL)/Makefile.common

View File

@ -17,8 +17,8 @@
#include "llvm/DerivedTypes.h"
#include "llvm/Constants.h"
#include "llvm/Instructions.h"
#include "llvm/Bytecode/Writer.h"
#include "llvm/Support/Streams.h"
#include "llvm/Bitcode/ReaderWriter.h"
#include <iostream>
using namespace llvm;
int main() {
@ -53,7 +53,7 @@ int main() {
BB->getInstList().push_back(new ReturnInst(Add));
// Output the bytecode file to stdout
WriteBytecodeToFile(M, cout);
WriteBitcodeToFile(M, std::cout);
// Delete the module and all of its contents.
delete M;

View File

@ -14,7 +14,6 @@
#include "llvm/Debugger/Debugger.h"
#include "llvm/Module.h"
#include "llvm/ModuleProvider.h"
#include "llvm/Bytecode/Reader.h"
#include "llvm/Bitcode/ReaderWriter.h"
#include "llvm/Debugger/InferiorProcess.h"
#include "llvm/Support/MemoryBuffer.h"
@ -22,8 +21,6 @@
#include <memory>
using namespace llvm;
static bool Bitcode = false;
/// Debugger constructor - Initialize the debugger to its initial, empty, state.
///
Debugger::Debugger() : Environment(0), Program(0), Process(0) {
@ -49,15 +46,11 @@ std::string Debugger::getProgramPath() const {
static Module *
getMaterializedModuleProvider(const std::string &Filename) {
if (Bitcode) {
return ParseBytecodeFile(Filename);
} else {
std::auto_ptr<MemoryBuffer> Buffer;
Buffer.reset(MemoryBuffer::getFileOrSTDIN(&Filename[0], Filename.size()));
if (Buffer.get())
return ParseBitcodeFile(Buffer.get());
return 0;
}
std::auto_ptr<MemoryBuffer> Buffer;
Buffer.reset(MemoryBuffer::getFileOrSTDIN(&Filename[0], Filename.size()));
if (Buffer.get())
return ParseBitcodeFile(Buffer.get());
return 0;
}
/// loadProgram - If a program is currently loaded, unload it. Then search

View File

@ -7,7 +7,7 @@
//
//===----------------------------------------------------------------------===//
//
// This file contains routines to handle linking together LLVM bytecode files,
// This file contains routines to handle linking together LLVM bitcode files,
// and to handle annoying things like static libraries.
//
//===----------------------------------------------------------------------===//
@ -16,7 +16,7 @@
#include "llvm/Module.h"
#include "llvm/ModuleProvider.h"
#include "llvm/ADT/SetOperations.h"
#include "llvm/Bytecode/Archive.h"
#include "llvm/Bitcode/Archive.h"
#include "llvm/Config/config.h"
#include <memory>
#include <set>
@ -96,7 +96,7 @@ Linker::LinkInArchive(const sys::Path &Filename, bool &is_native) {
// Open the archive file
verbose("Linking archive file '" + Filename.toString() + "'");
// Find all of the symbols currently undefined in the bytecode program.
// Find all of the symbols currently undefined in the bitcode program.
// If all the symbols are defined, the program is complete, and there is
// no reason to link in any archive files.
std::set<std::string> UndefinedSymbols;

View File

@ -13,16 +13,12 @@
#include "llvm/Linker.h"
#include "llvm/Module.h"
#include "llvm/Bytecode/Reader.h"
#include "llvm/Bitcode/ReaderWriter.h"
#include "llvm/Config/config.h"
#include "llvm/Support/MemoryBuffer.h"
#include "llvm/Support/Streams.h"
#include "llvm/Support/Compressor.h"
using namespace llvm;
static const bool Bitcode = false;
Linker::Linker(const std::string& progname, const std::string& modname, unsigned flags)
: Composite(0)
, LibPaths()
@ -107,18 +103,13 @@ Linker::LoadObject(const sys::Path &FN) {
Module *Result = 0;
const std::string &FNS = FN.toString();
if (Bitcode) {
std::auto_ptr<MemoryBuffer> Buffer(
std::auto_ptr<MemoryBuffer> Buffer(
MemoryBuffer::getFileOrSTDIN(&FNS[0], FNS.size()));
if (Buffer.get())
Result = ParseBitcodeFile(Buffer.get(), &ParseErrorMessage);
else
ParseErrorMessage = "Error reading file '" + FNS + "'";
if (Buffer.get())
Result = ParseBitcodeFile(Buffer.get(), &ParseErrorMessage);
else
ParseErrorMessage = "Error reading file '" + FNS + "'";
} else {
Result = ParseBytecodeFile(FNS, Compressor::decompressToNewBuffer,
&ParseErrorMessage);
}
if (Result)
return std::auto_ptr<Module>(Result);
Error = "Bytecode file '" + FN.toString() + "' could not be loaded";