On Tue, Sep 15, 2020 at 01:15:34PM -0500, will schmidt wrote: > On Tue, 2020-09-15 at 10:49 +0930, Alan Modra via Gcc-patches wrote: > > The existing "case AND" in this function is not sufficient for > > optabs.c:avoid_expensive_constant usage, where the AND is passed in > > outer_code. > > > > * config/rs6000/rs6000.c (rs6000_rtx_costs): Move costing for > > AND to CONST_INT case. [snip]
> It's not exactly 1x1.. I tentatively conclude that the /* rotate-and- > mask */ lump of code here does go dead with the "case AND" changes > above. It's not so much dead as duplicate. When rtx_costs returns false, as it will now on sub-expressions matching the removed code, it will be called recursively on the sub-expressions with outer_code set to the operation, AND in this case. -- Alan Modra Australia Development Lab, IBM