[LLVMdev] C++ demangler for llvm tools

Sean Silva chisophugis at gmail.com
Tue Feb 10 17:17:04 PST 2015


On Tue, Feb 10, 2015 at 4:41 PM, Michael Spencer <bigcheesegs at gmail.com>
wrote:

> On Tue, Feb 10, 2015 at 10:14 AM, Sumanth Gundapaneni
> <sgundapa at codeaurora.org> wrote:
> > Hi,
> >
> >       AFAIK, the tools “symbolizer, objdump and nm” need a demangler.
> >
> > I see there is libcxxabi which provides the demangle library. But there
> is
> > no support to build libcxxabi on windows with MSVC.
> >
> > This left a huge void and my symbolizer cannot work on Windows if built
> with
> > MSVC.
> >
> >
> >
> > Instead of mucking around OS dependencies, why shouldn’t we have a
> demangle
> > library in LLVM.
> >
> > I already have this implementation locally and it works fine for me on
> both
> > Linux and Windows.
> >
> >
> >
> > Any thoughts ?
>
> Lots of people want this, but nobody has had the time yet. It would
> need to support both the itanium and msvc manglings, and be resilient
> against malicious mangled names (it's possible to construct ~200 byte
> names that expand out to multiple GiBs).
>

Since the itanium and msvc ones are going to be completely separate code
paths, it probably makes sense as an incremental step to do just itanium,
since it seems we already know of a couple implementations we could
integrate.

-- Sean Silva


>
> - Michael Spencer
>
> >
> >
> >
> > --Sumanth G
> >
> >
> >
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> >
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150210/82151a77/attachment.html>


More information about the llvm-dev mailing list