[llvm] [RemoveDIs] Add release note for C API changes (PR #92396)

Orlando Cazalet-Hyams via llvm-commits llvm-commits at lists.llvm.org
Thu May 16 06:40:58 PDT 2024


================
@@ -180,6 +180,27 @@ Changes to the C API
   * ``LLVMGetCallBrNumIndirectDests``
   * ``LLVMGetCallBrIndirectDest``
 
+* Added the following functions for querying and setting the debug info format and for explicitly building either debug intrinsics (old format) or records (new format). These functions will be deprecated and removed in the future as we move towards removing support for the old debug format. See the `debug info migration guide <https://llvm.org/docs/RemoveDIsDebugInfo.html>`_ for more info.
+
+  * ``LLVMIsNewDbgInfoFormat``
+  * ``LLVMSetIsNewDbgInfoFormat``
+  * ``LLVMDIBuilderInsertDeclareIntrinsicBefore``
+  * ``LLVMDIBuilderInsertDeclareIntrinsicAtEnd``
+  * ``LLVMDIBuilderInsertDbgValueIntrinsicBefore``
+  * ``LLVMDIBuilderInsertDbgValueIntrinsicAtEnd``
+  * ``LLVMDIBuilderInsertDeclareRecordBefore``
+  * ``LLVMDIBuilderInsertDeclareRecordAtEnd``
+  * ``LLVMDIBuilderInsertDbgValueRecordBefore``
+  * ``LLVMDIBuilderInsertDbgValueRecordAtEnd``
----------------
OCHyams wrote:

I think we could remove the "InsertDbg...Record" four above without a problem, since these are just aliases for `LLVMDIBuilderInsertDeclareBefore` and friends (the modified ones below).

It's more difficult to remove the intrinsic based insertion functions, e.g. `LLVMDIBuilderInsertDeclareIntrinsicBefore`, because these return a different type to the debug record insertion ones.

All of these functions above have been added as a transition aid for projects that aren't ready to move to debug records (the new debug info format). Most projects shouldn't need to use them. For projects ready to use debug intrinsics the only update required would be to address compiler errors introduced by the new return type of the modified functions below.

https://github.com/llvm/llvm-project/pull/92396


More information about the llvm-commits mailing list