[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / AArch64 / branch-relax-alignment.ll
blob7135dff7f5732bbe45de5413564e6f3a659c984e
1 ; RUN: llc -mtriple=aarch64-apple-darwin -aarch64-bcc-offset-bits=4 -align-all-nofallthru-blocks=4 < %s | FileCheck %s
3 ; Long branch is assumed because the block has a higher alignment
4 ; requirement than the function.
6 ; CHECK-LABEL: invert_bcc_block_align_higher_func:
7 ; CHECK: b.eq [[JUMP_BB1:LBB[0-9]+_[0-9]+]]
8 ; CHECK-NEXT: b [[JUMP_BB2:LBB[0-9]+_[0-9]+]]
10 ; CHECK: [[JUMP_BB1]]:
11 ; CHECK: ret
12 ; CHECK: .p2align 4
14 ; CHECK: [[JUMP_BB2]]:
15 ; CHECK: ret
16 define i32 @invert_bcc_block_align_higher_func(i32 %x, i32 %y) align 4 #0 {
17   %1 = icmp eq i32 %x, %y
18   br i1 %1, label %bb1, label %bb2
20 bb2:
21   store volatile i32 9, i32* undef
22   ret i32 1
24 bb1:
25   store volatile i32 42, i32* undef
26   ret i32 0
29 attributes #0 = { nounwind }