Include long shifts in OperIsShiftOrRotate
authorCarol Eidt <carol.eidt@microsoft.com>
Thu, 26 Jul 2018 20:44:47 +0000 (13:44 -0700)
committerCarol Eidt <carol.eidt@microsoft.com>
Thu, 26 Jul 2018 20:54:32 +0000 (13:54 -0700)
commit490fc573a6eb8c2b5e8ee43ac4fdd1ab6cc81abb
tree3889bc11e3229702ba20c4b6828fece8c8f06f7f
parente5dd7a0fc90bb7723fb0814a2c4b687639c1088e
Include long shifts in OperIsShiftOrRotate

The register allocator uses `OperIsShiftOrRotate` as the assertion for the method that gets the kills for the class of instructions that use RCX as the shift amount register. Expand it to include `RSH_LO` and `LSH_HI`.

Fix dotnet/coreclr#19081

Commit migrated from https://github.com/dotnet/coreclr/commit/8f020204f27aa10f778f9e549e01c6717d939d47
src/coreclr/src/jit/codegenxarch.cpp
src/coreclr/src/jit/gentree.h
src/coreclr/src/jit/lowerarmarch.cpp
src/coreclr/src/jit/lowerxarch.cpp