jayfoad wrote: > Extends foldShiftToAvg to match: > > * (sra (sub x, (xor y, -1)), 1) -> avgceils(y, x) > * (srl (sub x, (xor y, -1)), 1) -> avgceilu(y, x) Can you show Alive2 proofs for these? https://github.com/llvm/llvm-project/pull/182616