https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103216

--- Comment #11 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
So we don't sink:
  b_3 = a_2(D) & 127;
  c_4 = (signed char) b_3;

Until after pre which is after vrp1.

I wonder if we should run sink before evrp. There are a few reasons why we
should run it before inlining; one is that with jump functions sometimes we can
make a whole branch go away so it influences the cost of inlining.

Adding a sink before inlining could get expensive. Maybe there is another pass
which we could get rid of or change beforehand.

This might be more of GCC 17 thing.

Reply via email to