When computing the BECount for multi-exit loops, we need to combine individual exit counts using umin_seq rather than umin. This is because an earlier exit may exit on the first iteration, in which case later exit expressions will not be evaluated and could be poisonous. We cannot propagate potential poison values from later exits.
In particular, this avoids the introduction of "branch on poison" UB when optimizing multi-exit loops.
This definitely deserves a comment. :)