--- gcc/config/i386/sse.md 2016-08-30 08:42:09.169067639 +0200 +++ gcc/config/i386/sse.md 2016-09-27 21:56:29.093582896 +0200 @@ -11393,19 +11393,18 @@ { case MODE_XI: gcc_assert (TARGET_AVX512F); + /* FALLTHRU */ case MODE_OI: - gcc_assert (TARGET_AVX2 || TARGET_AVX512VL); + gcc_assert (TARGET_AVX2); + /* FALLTHRU */ case MODE_TI: - gcc_assert (TARGET_SSE2 || TARGET_AVX512VL); + gcc_assert (TARGET_SSE2); switch (mode) { case V16SImode: case V8DImode: - if (TARGET_AVX512F) - { tmp = "p"; break; - } case V8SImode: case V4DImode: case V4SImode: @@ -11489,30 +11488,26 @@ { case MODE_XI: gcc_assert (TARGET_AVX512F); + /* FALLTHRU */ case MODE_OI: - gcc_assert (TARGET_AVX2 || TARGET_AVX512VL); + gcc_assert (TARGET_AVX2); + /* FALLTHRU */ case MODE_TI: - gcc_assert (TARGET_SSE2 || TARGET_AVX512VL); + gcc_assert (TARGET_SSE2); switch (mode) { case V64QImode: case V32HImode: - if (TARGET_AVX512F) - { tmp = "p"; ssesuffix = "q"; break; - } case V32QImode: case V16HImode: case V16QImode: case V8HImode: - if (TARGET_AVX512VL || TARGET_AVX2 || TARGET_SSE2) - { tmp = "p"; ssesuffix = TARGET_AVX512VL ? "q" : ""; break; - } default: gcc_unreachable (); }