Use JitFuncInfoLogFile to check if SIMD intrinsics are recognized.
authorCarol Eidt <carol.eidt@microsoft.com>
Tue, 17 May 2016 23:48:15 +0000 (16:48 -0700)
committerCarol Eidt <carol.eidt@microsoft.com>
Fri, 27 May 2016 17:44:16 +0000 (10:44 -0700)
commit710e7321ff5cf88f143347b4184e552eaba1db97
tree8b5ca5738f2d9a9d3d2376c6cb339666260b8a2b
parent46f22d40693b05cae685246abba94f0562693f4f
Use JitFuncInfoLogFile to check if SIMD intrinsics are recognized.

Although COMPlus_JitFuncInfoLogFile was enabled as a "RETAIL" variable, it
was only opening the file (and not writing to it) in non-DEBUG.
In order to use it, we need to also enable eeGetMethodFullName in release,
which in turn requires type names.
Also, _wfsopen() is not supported in the PAL layer.
However, it appears to work fine without the sharing option, on both Windows
and Linux.
Add a utility class to use the log file to check whether a method has been compiled.
Use it to test that the SIMD intrinsics are not compiled when they are enabled.
Add dir.props to the SIMD test directory to set the COMPlus_JitFuncInfoLogFile
environment variable, and to delete the log file before each test.

Fix dotnet/coreclr#2554

Commit migrated from https://github.com/dotnet/coreclr/commit/41057591615c9ed32567de5936bf72de29c5118c
22 files changed:
src/coreclr/src/jit/compiler.cpp
src/coreclr/src/jit/eeinterface.cpp
src/coreclr/src/jit/utils.cpp
src/coreclr/tests/src/JIT/SIMD/Ctors.cs
src/coreclr/tests/src/JIT/SIMD/Ctors_r.csproj
src/coreclr/tests/src/JIT/SIMD/Ctors_ro.csproj
src/coreclr/tests/src/JIT/SIMD/VectorAbs.cs
src/coreclr/tests/src/JIT/SIMD/VectorAdd.cs
src/coreclr/tests/src/JIT/SIMD/VectorArray.cs
src/coreclr/tests/src/JIT/SIMD/VectorArrayInit.cs
src/coreclr/tests/src/JIT/SIMD/VectorCopyToArray.cs
src/coreclr/tests/src/JIT/SIMD/VectorDiv.cs
src/coreclr/tests/src/JIT/SIMD/VectorDot.cs
src/coreclr/tests/src/JIT/SIMD/VectorGet.cs
src/coreclr/tests/src/JIT/SIMD/VectorInitN.cs
src/coreclr/tests/src/JIT/SIMD/VectorMax.cs
src/coreclr/tests/src/JIT/SIMD/VectorMin.cs
src/coreclr/tests/src/JIT/SIMD/VectorMul.cs
src/coreclr/tests/src/JIT/SIMD/VectorRelOp.cs
src/coreclr/tests/src/JIT/SIMD/VectorUtil.cs
src/coreclr/tests/src/JIT/SIMD/dir.props [new file with mode: 0644]
src/coreclr/tests/src/JIT/SIMD/project.json