A binary recompiler is a
compiler that takes
executable
In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instruction (computer science), instructi ...
binary files as input, analyzes their structure, applies transformations and optimizations, and outputs new optimized executable binaries.
The foundation to the concepts of binary recompilation were laid out by
Gary Kildall with the development of the optimizing
assembly code translator XLT86 in 1981.
See also
*
Binary optimizer (binary-to-binary)
*
Binary translator (binary-to-binary)
*
Decompiler (binary-to-source)
*
Disassembler (binary-to-source)
*
Dynamic recompiler (binary-to-binary)
*
Transcompiler (source-to-source)
*
Honeywell Liberator (running
IBM 1401 programs on
Honeywell H200)
References
Further reading
* {{cite journal , title=From hack to elaborate technique - A survey on binary rewriting , author-first1=Matthias , author-last1=Wenzl , author-first2=Georg , author-last2=Merzdovnik , author-first3=Johanna , author-last3=Ullrich , author-first4=Edgar R. , author-last4=Weippl , location=Vienna, Austria , journal=
ACM Computing Surveys
''ACM Computing Surveys'' is a quarterly peer-reviewed scientific journal published by the Association for Computing Machinery. It publishes survey articles and tutorials related to computer science and computing. The journal was established in 196 ...
, volume=52 , number=3 , id=Article 49 , date=June 2019 , orig-date=February 2019, November 2018, May 2018 , doi=10.1145/3316415 , pages=49:1–49:36 , url=https://publications.sba-research.org/publications/201906%20-%20GMerzdovnik%20-%20From%20hack%20to%20elaborate%20technique.pdf , access-date=2021-11-28 , url-status=live , archive-url=https://web.archive.org/web/20210115224807/https://publications.sba-research.org/publications/201906%20-%20GMerzdovnik%20-%20From%20hack%20to%20elaborate%20technique.pdf , archive-date=2021-01-15 (36 pages)
*
Compiler construction
Computer libraries