From: OCHyams Date: Wed, 11 Jan 2023 15:38:01 +0000 (+0000) Subject: [Assignment Tracking][Docs] Add new metadata to LangRef.rst X-Git-Tag: upstream/17.0.6~21370 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a66c8c7f340dedbe40bcc07e6843081d19eca803;p=platform%2Fupstream%2Fllvm.git [Assignment Tracking][Docs] Add new metadata to LangRef.rst And link to the AssignmentTracking.md document which goes into more detail. Reviewed By: jryans Differential Revision: https://reviews.llvm.org/D141131 --- diff --git a/llvm/docs/LangRef.rst b/llvm/docs/LangRef.rst index 2cfceb0b2efb..0e2c08d24c75 100644 --- a/llvm/docs/LangRef.rst +++ b/llvm/docs/LangRef.rst @@ -5998,6 +5998,21 @@ valid debug intrinsic. !4 = !DIExpression(DW_OP_constu, 2, DW_OP_swap, DW_OP_xderef) !5 = !DIExpression(DW_OP_constu, 42, DW_OP_stack_value) +DIAssignID +"""""""""""" + +``DIAssignID`` nodes have no operands and are always distinct. They are used to +link together `@llvm.dbg.assign` intrinsics (:ref:`debug +intrinsics`) and instructions that store in IR. See `Debug Info +Assignment Tracking `_ for more info. + +.. code-block:: llvm + + store i32 %a, ptr %a.addr, align 4, !DIAssignID !2 + llvm.dbg.assign(metadata %a, metadata !1, metadata !DIExpression(), !2, metadata %a.addr, metadata !DIExpression()), !dbg !3 + + !2 = distinct !DIAssignID() + DIArgList """"""""""""