Lines Matching defs:escape

48  * Simple intraprocedural escape analysis. Finds new arrays that don't escape
53 * Struct used to generate and maintain escape analysis results.
58 /** escape state of the object */
59 EscapeState escape;
77 escape = escState;
85 * Lattice values used to indicate escape state for an object. Analysis can
86 * only raise escape state values, not lower them.
89 * NONE - Object does not escape, and is eligible for scalar replacement.
164 * into is the parent. A child set must always have an escape state at
202 * Performs escape analysis on a method. Finds scalar replaceable arrays and
368 if (escSet.escape.compareTo(mergeSet.escape) < 0) {
369 escSet.escape = mergeSet.escape;
383 * used and updates the escape state accordingly.
404 if (escSet.escape.compareTo(EscapeState.METHOD) < 0) {
405 escSet.escape = EscapeState.METHOD;
424 // Raise 1st object's escape state to 2nd if 2nd is higher
431 if (escSet.escape.compareTo(parentSet.escape) < 0) {
432 escSet.escape = parentSet.escape;
440 if (childSet.escape.compareTo(escSet.escape) < 0) {
441 childSet.escape = escSet.escape;
455 // Static puts cause an object to escape globally
456 escSet.escape = EscapeState.GLOBAL;
465 // These operations cause an object to escape interprocedurally
466 escSet.escape = EscapeState.INTER;
479 if (!escSet.replaceableArray || escSet.escape != EscapeState.NONE) {
688 * Runs escape analysis and scalar replacement of arrays.
712 if (e.escape != EscapeState.NONE) {
714 if (e.escape.compareTo(field.escape) > 0) {
715 field.escape = e.escape;