Packages
EDU.purdue.cs.bloat.benchmark Contains classes that are used to run benchmarks that measure the performance of BLOATed code.
EDU.purdue.cs.bloat.cfg Classes to represent a Java method as a control flow graph of basic blocks.
EDU.purdue.cs.bloat.codegen Generates Java bytecodes from the contents of a control flow graph.
EDU.purdue.cs.bloat.context Repositories for important BLOAT objects such as the Editor, ClassHierarchy, and FlowGraphs.
EDU.purdue.cs.bloat.decorate Contains a program that decorates a Java classfile with opcodes used in a persistent Java virtual machine.
EDU.purdue.cs.bloat.diva Performs demand-driven induction variable analysis on a Java classfile.
EDU.purdue.cs.bloat.dump Contains a program that prints the contents of a Java classfile to the console.
EDU.purdue.cs.bloat.editor Allows classes, methods, and fields to be edited.
EDU.purdue.cs.bloat.file Allows access to Java classes stored in files on disk.
EDU.purdue.cs.bloat.optimize Contains a program that optimizes Java classes.
EDU.purdue.cs.bloat.reflect Provides an abstract API for working with Java classfiles.
EDU.purdue.cs.bloat.shrink Contains a program that performs array initialization compaction on a Java classfile in attempts to make it smaller.
EDU.purdue.cs.bloat.ssa Converts a control flow graph into static single assignment (SSA) form.
EDU.purdue.cs.bloat.strip Contains a program that removes non-vital information (such as debugging information) from a Java classfile in an attempt to make it smaller.
EDU.purdue.cs.bloat.tbaa Performs type-base alias analysis (TBAA) on a control flow graph.
EDU.purdue.cs.bloat.trans Performs transformations (optimizations) on a control flow graph.
EDU.purdue.cs.bloat.tree The classes necessary to create and represent a Java method as an expression tree.
EDU.purdue.cs.bloat.util Contains a number of utility classes used by BLOAT.