<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/59360>59360</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [BasicAA] Assertion `!empty()' failed
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            regression,
            llvm:crash
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
            nikic
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          danilaml
      </td>
    </tr>
</table>

<pre>
    After https://github.com/llvm/llvm-project/commit/6c269a3f89edde33a472d53ed017c1adfb62afcb it's become possible to trigger assert inside `isPotentiallyReachableFromMany` via this code:
```
define void @foo() {
entry:
  br label %outer

loopexit: ; No predecessors!
  br label %outer

outer: ; preds = %loopexit, %entry
  %0 = phi ptr addrspace(1) [ %1, %loopexit ], [ null, %entry ]
  store i32 0, ptr addrspace(1) %0, align 4
  %1 = load ptr addrspace(1), ptr null, align 8
  %2 = load i32, ptr addrspace(1) %1, align 4
  ret void
}
```
https://godbolt.org/z/9hnx3WYGc

Pretty sure it happens, because it gets passes an empty Worklist (`Succs` here: https://github.com/llvm/llvm-project/commit/6c269a3f89edde33a472d53ed017c1adfb62afcb#diff-8671a2d9fbb3313fd605b1277fdb364e48b263c76f2c5309114f8239311fef8bR1710)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy8VE2P5CYQ_TX0pbQjKPx58KF7W51TotXmsMqRj6JNljYW4NF2fn2Ep2d3FI2i5LKSZRsoHq-qHk_l7K8L0cTaE0Nc_FdvGCJrzwe1lTmmyarFB3ULBx3tfTq6QgnmUtbM5JHhheHl6su86ScTbwwvITy_fj6sKf5JpjC8mHi7-frTGexGJd0wkrUkpWp6tK0ky0VvhLJOd6ic0VCj-wyaTLwRrDFnrwNBiVCSv14pgcqZUgG_ZG8JWMd9_hQLLcWrEO6fSZlZ6UCXFG-_quXOOg7PXkGZfQYTLVX-_Mz4kXX88exDS84vBM_RW2ANdzEyHBiOwPrTSwQtJd2_bwfQCYLSFIBhG7dC6YG7v0OMK33zhckjMHmC3yKsiSwZyjmmzFD8J5iXiQdGBcjA5LmGfj8AP9bhC7kHJMOW73Hr7GEtCZS1Ka_KEMNB7Em1pxolHrtfwYC1532qPcGyhfAWfF97HJBLTAReIvAa8v4R2O6LKvjrAs0bbmLnFqKy7-58RXwl8AIwvAHAHwBe4r8xEO8wSFT2Nj_q3J_f1cM_xB6tjqE8xXRlePmL4WWcl2_yyx-_mLft-pSolDvkrVanwKzWlZZcOWgyasv77JVKhrXqOINagG5rucOXmL4GnwtU1XX8982YXLU7U6qS_Ql3j6G03rkPQ9cLhXZ0WksppLMdb7XAvndWy66hZtDYSdN3Dk0r-ShE4waUoxTCkRv0Z9ELznA82EnaUY7qQJPoei4bPg54mCc38E6PupXj0PeDU-S47czYSGGdanV78BNyRIG8E63sxPCkXEOWN9pK0zRtj6zhdFM-PNWca08OPueNpnaUHT_styk_rC3RNVHOPi7V3_AjQ9zrJY8mqTw_TC9Ne_X0ds2s4bUP-Qd28SXsTnlS2ZvjkbVnOO4u5ONSHYih2Jv4YhgMe3DKB7KHLYXpfzduTyUzvOzZ_B0AAP__H1-yWg">