IR: fieldIsMDNode() should be false for MDString

Simplify the code.  It has been a while since the schema has been so
"flexible".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229573 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Duncan P. N. Exon Smith 2015-02-17 22:34:15 +00:00
parent 4c9121d5d9
commit 54d7f09b71

View File

@ -385,16 +385,9 @@ bool DIObjCProperty::Verify() const {
}
/// \brief Check if a field at position Elt of a MDNode is a MDNode.
///
/// We currently allow an empty string and an integer.
/// But we don't allow a non-empty string in a MDNode field.
static bool fieldIsMDNode(const MDNode *DbgNode, unsigned Elt) {
// FIXME: This function should return true, if the field is null or the field
// is indeed a MDNode: return !Fld || isa<MDNode>(Fld).
Metadata *Fld = getField(DbgNode, Elt);
if (Fld && isa<MDString>(Fld) && !cast<MDString>(Fld)->getString().empty())
return false;
return true;
return !Fld || isa<MDNode>(Fld);
}
/// \brief Check if a field at position Elt of a MDNode is a MDString.