diff options
| author | Chris Lattner <sabre@nondot.org> | 2001-10-22 06:01:08 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2001-10-22 06:01:08 +0000 |
| commit | e6b470c3f1c969a6d31397f41a4bad960939606c (patch) | |
| tree | d01fc58edc10ab8aed5445bd6d19a28ec82a6c53 /llvm/lib/AsmParser | |
| parent | d50fa5aa36bf8de888198c43a0f69617f59373d7 (diff) | |
| download | bcm5719-llvm-e6b470c3f1c969a6d31397f41a4bad960939606c.tar.gz bcm5719-llvm-e6b470c3f1c969a6d31397f41a4bad960939606c.zip | |
Remove ugly subclass of Opaque type
llvm-svn: 936
Diffstat (limited to 'llvm/lib/AsmParser')
| -rw-r--r-- | llvm/lib/AsmParser/ParserInternals.h | 10 | ||||
| -rw-r--r-- | llvm/lib/AsmParser/llvmAsmParser.y | 10 |
2 files changed, 4 insertions, 16 deletions
diff --git a/llvm/lib/AsmParser/ParserInternals.h b/llvm/lib/AsmParser/ParserInternals.h index cc37bd9bf97..fe422d07443 100644 --- a/llvm/lib/AsmParser/ParserInternals.h +++ b/llvm/lib/AsmParser/ParserInternals.h @@ -160,13 +160,6 @@ public: int getLineNum() const { return LineNum; } }; -struct TypePlaceHolderHelper : public OpaqueType { - TypePlaceHolderHelper(const Type *Ty) : OpaqueType() { - assert(Ty == Type::TypeTy); - } -}; - - struct InstPlaceHolderHelper : public Instruction { InstPlaceHolderHelper(const Type *Ty) : Instruction(Ty, UserOp1, "") {} @@ -184,7 +177,6 @@ struct MethPlaceHolderHelper : public Method { MethPlaceHolderHelper(const Type *Ty) : Method(cast<const MethodType>(Ty)) {} }; -typedef PlaceholderValue<TypePlaceHolderHelper> TypePlaceHolder; typedef PlaceholderValue<InstPlaceHolderHelper> ValuePlaceHolder; typedef PlaceholderValue<BBPlaceHolderHelper> BBPlaceHolder; @@ -195,7 +187,6 @@ static inline ValID &getValIDFromPlaceHolder(const Value *Val) { Ty = cast<PointerType>(Ty)->getValueType(); switch (Ty->getPrimitiveID()) { - case Type::TypeTyID: return ((TypePlaceHolder*)Val)->getDef(); case Type::LabelTyID: return ((BBPlaceHolder*)Val)->getDef(); default: return ((ValuePlaceHolder*)Val)->getDef(); } @@ -208,7 +199,6 @@ static inline int getLineNumFromPlaceHolder(const Value *Val) { Ty = cast<PointerType>(Ty)->getValueType(); switch (Ty->getPrimitiveID()) { - case Type::TypeTyID: return ((TypePlaceHolder*)Val)->getLineNum(); case Type::LabelTyID: return ((BBPlaceHolder*)Val)->getLineNum(); default: return ((ValuePlaceHolder*)Val)->getLineNum(); } diff --git a/llvm/lib/AsmParser/llvmAsmParser.y b/llvm/lib/AsmParser/llvmAsmParser.y index 60c966e1eb7..7276acfcdea 100644 --- a/llvm/lib/AsmParser/llvmAsmParser.y +++ b/llvm/lib/AsmParser/llvmAsmParser.y @@ -237,7 +237,7 @@ static const Type *getTypeVal(const ValID &D, bool DoNotImprovise = false) { return I->second; } - Type *Typ = new TypePlaceHolder(Type::TypeTy, D); + Type *Typ = OpaqueType::get(); LateResolver.insert(make_pair(D, Typ)); return Typ; } @@ -473,14 +473,12 @@ static void ResolveTypeTo(char *Name, const Type *ToTy) { // static void ResolveTypes(map<ValID, PATypeHolder<Type> > &LateResolveTypes) { if (!LateResolveTypes.empty()) { - ValID &DID = LateResolveTypes.begin()->first; + const ValID &DID = LateResolveTypes.begin()->first; if (DID.Type == ValID::NameVal) - ThrowException("Reference to an invalid type: '" +DID.getName() + "'", - getLineNumFromPlaceHolder(Ty)); + ThrowException("Reference to an invalid type: '" +DID.getName() + "'"); else - ThrowException("Reference to an invalid type: #" + itostr(DID.Num), - getLineNumFromPlaceHolder(Ty)); + ThrowException("Reference to an invalid type: #" + itostr(DID.Num)); } } |

