Hi, Just a quick question before I move on to review the patch ... The improvement looks like it is only meant for x86 platforms. Can this be done in a portable way by arranging for auto-vectorization ? Something like commit 88709176236caf. This way it would benefit other platforms as well.
I tried to compile the following code using -O3, and the assembly does have vectorized instructions. #include <stdio.h> int main() { int i; char s1[200] = "abcdewhruerhetr"; char s2[200] = "oweurietiureuhtrethre"; char s3[200] = {0}; for (i = 0; i < sizeof(s1); i++) { s3[i] = s1[i] ^ s2[i]; } printf("%s\n", s3); }