Integrated: 8317818: Combinatorial explosion during 'this' escape analysis

Archie Cobbs acobbs at openjdk.org
Thu Oct 12 22:42:27 UTC 2023


On Tue, 10 Oct 2023 16:55:22 GMT, Archie Cobbs <acobbs at openjdk.org> wrote:

> The `this-escape` analysis stops infinite recursions during the analysis by keeping track of what methods have already been invoked with any given set of current references.
> 
> However, it was using the method call site, not the target method itself, for this tracking. This can lead to a combinatorial explosion, for example, if there are multiple recursive calls inside the target method, where we would end up recursing through all possible combinations of call sites before stopping the recursion.
> 
> The fix is to key on the target method itself, not on whatever call site.

This pull request has now been integrated.

Changeset: 17535c34
Author:    Archie Cobbs <acobbs at openjdk.org>
Committer: Vicente Romero <vromero at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/17535c34bc7853f8e73dfdec2c4da49d78b37bea
Stats:     32 lines in 2 files changed: 30 ins; 0 del; 2 mod

8317818: Combinatorial explosion during 'this' escape analysis

Reviewed-by: vromero

-------------

PR: https://git.openjdk.org/jdk/pull/16125


More information about the compiler-dev mailing list