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 ? --Sumanth G -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150210/264ed492/attachment.html>
This has come up before. The best candidate is likely not the demangler in libcxxabi, but the demangler that used to be in libcxxabi but was determined to be too heavy. This demangler was designed to be flexible and useful in a much wider context. David> On 10 Feb 2015, at 18:14, 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 ? > > --Sumanth G > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
What if I resurrect that version and keep it in lib/Support ? I think I already have that specific version of demangler. --Sumanth G -----Original Message----- From: Dr D. Chisnall [mailto:dc552 at hermes.cam.ac.uk] On Behalf Of David Chisnall Sent: Tuesday, February 10, 2015 10:26 AM To: Sumanth Gundapaneni Cc: llvmdev at cs.uiuc.edu Subject: Re: [LLVMdev] C++ demangler for llvm tools This has come up before. The best candidate is likely not the demangler in libcxxabi, but the demangler that used to be in libcxxabi but was determined to be too heavy. This demangler was designed to be flexible and useful in a much wider context. David> On 10 Feb 2015, at 18:14, 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 ? > > --Sumanth G > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
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). - 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 >
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>