summaryrefslogtreecommitdiff
path: root/src/jit/earlyprop.cpp
diff options
context:
space:
mode:
authorAndy Ayers <andya@microsoft.com>2018-08-20 15:03:29 -0700
committerGitHub <noreply@github.com>2018-08-20 15:03:29 -0700
commit895bfa452da4aeeda52447e76d9e9e987d68f331 (patch)
tree4a677c86c579f45feeb6cf6775b6dc833fc5aec3 /src/jit/earlyprop.cpp
parentab8023d9e2d70072d0017191eacca449c4e1c33b (diff)
downloadcoreclr-895bfa452da4aeeda52447e76d9e9e987d68f331.tar.gz
coreclr-895bfa452da4aeeda52447e76d9e9e987d68f331.tar.bz2
coreclr-895bfa452da4aeeda52447e76d9e9e987d68f331.zip
JIT: remove incremental ref count updates (#19345)
Remove almost all of the code in the jit that tries to maintain local ref counts incrementally. Also remove `lvaSortAgain` and related machinery. Explicitly sort locals before post-lower-liveness when optimizing to get the best set of tracked locals. Explicitly recount after post-lower liveness to get accurate counts after dead stores. This can lead to tracked unreferenced arguments; tolerate this during codegen.
Diffstat (limited to 'src/jit/earlyprop.cpp')
-rw-r--r--src/jit/earlyprop.cpp2
1 files changed, 0 insertions, 2 deletions
diff --git a/src/jit/earlyprop.cpp b/src/jit/earlyprop.cpp
index f97c0ac448..325f85df55 100644
--- a/src/jit/earlyprop.cpp
+++ b/src/jit/earlyprop.cpp
@@ -361,10 +361,8 @@ GenTree* Compiler::optEarlyPropRewriteTree(GenTree* tree)
actualValClone->LabelIndex(this);
}
- DecLclVarRefCountsVisitor::WalkTree(this, tree);
// actualValClone has small tree node size, it is safe to use CopyFrom here.
tree->ReplaceWith(actualValClone, this);
- IncLclVarRefCountsVisitor::WalkTree(this, tree);
#ifdef DEBUG
if (verbose)