Implementation notes: amd64, margaux, crypto_aead/aezv4

Computer: margaux
Microarchitecture: amd64; Core 2 65nm (6fb)
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20240107
Operation: crypto_aead
Primitive: aezv4
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
62406341328 0 064163 860 1024T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
62418339760 0 061483 860 1024T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
64511041354 0 064003 860 1024T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
87762126175 0 046491 860 1024T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
102269423578 0 043045 852 1024T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121420231212
119418255147 0 078532 828 1088T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
124039728369 0 050588 828 1088T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
131034327205 0 048812 828 1088T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212
151539324942 0 044655 804 1056T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121420231212

Compiler output

Implementation: T:aesni
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: encrypt.c:182:2: error: - This implementation requires __AES__ or __ARM_FEATURE_CRYPTO
encrypt.c: #error - This implementation requires __AES__ or __ARM_FEATURE_CRYPTO
encrypt.c: ^
encrypt.c: encrypt.c:211:8: error: unknown type name 'block'
encrypt.c: static block zero_pad(block x, unsigned zero_bytes) {
encrypt.c: ^
encrypt.c: encrypt.c:211:23: error: unknown type name 'block'
encrypt.c: static block zero_pad(block x, unsigned zero_bytes) {
encrypt.c: ^
encrypt.c: encrypt.c:212:12: warning: implicit declaration of function 'vand' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: return vand(x, loadu(pad + zero_bytes));
encrypt.c: ^
encrypt.c: encrypt.c:212:20: warning: implicit declaration of function 'loadu' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: return vand(x, loadu(pad + zero_bytes));
encrypt.c: ^
encrypt.c: encrypt.c:215:8: error: unknown type name 'block'
encrypt.c: static block one_zero_pad(block x, unsigned one_zero_bytes) {
encrypt.c: ^
encrypt.c: encrypt.c:215:27: error: unknown type name 'block'
encrypt.c: static block one_zero_pad(block x, unsigned one_zero_bytes) {
encrypt.c: ^
encrypt.c: encrypt.c:216:5: error: use of undeclared identifier 'block'
encrypt.c: block *p = (block*)(pad + one_zero_bytes);
encrypt.c: ^
encrypt.c: encrypt.c:216:12: error: use of undeclared identifier 'p'
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:aesni

Compiler output

Implementation: T:aesni
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: encrypt.c:182:2: error: #error - This implementation requires __AES__ or __ARM_FEATURE_CRYPTO
encrypt.c: 182 | #error - This implementation requires __AES__ or __ARM_FEATURE_CRYPTO
encrypt.c: | ^~~~~
encrypt.c: encrypt.c:211:8: error: unknown type name 'block'
encrypt.c: 211 | static block zero_pad(block x, unsigned zero_bytes) {
encrypt.c: | ^~~~~
encrypt.c: encrypt.c:211:23: error: unknown type name 'block'
encrypt.c: 211 | static block zero_pad(block x, unsigned zero_bytes) {
encrypt.c: | ^~~~~
encrypt.c: encrypt.c:215:8: error: unknown type name 'block'
encrypt.c: 215 | static block one_zero_pad(block x, unsigned one_zero_bytes) {
encrypt.c: | ^~~~~
encrypt.c: encrypt.c:215:27: error: unknown type name 'block'
encrypt.c: 215 | static block one_zero_pad(block x, unsigned one_zero_bytes) {
encrypt.c: | ^~~~~
encrypt.c: encrypt.c:220:1: error: unknown type name 'block'
encrypt.c: 220 | block zero_set_byte(char val, unsigned idx) {
encrypt.c: | ^~~~~
encrypt.c: encrypt.c: In function 'zero_set_byte':
encrypt.c: encrypt.c:221:5: error: unknown type name 'block'
encrypt.c: 221 | block tmp = zero; ((char *)&tmp)[idx] = val; return tmp;
encrypt.c: | ^~~~~
encrypt.c: encrypt.c:221:17: error: 'zero' undeclared (first use in this function)
encrypt.c: 221 | block tmp = zero; ((char *)&tmp)[idx] = val; return tmp;
encrypt.c: | ^~~~
encrypt.c: ...

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