Jit: Conditional Escape Analysis and Cloning by AndyAyersMS · Pull Request #111473 · dotnet/runtime

@AndyAyersMS

Enhance escape analysis to determine if an object escapes only under
failed GDV tests. If so, clone to create a path of code so that
the object doesn't escape, and then stack allocate the object.

More details in the included document.

Contributes to dotnet#108913

@ghost added the area-CodeGen-coreclr

CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

label

Jan 15, 2025

@AndyAyersMS

@AndyAyersMS

This was referenced

Jan 16, 2025

amanasifkhalid

@AndyAyersMS

Co-authored-by: Aman Khalid <amankhalid@microsoft.com>

@AndyAyersMS

@AndyAyersMS

@AndyAyersMS

@AndyAyersMS

jakobbotsch

jakobbotsch

jakobbotsch

jakobbotsch

jakobbotsch

jakobbotsch

jakobbotsch

jakobbotsch

jakobbotsch

jakobbotsch

jakobbotsch

@AndyAyersMS

@AndyAyersMS

jakobbotsch

grendello added a commit to grendello/runtime that referenced this pull request

Feb 5, 2025
* main:
  JIT: Set PGO data inconsistent when flow disappears in cast expansion (dotnet#112147)
  [H/3] Fix handling H3_NO_ERROR (dotnet#112125)
  Change some workflows using `pull_request` to use `pull_request_target` instead (dotnet#112161)
  Annotate ConfiguredCancelableAsyncEnumerable T with allows ref struct and update extensions (dotnet#111953)
  Delete copy of performance pipelines in previous location (dotnet#112113)
  Optimize BigInteger.Divide (dotnet#96895)
  Use current STJ in HostModel and remove unnecessary audit suppressions (dotnet#109852)
  JIT: Unify handling of InstParam argument during inlining (dotnet#112119)
  Remove unneeded DiagnosticSource content (dotnet#112116)
  Improve compare-and-branch sequences produced by Emitter (dotnet#111797)
  Jit: Conditional Escape Analysis and Cloning (dotnet#111473)
  Re-enable HKDF-SHA3 on Azure Linux
  Remove fstream usage from corehost (dotnet#111859)

This was referenced

Feb 11, 2025