Improve _mm_mul_epu32 implementation
Improve _mm_mul_epu32 implementation

It is faster and easier to use vmovn than vzip.

 - VZIP.32 on ARMv7a modifies both registers in place, which cannot be
   represented in either GCC or Clang's IR. This usually results in
   extra VMOVs either to preserve the source operands or due to bad
   codegen.
 - The change in how the upper halves of registers are treated on A64
   require an EXT to access them in most scenarios.
 - The separation of VZIP to ZIP1 and ZIP2 on A64 (equivalent to
   unpacklo/unpackhi) to maintain the strict triadic (dest, src1, src2)
   instruction format mean that two shuffles are required.
 - A64 is overall much slower at shuffling than V7.

DLTcollab/sse2neon,DLTcollab/sse2neon,DLTcollab/sse2neon