Hyperchaining for LLVM-Based Binary Translators on the x86-64 Platform

Jyun Kai Lai, Wuu Yang*

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

Abstract

Rabbit is an LLVM-based hybrid binary translator with several innovative optimizations (including an extension to traditional block chaining, called hyperchaining) to improve the performance. In addition to platform-independent hyperchaining (indep), Rabbit also includes platform-dependent hyperchaining (dep) on both x86-64 and RISC-V architectures for both direct and indirect branches. The dep optimizations leverage architecture-specific instructions and patches to achieve the same effect as the indep optimization but gains more performance improvements. The experimental results show that the platform-dependent hyperchaining can achieve 1.08x and 1.05x speedup in comparison with platform-independent hyperchaining for direct and indirect branches, respectively. The experimental results also show that platform-dependent hyperchaining incurs little memory space overhead in comparison with platform-independent hyperchaining.

Original languageEnglish
JournalJournal of Signal Processing Systems
DOIs
StateAccepted/In press - 2022

Keywords

  • Binary translation
  • Block chaining
  • Hyperchaining
  • LLVM
  • RISC-V
  • x86-64

Fingerprint

Dive into the research topics of 'Hyperchaining for LLVM-Based Binary Translators on the x86-64 Platform'. Together they form a unique fingerprint.

Cite this