<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 - CompareSCEVComplexity(): Assertion `DT.dominates(RHead, LHead) && "No dominance between recurrences used by one SCEV?"' failed."
   href="https://bugs.llvm.org/show_bug.cgi?id=33761">33761</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>CompareSCEVComplexity(): Assertion `DT.dominates(RHead, LHead) && "No dominance between recurrences used by one SCEV?"' failed.
          </td>
        </tr>

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

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

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

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

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

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

        <tr>
          <th>Component</th>
          <td>Global Analyses
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>nunoplopes@sapo.pt
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>efriedma@codeaurora.org, llvm-bugs@lists.llvm.org, sanjoy@playingwithpointers.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=18783" name="attach_18783" title="IR">attachment 18783</a> <a href="attachment.cgi?id=18783&action=edit" title="IR">[details]</a></span>
IR

The bug should be in SCEV not in the alias analysis.

$ opt -S -scev-aa -print-alias-sets a.ll

opt: lib/Analysis/ScalarEvolution.cpp:648: int
CompareSCEVComplexity(llvm::SmallSet<std::pair<const llvm::SCEV*, const
llvm::SCEV*>, 8u>&, const llvm::LoopInfo*, const llvm::SCEV*, const
llvm::SCEV*, llvm::DominatorTree&, unsigned int): Assertion
`DT.dominates(RHead, LHead) && "No dominance between recurrences used by one
SCEV?"' failed.

#8 0x000056535aa00c00 CompareSCEVComplexity(llvm::SmallSet<std::pair<llvm::SCEV
const*, llvm::SCEV const*>, 8u, std::less<std::pair<llvm::SCEV const*,
llvm::SCEV const*> > >&, llvm::LoopInfo const*, llvm::SCEV const*, llvm::SCEV
const*, llvm::DominatorTree&, unsigned int)
#9 0x000056535aa06e74 GroupByComplexity(llvm::SmallVectorImpl<llvm::SCEV
const*>&, llvm::LoopInfo*, llvm::DominatorTree&)
#10 0x000056535aa18daf
llvm::ScalarEvolution::getAddExpr(llvm::SmallVectorImpl<llvm::SCEV const*>&,
llvm::SCEV::NoWrapFlags, unsigned int)
#11 0x000056535aa1b03b llvm::ScalarEvolution::getAddExpr(llvm::SCEV const*,
llvm::SCEV const*, llvm::SCEV::NoWrapFlags, unsigned int)
#12 0x000056535aa1ffd4 llvm::ScalarEvolution::getMinusSCEV(llvm::SCEV const*,
llvm::SCEV const*, llvm::SCEV::NoWrapFlags, unsigned int)
#13 0x000056535aa3436a llvm::SCEVAAResult::alias(llvm::MemoryLocation const&,
llvm::MemoryLocation const&)
#14 0x000056535a8a5cb8 llvm::AAResults::alias(llvm::MemoryLocation const&,
llvm::MemoryLocation const&)
#15 0x000056535a8c2834 llvm::BasicAAResult::aliasCheck(llvm::Value const*,
unsigned long, llvm::AAMDNodes, llvm::Value const*, unsigned long,
llvm::AAMDNodes, llvm::Value const*, llvm::Value const*)
#16 0x000056535a8c3d62 llvm::BasicAAResult::alias(llvm::MemoryLocation const&,
llvm::MemoryLocation const&)
#17 0x000056535a8a5cb8 llvm::AAResults::alias(llvm::MemoryLocation const&,
llvm::MemoryLocation const&)
#18 0x000056535a8b3262 llvm::AliasSet::aliasesPointer(llvm::Value const*,
unsigned long, llvm::AAMDNodes const&, llvm::AAResults&) const
#19 0x000056535a8b6500
llvm::AliasSetTracker::mergeAliasSetsForPointer(llvm::Value const*, unsigned
long, llvm::AAMDNodes const&)
#20 0x000056535a8b74b3
llvm::AliasSetTracker::getAliasSetForPointer(llvm::Value*, unsigned long,
llvm::AAMDNodes const&)
#21 0x000056535a8b8cf1 llvm::AliasSetTracker::addPointer(llvm::Value*, unsigned
long, llvm::AAMDNodes const&, llvm::AliasSet::AccessLattice)
#22 0x000056535a8b8fa1 llvm::AliasSetTracker::add(llvm::StoreInst*)
#23 0x000056535a8ba417 (anonymous
namespace)::AliasSetPrinter::runOnFunction(llvm::Function&)</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>