• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2; RUN: llc -mtriple=aarch64 < %s | FileCheck %s
3
4define void @bool_eq(i1 zeroext %a, i1 zeroext %b, void ()* nocapture %c) nounwind {
5; CHECK-LABEL: bool_eq:
6; CHECK:       // %bb.0: // %entry
7; CHECK-NEXT:    cmp w0, w1
8; CHECK-NEXT:    b.eq .LBB0_2
9; CHECK-NEXT:  // %bb.1: // %if.end
10; CHECK-NEXT:    ret
11; CHECK-NEXT:  .LBB0_2: // %if.then
12; CHECK-NEXT:    br x2
13entry:
14  %0 = xor i1 %a, %b
15  br i1 %0, label %if.end, label %if.then
16
17if.then:
18  tail call void %c() #1
19  br label %if.end
20
21if.end:
22  ret void
23}
24
25define void @bool_ne(i1 zeroext %a, i1 zeroext %b, void ()* nocapture %c) nounwind {
26; CHECK-LABEL: bool_ne:
27; CHECK:       // %bb.0: // %entry
28; CHECK-NEXT:    cmp w0, w1
29; CHECK-NEXT:    b.eq .LBB1_2
30; CHECK-NEXT:  // %bb.1: // %if.then
31; CHECK-NEXT:    br x2
32; CHECK-NEXT:  .LBB1_2: // %if.end
33; CHECK-NEXT:    ret
34entry:
35  %cmp = xor i1 %a, %b
36  br i1 %cmp, label %if.then, label %if.end
37
38if.then:
39  tail call void %c() #1
40  br label %if.end
41
42if.end:
43  ret void
44}
45