diff mbox

[i386,AVX512,6/n] Update prefered modes for vectorizer.

Message ID 20140812104936.GD26175@msticlxl57.ims.intel.com
State New
Headers show

Commit Message

Kirill Yukhin Aug. 12, 2014, 10:49 a.m. UTC
Hello,
Patch allows wider vec int modes.

Bootstrapped.

Is it ok for trunk?

gcc/
	* config/i386/i386.c (ix86_preferred_simd_mode): Allow V64QImode and
	V32HImode.

--
Thanks, K

Comments

Uros Bizjak Aug. 12, 2014, 5:54 p.m. UTC | #1
On Tue, Aug 12, 2014 at 12:49 PM, Kirill Yukhin <kirill.yukhin@gmail.com> wrote:
> Hello,
> Patch allows wider vec int modes.
>
> Bootstrapped.
>
> Is it ok for trunk?
>
> gcc/
>         * config/i386/i386.c (ix86_preferred_simd_mode): Allow V64QImode and
>         V32HImode.

OK.

Thanks,
Uros.
diff mbox

Patch

diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 5a3b67a..183b7be 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -46474,9 +46474,11 @@  ix86_preferred_simd_mode (enum machine_mode mode)
   switch (mode)
     {
     case QImode:
-      return (TARGET_AVX && !TARGET_PREFER_AVX128) ? V32QImode : V16QImode;
+      return TARGET_AVX512BW ? V64QImode :
+       (TARGET_AVX && !TARGET_PREFER_AVX128) ? V32QImode : V16QImode;
     case HImode:
-      return (TARGET_AVX && !TARGET_PREFER_AVX128) ? V16HImode : V8HImode;
+      return TARGET_AVX512BW ? V32HImode :
+       (TARGET_AVX && !TARGET_PREFER_AVX128) ? V16HImode : V8HImode;
     case SImode:
       return TARGET_AVX512F ? V16SImode :
        (TARGET_AVX && !TARGET_PREFER_AVX128) ? V8SImode : V4SImode;