[PATCH] D51238: Add a unit test for DILocation::getMergedLocation()

David Blaikie via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 27 11:54:30 PDT 2018


Could you still come up with a practical test case for this? (doesn't
necessarily need to be checked in, to be honest - but something to validate
that this use case/support is needed & not working around a bug (& if it is
working around a bug, that we know about it so we can remove the workaround
eventually & not leave it in as folklore and cruft))

I can imagine that there could be cases where there would be no common
scope - due to inlining into a nodebug function (we have that classic
assertion to ensure all scope chains lead to the DISubprogram that contains
those locations - but that does not apply if there is no DISubprogram for a
function - if it is nodebug and has had debug info inlined into it (which
is still useful if, then, the nodebug function is inlined into somewhere
else)). So maybe you can search around there.

Though I also think probably the right answer here is not to pick one of
the two locations, but to drop the location entirely.

- Dave

On Fri, Aug 24, 2018 at 4:31 PM Phabricator via Phabricator <
reviews at reviews.llvm.org> wrote:

> This revision was not accepted when it landed; it landed in state "Needs
> Review".
> This revision was automatically updated to reflect the committed changes.
> Closed by commit rL340672: Prevent DILocation::getMergedLocation() from
> creating invalid metadata. (authored by adrian, committed by ).
>
> Changed prior to commit:
>   https://reviews.llvm.org/D51238?vs=162492&id=162499#toc
>
> Repository:
>   rL LLVM
>
> https://reviews.llvm.org/D51238
>
> Files:
>   llvm/trunk/lib/IR/DebugInfoMetadata.cpp
>   llvm/trunk/unittests/IR/MetadataTest.cpp
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180827/3c619293/attachment.html>


More information about the llvm-commits mailing list