string: extract sse register file helpers into "sse.hh"

This will help when we use sse in multiple source file.

Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
x64: add xmm register helper

Add a nice helper to easily access a specific register.

Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
string: ssse3 optimized unaligned copier

Use the ssse3 palignr instruction to shift data in registers, so that
we can use aligned loads and stores even with relatively-misaligned data.

Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
string: use ssse3 memcpy when available

Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>