diff options
author | David Blaikie <dblaikie@gmail.com> | 2014-08-04 19:30:08 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2014-08-04 19:30:08 +0000 |
commit | 448c066eea867a4e670a24bf505eae93eead59af (patch) | |
tree | 6961db20e146f9a7cdbf6f24af91aca485dc49e0 /llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp | |
parent | 89872e99a51761419440e16c839f4e8b6b4e6fce (diff) | |
download | bcm5719-llvm-448c066eea867a4e670a24bf505eae93eead59af.tar.gz bcm5719-llvm-448c066eea867a4e670a24bf505eae93eead59af.zip |
Reapply "DebugInfo: Ensure that all debug location scope chains from instructions within a function, lead to the function itself."
Originally reverted in r213432 with flakey failures on an ASan self-host
build. After reduction it seems to be the same issue fixed in r213805
(ArgPromo + DebugInfo: Handle updating debug info over multiple
applications of argument promotion) and r213952 (by having
LiveDebugVariables strip dbg_value intrinsics in functions that are not
described by debug info). Though I cannot explain why this failure was
flakey...
llvm-svn: 214761
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 454c10f1808..aa6a0c5c2ba 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -796,8 +796,7 @@ void DwarfDebug::finishVariableDefinitions() { for (const auto &Var : ConcreteVariables) { DIE *VariableDie = Var->getDIE(); // FIXME: There shouldn't be any variables without DIEs. - if (!VariableDie) - continue; + assert(VariableDie); // FIXME: Consider the time-space tradeoff of just storing the unit pointer // in the ConcreteVariables list, rather than looking it up again here. // DIE::getUnit isn't simple - it walks parent pointers, etc. |