[FixIrreducible] Handle conditional branch with both successors as header (#206057)
A conditional branch redirecting edges to the cycle header may have both
successors equal to the header (e.g. `br i1 %c, label %h, label %h`),
which the previous `Succ1 = Succ0 ? nullptr : Header` logic mishandled
by dropping the second edge.
Check each successor independently against the header instead.
Fixes https://github.com/llvm/llvm-project/issues/191979.