[Issue 14698] Un-mangle symbols in disassembly?

2015-08-05 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

Rainer Schuetze r.sagita...@gmx.de changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #12 from Rainer Schuetze r.sagita...@gmx.de ---
released in
https://github.com/D-Programming-Language/visuald/releases/tag/v0.3.42

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-08-05 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

--- Comment #13 from Rainer Schuetze r.sagita...@gmx.de ---
 The next version of binutils/gdb will have pretty much near complete 2.068
 support. In my local tests, it managed to demangle all symbols in Phobos 
 and druntime (core.demangle barely got 20% - and even then some were 
 massively incorrect).

I could use the D demangler from binutils in my tool, too. Also, the mago debug
engine might need an update to its demangler.

Do you plan to submit those fixes to core.demangle, too?

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-30 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

--- Comment #11 from Iain Buclaw ibuc...@gdcproject.org ---
(In reply to Rainer Schuetze from comment #9)
  Support was added in binutils 2.25
 
 I've build this version, but noticed that it doesn't demangle full text
 files, just the arguments given on the command line. Instead, it reports
 Internal error: no symbol alphabet for current style. That has an easy
 fix, though.
 
 As cxxfilt will very likely never support compressed symbols aswell as MS
 mangled symbols, I've compiled my own version supporting all 3 manglings
 (D/gcc/cl) including compression.
 

Nice wrapper you've got there.  The next version of binutils/gdb will have
pretty much near complete 2.068 support. In my local tests, it managed to
demangle all symbols in Phobos and druntime (core.demangle barely got 20% - and
even then some were massively incorrect).

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-27 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

--- Comment #10 from Manu turkey...@gmail.com ---
Seems to be working great now!

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-26 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

--- Comment #9 from Rainer Schuetze r.sagita...@gmx.de ---
 Support was added in binutils 2.25

I've build this version, but noticed that it doesn't demangle full text files,
just the arguments given on the command line. Instead, it reports Internal
error: no symbol alphabet for current style. That has an easy fix, though.

As cxxfilt will very likely never support compressed symbols aswell as MS
mangled symbols, I've compiled my own version supporting all 3 manglings
(D/gcc/cl) including compression.

Disassembly with demangled symbols is now enabled if the global option
Demangle symbols in linker messages/disassembly is checked. Try it in
https://github.com/D-Programming-Language/visuald/releases/tag/v0.3.42-beta2

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-22 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

--- Comment #8 from Rainer Schuetze r.sagita...@gmx.de ---
 What will happen for binaries with both D and C++ symbols?

Good question. I was just about to adapt the demangling of linker messages to
fit this use case aswell, but C++ symbols are not supported (nor by ddemangle
which also doesn't support compressed symbols on Win32). Having two different
C++ manglings is not so great, too.

For gdc builds you could chain two calls to c++filt if a binary is available.

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-22 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

--- Comment #7 from Manu turkey...@gmail.com ---
What will happen for binaries with both D and C++ symbols?

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-17 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

--- Comment #6 from Iain Buclaw ibuc...@gdcproject.org ---
(In reply to Rainer Schuetze from comment #5)
 Maybe the Windows versions don't have it?
 
 I tried
 
 c:\l\GDC-2.066\bin\c++filt.exe --version
 GNU c++filt (crosstool-NG 1.20.0 - 20150413-2.066.1-f378f9ab41) 2.23.1
 
 c:\l\GDC-2.066\bin\c++filt.exe --format=dlang
 c:\l\GDC-2.066\bin\c++filt.exe: unknown demangling style `dlang'

Support was added in binutils 2.25

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-16 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

Iain Buclaw ibuc...@gdcproject.org changed:

   What|Removed |Added

 CC||ibuc...@gdcproject.org

--- Comment #4 from Iain Buclaw ibuc...@gdcproject.org ---
(In reply to Rainer Schuetze from comment #3)
  GDC is generally bundled with binutils which includes D symbol demangling 
  in the relevant tools(e.g, c++filt, objdump, etc)
 
 I don't see any D demangling support in objdump/c++filt in the latest GDC
 build I could find at http://gdcproject.org/downloads. Any hidden option I
 should use?

-s dlang or --format=dlang

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-16 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

--- Comment #5 from Rainer Schuetze r.sagita...@gmx.de ---
Maybe the Windows versions don't have it?

I tried

c:\l\GDC-2.066\bin\c++filt.exe --version
GNU c++filt (crosstool-NG 1.20.0 - 20150413-2.066.1-f378f9ab41) 2.23.1

c:\l\GDC-2.066\bin\c++filt.exe --format=dlang
c:\l\GDC-2.066\bin\c++filt.exe: unknown demangling style `dlang'

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-16 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

--- Comment #3 from Rainer Schuetze r.sagita...@gmx.de ---
 GDC is generally bundled with binutils which includes D symbol demangling in 
 the relevant tools(e.g, c++filt, objdump, etc)

I don't see any D demangling support in objdump/c++filt in the latest GDC build
I could find at http://gdcproject.org/downloads. Any hidden option I should
use?

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-14 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

weaselcat r9shacklef...@gmail.com changed:

   What|Removed |Added

 CC||r9shacklef...@gmail.com

--- Comment #2 from weaselcat r9shacklef...@gmail.com ---
@Rainer

GDC is generally bundled with binutils which includes D symbol demangling in
the relevant tools(e.g, c++filt, objdump, etc)

--


[Issue 14698] Un-mangle symbols in disassembly?

2015-06-14 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14698

Rainer Schuetze r.sagita...@gmx.de changed:

   What|Removed |Added

 CC||r.sagita...@gmx.de

--- Comment #1 from Rainer Schuetze r.sagita...@gmx.de ---
Actually, you can get that already by piping the assembly output through
ddemangle. Set the disassembly command to something like:

$(VCINSTALLDIR)\bin\dumpbin /disasm:nobytes $(InputPath) | ddemangle
$(TargetPath)

Maybe this should even be the default, though I'm unsure ddemangle is
distributed with LDC or GDC.

--