1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2; RUN: llc -mtriple=x86_64 < %s | FileCheck %s 3 4define void @bool_eq(i1 zeroext %a, i1 zeroext %b, ptr nocapture %c) nounwind { 5; CHECK-LABEL: bool_eq: 6; CHECK: # %bb.0: # %entry 7; CHECK-NEXT: xorl %esi, %edi 8; CHECK-NEXT: je .LBB0_2 9; CHECK-NEXT: # %bb.1: # %if.end 10; CHECK-NEXT: retq 11; CHECK-NEXT: .LBB0_2: # %if.then 12; CHECK-NEXT: jmpq *%rdx # TAILCALL 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, ptr nocapture %c) nounwind { 26; CHECK-LABEL: bool_ne: 27; CHECK: # %bb.0: # %entry 28; CHECK-NEXT: cmpb %sil, %dil 29; CHECK-NEXT: je .LBB1_1 30; CHECK-NEXT: # %bb.2: # %if.then 31; CHECK-NEXT: jmpq *%rdx # TAILCALL 32; CHECK-NEXT: .LBB1_1: # %if.end 33; CHECK-NEXT: retq 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