Global escape analysis using instantiated type analysis (ITA) is applied
to a method of an object-oriented application to analyze control flow
beginning with an invocation of the method. The instantiated type
analysis methodology (inter-procedural control flow analysis) tracks
instantiated objects, following both the flow of execution and the flow
of these objects throughout the method invocations and field instances of
the software, ultimately determining which instantiated objects do not
escape. Not all method invocations must be followed and therefore a
closed system is not required. This ITA algorithm has been enhanced for
the purposes of escape analysis, so that is well-suited for runtime
environments in which classes are loosely specified, or in circumstances
in which a subset of a program is unavailable.