DebugInfo: partially revert cleanup committed in r209680

I'm not sure exactly where/how we end up with an abstract DbgVariable
with a null DIE, but we do... looking into it & will add a test and/or
fix when I figure it out.

Currently shows up in selfhost or compiler-rt builds.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209683 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
David Blaikie 2014-05-27 20:20:43 +00:00
parent 502ffc7e2d
commit 6343f5cfef

View File

@ -1781,7 +1781,8 @@ std::unique_ptr<DIE> DwarfUnit::constructVariableDIEImpl(const DbgVariable &DV,
// Define variable debug information entry.
auto VariableDie = make_unique<DIE>(DV.getTag());
if (DbgVariable *AbsVar = DV.getAbstractVariable())
DbgVariable *AbsVar = DV.getAbstractVariable();
if (AbsVar && AbsVar->getDIE())
addDIEEntry(*VariableDie, dwarf::DW_AT_abstract_origin, *AbsVar->getDIE());
else {
if (!Name.empty())