Guys, On 04 Jan 10:09, Jakub Jelinek wrote: > Note I haven't tested the patch at all, perhaps some testcases wouldn't > match their regexps anymore (but probably the > gcc.target/i386/avx512f-vmovdqu32-1.c change could go away). > > --- gcc/config/i386/sse.md.jj 2014-01-04 09:48:48.000000000 +0100 > +++ gcc/config/i386/sse.md 2014-01-04 10:03:30.256458372 +0100 > @@ -743,9 +743,16 @@ (define_insn "*mov<mode>_internal" > case MODE_XI: > if (misaligned_operand (operands[0], <MODE>mode) > || misaligned_operand (operands[1], <MODE>mode)) > - return "vmovdqu64\t{%1, %0|%0, %1}"; > - else > + { > + if (<MODE>mode == V8DImode) > + return "vmovdqu64\t{%1, %0|%0, %1}"; > + else > + return "vmovdqu32\t{%1, %0|%0, %1}"; > + } > + else if (<MODE>mode == V8DImode) > return "vmovdqa64\t{%1, %0|%0, %1}"; > + else > + return "vmovdqa32\t{%1, %0|%0, %1}"; > > default: > gcc_unreachable (); I think this hunk will increase generated code beauty and have no perf impact.
-- Thanks, K