On Wed, Jun 22, 2016 at 05:29:59PM -0400, Michael Meissner wrote:
> This code should fix the problem. It does not allow constants in the
> arguments. Combine will create one of the vec_duplicate patterns with a
> constant integer that will generate VSPLTIS or XXSPLTIB/etc. I also
> tightened the
On Wed, Jun 22, 2016 at 09:22:22AM -0500, Segher Boessenkool wrote:
> Don't give up so easily? ;-)
>
> The predicate should be tightened, the expander should use a new predicate
> that allows all those other things. The hardest part is figuring a good
> name for it ;-)
This code should fix the
On Tue, Jun 21, 2016 at 06:46:57PM -0500, Bill Schmidt wrote:
> >> When I did this, I ran into a problem with an existing test case. We end
> >> up matching the *vsx_splat_v4si_internal pattern instead of falling back
> >> to the altivec_vspltisw pattern. The constraints don't match for constan
> On Jun 21, 2016, at 5:34 PM, Segher Boessenkool
> wrote:
>
> On Tue, Jun 21, 2016 at 03:14:51PM -0500, Bill Schmidt wrote:
>> I discovered recently that, with -mcpu=power9, an attempt to generate a
>> vspltish instruction resulted instead in an xxspltib followed by a vupkhsb.
>> This is se
On Tue, Jun 21, 2016 at 03:14:51PM -0500, Bill Schmidt wrote:
> I discovered recently that, with -mcpu=power9, an attempt to generate a
> vspltish instruction resulted instead in an xxspltib followed by a vupkhsb.
> This is semantically correct but the extra instruction is not optimal. I
> fou
Hi,
I discovered recently that, with -mcpu=power9, an attempt to generate a
vspltish instruction resulted instead in an xxspltib followed by a vupkhsb.
This is semantically correct but the extra instruction is not optimal. I found
that there was some logic in xxspltib_constant_p to do special