Abstract. Compilers for Object-Oriented Languages optimize dynamic message sends through run-time type testing when they cannot precisely infer the message receiver type. While run-time type testing optimizes dynamic messages, it still results in redundant type testing. We propose a ow-sensitive analysis which calculates regions in a program where an object's type is statically unknown but invariant. The type check is hoisted at the entry point of a region and its results are shared over all dynamic call-sites in the region. We implemented this optimization in the Vortex compiler and demonstrate its eectiveness on ve large Cecil benchmarks. We observed an average speed-up of 9 % and 18 % speed-up in the best case. 1 Introduction and Re...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
Run-time type analysis is an increasingly important linguistic mechanism in modern programming langu...
Dynamically typed languages allow developers to write more expressive source code, but their lack of...
Abstract. Object-oriented languages have suffered from poor performance caused by frequent and slow ...
Object-oriented languages have suffe=d from poor perfor-mance caused by frequent and slow dynamicall...
Abstract: Object-oriented programs are difficult to optimize because they execute many dynamically-d...
. Programs written in languages of the Oberon family usually contain runtime tests on the dynamic ty...
To use modern hardware effectively, compilers need extensive control-flow information. Unfortunately...
Dynamic languages are widely used for different kinds of applications including rapid prototyping, W...
International audienceReaching the best level of runtime performance from a high-level,object-orient...
In this dissertation, we show how a relatively simple and extremely fast interprocedural optimizatio...
Type systems for object-oriented programming languages have been studied a great deal over the past ...
An important problem in the analysis of programs written in object-oriented languages like C ++ /J...
An important problem in the analysis of programs written in object-oriented languages like C++/Java ...
Type information is a crucial information to support object-oriented reengineering. In a dynamically...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
Run-time type analysis is an increasingly important linguistic mechanism in modern programming langu...
Dynamically typed languages allow developers to write more expressive source code, but their lack of...
Abstract. Object-oriented languages have suffered from poor performance caused by frequent and slow ...
Object-oriented languages have suffe=d from poor perfor-mance caused by frequent and slow dynamicall...
Abstract: Object-oriented programs are difficult to optimize because they execute many dynamically-d...
. Programs written in languages of the Oberon family usually contain runtime tests on the dynamic ty...
To use modern hardware effectively, compilers need extensive control-flow information. Unfortunately...
Dynamic languages are widely used for different kinds of applications including rapid prototyping, W...
International audienceReaching the best level of runtime performance from a high-level,object-orient...
In this dissertation, we show how a relatively simple and extremely fast interprocedural optimizatio...
Type systems for object-oriented programming languages have been studied a great deal over the past ...
An important problem in the analysis of programs written in object-oriented languages like C ++ /J...
An important problem in the analysis of programs written in object-oriented languages like C++/Java ...
Type information is a crucial information to support object-oriented reengineering. In a dynamically...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
Run-time type analysis is an increasingly important linguistic mechanism in modern programming langu...
Dynamically typed languages allow developers to write more expressive source code, but their lack of...