On Wed, Nov 07, 2018 at 01:36:50PM -0500, Michael Meissner wrote: > On Mon, Nov 05, 2018 at 04:09:23PM -0600, Segher Boessenkool wrote: > > Hi Mike, > > > > On Fri, Nov 02, 2018 at 02:37:34PM -0400, Michael Meissner wrote: > > > This patch removes all of the so-called power9 fusion support for the GCC > > > compiler. It leaves -mpower9-fusion as a deprecated switch in case > > > somebody > > > used it (the switch was never documented). > > > > As Mike Stump says, please just remove it. The option was never documented, > > most likely zero people use it, and those that do shouldn't have and can > > easily adjust. > > > > > [gcc] > > > 2018-11-02 Michael Meissner <meiss...@linux.ibm.com> > > > > > > * config/rs6000/constraints.md (wF constraint): Only document the > > > wF constraint for power8 fusion. Remove documentation for power9 > > > fusion. > > > > It wasn't documented as being anything for p8 before. So that was wrong? > > The switch wasn't documented. In the constraint (which is what I'm changing > here), the constraint mentioned p9 fusion in the documentation string.
Yeah; so it was wrong. k. > > > (rs6000_option_override_internal): Delete power9 fusion option > > > support. If we do -mcpu=power8 -mtune=power9, turn off power8 > > > fusion. > > > > That doesn't sound right. Either the -mcpu= or the -mtune= should turn > > it on, but neither should turn it off. It sounds like you want -mtune > > to say whether fusion is enabled or not? That sounds fine, but this > > should be implemented more directly (or more generically). > > Ok, I will look at it. Thanks. > > > /* Power8 currently will only do the fusion if the top 11 bits of the > > > addis > > > - value are all 1's or 0's. Ignore this restriction if we are testing > > > - advanced fusion. */ > > > - if (TARGET_P9_FUSION) > > > - return 1; > > > - > > > + value are all 1's or 0's. */ > > > return (IN_RANGE (value >> 16, -32, 31)); > > > }) > > > > I think this is top 12 bits equal, not 11, so [-16..15]. > > It is 11 bits, check section 12.1.12 in the power8 book IV. > > addis(SI) first 11 bits must be all 0’s or all 1’s As we discussed offline, it is 12. Segher