Publication Details

Reconstruction of Instruction Idioms in a Retargetable Decompiler

KŘOUSTEK Jakub and POKORNÝ Fridolín. Reconstruction of Compiler's Instruction Idioms in a Retargetable Decompiler. In: 4th Workshop on Advances in Programming Languages (WAPL'13). Kraków: IEEE Computer Society, 2013, pp. 1507-1514. ISBN 978-1-4673-4471-5. Available from: https://fedcsis.org/proceedings/2013/index.html
Czech title
Rekonstrukce instrukčních idiomů v rekonfigurovatelném zpětném překladači
Type
conference paper
Language
english
Authors
Křoustek Jakub, Ing. (DIFS FIT BUT)
Pokorný Fridolín, Ing. (FIT BUT)
URL
Keywords

compiler optimizations, reverse engineering, decompiler, Lissom, instruction idioms, bit twiddling hacks

Abstract

Machine-code decompilation is a reverse-engineering discipline focused on reverse compilation. It performs an application recovery from binary executable files back into the high level language (HLL) representation. One of its critical tasks is to produce an accurate and well-readable code. However, this is a challenging task since the executable code may be produced by one of the modern compilers that use advanced optimizations. One type of such an optimization is usage of so-called instruction idioms. These idioms are used to produce faster or even smaller executable files. On the other hand, decompilation of instruction idioms without any advanced analysis produces almost unreadable HLL code that may confuse the user of a decompiler. In this paper, we present a method of instruction-idioms detection and reconstruction back into a readable form with the same meaning. This approach is adapted in an existing retargetable decompiler developed within the Lissom project. The implementation has been tested on several modern compilers and target architectures. According to our experimental results, the proposed solution is highly accurate on the RISC (Reduced Instruction Set Computer) processor families, but it should be further improved on the CISC (Complex Instruction Set Computer) architectures.

Published
2013
Pages
1507-1514
Proceedings
4th Workshop on Advances in Programming Languages (WAPL'13)
Conference
4th Workshop on Advances in Programming Languages (WAPL'13), Kraków, PL
ISBN
978-1-4673-4471-5
Publisher
IEEE Computer Society
Place
Kraków, PL
UT WoS
000347171500235
BibTeX
@INPROCEEDINGS{FITPUB10328,
   author = "Jakub K\v{r}oustek and Fridol\'{i}n Pokorn\'{y}",
   title = "Reconstruction of Instruction Idioms in a Retargetable Decompiler",
   pages = "1507--1514",
   booktitle = "4th Workshop on Advances in Programming Languages (WAPL'13)",
   year = 2013,
   location = "Krak\'{o}w, PL",
   publisher = "IEEE Computer Society",
   ISBN = "978-1-4673-4471-5",
   language = "english",
   url = "https://www.fit.vut.cz/research/publication/10328"
}
Back to top