Virtual method calls are a fundamental feature offered by Java, an object-oriented programming language. However, they are also a source of degradation of performance at run time and imprecision in interprocedural analyses. There are several well known, inexpensive analyses that have been developed for virtual call resolution.We present a new flow insensitive and context insensitive analysis called reaching type analysis in this thesis. We present the analysis rules for two variations of this analysis, variable type analysis and a coarser grained version declared type analysis. Reaching type analysis is based on an analysis that builds a type propagation graph where nodes represent variables and edges represent the flow of types due to assi...
Rapid Type Analysis (RTA) is an algorithm for call graph construction, which is known to be fast and...
Abstract—Distributed applications provide numerous advantages related to software performance, relia...
Java workloads are becoming more and more prominent on various computing devices. Understanding the ...
This paper addresses the problem of resolving virtual method and interface calls in Java. The main f...
This paper addresses the problem of resolving virtual method and interface calls in Java. The main f...
Recent advances in Virtual Machine\u2019s technology have led to the diffusion of Java execution env...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
The performance of contemporary object oriented languages depends on optimizations such as devirtual...
AbstractIn a typed language such as Java, inlining of virtual methods does not always preserve typab...
Call graphs are at the core of many static analyses rangingfrom the detection of unused methods to a...
An important problem in the analysis of programs written in object-oriented languages like C ++ /J...
This dissertation presents a pointer analysis for Java programs, together with several practical ana...
To use modern hardware effectively, compilers need extensive control-flow information. Unfortunately...
An important problem in the analysis of programs written in object-oriented languages like C++/Java ...
Dynamic binding (dispatch) in object-oriented languages prevents compilers from performing static op...
Rapid Type Analysis (RTA) is an algorithm for call graph construction, which is known to be fast and...
Abstract—Distributed applications provide numerous advantages related to software performance, relia...
Java workloads are becoming more and more prominent on various computing devices. Understanding the ...
This paper addresses the problem of resolving virtual method and interface calls in Java. The main f...
This paper addresses the problem of resolving virtual method and interface calls in Java. The main f...
Recent advances in Virtual Machine\u2019s technology have led to the diffusion of Java execution env...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
The performance of contemporary object oriented languages depends on optimizations such as devirtual...
AbstractIn a typed language such as Java, inlining of virtual methods does not always preserve typab...
Call graphs are at the core of many static analyses rangingfrom the detection of unused methods to a...
An important problem in the analysis of programs written in object-oriented languages like C ++ /J...
This dissertation presents a pointer analysis for Java programs, together with several practical ana...
To use modern hardware effectively, compilers need extensive control-flow information. Unfortunately...
An important problem in the analysis of programs written in object-oriented languages like C++/Java ...
Dynamic binding (dispatch) in object-oriented languages prevents compilers from performing static op...
Rapid Type Analysis (RTA) is an algorithm for call graph construction, which is known to be fast and...
Abstract—Distributed applications provide numerous advantages related to software performance, relia...
Java workloads are becoming more and more prominent on various computing devices. Understanding the ...