Implementation notes: amd64, hydra7, crypto_aead/aes256gcmv1

Computer: hydra7
Microarchitecture: amd64; Sandy Bridge+AES (206a7)
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20240425
Operation: crypto_aead
Primitive: aes256gcmv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1813716839 0 039733 804 1088dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
192509639 0 031309 804 1088dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
194646175 0 025656 780 1056dolbeau/aesenc-intgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
203129799 0 030940 796 1088dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
239961120 0 025019 900 1056T:opensslnewgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
240691120 0 023771 900 1056T:opensslnewgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
242811148 0 023274 892 1056T:opensslnewgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
249971041 0 021478 876 1056T:opensslnewgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
4103435743 3040 01799955 148516 11040T:cryptoppg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
4130340819 3040 01807479 148508 11040T:cryptoppg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
4243135776 3040 01801377 148516 11040T:cryptoppg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
4385715856 4072 01772339 149332 11008T:cryptoppg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
25378224503 0 1628173 804 1120refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
206579592365 0 1624789 804 1120refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
211202101941 0 1622192 780 1088refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
220104152320 0 1624220 796 1120refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425

Compiler output

Implementation: dolbeau/aesenc-int
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
aesenc-int.c: aesenc-int.c:25: warning: "_bswap64" redefined
aesenc-int.c: 25 | #define _bswap64(a) __builtin_bswap64(a)
aesenc-int.c: |
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/x86gprintrin.h:33,
aesenc-int.c: from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:27,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/ia32intrin.h:273: note: this is the location of the previous definition
aesenc-int.c: 273 | #define _bswap64(a) __bswapq(a)
aesenc-int.c: |
aesenc-int.c: aesenc-int.c:26: warning: "_bswap" redefined
aesenc-int.c: 26 | #define _bswap(a) __builtin_bswap32(a)
aesenc-int.c: |
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/x86gprintrin.h:33,
aesenc-int.c: from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:27,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/ia32intrin.h:307: note: this is the location of the previous definition
aesenc-int.c: 307 | #define _bswap(a) __bswapd(a)
aesenc-int.c: |

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/aesenc-int
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/aesenc-int
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/aesenc-int
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/aesenc-int

Compiler output

Implementation: dolbeau/vaesenc-int
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
vaesenc-int.c: vaesenc-int.c: In function 'mulvv4':
vaesenc-int.c: vaesenc-int.c:435:30: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
vaesenc-int.c: 435 | __m512i B) {
vaesenc-int.c: | ^~~~~~~
vaesenc-int.c: vaesenc-int.c:434:23: note: the ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
vaesenc-int.c: 434 | static inline __m512i mulvv4(__m512i A,
vaesenc-int.c: | ^~~~~~
vaesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:49,
vaesenc-int.c: from vaesenc-int.c:11:
vaesenc-int.c: vaesenc-int.c: In function 'aesni_key256_expand':
vaesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx512fintrin.h:4201:1: error: inlining failed in call to 'always_inline' '_mm512_broadcast_i32x4': target specific option mismatch
vaesenc-int.c: 4201 | _mm512_broadcast_i32x4 (__m128i __A)
vaesenc-int.c: | ^~~~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:95:18: note: called from here
vaesenc-int.c: 95 | rkeys[idx++] = _mm512_broadcast_i32x4(temp0);
vaesenc-int.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:49,
vaesenc-int.c: from vaesenc-int.c:11:
vaesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx512fintrin.h:4201:1: error: inlining failed in call to 'always_inline' '_mm512_broadcast_i32x4': target specific option mismatch
vaesenc-int.c: 4201 | _mm512_broadcast_i32x4 (__m128i __A)
vaesenc-int.c: | ^~~~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:58:18: note: called from here
vaesenc-int.c: 58 | rkeys[idx++] = _mm512_broadcast_i32x4(temp2); \
vaesenc-int.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:94:3: note: in expansion of macro 'BLOCK1'
vaesenc-int.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/vaesenc-int
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/vaesenc-int
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/vaesenc-int
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/vaesenc-int

Compiler output

Implementation: T:openssl
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
decrypt.c: decrypt.c: In function 'crypto_aead_aes256gcmv1_openssl_timingleaks_decrypt':
decrypt.c: decrypt.c:13:18: error: storage size of 'x' isn't known
decrypt.c: 13 | EVP_CIPHER_CTX x;
decrypt.c: | ^

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl