Changes For Bug 352

Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer
2004-09-01 22:55:40 +00:00
parent ed543731fb
commit 551ccae044
424 changed files with 766 additions and 7662 deletions

View File

@@ -24,7 +24,7 @@
#include "llvm/SymbolTable.h"
#include "llvm/Bytecode/Format.h"
#include "llvm/Support/GetElementPtrTypeIterator.h"
#include "Support/StringExtras.h"
#include "llvm/ADT/StringExtras.h"
#include <sstream>
using namespace llvm;
@@ -428,14 +428,20 @@ Value * BytecodeReader::getValue(unsigned type, unsigned oNum, bool Create) {
if (!Create) return 0; // Do not create a placeholder?
// Did we already create a place holder?
std::pair<unsigned,unsigned> KeyValue(type, oNum);
ForwardReferenceMap::iterator I = ForwardReferences.lower_bound(KeyValue);
if (I != ForwardReferences.end() && I->first == KeyValue)
return I->second; // We have already created this placeholder
Value *Val = new Argument(getType(type));
ForwardReferences.insert(I, std::make_pair(KeyValue, Val));
return Val;
// If the type exists (it should)
if (const Type* Ty = getType(type)) {
// Create the place holder
Value *Val = new Argument(Ty);
ForwardReferences.insert(I, std::make_pair(KeyValue, Val));
return Val;
}
throw "Can't create placeholder for value of type slot #" + utostr(type);
}
/// This is just like getValue, but when a compaction table is in use, it