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