This pattern showed up in D60358 and it was suggested I had a test and fix that separately.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@358030
91177308-0d34-0410-b5e6-
96231b3b80d8
end:
ret void
}
+
+define void @test20(i32 %in) {
+; CHECK-LABEL: @test20
+ %shl = shl i32 %in, 3
+ %zext = zext i32 %shl to i64
+ %and = and i64 %zext, 32
+ %cond = icmp eq i64 %and, 0
+ br i1 %cond, label %then, label %end
+
+; FIXME: Should be no lsl
+; CHECK: lsl w8, w0, #3
+; CHECK: tbnz w8, #5
+
+then:
+ call void @t()
+ br label %end
+
+end:
+ ret void
+}
+