Fix lsra memory consumption (dotnet/coreclr#11233)
authorSergey Andreenko <seandree@microsoft.com>
Fri, 28 Apr 2017 01:06:34 +0000 (18:06 -0700)
committerGitHub <noreply@github.com>
Fri, 28 Apr 2017 01:06:34 +0000 (18:06 -0700)
commit3ffe695710db2ac25ad5b58d6f8d8cbe7e69b407
tree2ee921dd85175608c993c0b050eb74f015b08e15
parent78dace323a24a9f995926812619453ade74828f8
Fix lsra memory consumption (dotnet/coreclr#11233)

* Rename ClearD to OldStyleClearD

* create fast ClearD function.

The new ClearD reuses existing buffer and assumes that epoch wasn't
changed.

* Reuse existing buffer for the predSet in lsra.

* Use fast ClearD in LSRA.

* Use fast ClearD in liveness

* Fix the comment

* delete the test from issues

Commit migrated from https://github.com/dotnet/coreclr/commit/70014f8863209853a29d010219e36b7eae2d4cd8
14 files changed:
src/coreclr/src/jit/assertionprop.cpp
src/coreclr/src/jit/bitset.h
src/coreclr/src/jit/bitsetasshortlong.h
src/coreclr/src/jit/bitsetasuint64.h
src/coreclr/src/jit/bitsetasuint64inclass.h
src/coreclr/src/jit/bitsetops.h
src/coreclr/src/jit/copyprop.cpp
src/coreclr/src/jit/emit.cpp
src/coreclr/src/jit/flowgraph.cpp
src/coreclr/src/jit/liveness.cpp
src/coreclr/src/jit/lsra.cpp
src/coreclr/src/jit/lsra.h
src/coreclr/src/jit/regalloc.cpp
src/coreclr/tests/issues.targets