[Bug tree-optimization/83651] [7/8 regression] 20% slowdown of linux kernel AES cipher
arnd at linaro dot org
gcc-bugzilla@gcc.gnu.org
Fri Jan 19 12:10:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83651
--- Comment #13 from Arnd Bergmann <arnd at linaro dot org> ---
Created attachment 43185
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43185&action=edit
Linux kernel version of AES algorithm, ported to standalone executable
I've had another look at extracting a test case from the Linux kernel copy of
this code. This now also shows the gcc-7.2.1 specific problem:
$ x86_64-linux-gcc-7.1.1 -Wall -O2 -fsanitize=bounds -fsanitize=object-size
aes_generic.c -o aes_generic; time ./aes_generic
real 0m9.406s
$ x86_64-linux-gcc-7.1.1 -Wall -O2 -fsanitize=bounds -fsanitize=object-size
aes_generic.c -o aes_generic -fno-code-hoisting; time ./aes_generic
real 0m8.318s
$ x86_64-linux-gcc-7.2.1 -Wall -O2 -fsanitize=bounds -fsanitize=object-size
aes_generic.c -o aes_generic; time ./aes_generic
real 0m22.151s
$ x86_64-linux-gcc-7.2.1 -Wall -O2 -fsanitize=bounds -fsanitize=object-size
aes_generic.c -o aes_generic -fno-code-hoisting; time ./aes_generic
real 0m8.439s
$ x86_64-linux-gcc-7.1.1 -Wall -O2 aes_generic.c -o aes_generic ; time
./aes_generic
real 0m3.031s
$ x86_64-linux-gcc-7.1.1 -Wall -O2 aes_generic.c -o aes_generic
-fno-code-hoisting ; time ./aes_generic
real 0m2.894s
$ x86_64-linux-gcc-7.2.1 -Wall -O2 aes_generic.c -o aes_generic ; time
./aes_generic
real 0m3.307s
$ x86_64-linux-gcc-7.2.1 -Wall -O2 aes_generic.c -o aes_generic
-fno-code-hoisting ; time ./aes_generic
real 0m2.875s
More information about the Gcc-bugs
mailing list