ARM: fix CodeGen for 64-bit shifts.
authorTim Northover <tnorthover@apple.com>
Wed, 16 Nov 2016 20:54:28 +0000 (20:54 +0000)
committerTim Northover <tnorthover@apple.com>
Wed, 16 Nov 2016 20:54:28 +0000 (20:54 +0000)
commit397f9d9d05fc9451b274e3126891236cfd72f639
tree95f94df8eaf2477598f6c502d547b12e1094989c
parent66827427e1ef0e14399f24b6711e704ed96a3362
ARM: fix CodeGen for 64-bit shifts.

One half of the shifts obviously needed conditional selection based on whether
the shift amount is more than 32-bits, but leaving the other half as the
natural shift isn't acceptable either: it's undefined behaviour to shift a
32-bit value by more than 31.

llvm-svn: 287149
llvm/lib/Target/ARM/ARMISelLowering.cpp
llvm/test/CodeGen/ARM/shift-i64.ll [new file with mode: 0644]