[LLVMdev] DWARF validation?

Adrian Prantl aprantl at apple.com
Thu Mar 12 14:01:05 PDT 2015


> On Mar 12, 2015, at 1:06 PM, Talin <viridia at gmail.com> wrote:
> 
> When developing an LLVM-based frontend, is there a way to automatically verify that the DWARF metadata being emitted is correct? Specifically, I'd like to be able to write some sort of unit test that will fail if the DWARF is invalid. I don't just want to test whether the LLVM metadata statements are well-formed - if I make a change that will cause lldb or gdb to barf, I would like to have at least a 50% chance to catch this beforehand. I can't really run the debugger in a unit test, and even if I could the resulting error message is likely to be poor. This means that the validator would have to incorporate knowledge of the DWARF standard. Is there such a thing?
> 
> Trying to ensure that DWARF is correct is one of the reasons why I abandoned my earlier LLVM project a few years ago, it was simply too hard then. I'm just wondering if the situation has improved in the last several years.

The dwarfdump utility in MacOS X has a --verify mode. We are planning to add similar functionality to llvm-dwarfdump soon-ish.

-- adrian





More information about the llvm-dev mailing list