Raising Binaries to LLVM IR with MCTOLL (Work in progress)
The need to analyze and execute binaries from legacy ISAs on new or different ISAs has been addressed in a variety of ways over the past few decades. Solutions using complementary static and dynamic binary translation techniques have been deployed in most real-world situations. As new ISAs are designed and legacy ISAs re-examined, the need for binary translation infrastructure re-emerges, and needs to be re-engineered all over again.
Work in progress is aimed to make the re-engineering efforts easier by using some of the software tools that would irrespectively be developed or available for a new or existing ISA. To that end, this work presents a static binary raiser that translates binaries to LLVM IR. Native binaries for a new ISA are generated from the raised LLVM IR using the LLVM compiler backend or LLVM phases are written to analyze the legacy binary.
This work leverages the existing LLVM infrastructure to implement a static raiser that currently supports raising Arm32 and x64 binaries to LLVM IR. The raiser is built as an LLVM tool – similar to \texttt{llvm-objdump} or \texttt{clang} and does not have any dependencies outside of those needed to build LLVM. This paper describes the phases of the raiser and gives the current status and limitations.
Sun 23 JunDisplayed time zone: Tijuana, Baja California change
16:00 - 16:45 | |||
16:00 15mFull-paper | BitBench: A Benchmark for Bitstream Computing LCTES 2019 Kyle Daruwalla University of Wisconsin – Madison, Heng Zhuo University of Wisconsin - Madison, Carly Schulz University of Wisconsin - Madison, Mikko H. Lipasti | ||
16:15 5mShort-paper | PANDORA: A Parallelizing Approximation-Discovery Framework (Work in progress) LCTES 2019 | ||
16:20 5mShort-paper | On Intermittence Bugs in the Battery-less Internet of Things (Work in progress) LCTES 2019 Andrea Maioli Politecnico di Milano, Italy, Luca Mottola Politecnico di Milano, Italy and RI.Se SICS, Sweden, Muhammad Hamad Alizai LUMS, Pakistan, Junaid Haroon Siddiqui | ||
16:25 5mShort-paper | Raising Binaries to LLVM IR with MCTOLL (Work in progress) LCTES 2019 | ||
16:30 5mShort-paper | A Compiler-based Approach for GPGPU Performance Calibration using TLP Modulation (Work in progress) LCTES 2019 | ||
16:35 5mShort-paper | An Empirical Comparison between Monkey Testing and Human Testing (Work in progress) LCTES 2019 |