articleJan 1, 2010Closed access

Soot

McGill University

Indexed incrossref

Abstract

This paper presents Soot, a framework for optimizing Java* bytecode. The framework is implemented in Java and supports three intermediate representations for representing Java bytecode: Baf, a streamlined representation of bytecode which is simple to manipulate; Jimple, a typed 3-address intermediate representation suitable for optimization; and Grimp, an aggregated version of Jimple suitable for decompilation. We describe the motivation for each representation, and the salient points in translating from one representation to another. In order to demonstrate the usefulness of the framework, we have implemented intraprocedural and whole program optimizations. To show that whole program bytecode optimization can…

Citation impact

937
total citations
FWCI
32.87
Percentile
100%
References
24
Citations per year

Authors

6

Topics & keywords

Keywords
  • Bytecode
  • Java bytecode
  • Computer science
  • Programming language
  • Java
  • Representation (politics)
  • Compiler
  • Intermediate language
No related works found for this paper.