Hi, > OK. Then would it be enough to weaken the condition of the removal test to > > if (loop_invariant_p (loop, ...) != 1) > > in order to solve your problem? Sure, that would be an alternative compared to always removing the REG_EQUAL notes when hoisting an insn and it would fix my particular testcase as well.
But I don't see why this can't happen with unconditional loop invariants? Maybe it can be consider safe since loop.c is *always* able to hoist unconditional loop invariants?! Bye, -Andreas-