<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - opt -loop-unroll seems to do unbounded recursion"
   href="https://bugs.llvm.org/show_bug.cgi?id=47327">47327</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>opt -loop-unroll seems to do unbounded recursion
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>libraries
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Loop Optimizer
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>mikael.holmen@ericsson.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=23898" name="attach_23898" title="bbi-45693.ll reproducer">attachment 23898</a> <a href="attachment.cgi?id=23898&action=edit" title="bbi-45693.ll reproducer">[details]</a></span>
bbi-45693.ll reproducer

Reproduce with
 opt < bbi-45693.ll -loop-unroll -o - -S

Which results in 

PLEASE submit a bug report to <a href="https://bugs.llvm.org/">https://bugs.llvm.org/</a> and include the crash
backtrace.
Stack dump:
0.      Program arguments: build-all/bin/opt -loop-unroll -o - -S 
1.      Running pass 'Function Pass Manager' on module '<stdin>'.
2.      Running pass 'Loop Pass Manager' on function '@f'
3.      Running pass 'Unroll loops' on basic block '%for.cond.outer'
build-all/bin/opt[0x47c4c14]
build-all/bin/opt(_ZN4llvm3sys17RunSignalHandlersEv+0xee)[0x47c279e]
build-all/bin/opt[0x47c4f2c]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12890)[0x7f5243932890]
build-all/bin/opt(_ZN4llvm15ScalarEvolution11getRangeRefEPKNS_4SCEVENS0_13RangeSignHintE+0x2e)[0x394afee]
build-all/bin/opt[0x393cc3b]
build-all/bin/opt(_ZN4llvm15ScalarEvolution10getAddExprERNS_15SmallVectorImplIPKNS_4SCEVEEENS2_11NoWrapFlagsEj+0x15e)[0x393020e]
build-all/bin/opt(_ZN4llvm15ScalarEvolution24createSimpleAffineAddRecEPNS_7PHINodeEPNS_5ValueES4_+0x27b)[0x39474cb]
build-all/bin/opt(_ZN4llvm15ScalarEvolution19createAddRecFromPHIEPNS_7PHINodeE+0x2f9)[0x3948459]
build-all/bin/opt(_ZN4llvm15ScalarEvolution16createNodeForPHIEPNS_7PHINodeE+0x14)[0x394a524]
build-all/bin/opt(_ZN4llvm15ScalarEvolution10createSCEVEPNS_5ValueE+0x1614)[0x3943254]
build-all/bin/opt(_ZN4llvm15ScalarEvolution7getSCEVEPNS_5ValueE+0x47)[0x393eb67]
build-all/bin/opt(_ZN4llvm15ScalarEvolution10createSCEVEPNS_5ValueE+0x754)[0x3942394]
build-all/bin/opt(_ZN4llvm15ScalarEvolution7getSCEVEPNS_5ValueE+0x47)[0x393eb67]
build-all/bin/opt(_ZN4llvm15ScalarEvolution13isImpliedCondENS_7CmpInst9PredicateEPKNS_4SCEVES5_PNS_5ValueEb+0x13d)[0x39639ed]
build-all/bin/opt(_ZN4llvm15ScalarEvolution24isLoopEntryGuardedByCondEPKNS_4LoopENS_7CmpInst9PredicateEPKNS_4SCEVES8_+0x42d)[0x3960f5d]
build-all/bin/opt(_ZN4llvm15ScalarEvolution12howFarToZeroEPKNS_4SCEVEPKNS_4LoopEbb+0x5b3)[0x395b193]
build-all/bin/opt(_ZN4llvm15ScalarEvolution24computeExitLimitFromICmpEPKNS_4LoopEPNS_8ICmpInstEbbb+0x359)[0x3956f29]
build-all/bin/opt(_ZN4llvm15ScalarEvolution28computeExitLimitFromCondImplERNS0_14ExitLimitCacheEPKNS_4LoopEPNS_5ValueEbbb+0x14e)[0x39564ae]
build-all/bin/opt(_ZN4llvm15ScalarEvolution30computeExitLimitFromCondCachedERNS0_14ExitLimitCacheEPKNS_4LoopEPNS_5ValueEbbb+0xe7)[0x3955f77]
build-all/bin/opt(_ZN4llvm15ScalarEvolution16computeExitLimitEPKNS_4LoopEPNS_10BasicBlockEb+0x5d0)[0x3955690]
build-all/bin/opt(_ZN4llvm15ScalarEvolution25computeBackedgeTakenCountEPKNS_4LoopEb+0x33b)[0x39521ab]
build-all/bin/opt(_ZN4llvm15ScalarEvolution20getBackedgeTakenInfoEPKNS_4LoopE+0x14b)[0x3950bbb]
[...]
Segmentation fault (core dumped)


This seems to be old. I've tested on some old saved builds and it starts
crashing with a build from January 2017.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>