diff options
author | Sergey Andreenko <seandree@microsoft.com> | 2018-04-11 13:16:22 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-11 13:16:22 -0700 |
commit | 300f41c2e6fc78e052e6ff1aa502ec9aa8dcad3c (patch) | |
tree | f743ce9ca08581f9dfc70ec1eed12c984ed707af /src | |
parent | 97d197293a77bf28236fa4f45ec796ff6f964b9c (diff) | |
download | coreclr-300f41c2e6fc78e052e6ff1aa502ec9aa8dcad3c.tar.gz coreclr-300f41c2e6fc78e052e6ff1aa502ec9aa8dcad3c.tar.bz2 coreclr-300f41c2e6fc78e052e6ff1aa502ec9aa8dcad3c.zip |
Fix Valuenum:EvalFuncForConstantArgs (#17506)
Diffstat (limited to 'src')
-rw-r--r-- | src/jit/valuenum.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/jit/valuenum.cpp b/src/jit/valuenum.cpp index fcb38d3d11..15a970d725 100644 --- a/src/jit/valuenum.cpp +++ b/src/jit/valuenum.cpp @@ -1098,6 +1098,11 @@ ValueNum ValueNumStore::VNForFunc(var_types typ, VNFunc func, ValueNum arg0VN, V { canFold = false; } + if (typ == TYP_BYREF) + { + // We don't want to fold expressions that produce TYP_BYREF + canFold = false; + } if (canFold) { @@ -1752,12 +1757,6 @@ ValueNum ValueNumStore::EvalFuncForConstantArgs(var_types typ, VNFunc func, Valu return EvalCastForConstantArgs(typ, func, arg0VN, arg1VN); } - if (typ == TYP_BYREF) - { - // We don't want to fold expressions that produce TYP_BYREF - return false; - } - var_types arg0VNtyp = TypeOfVN(arg0VN); var_types arg1VNtyp = TypeOfVN(arg1VN); |