[PPCMIPeephole] Fix incorrect compare elimination
D38236 moves a redundant compare instruction from the loop body to the preheader. It has a bug: when `MBB1 == &MBB2`, there may be only one compare instruction in the loop. The code will lift the compare instruction to the preheader, failing to account for the change of the compare result in a tail call, leading to a miscompile. Suppress the compare elimination to fix https://github.com/llvm/llvm-project/issues/62294 Reviewed By: #powerpc, nemanjai Differential Revision: https://reviews.llvm.org/D149030
Loading
Please sign in to comment