https://bugs.freepascal.org/view.php?id=27870
I've made a patch that hopefully fixes this bug, as well as provide some future expansion for vectorization. There are a few new internal sizes such as "OS_MF128" that serve to ensure the most optimal move command is used (out of MOVAPS, MOVAPD and MOVDQA), since using the wrong one incurs a performance penalty. If the data is unaligned, the compiler will use MOVUPS/MOVUPD/MOVDQU instead, but if it detects the correct byte alignment (16) on a variable, it will use the aligned commands. Let me know how it works out. Gareth aka. Kit _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel