mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-09-25 17:20:48 +00:00
DebugInfo: Simplify logic in DIType::Verify(), NFC
Clarify the logic in `DIType::Verify()` by checking `isBasicType()` earlier, by skipping `else` after `return`s, and by documenting an otherwise opaque check. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@232410 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -266,30 +266,32 @@ bool DIType::Verify() const {
|
|||||||
if (!isScopeRef(N->getScope()))
|
if (!isScopeRef(N->getScope()))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
// FIXME: Sink this into the various subclass verifies.
|
|
||||||
uint16_t Tag = getTag();
|
|
||||||
if (!isBasicType() && Tag != dwarf::DW_TAG_const_type &&
|
|
||||||
Tag != dwarf::DW_TAG_volatile_type && Tag != dwarf::DW_TAG_pointer_type &&
|
|
||||||
Tag != dwarf::DW_TAG_ptr_to_member_type &&
|
|
||||||
Tag != dwarf::DW_TAG_reference_type &&
|
|
||||||
Tag != dwarf::DW_TAG_rvalue_reference_type &&
|
|
||||||
Tag != dwarf::DW_TAG_restrict_type && Tag != dwarf::DW_TAG_array_type &&
|
|
||||||
Tag != dwarf::DW_TAG_enumeration_type &&
|
|
||||||
Tag != dwarf::DW_TAG_subroutine_type &&
|
|
||||||
Tag != dwarf::DW_TAG_inheritance && Tag != dwarf::DW_TAG_friend &&
|
|
||||||
getFilename().empty())
|
|
||||||
return false;
|
|
||||||
|
|
||||||
// DIType is abstract, it should be a BasicType, a DerivedType or
|
// DIType is abstract, it should be a BasicType, a DerivedType or
|
||||||
// a CompositeType.
|
// a CompositeType.
|
||||||
if (isBasicType())
|
if (isBasicType())
|
||||||
return DIBasicType(DbgNode).Verify();
|
return DIBasicType(DbgNode).Verify();
|
||||||
else if (isCompositeType())
|
|
||||||
|
// FIXME: Sink this into the various subclass verifies.
|
||||||
|
if (getFilename().empty()) {
|
||||||
|
// Check whether the filename is allowed to be empty.
|
||||||
|
uint16_t Tag = getTag();
|
||||||
|
if (Tag != dwarf::DW_TAG_const_type && Tag != dwarf::DW_TAG_volatile_type &&
|
||||||
|
Tag != dwarf::DW_TAG_pointer_type &&
|
||||||
|
Tag != dwarf::DW_TAG_ptr_to_member_type &&
|
||||||
|
Tag != dwarf::DW_TAG_reference_type &&
|
||||||
|
Tag != dwarf::DW_TAG_rvalue_reference_type &&
|
||||||
|
Tag != dwarf::DW_TAG_restrict_type && Tag != dwarf::DW_TAG_array_type &&
|
||||||
|
Tag != dwarf::DW_TAG_enumeration_type &&
|
||||||
|
Tag != dwarf::DW_TAG_subroutine_type &&
|
||||||
|
Tag != dwarf::DW_TAG_inheritance && Tag != dwarf::DW_TAG_friend)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isCompositeType())
|
||||||
return DICompositeType(DbgNode).Verify();
|
return DICompositeType(DbgNode).Verify();
|
||||||
else if (isDerivedType())
|
if (isDerivedType())
|
||||||
return DIDerivedType(DbgNode).Verify();
|
return DIDerivedType(DbgNode).Verify();
|
||||||
else
|
return false;
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DIBasicType::Verify() const { return getRaw(); }
|
bool DIBasicType::Verify() const { return getRaw(); }
|
||||||
|
Reference in New Issue
Block a user