Fixing assert on variable live range for simd12 LCL / STORE_LCL (#79182)
authorBrian Bohe <brianbohe@gmail.com>
Fri, 9 Dec 2022 19:57:12 +0000 (14:57 -0500)
committerGitHub <noreply@github.com>
Fri, 9 Dec 2022 19:57:12 +0000 (11:57 -0800)
commit0b7fd637e93a02942eac1cec903d836194fceb86
treec3fb0192ab5fa9f9f3531097efa068b7c5428dbd
parentcb0c7ea3f0deb1006555ddba231f6d9721ba97c3
Fixing assert on variable live range for simd12 LCL / STORE_LCL (#79182)

* Adding jitdump for varible debug info

* Forcing home and live update after SIMD12 store lcl

Although LSRA is indicating the tree produces the
result in an xmm's register, we are storing vector3
always on stack, so its home on varDsc and liveness
information must be recorded accordingly. LSRA
seems not to has this information.

* Formatting file

* Add missing case of targetReg in genStoreLclTypeSIMD12()

* Fix liveness update for genStoreLclFld() and genStoreLclVar on x64

* Fix liveness update for genStoreLclTypeSIMD12() on arm64

* Fix and unifying genStoreLclFld/LclVar on x64

* Revert "Ignoring test regression runtime_63354 in x86 (#79358)"

This reverts commit 1dec6480669d2008cd4c067dc43fa9da31e779ac.

Co-authored-by: Brian Bohe <brianbohe@microsoft.com>
Co-authored-by: Kunal Pathak <Kunal.Pathak@microsoft.com>
src/coreclr/jit/codegenarm64.cpp
src/coreclr/jit/codegencommon.cpp
src/coreclr/jit/codegenxarch.cpp
src/coreclr/jit/emitxarch.cpp
src/coreclr/jit/simdcodegenxarch.cpp
src/tests/issues.targets