summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-10-09 06:14:26 +0000
committerChris Lattner <sabre@nondot.org>2003-10-09 06:14:26 +0000
commit1e8addf890e13cd83f800902c40cd36f3ca462de (patch)
tree102a6cd47a24a42489cc00a7de3b0b5f7daed601 /llvm/lib
parent42dce1e365aafdd1c6543112632e20a858610577 (diff)
downloadbcm5719-llvm-1e8addf890e13cd83f800902c40cd36f3ca462de.tar.gz
bcm5719-llvm-1e8addf890e13cd83f800902c40cd36f3ca462de.zip
Eliminate the instruction placeholder. Simplify a bunch of code.
This results in no significant speedup, but does provide simpler code llvm-svn: 8980
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Bytecode/Reader/Reader.cpp2
-rw-r--r--llvm/lib/Bytecode/Reader/ReaderInternals.h14
2 files changed, 1 insertions, 15 deletions
diff --git a/llvm/lib/Bytecode/Reader/Reader.cpp b/llvm/lib/Bytecode/Reader/Reader.cpp
index 714d813a685..4011af7b049 100644
--- a/llvm/lib/Bytecode/Reader/Reader.cpp
+++ b/llvm/lib/Bytecode/Reader/Reader.cpp
@@ -134,7 +134,7 @@ Value *BytecodeParser::getValue(unsigned type, unsigned oNum, bool Create) {
if (I != ForwardReferences.end() && I->first == KeyValue)
return I->second; // We have already created this placeholder
- Value *Val = new ValPHolder(getType(type), oNum);
+ Value *Val = new Argument(getType(type));
ForwardReferences.insert(I, std::make_pair(KeyValue, Val));
return Val;
}
diff --git a/llvm/lib/Bytecode/Reader/ReaderInternals.h b/llvm/lib/Bytecode/Reader/ReaderInternals.h
index d53fcab2326..410be3a24ae 100644
--- a/llvm/lib/Bytecode/Reader/ReaderInternals.h
+++ b/llvm/lib/Bytecode/Reader/ReaderInternals.h
@@ -203,20 +203,12 @@ public:
unsigned getID() { return ID; }
};
-struct InstPlaceHolderHelper : public Instruction {
- InstPlaceHolderHelper(const Type *Ty) : Instruction(Ty, UserOp1, "") {}
- virtual const char *getOpcodeName() const { return "placeholder"; }
-
- virtual Instruction *clone() const { abort(); return 0; }
-};
-
struct ConstantPlaceHolderHelper : public Constant {
ConstantPlaceHolderHelper(const Type *Ty)
: Constant(Ty) {}
virtual bool isNullValue() const { return false; }
};
-typedef PlaceholderDef<InstPlaceHolderHelper> ValPHolder;
typedef PlaceholderDef<ConstantPlaceHolderHelper> ConstPHolder;
// Some common errors we find
@@ -225,12 +217,6 @@ static const std::string Error_read = "read(): error reading.";
static const std::string Error_inputdata = "input_data(): error reading.";
static const std::string Error_DestSlot = "No destination slot found.";
-static inline unsigned getValueIDNumberFromPlaceHolder(Value *Val) {
- if (isa<Constant>(Val))
- return ((ConstPHolder*)Val)->getID();
- return ((ValPHolder*)Val)->getID();
-}
-
static inline void readBlock(const unsigned char *&Buf,
const unsigned char *EndBuf,
unsigned &Type, unsigned &Size) {
OpenPOWER on IntegriCloud