Duplicate successors in LLVM dialect

Well, not entirely. The base MLIR spec dictates rules of dominance that prohibit classic phis regardless of dialect. If the base MLIR spec banned critical edges, which I am strongly strongly encouraging you to do, then that would similarly limit all dialects. Conversely, if you want LLVM dialect to be able to represent critical edges, you will not be able to ban them in base MLIR.