[PATCH] Use *blendv* for sse_movcc/vcond/vcondu if possible
Jakub Jelinek
jakub@redhat.com
Wed Sep 21 13:35:00 GMT 2011
On Wed, Sep 21, 2011 at 02:02:44PM +0200, Uros Bizjak wrote:
> > + Â Â Â rtx (*gen) (rtx, rtx, rtx, rtx) = NULL;
> > +
> > Â Â Â op_false = force_reg (mode, op_false);
> > + Â Â Â switch (mode)
> > + Â Â Â {
> > + Â Â Â case V4SFmode: if (TARGET_SSE4_1) gen = gen_sse4_1_blendvps; break;
> > + Â Â Â case V2DFmode: if (TARGET_SSE4_1) gen = gen_sse4_1_blendvpd; break;
> > + Â Â Â case V16QImode: if (TARGET_SSE4_1) gen = gen_sse4_1_pblendvb; break;
> > + Â Â Â case V8SFmode: if (TARGET_AVX) gen = gen_avx_blendvps256; break;
> > + Â Â Â case V4DFmode: if (TARGET_AVX) gen = gen_avx_blendvpd256; break;
> > + Â Â Â case V32QImode: if (TARGET_AVX2) gen = gen_avx2_pblendvb; break;
> > + Â Â Â default: break;
>
> gen = NULL; here instead of break.
>
> > + Â Â Â }
gen is already initialized to NULL above (as the assignments
for other case labels are only conditional, it needs to be).
I didn't want to write like:
gen = TARGET_SSE4_1 ? gen_sse4_1_blendvps : NULL;
break;
> Please also add appropriate line breaks in the above code...
Sure, will do.
Jakub
More information about the Gcc-patches
mailing list