A few months back, the LLVM debug info community agreed it was time to remove the experimental dbg.addr
intrinsic, as we now have better approaches to achieve a similar goal. I’m highlighting this in a new thread just to be sure everyone who may be interested is aware it is on it’s way out.
There are now patches up for review to remove it:
D144792 [DebugInfo][Docs] Remove `dbg.addr` from docs
D144793 [DebugInfo] Upgrade `dbg.addr` to `dbg.value`
D144794 [DebugInfo][NFC] Remove `FuncArgumentDbgValueKind::Addr` from SelectionDAG
D144795 [DebugInfo] Remove `dbg.addr` from Coroutines
D144796 [DebugInfo] Remove `dbg.addr` from MLIR
D144797 [DebugInfo] Remove `dbg.addr` from Transforms
D144798 [DebugInfo] Remove `dbg.addr` from llvm-reduce
D144799 [DebugInfo] Remove `dbg.addr` from Analysis
D144800 [DebugInfo] Remove `dbg.addr` from CodeGen
D144801 [DebugInfo] Remove `dbg.addr` from IR
IR inputs with this intrinsic are auto-upgraded to dbg.value
with DW_OP_deref
appended to the value expression. If your downstream LLVM project was using dbg.addr
, you may wish to make a similar conversion to dbg.value
.