JIT: don't allocate promoted struct death vars map for clear or lookup (dotnet/corecl...
authorAndy Ayers <andya@microsoft.com>
Fri, 31 Aug 2018 15:20:53 +0000 (08:20 -0700)
committerGitHub <noreply@github.com>
Fri, 31 Aug 2018 15:20:53 +0000 (08:20 -0700)
commit2d109afe244ba75453a1692536fdf993508ee768
tree7062c96ccdba4aa676f4763b7491d9f27dacd6e7
parent404aa021a72bc0e99dc78a92ccd9ef13495d03f4
JIT: don't allocate promoted struct death vars map for clear or lookup (dotnet/coreclr#19753)

Only allocate this map if we're adding something. Refactor clearing and
lookup to do minimal work if the map hasn't been allocated (and it won't
have been in debug / minopts).

Saves a tiny bit of throughput and memory.

Commit migrated from https://github.com/dotnet/coreclr/commit/de74b8ca4116235601feaf868f3ab0a06615ec3d
src/coreclr/src/jit/compiler.h
src/coreclr/src/jit/liveness.cpp
src/coreclr/src/jit/treelifeupdater.cpp