diff options
author | Nemanja Ivanovic <nemanja.i.ibm@gmail.com> | 2015-12-02 10:36:24 +0000 |
---|---|---|
committer | Nemanja Ivanovic <nemanja.i.ibm@gmail.com> | 2015-12-02 10:36:24 +0000 |
commit | 8364ade5d93474e14943675f122e0f69c976ff55 (patch) | |
tree | 3661e862c695b13da4307f7828d73e9d1f07fcef /test/CodeGen/PowerPC/rotl-rotr-crash.ll | |
parent | 044b4b4a4327c5a84e1c5a0560612e2ee7e0846a (diff) |
Patch to fix a crash in the PowerPC back end due to ISD::ROTL and ISD::ROTR
not being expanded. Test case included.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254501 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/PowerPC/rotl-rotr-crash.ll')
-rw-r--r-- | test/CodeGen/PowerPC/rotl-rotr-crash.ll | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/CodeGen/PowerPC/rotl-rotr-crash.ll b/test/CodeGen/PowerPC/rotl-rotr-crash.ll new file mode 100644 index 00000000000..3fbb67ecf25 --- /dev/null +++ b/test/CodeGen/PowerPC/rotl-rotr-crash.ll @@ -0,0 +1,12 @@ +; RUN: llc < %s -mtriple=powerpc64le-unknown-unknown -mcpu=pwr8 + +; Ensure this does not crash + +; Function Attrs: norecurse nounwind +define <4 x i32> @func1 (<4 x i32> %a) { +entry: + %0 = lshr <4 x i32> %a, <i32 16, i32 16, i32 16, i32 16> + %1 = shl <4 x i32> %a, <i32 16, i32 16, i32 16, i32 16> + %2 = or <4 x i32> %1, %0 + ret <4 x i32> %2 +} |