brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.5 KiB · bb8337d Raw
64 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr9 -verify-machineinstrs | FileCheck %s --check-prefixes=CHECK,V01,CHECK-V03; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr9 -verify-machineinstrs | FileCheck %s --check-prefixes=CHECK,V01,CHECK-V14; RUN: llc < %s -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr8 -verify-machineinstrs | FileCheck %s --check-prefixes=CHECK,V23,CHECK-V25; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr8 -verify-machineinstrs | FileCheck %s --check-prefixes=CHECK,V23,CHECK-V36 7; Function Attrs: norecurse nounwind readonly8define signext i32 @limit_loop(i32 signext %iters, ptr nocapture readonly %vec, i32 signext %limit) local_unnamed_addr {9; CHECK-LABEL: limit_loop:10; CHECK:       # %bb.0: # %entry11; CHECK-NEXT:    mr 6, 312; CHECK-NEXT:    li 3, 013; CHECK-NEXT:    cmpwi 6, 014; CHECK-NEXT:    blelr 015; CHECK-NEXT:  # %bb.1: # %for.body.preheader16; CHECK-NEXT:    mtctr 617; CHECK-NEXT:    addi 4, 4, -418; CHECK-NEXT:    b .LBB0_319; CHECK-NEXT:    .p2align 420; CHECK-NEXT:  .LBB0_2: # %for.cond21; CHECK-NEXT:    #22; CHECK-NEXT:    bdzlr23; CHECK-NEXT:  .LBB0_3: # %for.body24; CHECK-NEXT:    #25; CHECK-NEXT:    lwzu 6, 4(4)26; CHECK-NEXT:    cmpw 6, 527; CHECK-NEXT:    blt 0, .LBB0_228; CHECK-NEXT:  # %bb.4:29; CHECK-NEXT:    li 3, 130; CHECK-NEXT:    blr31entry:32  %cmp5 = icmp sgt i32 %iters, 033  br i1 %cmp5, label %for.body.preheader, label %cleanup34 35for.body.preheader:                               ; preds = %entry36  %0 = sext i32 %iters to i6437  br label %for.body38 39for.cond:                                         ; preds = %for.body40  %cmp = icmp slt i64 %indvars.iv.next, %041  br i1 %cmp, label %for.body, label %cleanup42 43for.body:                                         ; preds = %for.body.preheader, %for.cond44  %indvars.iv = phi i64 [ 0, %for.body.preheader ], [ %indvars.iv.next, %for.cond ]45  %arrayidx = getelementptr inbounds i32, ptr %vec, i64 %indvars.iv46  %1 = load i32, ptr %arrayidx, align 447  %cmp1 = icmp slt i32 %1, %limit48  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 149  br i1 %cmp1, label %for.cond, label %cleanup50 51cleanup:                                          ; preds = %for.body, %for.cond, %entry52  %2 = phi i32 [ 0, %entry ], [ 0, %for.cond ], [ 1, %for.body ]53  ret i32 %254}55 56 57;; NOTE: These prefixes are unused and the list is autogenerated. Do not add tests below this line:58; CHECK-V0: {{.*}}59; CHECK-V1: {{.*}}60; CHECK-V2: {{.*}}61; CHECK-V3: {{.*}}62; V01: {{.*}}63; V23: {{.*}}64