2007
DOI: 10.1145/1210268.1210273
|View full text |Cite
|
Sign up to set email alerts
|

Link-time compaction and optimization of ARM executables

Abstract: The overhead in terms of code size, power consumption, and execution time caused by the use of precompiled libraries and separate compilation is often unacceptable in the embedded world, where real-time constraints, battery life-time, and production costs are of critical importance. In this paper, we present our link-time optimizer for the ARM architecture. We discuss how we can deal with the peculiarities of the ARM architecture related to its visible program counter and how the introduced overhead can to a l… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
20
0

Year Published

2008
2008
2016
2016

Publication Types

Select...
3
2

Relationship

2
3

Authors

Journals

citations
Cited by 26 publications
(21 citation statements)
references
References 26 publications
(35 reference statements)
0
20
0
Order By: Relevance
“…Regarding the wide range of transformations that can be applied at link-time, as necessary to insert the necessary redundancy, we point to the existing applications of the open-source link-time binary rewriting framework Diablo 1 [48]. These applications include optimization and compaction [19], obfuscation [4,34] and deobfuscation [32], anti-tampering [51], formal verification of binary code [54], instrumentation [16], GUI binary code editing [49], and operating system customization [12].…”
Section: Link-time Binary Rewritingmentioning
confidence: 99%
See 3 more Smart Citations
“…Regarding the wide range of transformations that can be applied at link-time, as necessary to insert the necessary redundancy, we point to the existing applications of the open-source link-time binary rewriting framework Diablo 1 [48]. These applications include optimization and compaction [19], obfuscation [4,34] and deobfuscation [32], anti-tampering [51], formal verification of binary code [54], instrumentation [16], GUI binary code editing [49], and operating system customization [12].…”
Section: Link-time Binary Rewritingmentioning
confidence: 99%
“…C, C++, assembly and Fortran; binary code generated with different compiler generations covering more than a decade of proprietary as well as open-source compilers (incl. ARM ADS, ARM RVCT, and gcc) [19]; system libraries that contain significant 1 http://diablo.elis.ugent.be amounts of manually-written assembly, incl. newlibc 2 , glibc 3 , and uClibc 4 [19]; a range of architectures, incl.…”
Section: Link-time Binary Rewritingmentioning
confidence: 99%
See 2 more Smart Citations
“…Subsequently, we apply our on-demand encryption scheme where we protect a maximal number of functions, such that our scheme can offer tamper-resistance according to the properties mentioned in Section 4. To insert the guard code we used Diablo [7], a link-time binary rewriter, allowing us to patch binary code, insert extra encryption functionality, and perform dominator analysis on either the control flow graph or the function call graph. As we are generating self-modifying code, we mark all code segments to be readable and writable.…”
Section: A Network Of Crypto Guardsmentioning
confidence: 99%