[llvm] [DebugInfo][DWARF] Allow memory locations in DW_AT_call_target expressions (PR #171183)

Orlando Cazalet-Hyams via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 11 11:25:01 PST 2025


================

----------------
OCHyams wrote:

That is a good question! I did some digging -

I believe the comment refers to the need for the `if` statement to avoid performing the `MI.getDesc().operands()[CalleeOp.getOperandNo()]` lookup. Without my patch and without that `if` statement we get a crash in `/home/och/dev/llvm-project/llvm/test/DebugInfo/WebAssembly/call-site.ll` and `/home/och/dev/llvm-project/llvm/test/DebugInfo/WebAssembly/stackified-debug.ll`.

`call-site.ll` checks direct calls work as expected and that indirect calls simple don't cause a crash/assertion and says in a comment that DW_AT_call_target isn't supported for indirect calls for WebAssembly.

Those tests passes with my patch, and it looks like `PhysRegCalleeOperand` is false even for indirect calls, meaning we continue to not-support WebAssembly indirect calls.

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


More information about the llvm-commits mailing list