Removing RTTI from binaries
    Mike via D.gnu 
    d.gnu at puremagic.com
       
    Tue Jan 13 19:07:19 PST 2015
    
    
  
On Tuesday, 13 January 2015 at 14:20:43 UTC, Mike wrote:
>
> Here's what I'm seeing:
>
> --------------------
> arm-none-eabi-objdump -t binary/firmware
>
> binary/firmware:     file format elf32-littlearm
>
> SYMBOL TABLE:
> 08000000 l    d  .text  00000000 .text
> 08000a44 l    d  .rodata        00000000 .rodata
> 00000000 l    df *ABS*  00000000 start.d
> 0800001c l       .text  00000000 handler_address
> 00000000 l       *UND*  00000000 __aeabi_unwind_cpp_pr0
> 00000000 l       *UND*  00000000 __aeabi_unwind_cpp_pr1
> 00000000 l    df *ABS*  00000000
> 10010000 l       *ABS*  00000000 _stackStart
> 08000034 g     F .text  0000007e memcpy
> 08000010 g     F .text  00000014 _D5start7OnResetFZv
> 080202d4 g       .rodata        00000000 __text_end__
> 08000004 g     O .text  00000004 ResetHandler
> 20000000 g       .rodata        00000000 __data_end__
> 20000000 g       .rodata        00000000 __bss_start__
> 20000000 g       .rodata        00000000 __bss_end__
> 08000024 g     F .text  00000010 memset
> 20000000 g       .rodata        00000000 __data_start__
> 0800000c g     O .text  00000004 HardFaultHandler
> 080000b4 g     F .text  0000093c main
> 08000a28 g     F .text  0000001c _D5start11OnHardFaultFZv
>
I just wanted to show off our shiny new demangle support in
binutils for comparison with my previous post.
-----------------------------
arm-none-eabi-objdump --demangle=dlang -t binary/firmware
binary/firmware:     file format elf32-littlearm
SYMBOL TABLE:
08000000 l    d  .text  00000000 .text
08000380 l    d  .rodata        00000000 .rodata
00000000 l    df *ABS*  00000000 start.d
0800001c l       .text  00000000 handler_address
00000000 l       *UND*  00000000 __aeabi_unwind_cpp_pr0
00000000 l    df *ABS*  00000000
10010000 l       *ABS*  00000000 _stackStart
08000034 g     F .text  0000007e memcpy
08000010 g     F .text  00000014 start.OnReset()
0801fb78 g       .rodata        00000000 __text_end__
08000004 g     O .text  00000004 ResetHandler
20000000 g       .rodata        00000000 __data_end__
20000000 g       .rodata        00000000 __bss_start__
20000000 g       .rodata        00000000 __bss_end__
08000024 g     F .text  00000010 memset
0800032c  w    F .text  00000038
trace.writeLine!(immutable(char)[]).writeLine(const(immutable(char)[]))
20000000 g       .rodata        00000000 __data_start__
0800000c g     O .text  00000004 HardFaultHandler
080000b4 g     F .text  00000278 main
08000364 g     F .text  0000001c start.OnHardFault()
Nice! Thanks Iain.
    
    
More information about the D.gnu
mailing list