[LLVMdev] Debug information and bitcode linking patch

Richard Pennington rich at pennware.com
Mon Aug 17 15:44:47 PDT 2009


Devang Patel wrote:
> On Sun, Aug 16, 2009 at 11:47 AM, Richard Pennington<rich at pennware.com> wrote:
>> Richard Pennington wrote:
>>> Hi,
>>>
>>> The enclosed patch preserves debug information about compilation units,
>>> functions, and line number information when doing bitcode linking. I'm not
>>> easily able to try this for non-bitcode linking. Could someone familiar with
>>> debug info take a look and tell me if it appears to be benign?
>>>
>>> The rational is that formerly the compile units and subprogram definitions
>>> were made into a single occurrence after linking, which really messed up the
>>> debug info. This patch keeps them separate, as they should be.
>>>

Hi Devang,

Actually, it is the right approach. The optimizer won't optimize the 
debug info out unless the llvm.dbg.function.start instruction, or the 
entire function, is removed. If the llvm.dbg.function start instruction 
is optimized away for some reason, the subprogram data is useless.

I think this should go in to 2.06, because it fixes something that is 
currently broken.

I'm looking forward to the new post 2.06 implementation.

-Rich




More information about the llvm-dev mailing list