Hi Jiu Fu, On Tue, Feb 22, 2022 at 02:53:13PM +0800, Jiufu Guo wrote: > static bool > rs6000_cannot_force_const_mem (machine_mode mode ATTRIBUTE_UNUSED, rtx x) > { > - if (GET_CODE (x) == HIGH > - && GET_CODE (XEXP (x, 0)) == UNSPEC) > + if (GET_CODE (x) == HIGH) > return true;
This isn't explained anywhere. "Update" is not enough ;-) CSE is the pass that is most ancient and still causing problems left and right. It should be rewritten sooner rather than later. The problem with that is that the pass does so much more than just CSE, and we don't want to lose all those other things. So it will be a slow arduous affair of peeling off bits into separate passes, I think :-( Doing actual CSE without all the restrictive restrictions our pass has historically had isn't the hard part! Segher