forked from OSchip/llvm-project
Move somewhat messy conditional out of line.
No functional change. llvm-svn: 187843
This commit is contained in:
parent
e50b9a2c8a
commit
af15f8dd5a
|
@ -1092,6 +1092,14 @@ static bool isContainedInAnonNamespace(DIE *Die) {
|
|||
return false;
|
||||
}
|
||||
|
||||
/// Test if the current CU language is C++ and that we have
|
||||
/// a named type that is not contained in an anonymous namespace.
|
||||
static bool shouldAddODRHash(CompileUnit *CU, DIE *Die) {
|
||||
return (CU->getLanguage() == dwarf::DW_LANG_C_plus_plus &&
|
||||
getDIEStringAttr(Die, dwarf::DW_AT_name) != "" &&
|
||||
!isContainedInAnonNamespace(Die));
|
||||
}
|
||||
|
||||
void DwarfDebug::finalizeModuleInfo() {
|
||||
// Collect info for variables that were optimized out.
|
||||
collectDeadVariables();
|
||||
|
@ -1113,13 +1121,9 @@ void DwarfDebug::finalizeModuleInfo() {
|
|||
for (unsigned i = 0, e = TypeUnits.size(); i != e; ++i) {
|
||||
MD5 Hash;
|
||||
DIE *Die = TypeUnits[i];
|
||||
// If we've requested ODR hashes, the current language is C++, the type is
|
||||
// named, and the type isn't located inside a C++ anonymous namespace then
|
||||
// add the ODR signature attribute now.
|
||||
if (GenerateODRHash &&
|
||||
CUMap.begin()->second->getLanguage() == dwarf::DW_LANG_C_plus_plus &&
|
||||
(getDIEStringAttr(Die, dwarf::DW_AT_name) != "") &&
|
||||
!isContainedInAnonNamespace(Die))
|
||||
// If we've requested ODR hashes and it's applicable for an ODR hash then
|
||||
// add the ODR signature now.
|
||||
if (GenerateODRHash && shouldAddODRHash(CUMap.begin()->second, Die))
|
||||
addDIEODRSignature(Hash, CUMap.begin()->second, Die);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue