[LLVMdev] [RFC] Less memory and greater maintainability for debug info IR

Rafael EspĂ­ndola rafael.espindola at gmail.com
Tue Oct 14 13:23:38 PDT 2014

>similar alternative: A schematized metadata node. Much like DWARF, being able to say "this node is of some type T, defined elsewhere in the module - string, int, string, string, etc... ". Heck, this could even be just a generic improvement to llvm IR, maybe? (the textual representation might not need to change at all - IR Generation would just do much like DWARF generation in LLVM does - create abbreviation/type descriptions on the fly and share them rather than having every metadata node include its own self-description)
> "Being generic" seems like a defect to me, not a feature.  If you need
> to add support for every IR construct to the backend to emit DIEs, etc.,
> then what's the benefit in being able to express arbitrary other things?

I fully agree. In general I find it better to have an IR that can
represent only the features we need. The gains on readability and
verification from having a dedicated parser for the .ll representation
are also too awesome to ignore.


More information about the llvm-dev mailing list