artagnon wrote: I had more time to think about this, and check reduced cases in Alive2. The diff seems to be correct in all cases, and I think the break was unintended. Marking as ready for review. https://github.com/llvm/llvm-project/pull/109794