[llvm-dev] Retrieving DbgInfoIntrinsics for a given value
Reid Kleckner via llvm-dev
llvm-dev at lists.llvm.org
Mon Nov 27 15:21:51 PST 2017
Check out llvm::findDbgValues:
void llvm::findDbgValues(SmallVectorImpl<DbgValueInst *> &DbgValues, Value
*V) {
if (auto *L = LocalAsMetadata::getIfExists(V))
if (auto *MDV = MetadataAsValue::getIfExists(V->getContext(), L))
for (User *U : MDV->users())
if (DbgValueInst *DVI = dyn_cast<DbgValueInst>(U))
DbgValues.push_back(DVI);
}
Basically, there is a DenseMap of all values used by debug intrinsics in
the LLVM context.
On Wed, Nov 22, 2017 at 1:29 PM, Hongbin Zheng via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Hi LLVM,
>
> If I have an llvm value "<16 x float> addrspace(1)* %in", and in the LLVM
> IR, there is a @llvm.dbg.value like:
>
> call void @llvm.dbg.value(metadata <16 x float> addrspace(1)* %in, i64 0,
> metadata !216, metadata !28), !dbg !217
>
> How I can retrieve this @llvm.dbg.value when I have "%in"?
>
> Since Metadata is not a part of the uselist anymore, is there some way
> rather than iterate over every instructions in the function to get this
> @llvm.dbg.value?
>
> Thanks
> Hongbin
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20171127/bdf398ce/attachment.html>
More information about the llvm-dev
mailing list