[llvm] [RFC] Emit dwarf data for signature-changed or new functions (PR #157349)

via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 17 08:52:59 PDT 2025


yonghong-song wrote:

@dzhidzhoev There are some discussions here or in discourse (https://discourse.llvm.org/t/rfc-identify-func-signature-change-in-llvm-compiled-kernel-image/82609/9),

The following are the concerns from @OCHyams 

=====

Thanks for giving it a try and sharing your LLDB session. In your example you’ve said:

    So the difference is

      * frame #0: 0x0000555555555161 ex2`inc(x=41, y=<unavailable>) at ex2.c:5:18 [inlined]
        frame #1: 0x0000555555555161 ex2`inc at ex2.c:0

    vs.

      * frame #0: 0x0000555555555161 ex2`inc(x=41, y=<unavailable>) at ex2.c:5:18

    I think It does not impact debugger result itself although frame dump is slightly
    different.

That’s the kind of difference I was concerned about. You’ve said that it doesn’t impact the debugger, but IMO that’s a significant impact as the backtrace is incorrect and the top frame is described as “inlined”. Both could cause much confusion to someone debugging their code.

======

What do you think? The backtrace is different from the original one.
Any suggestion on the current inlinedAt approach? Or change back to my previous suggestion to have a simple implementation with a special CompileUnit and then do more in DwarfDebug (https://github.com/yonghong-song/llvm-project/commit/be0cdea2369dcd6e9050b1d9de49559c19768491)?

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


More information about the llvm-commits mailing list