From dd61274f775a50875d389b68c44151b5742e0ae7 Mon Sep 17 00:00:00 2001 From: Lang Hames Date: Thu, 9 May 2019 22:03:57 +0000 Subject: [JITLink] Improve/fix some JITLink debugging output. Adds full edge details (rather than just edge targets) when out-of-range errors are generated. Also fixes a bug where debugging output accessed an invalidated DenseMap iterator by moving the debugging output above the invalidation point. llvm-svn: 360383 --- llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp') diff --git a/llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp b/llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp index 5feff393ebd..215742c0e52 100644 --- a/llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp +++ b/llvm/lib/ExecutionEngine/JITLink/MachOAtomGraphBuilder.cpp @@ -338,21 +338,21 @@ Error MachOAtomGraphBuilder::addNonCustomAtoms() { auto AltEntryStartItr = AltEntryStarts.find(&*AltEntryPred); if (AltEntryStartItr != AltEntryStarts.end()) { // If the predecessor was an alt-entry atom then re-use its value. - AltEntryStarts[DA] = AltEntryStartItr->second; LLVM_DEBUG({ dbgs() << " " << *DA << " -> " << *AltEntryStartItr->second << " (based on existing entry for " << *AltEntryPred << ")\n"; }); + AltEntryStarts[DA] = AltEntryStartItr->second; } else { // If the predecessor does not have an entry then add an entry for this // atom (i.e. the alt_entry atom) and a self-reference entry for the /// predecessory atom that is the start of this chain. - AltEntryStarts[&*AltEntryPred] = &*AltEntryPred; - AltEntryStarts[DA] = &*AltEntryPred; LLVM_DEBUG({ dbgs() << " " << *AltEntryPred << " -> " << *AltEntryPred << "\n" << " " << *DA << " -> " << *AltEntryPred << "\n"; }); + AltEntryStarts[&*AltEntryPred] = &*AltEntryPred; + AltEntryStarts[DA] = &*AltEntryPred; } } -- cgit v1.2.3