Interprocedural optimizations are important in Java because the object-oriented programming style encourages the use of many small methods. Unfortunately, such optimizations are difficult because of the nature of language structure and its security restrictions. A particular problem is the � difficulty of knowing the entire program at any time prior to execution. This paper presents new approaches to cloning and inlining that can be profitably used even in a single class. These optimizations are of particular interest for concurrent environments, since the correctness of their application is insensitive to concurrency. Results from our preliminary implementation are presented and ways to extend these methods are described. These methods can...
This report proposes a new approach to the optimized execution of Javabytecode: static analysis is u...
Abstract. We present a set of techniques for reducing the memory consumption of object-oriented prog...
.......................................viii 1 INTRODUCTION . . . . . . ........................... ...
The Java programming environment uses a highly-developed virtual machine (VM) to execute its program...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
This paper presents a strategy, called almost-whole-program compilation, for extending the benefits ...
In this dissertation, we show how a relatively simple and extremely fast interprocedural optimizatio...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
This dissertation addresses a number of important issues related to interprocedural optimization. In...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
The runtime performance of object-oriented languages often suffers due to the overhead of dynamic di...
. The support for precise exceptions in Java, combined with frequent checks for runtime exceptions,...
Object-oriented languages, like Java, encourage the use of many small objects linked together by eld...
High level programming language features have long been seen as improving programmer efficiency at s...
Slicing is a well-known program reduction technique where for a given program P and a variable of in...
This report proposes a new approach to the optimized execution of Javabytecode: static analysis is u...
Abstract. We present a set of techniques for reducing the memory consumption of object-oriented prog...
.......................................viii 1 INTRODUCTION . . . . . . ........................... ...
The Java programming environment uses a highly-developed virtual machine (VM) to execute its program...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
This paper presents a strategy, called almost-whole-program compilation, for extending the benefits ...
In this dissertation, we show how a relatively simple and extremely fast interprocedural optimizatio...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/16...
This dissertation addresses a number of important issues related to interprocedural optimization. In...
. We present a technique to measure and detect changes in the behavioral patterns of applications. I...
The runtime performance of object-oriented languages often suffers due to the overhead of dynamic di...
. The support for precise exceptions in Java, combined with frequent checks for runtime exceptions,...
Object-oriented languages, like Java, encourage the use of many small objects linked together by eld...
High level programming language features have long been seen as improving programmer efficiency at s...
Slicing is a well-known program reduction technique where for a given program P and a variable of in...
This report proposes a new approach to the optimized execution of Javabytecode: static analysis is u...
Abstract. We present a set of techniques for reducing the memory consumption of object-oriented prog...
.......................................viii 1 INTRODUCTION . . . . . . ........................... ...