Home | History | Annotate | Download | only in PowerPC
      1 ; RUN: opt < %s -S -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 -loop-unroll | FileCheck %s
      2 define void @unroll_opt_for_size() nounwind optsize {
      3 entry:
      4   br label %loop
      5 
      6 loop:
      7   %iv = phi i32 [ 0, %entry ], [ %inc, %loop ]
      8   %inc = add i32 %iv, 1
      9   %exitcnd = icmp uge i32 %inc, 1024
     10   br i1 %exitcnd, label %exit, label %loop
     11 
     12 exit:
     13   ret void
     14 }
     15 
     16 ; CHECK-LABEL: @unroll_opt_for_size
     17 ; CHECK:      add
     18 ; CHECK-NEXT: add
     19 ; CHECK-NEXT: add
     20 ; CHECK-NEXT: add
     21 ; CHECK-NEXT: add
     22 ; CHECK-NEXT: add
     23 ; CHECK-NEXT: add
     24 ; CHECK-NEXT: add
     25 ; CHECK-NEXT: add
     26 ; CHECK-NEXT: add
     27 ; CHECK-NEXT: add
     28 ; CHECK-NEXT: add
     29 ; CHECK-NEXT: add
     30 ; CHECK-NEXT: add
     31 ; CHECK-NEXT: add
     32 ; CHECK-NEXT: add
     33 ; CHECK-NEXT: add
     34 ; CHECK-NEXT: add
     35 ; CHECK-NEXT: add
     36 ; CHECK-NEXT: add
     37 ; CHECK-NEXT: add
     38 ; CHECK-NEXT: add
     39 ; CHECK-NEXT: add
     40 ; CHECK-NEXT: add
     41 ; CHECK-NEXT: add
     42 ; CHECK-NEXT: add
     43 ; CHECK-NEXT: add
     44 ; CHECK-NEXT: add
     45 ; CHECK-NEXT: add
     46 ; CHECK-NEXT: add
     47 ; CHECK-NEXT: add
     48 ; CHECK-NEXT: add
     49 ; CHECK-NEXT: icmp
     50 
     51 define void @unroll_default() nounwind {
     52 entry:
     53   br label %loop
     54 
     55 loop:
     56   %iv = phi i32 [ 0, %entry ], [ %inc, %loop ]
     57   %inc = add i32 %iv, 1
     58   %exitcnd = icmp uge i32 %inc, 1024
     59   br i1 %exitcnd, label %exit, label %loop
     60 
     61 exit:
     62   ret void
     63 }
     64 
     65 ; CHECK-LABEL: @unroll_default
     66 ; CHECK:      add
     67 ; CHECK-NEXT: add
     68 ; CHECK-NEXT: add
     69 ; CHECK-NEXT: add
     70 ; CHECK-NEXT: add
     71 ; CHECK-NEXT: add
     72 ; CHECK-NEXT: add
     73 ; CHECK-NEXT: add
     74 ; CHECK-NEXT: add
     75 ; CHECK-NEXT: add
     76 ; CHECK-NEXT: add
     77 ; CHECK-NEXT: add
     78 ; CHECK-NEXT: add
     79 ; CHECK-NEXT: add
     80 ; CHECK-NEXT: add
     81 ; CHECK-NEXT: add
     82 ; CHECK-NEXT: add
     83 ; CHECK-NEXT: add
     84 ; CHECK-NEXT: add
     85 ; CHECK-NEXT: add
     86 ; CHECK-NEXT: add
     87 ; CHECK-NEXT: add
     88 ; CHECK-NEXT: add
     89 ; CHECK-NEXT: add
     90 ; CHECK-NEXT: add
     91 ; CHECK-NEXT: add
     92 ; CHECK-NEXT: add
     93 ; CHECK-NEXT: add
     94 ; CHECK-NEXT: add
     95 ; CHECK-NEXT: add
     96 ; CHECK-NEXT: add
     97 ; CHECK-NEXT: add
     98 ; CHECK-NEXT: icmp
     99 
    100