Automatically Localizing Dynamic Code Generation Bugs in JIT Compiler Back-End

Heui Chan Lim, Saumya Debray

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Just-in-Time (JIT) compilers are ubiquitous in modern computing systems and are used in a wide variety of software. Dynamic code generation bugs, where the JIT compiler silently emits incorrect code, can result in exploitable vulnerabilities. They, therefore, pose serious security concerns and make quick mitigation essential. However, due to the size and complexity of JIT compilers, quickly locating and fixing bugs is often challenging. In addition, the unique characteristics of JIT compilers make existing bug localization approaches inapplicable. Therefore, this paper proposes a new approach to automatic bug localization, explicitly targeting the JIT compiler back-end. The approach is based on explicitly modeling architecture-independent back-end representation and architecture-specific code-generation. Experiments using a prototype implementation on a widely used JIT compiler (Turbofan) indicate that it can successfully localize dynamic code generation bugs in the back-end with high accuracy.

Original languageEnglish (US)
Title of host publicationCC 2023 - Proceedings of the 32nd ACM SIGPLAN International Conference on Compiler Construction
EditorsClark Verbrugge, Ondrej Lhotak, Xipeng Shen
PublisherAssociation for Computing Machinery, Inc
Pages145-155
Number of pages11
ISBN (Electronic)9798400700880
DOIs
StatePublished - Feb 17 2023
Event32nd ACM SIGPLAN International Conference on Compiler Construction, CC 2023 - Montreal, Canada
Duration: Feb 25 2023Feb 26 2023

Publication series

NameCC 2023 - Proceedings of the 32nd ACM SIGPLAN International Conference on Compiler Construction

Conference

Conference32nd ACM SIGPLAN International Conference on Compiler Construction, CC 2023
Country/TerritoryCanada
CityMontreal
Period2/25/232/26/23

Keywords

  • Automatic Bug Localization
  • Back-End
  • Dynamic Code Generation
  • Dynamic Program Analysis
  • JIT Compiler

ASJC Scopus subject areas

  • Hardware and Architecture
  • Signal Processing
  • Software

Fingerprint

Dive into the research topics of 'Automatically Localizing Dynamic Code Generation Bugs in JIT Compiler Back-End'. Together they form a unique fingerprint.

Cite this