diff options
author | Andy Ayers <andya@microsoft.com> | 2018-08-20 15:03:29 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-20 15:03:29 -0700 |
commit | 895bfa452da4aeeda52447e76d9e9e987d68f331 (patch) | |
tree | 4a677c86c579f45feeb6cf6775b6dc833fc5aec3 /src/jit/earlyprop.cpp | |
parent | ab8023d9e2d70072d0017191eacca449c4e1c33b (diff) | |
download | coreclr-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.cpp | 2 |
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) |