[all-commits] [llvm/llvm-project] f0dbcf: [RemoveDIs] Update DIBuilder C API with DbgRecord ...

Orlando Cazalet-Hyams via All-commits all-commits at lists.llvm.org
Mon Mar 18 04:45:36 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f0dbcfe3526e2d8e1c4863828877ac21e08023a0
      https://github.com/llvm/llvm-project/commit/f0dbcfe3526e2d8e1c4863828877ac21e08023a0
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2024-03-18 (Mon, 18 Mar 2024)

  Changed paths:
    M llvm/docs/RemoveDIsDebugInfo.md
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm-c/DebugInfo.h
    M llvm/include/llvm-c/Types.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/tools/llvm-c-test/debuginfo.c
    M llvm/tools/llvm-c-test/llvm-c-test.h
    M llvm/tools/llvm-c-test/main.c

  Log Message:
  -----------
  [RemoveDIs] Update DIBuilder C API with DbgRecord functions [1/2] (#84915)

Follow on from #84739, which updates the DIBuilder class.

All the functions that have been added are temporary and will be
deprecated in the future. The intention is that they'll help downstream
projects adapt during the transition period.

```
New functions (all to be deprecated)
------------------------------------
LLVMIsNewDbgInfoFormat                      # Returns true if the module is in the new non-instruction mode.
LLVMSetIsNewDbgInfoFormat                   # Convert to the requested debug info format.

LLVMDIBuilderInsertDeclareIntrinsicBefore   # Insert a debug intrinsic (old debug info format). 
LLVMDIBuilderInsertDeclareIntrinsicAtEnd    # Same as above.
LLVMDIBuilderInsertDbgValueIntrinsicBefore  # Same as above.
LLVMDIBuilderInsertDbgValueIntrinsicAtEnd   # Same as above.

LLVMDIBuilderInsertDeclareRecordBefore      # Insert a debug record (new debug info format). 
LLVMDIBuilderInsertDeclareRecordAtEnd       # Same as above.
LLVMDIBuilderInsertDbgValueRecordBefore     # Same as above.
LLVMDIBuilderInsertDbgValueRecordAtEnd      # Same as above.
```

The existing `LLVMDIBuilderInsert...` functions call through to the
intrinsic versions (old debug info format) currently.

In the next patch, I'll swap them to call the debug records versions
(new debug info format). Downstream users of this API can query and
change the current format using the first two functions above, or can
instead opt to temporarily use intrinsics or records explicitly.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list