Igor Laevsky | c11c1ed | 2017-02-14 15:53:12 +0000 | [diff] [blame] | 1 | ; RUN: opt -S -indvars < %s | FileCheck %s |
| 2 | |
| 3 | ; CHECK: @test |
| 4 | ; CHECK: %5 = add i32 %local_6_, %local_0_ |
| 5 | ; CEHCK: %37 = mul i32 %36, %36 |
| 6 | |
| 7 | define i32 @test(i32, i32) { |
| 8 | bci_0: |
| 9 | br label %bci_30 |
| 10 | |
| 11 | bci_68: ; preds = %bci_45 |
| 12 | %local_6_.lcssa = phi i32 [ %local_6_, %bci_45 ] |
| 13 | %.lcssa1.lcssa = phi i32 [ %37, %bci_45 ] |
| 14 | %.lcssa.lcssa = phi i32 [ 34, %bci_45 ] |
| 15 | %2 = add i32 %local_6_.lcssa, 262 |
| 16 | %3 = add i32 %2, %.lcssa1.lcssa |
| 17 | %4 = add i32 %3, %.lcssa.lcssa |
| 18 | ret i32 %4 |
| 19 | |
| 20 | bci_30: ; preds = %bci_45, %bci_0 |
| 21 | %local_0_ = phi i32 [ %0, %bci_0 ], [ %38, %bci_45 ] |
| 22 | %local_6_ = phi i32 [ 2, %bci_0 ], [ %39, %bci_45 ] |
| 23 | %5 = add i32 %local_6_, %local_0_ |
| 24 | br label %bci_45 |
| 25 | |
| 26 | bci_45: ; preds = %bci_30 |
| 27 | %6 = mul i32 %5, %5 |
| 28 | %7 = mul i32 %6, %6 |
| 29 | %8 = mul i32 %7, %7 |
| 30 | %9 = mul i32 %8, %8 |
| 31 | %10 = mul i32 %9, %9 |
| 32 | %11 = mul i32 %10, %10 |
| 33 | %12 = mul i32 %11, %11 |
| 34 | %13 = mul i32 %12, %12 |
| 35 | %14 = mul i32 %13, %13 |
| 36 | %15 = mul i32 %14, %14 |
| 37 | %16 = mul i32 %15, %15 |
| 38 | %17 = mul i32 %16, %16 |
| 39 | %18 = mul i32 %17, %17 |
| 40 | %19 = mul i32 %18, %18 |
| 41 | %20 = mul i32 %19, %19 |
| 42 | %21 = mul i32 %20, %20 |
| 43 | %22 = mul i32 %21, %21 |
| 44 | %23 = mul i32 %22, %22 |
| 45 | %24 = mul i32 %23, %23 |
| 46 | %25 = mul i32 %24, %24 |
| 47 | %26 = mul i32 %25, %25 |
| 48 | %27 = mul i32 %26, %26 |
| 49 | %28 = mul i32 %27, %27 |
| 50 | %29 = mul i32 %28, %28 |
| 51 | %30 = mul i32 %29, %29 |
| 52 | %31 = mul i32 %30, %30 |
| 53 | %32 = mul i32 %31, %31 |
| 54 | %33 = mul i32 %32, %32 |
| 55 | %34 = mul i32 %33, %33 |
| 56 | %35 = mul i32 %34, %34 |
| 57 | %36 = mul i32 %35, %35 |
| 58 | %37 = mul i32 %36, %36 |
| 59 | %38 = add i32 %37, -11 |
| 60 | %39 = add i32 %local_6_, 1 |
| 61 | %40 = icmp sgt i32 %39, 76 |
| 62 | br i1 %40, label %bci_68, label %bci_30 |
| 63 | } |