85 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu \3; RUN: -mcpu=pwr9 -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr < %s | \4; RUN: FileCheck %s5define hidden void @julia_tryparse_internal_45896() #0 {6; CHECK-LABEL: julia_tryparse_internal_45896:7; CHECK: # %bb.0: # %top8; CHECK-NEXT: ld r3, 0(r3)9; CHECK-NEXT: cmpldi r3, 010; CHECK-NEXT: beq cr0, .LBB0_611; CHECK-NEXT: # %bb.1: # %top12; CHECK-NEXT: cmpldi r3, 1013; CHECK-NEXT: beq cr0, .LBB0_314; CHECK-NEXT: # %bb.2: # %top15; CHECK-NEXT: .LBB0_3: # %L29416; CHECK-NEXT: bc 12, 4*cr5+lt, .LBB0_517; CHECK-NEXT: # %bb.4: # %L29418; CHECK-NEXT: bc 4, 4*cr5+lt, .LBB0_719; CHECK-NEXT: .LBB0_5: # %L1057.preheader20; CHECK-NEXT: .LBB0_6: # %fail19421; CHECK-NEXT: .LBB0_7: # %L67022; CHECK-NEXT: li r5, -323; CHECK-NEXT: sradi r4, r3, 6324; CHECK-NEXT: rldic r5, r5, 4, 3225; CHECK-NEXT: mulld r6, r4, r526; CHECK-NEXT: mulhdu r3, r3, r527; CHECK-NEXT: mulhdu r4, r4, r528; CHECK-NEXT: addc r3, r3, r629; CHECK-NEXT: li r3, 030; CHECK-NEXT: addze r3, r331; CHECK-NEXT: or. r3, r4, r332; CHECK-NEXT: beq cr0, .LBB0_933; CHECK-NEXT: # %bb.8: # %L91734; CHECK-NEXT: .LBB0_9: # %L99435top:36 %0 = load i64, ptr undef, align 837 %1 = icmp ne i64 %0, 038 %2 = sext i64 %0 to i12839 switch i64 %0, label %pass195 [40 i64 10, label %L29441 i64 16, label %L294.fold.split42 i64 0, label %fail19443 ]44 45L294.fold.split: ; preds = %top46 unreachable47 48L294: ; preds = %top49 %3 = add nsw i32 0, -4850 %4 = zext i32 %3 to i12851 %5 = add i128 %4, 052 switch i32 undef, label %L670 [53 i32 -1031471104, label %L1057.preheader54 i32 536870912, label %L1057.preheader55 ]56 57L670: ; preds = %L29458 br label %L89859 60L1057.preheader: ; preds = %L294, %L29461 unreachable62 63L898: ; preds = %L67064 %umul = call { i128, i1 } @llvm.umul.with.overflow.i128(i128 %2, i128 %5)65 %umul.ov = extractvalue { i128, i1 } %umul, 166 %value_phi102 = and i1 %1, %umul.ov67 %6 = or i1 %value_phi102, false68 br i1 %6, label %L917, label %L99469 70L917: ; preds = %L89871 unreachable72 73L994: ; preds = %L89874 unreachable75 76fail194: ; preds = %top77 unreachable78 79pass195: ; preds = %top80 unreachable81}82 83; Function Attrs: nounwind readnone speculatable willreturn84declare { i128, i1 } @llvm.umul.with.overflow.i128(i128, i128) #185