[llvm-bugs] [Bug 18606] A very small test resulting in extremely long compilation in "clang -O2" version 3.5, trunk 199677

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Feb 3 08:13:52 PST 2017


https://llvm.org/bugs/show_bug.cgi?id=18606

Igor Laevsky <igor at azulsystems.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
                 CC|                            |igor at azulsystems.com
         Resolution|FIXED                       |---

--- Comment #8 from Igor Laevsky <igor at azulsystems.com> ---
This issue is still reproducible on this IR:

define i32 @test(i32, i32) {
bci_0:
  br label %bci_30

bci_68:                                           ; preds = %bci_45
  %local_6_.lcssa = phi i32 [ %local_6_, %bci_45 ]
  %.lcssa1.lcssa = phi i32 [ %37, %bci_45 ]
  %.lcssa.lcssa = phi i32 [ 34, %bci_45 ]
  %2 = add i32 %local_6_.lcssa, 262
  %3 = add i32 %2, %.lcssa1.lcssa
  %4 = add i32 %3, %.lcssa.lcssa
  ret i32 %4

bci_30:                                           ; preds = %bci_45, %bci_0
  %local_0_ = phi i32 [ %0, %bci_0 ], [ %38, %bci_45 ]
  %local_6_ = phi i32 [ 2, %bci_0 ], [ %39, %bci_45 ]
  %5 = add i32 %local_6_, %local_0_
  br label %bci_45

bci_45:                                           ; preds = %bci_30
  %6 = mul i32 %5, %5
  %7 = mul i32 %6, %6
  %8 = mul i32 %7, %7
  %9 = mul i32 %8, %8
  %10 = mul i32 %9, %9
  %11 = mul i32 %10, %10
  %12 = mul i32 %11, %11
  %13 = mul i32 %12, %12
  %14 = mul i32 %13, %13
  %15 = mul i32 %14, %14
  %16 = mul i32 %15, %15
  %17 = mul i32 %16, %16
  %18 = mul i32 %17, %17
  %19 = mul i32 %18, %18
  %20 = mul i32 %19, %19
  %21 = mul i32 %20, %20
  %22 = mul i32 %21, %21
  %23 = mul i32 %22, %22
  %24 = mul i32 %23, %23
  %25 = mul i32 %24, %24
  %26 = mul i32 %25, %25
  %27 = mul i32 %26, %26
  %28 = mul i32 %27, %27
  %29 = mul i32 %28, %28
  %30 = mul i32 %29, %29
  %31 = mul i32 %30, %30
  %32 = mul i32 %31, %31
  %33 = mul i32 %32, %32
  %34 = mul i32 %33, %33
  %35 = mul i32 %34, %34
  %36 = mul i32 %35, %35
  %37 = mul i32 %36, %36
  %38 = add i32 %37, -11
  %39 = add i32 %local_6_, 1
  %40 = icmp sgt i32 %39, 76
  br i1 %40, label %bci_68, label %bci_30
}

I suspect this might be because we don't cash results inside of the
"ScalarEvolution::GetMinTrailingZeros"

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170203/d2a699c8/attachment-0001.html>


More information about the llvm-bugs mailing list