Compacting ARM binaries with the Diablo framework - PowerPoint PPT Presentation

1 / 8
About This Presentation
Title:

Compacting ARM binaries with the Diablo framework

Description:

Compacting ARM binaries with the Diablo framework Dominique Chanet & Ludo Van Put ... Diablo. Binary rewriting framework: useful for compaction, ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 9
Provided by: dominiqu75
Category:

less

Transcript and Presenter's Notes

Title: Compacting ARM binaries with the Diablo framework


1
Compacting ARM binaries with the Diablo framework
  • Dominique ChanetLudo Van Put

2
Introduction
  • Embedded systems emphasis on compact programs
  • How?
  • assembly language programming
  • compilers optimizing for code size
  • specially tweaked libraries
  • smart linkers

3
ARM
  • Widely used in embedded systems
  • StrongArm, XScale (PDAs)
  • OMAP (cell phones)
  • in 2001 76 of all RISC processors shipped were
    based on the ARM instruction set
  • Low power consumption
  • Special attention for compact code
  • Thumb instruction set
  • ISA features like conditional execution of all
    instructions, pipeline with integrated barrel
    shifter, ...

4
Diablo
  • Binary rewriting framework useful for
    compaction, instrumentation, obfuscation,
  • Retargetable ports for ARM, MIPS, x86, Alpha,
  • At link time
  • Inputs object files, libraries
  • Output a statically linked executable

5
Impact of libraries
6
Major compaction opportunities
  • initial unreachable code removal
  • results of interprocedural constant propagation
  • at link time addresses are propagated
  • optimize address calculations
  • disambiguate indirect jumps
  • combined with dead code elimination discard
    parts of functions that can never be executed
  • results of interprocedural liveness analysis
  • unused function results, ...

7
Results
8
Conclusions Future Work
  • on average 8-11 compaction of the code section
    (depending on platform)
  • mostly thanks to unreachable code removal and
    interprocedural constant propagation
  • Future work
  • more advanced techniques (e.g. factorization,
    stack analysis, ...)
  • support for Thumb instruction set
Write a Comment
User Comments (0)
About PowerShow.com