[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / AArch64 / fast-isel-branch-cond-mask.ll
blob0cafd883f6947f5aeebe01eee90a9385c7dbd6bf
1 ; RUN: llc -mtriple=aarch64-apple-darwin -O0 -fast-isel -fast-isel-abort=0 -verify-machineinstrs < %s | FileCheck %s
3 define void @test(i64 %a, i64 %b, i2* %c) {
4 ; CHECK-LABEL: test
5 ; CHECK:       and [[REG1:w[0-9]+]], {{w[0-9]+}}, #0x3
6 ; CHECK-NEXT:  strb [[REG1]], {{\[}}x2{{\]}}
7 ; CHECK-NEXT:  tbz {{w[0-9]+}}, #0,
8  %1 = trunc i64 %a to i2
9  %2 = trunc i64 %b to i1
10 ; Force fast-isel to fall back to SDAG.
11  store i2 %1, i2* %c, align 8
12  br i1 %2, label %bb1, label %bb2
14 bb1:
15   ret void
17 bb2:
18   ret void