Intel's official optimization guide tiene un capítulo sobre la conversión de MMX manda a SSE en la que manifiesten la DECLARACIÓN barbecho:¿Qué significa la alineación con límite de 16 bytes en x86
instrucciones de cálculo que utilizan un operando de memoria que puede no estar alineado a un límite de 16 bytes debe reemplazarse con una carga desalineada de 128 bits (MOVDQU) seguida de la misma operación de cálculo que utiliza en su lugar registrar operandos.
(capítulo 5.8 en la conversión de 64-bit a enteros SIMD de 128 bits, pág. 5-43)
No puedo entender lo que significan por "puede no estar alineado a un 16-byte límite ", ¿podría aclararlo y dar algunos ejemplos?
Cuando dicen "pueden no estar alineados", quieren decir si el código debe funcionar correctamente cuando se usa con punteros desalineados. es decir, no puede asumir que las entradas siempre están alineadas. (La respuesta de Jakob cubre lo que significa alinear una dirección). –