60 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mtriple=riscv32 < %s | FileCheck --check-prefix=RV32 %s3; RUN: llc -mtriple=riscv64 < %s | FileCheck --check-prefix=RV64 %s4 5define void @bool_eq(i1 zeroext %a, i1 zeroext %b, ptr nocapture %c) nounwind {6; RV32-LABEL: bool_eq:7; RV32: # %bb.0: # %entry8; RV32-NEXT: beq a0, a1, .LBB0_29; RV32-NEXT: # %bb.1: # %if.end10; RV32-NEXT: ret11; RV32-NEXT: .LBB0_2: # %if.then12; RV32-NEXT: jr a213;14; RV64-LABEL: bool_eq:15; RV64: # %bb.0: # %entry16; RV64-NEXT: beq a0, a1, .LBB0_217; RV64-NEXT: # %bb.1: # %if.end18; RV64-NEXT: ret19; RV64-NEXT: .LBB0_2: # %if.then20; RV64-NEXT: jr a221entry:22 %0 = xor i1 %a, %b23 br i1 %0, label %if.end, label %if.then24 25if.then:26 tail call void %c() #127 br label %if.end28 29if.end:30 ret void31}32 33define void @bool_ne(i1 zeroext %a, i1 zeroext %b, ptr nocapture %c) nounwind {34; RV32-LABEL: bool_ne:35; RV32: # %bb.0: # %entry36; RV32-NEXT: beq a0, a1, .LBB1_237; RV32-NEXT: # %bb.1: # %if.then38; RV32-NEXT: jr a239; RV32-NEXT: .LBB1_2: # %if.end40; RV32-NEXT: ret41;42; RV64-LABEL: bool_ne:43; RV64: # %bb.0: # %entry44; RV64-NEXT: beq a0, a1, .LBB1_245; RV64-NEXT: # %bb.1: # %if.then46; RV64-NEXT: jr a247; RV64-NEXT: .LBB1_2: # %if.end48; RV64-NEXT: ret49entry:50 %cmp = xor i1 %a, %b51 br i1 %cmp, label %if.then, label %if.end52 53if.then:54 tail call void %c() #155 br label %if.end56 57if.end:58 ret void59}60