[llvm] r210299 - Fix null dereference with -debug-only=dwarfdebug

Justin Bogner mail at justinbogner.com
Mon Jun 9 13:11:14 PDT 2014


Alexey Samsonov <vonosmas at gmail.com> writes:
>>>> Missed a newline here?
>>>
>>> Should be fine, newline is inserted automatically when you print a
>>> MachineInstruction.
>>
>> Ok, then...
>>
>>>>> +   else
>>>>> +     DEBUG(dbgs() << "\tNULL\n");
>>
>> should we remove the newline here?
>
> Why? If we print MachineInstr, it is followed by a newline automatically. If
> we are printing "NULL" manually,
> we should print newline ourselves for consistency.

Oh, I understand now. I was thrown off by the fact that the old version
*did* emit a newline after the MachineInstr, whereas this one didn't.

>     >>>    const MCSymbol *StartLabel = getLabelBeforeInsn(Begin);
>     >>>    assert(StartLabel && "Forgot label before DBG_VALUE starting a
>     range!");
>     >>> @@ -1233,8 +1238,6 @@ DwarfDebug::collectVariableInfo(SmallPtr
>     >>>     EndLabel = getLabelBeforeInsn(std::next(I)->first);
>     >>>     assert(EndLabel && "Forgot label after instruction ending a range!
>     ");
>     >>>
>     >>> -   DEBUG(dbgs() << "DotDebugLoc Pair:\n"
>     >>> -                << "\t" << *Begin << "\t" << *End << "\n");
>     >>>     DebugLocEntry Loc(StartLabel, EndLabel, getDebugLocValue(Begin),
>     TheCU);
>     >>>     if (DebugLoc.empty() || !DebugLoc.back().Merge(Loc))
>     >>>       DebugLoc.push_back(std::move(Loc));
>
> --
> Alexey Samsonov
> vonosmas at gmail.com



More information about the llvm-commits mailing list