JIT: force all local var ref counts to be accessed via API (#18979)
authorAndy Ayers <andya@microsoft.com>
Wed, 18 Jul 2018 21:35:08 +0000 (14:35 -0700)
committerGitHub <noreply@github.com>
Wed, 18 Jul 2018 21:35:08 +0000 (14:35 -0700)
commitb2842bbef5162383f7bf67de2976f2c21dbfdb1d
tree3b03b3f0a166eb8518804b99913ef0311322fa2f
parent4037baf5675ec275c624395ef2b0337cf58836cd
JIT: force all local var ref counts to be accessed via API (#18979)

This is a preparatory change for auditing and controlling how local
variable ref counts are observed and manipulated.

See #18969 for context.

No diffs seen locally. No TP impact expected.

There is a small chance we may see some asserts in broader testing
as there were places in original code where local ref counts were
incremented without checking for possible overflows. The new APIs
will assert for overflow cases.
18 files changed:
src/jit/assertionprop.cpp
src/jit/codegencommon.cpp
src/jit/compiler.h
src/jit/compiler.hpp
src/jit/emit.cpp
src/jit/gcencode.cpp
src/jit/gcinfo.cpp
src/jit/gentree.cpp
src/jit/lclvars.cpp
src/jit/liveness.cpp
src/jit/lower.cpp
src/jit/lowerxarch.cpp
src/jit/lsra.cpp
src/jit/lsrabuild.cpp
src/jit/morph.cpp
src/jit/optcse.cpp
src/jit/regalloc.cpp
src/jit/scopeinfo.cpp