mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-10-25 10:27:04 +00:00
[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
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user