summaryrefslogtreecommitdiffstats
path: root/llvm/lib/AsmParser/ParserInternals.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-10-16 18:17:13 +0000
committerChris Lattner <sabre@nondot.org>2004-10-16 18:17:13 +0000
commit4ff314968e08081b7cf0f2a37937fe1ea8709e2d (patch)
treecea9c47d0f9241829bc18ba78f4253eee619455e /llvm/lib/AsmParser/ParserInternals.h
parent2978437b76885522c201e8f581b4c5809f25b5ff (diff)
downloadbcm5719-llvm-4ff314968e08081b7cf0f2a37937fe1ea8709e2d.tar.gz
bcm5719-llvm-4ff314968e08081b7cf0f2a37937fe1ea8709e2d.zip
Parse undef and unreachable
llvm-svn: 17053
Diffstat (limited to 'llvm/lib/AsmParser/ParserInternals.h')
-rw-r--r--llvm/lib/AsmParser/ParserInternals.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/AsmParser/ParserInternals.h b/llvm/lib/AsmParser/ParserInternals.h
index 9fdc8e66f8b..98ea0341c69 100644
--- a/llvm/lib/AsmParser/ParserInternals.h
+++ b/llvm/lib/AsmParser/ParserInternals.h
@@ -72,7 +72,7 @@ static inline void ThrowException(const std::string &message,
struct ValID {
enum {
NumberVal, NameVal, ConstSIntVal, ConstUIntVal, ConstFPVal, ConstNullVal,
- ConstantVal,
+ ConstUndefVal, ConstantVal,
} Type;
union {
@@ -108,6 +108,10 @@ struct ValID {
ValID D; D.Type = ConstNullVal; return D;
}
+ static ValID createUndef() {
+ ValID D; D.Type = ConstUndefVal; return D;
+ }
+
static ValID create(Constant *Val) {
ValID D; D.Type = ConstantVal; D.ConstantValue = Val; return D;
}
@@ -130,6 +134,7 @@ struct ValID {
case NameVal : return Name;
case ConstFPVal : return ftostr(ConstPoolFP);
case ConstNullVal : return "null";
+ case ConstUndefVal : return "undef";
case ConstUIntVal :
case ConstSIntVal : return std::string("%") + itostr(ConstPool64);
case ConstantVal:
@@ -152,6 +157,7 @@ struct ValID {
case ConstUIntVal: return UConstPool64 < V.UConstPool64;
case ConstFPVal: return ConstPoolFP < V.ConstPoolFP;
case ConstNullVal: return false;
+ case ConstUndefVal: return false;
case ConstantVal: return ConstantValue < V.ConstantValue;
default: assert(0 && "Unknown value type!"); return false;
}
OpenPOWER on IntegriCloud