summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@linux.vnet.ibm.com>2013-10-16 13:35:13 +0000
committerRichard Sandiford <rsandifo@linux.vnet.ibm.com>2013-10-16 13:35:13 +0000
commitd77a7669ec1a6bba7e45791b1aa1e65a603dda92 (patch)
tree13629a441c0081ea606b7a9b6e22b4667329a1fb /test
parent648a2e6714885e9b3d2a4f380434fe44ef2c4b5b (diff)
downloadllvm-d77a7669ec1a6bba7e45791b1aa1e65a603dda92.tar.gz
llvm-d77a7669ec1a6bba7e45791b1aa1e65a603dda92.tar.bz2
llvm-d77a7669ec1a6bba7e45791b1aa1e65a603dda92.tar.xz
[SystemZ] Handle extensions in RxSBG optimizations
The input to an RxSBG operation can be narrower as long as the upper bits are don't care. This fixes a FIXME added in r192783. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192790 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CodeGen/SystemZ/shift-10.ll5
1 files changed, 2 insertions, 3 deletions
diff --git a/test/CodeGen/SystemZ/shift-10.ll b/test/CodeGen/SystemZ/shift-10.ll
index 47cd0027f1..3fd965745e 100644
--- a/test/CodeGen/SystemZ/shift-10.ll
+++ b/test/CodeGen/SystemZ/shift-10.ll
@@ -52,11 +52,10 @@ define i64 @f4(i32 %a) {
}
; Repeat the previous test in a case where all bits outside the
-; bottom 3 matter. FIXME: can still use RISBG here.
+; bottom 3 matter.
define i64 @f5(i32 %a) {
; CHECK-LABEL: f5:
-; CHECK: srl %r2, 30
-; CHECK: sllg %r2, %r2, 33
+; CHECK: risbg %r2, %r2, 29, 158, 3
; CHECK: lhi %r2, 7
; CHECK: br %r14
%shr = lshr i32 %a, 30