[llvm-dev] RFC: Adding an itanium c++ demangler to lib/Support

Rafael EspĂ­ndola via llvm-dev llvm-dev at lists.llvm.org
Thu May 5 12:14:59 PDT 2016


>> My professional opinion, having worked a lot with mangling technology, would be for us to write a new mangler that had incredibly few dependencies on anything.  This would make it easy for us to copy the source or an object file generated by the source.
>
> This lines up with what I'm thinking, I just imagine that the LLDB
> "fast-path" demangler could be a starting point.

So, I would really prefer that whatever we put in lib/Support be fully
generic. How about

* Move the libc++abi one to lib/Support and make sure it doesn't
depend on anything else in llvm and exports just the demangler.  We
keep it dual licensed so that the libc++abi build can include it. We
would probably just have an ifdef in the code to know the function
name to export and share identical copies of the file in llvm and
libc++abi.

* Change lldb's fallback demangler to be llvm's one.

* Once the fastpath demangler can handle all cases, we move its
implementation to be the one in lib/Support.

Cheers,
Rafael


More information about the llvm-dev mailing list