Copy address-taken SIMD intrinsic (dotnet/coreclr#21884)
authorCarol Eidt <carol.eidt@microsoft.com>
Wed, 9 Jan 2019 01:46:17 +0000 (17:46 -0800)
committerGitHub <noreply@github.com>
Wed, 9 Jan 2019 01:46:17 +0000 (17:46 -0800)
commitb83da96fca21e2f71d34c897cdf7345c47d1215e
tree1a9d177da3e7ffe620d1b357684864a1b83b8088
parent96c3a4760ba6f36216cdafebf4334fce0cd04819
Copy address-taken SIMD intrinsic (dotnet/coreclr#21884)

* Copy address-taken SIMD intrinsic

This occurs, for example, when boxing the result of a SIMD intrinsic. This was being handled for the HW intrinsic case, but not the SIMD Vector intrinsics. Also, eliminate `OperIsSimdHWIntrisic` since it redundantly checks for the case of a SIMD result, even though it was always called in a context where the result is known to be a struct type.

Fix dotnet/coreclr#21854

Commit migrated from https://github.com/dotnet/coreclr/commit/687ba57ae4e3df6aaa539898dea99ac2d918554a
src/coreclr/src/jit/gentree.h
src/coreclr/src/jit/importer.cpp
src/coreclr/src/jit/lowerarmarch.cpp
src/coreclr/src/jit/lowerxarch.cpp
src/coreclr/src/jit/morph.cpp
src/coreclr/src/jit/rationalize.cpp
src/coreclr/tests/src/JIT/Regression/JitBlue/GitHub_21854/GitHub_21854.cs [new file with mode: 0644]
src/coreclr/tests/src/JIT/Regression/JitBlue/GitHub_21854/GitHub_21854.csproj [new file with mode: 0644]