Full support for exception sets in value numbering.
authorBrian Sullivan <briansul@microsoft.com>
Tue, 25 Sep 2018 20:06:24 +0000 (13:06 -0700)
committerBrian Sullivan <briansul@microsoft.com>
Fri, 5 Oct 2018 22:08:49 +0000 (15:08 -0700)
commitaf0de96f1eeb60af233972ea71b19932aa96e2ce
tree4d0e2117f1e185d97f1b6add1dc1e900cec4b11f
parent4dbe018a821cd1255b2bd464be06227d4b5cde71
Full support for exception sets in value numbering.

New method that add exception sets:
  fgValueNumberAddExceptionSet
  - fgValueNumberAddExceptionSetForIndirection
  - fgValueNumberAddExceptionSetForDivision
  - fgValueNumberAddExceptionSetForOverflow
  - fgValueNumberAddExceptionSetForCkFinite

Refactoring work added methods:
 VNEvalShouldFold - method to decide if constant folding should be performed
 EvalUsingMathIdentity - Uses math identities to simplify value number exoressions
 Renamed fgValueNumberHelperMethVNFunc to fgValueNumberJitHelperMethodVNFunc

Removed the suffixes from the method headers comments

Commit migrated from https://github.com/dotnet/coreclr/commit/4a6f0c8f0c706c3a5ed5e98feeca80de1da57b5d
src/coreclr/src/jit/compiler.h
src/coreclr/src/jit/optcse.cpp
src/coreclr/src/jit/valuenum.cpp
src/coreclr/src/jit/valuenum.h
src/coreclr/src/jit/valuenumfuncs.h