Runtime Support of Speculative Optimization for Offline Escape Analysis

Escape analysis can improve the speed and memory efficiency of garbage collected languages by allocating objects to the call stack, but an offline analysis will potentially interfere with dynamic class loading and an online analysis must sacrifice precision for speed. We describe a technique that permits the safe use of aggressive, speculative offline escape analysis in programs potentially loading classes that violate the analysis results.