http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58044
--- Comment #1 from Jérôme Pouiller <jerome.pouiller at gmail dot com> --- AVX instructions seems to not been generated by assembler. Compiler directly generate these instructions. Since -mavx2 is specified, compiler behaviour can be considered correct. But, I don't see any case where -mno-sse2avx may change result, isn't? This option may be removed? For my specific test case, there is a workaround. I can add __attribute__((__target__("no-avx"))) to memcpy_16to8_sse.