Skip to content

Run c++filt on the ASM output. #110

@mithro

Description

@mithro

Is your feature request related to a problem? Please describe.

Currently when looking at the assembly output I get the following;

14	mov    %rax,(%rsp)
12	mov    $0xffffffff,%edx
13	xor    %r8d,%r8d
14	call   34 <_ZN3gpl3FFT5doFFTEv+0x34>   30: R_X86_64_PLT32   _ZN3gpl6ddct2dEiiiPPfS0_PiS0_-0x4
15	mov    0xb0(%rbx),%edi
16	test   %edi,%edi
17	jle    72 <_ZN3gpl3FFT5doFFTEv+0x72>

Describe the solution you'd like

If you run c++filt on the above you'll get the following;

14      mov    %rax,(%rsp)
12      mov    bashxffffffff,%edx
13      xor    %r8d,%r8d
14      call   34 <gpl::FFT::doFFT()+0x34>   30: R_X86_64_PLT32   gpl::ddct2d(int, int, int, float**, float*, int*, float*)-0x4
15      mov    0xb0(%rbx),%edi
16      test   %edi,%edi
17      jle    72 <gpl::FFT::doFFT()+0x72>

Which is much nicer to read.

Describe alternatives you've considered

I would have sent a pull request myself but I wasn't able to figure out where to run the c++filt. As a hack I tried adding it to the objdump command in instruction_collector.py:class InstructionCollector(object):gatherSymbolInstructions but it didn't seem to have any effect.

You mention c++filt in the README, so I was surprised that it wasn't already demangling the strings in the assembly output.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions