mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
DebugInfo: Remove redundant conditionals/checks from macro info emission
These checks fall out naturally from the current implementation without needing to be explicitly considered anymore.
This commit is contained in:
parent
36e7b7e277
commit
0f9dd4dfe5
@ -2729,30 +2729,20 @@ void DwarfDebug::emitMacroFile(DIMacroFile &F, DwarfCompileUnit &U) {
|
||||
|
||||
/// Emit macros into a debug macinfo section.
|
||||
void DwarfDebug::emitDebugMacinfo() {
|
||||
if (CUMap.empty())
|
||||
return;
|
||||
|
||||
if (llvm::all_of(CUMap, [](const decltype(CUMap)::value_type &Pair) {
|
||||
return Pair.second->getCUNode()->isDebugDirectivesOnly();
|
||||
}))
|
||||
return;
|
||||
|
||||
for (const auto &P : CUMap) {
|
||||
auto &TheCU = *P.second;
|
||||
if (TheCU.getCUNode()->isDebugDirectivesOnly())
|
||||
continue;
|
||||
auto *SkCU = TheCU.getSkeleton();
|
||||
DwarfCompileUnit &U = SkCU ? *SkCU : TheCU;
|
||||
auto *CUNode = cast<DICompileUnit>(P.first);
|
||||
DIMacroNodeArray Macros = CUNode->getMacros();
|
||||
if (!Macros.empty()) {
|
||||
Asm->OutStreamer->SwitchSection(
|
||||
Asm->getObjFileLowering().getDwarfMacinfoSection());
|
||||
Asm->OutStreamer->EmitLabel(U.getMacroLabelBegin());
|
||||
handleMacroNodes(Macros, U);
|
||||
Asm->OutStreamer->AddComment("End Of Macro List Mark");
|
||||
Asm->emitInt8(0);
|
||||
}
|
||||
if (Macros.empty())
|
||||
continue;
|
||||
Asm->OutStreamer->SwitchSection(
|
||||
Asm->getObjFileLowering().getDwarfMacinfoSection());
|
||||
Asm->OutStreamer->EmitLabel(U.getMacroLabelBegin());
|
||||
handleMacroNodes(Macros, U);
|
||||
Asm->OutStreamer->AddComment("End Of Macro List Mark");
|
||||
Asm->emitInt8(0);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user