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