Implementation notes: amd64, hedera, crypto_aead/knot128v2

Computer: hedera
Architecture: amd64
CPU ID: GenuineIntel-000306a9-bfebfbff
SUPERCOP version: 20210326
Operation: crypto_aead
Primitive: knot128v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1284435013 127 020879 964 1040T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012620210114
1293344778 127 019102 956 1040T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012620210114
1344134124 127 017624 940 1008T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
1347954431 127 021666 948 1040T:optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
1347964431 127 021666 948 1040T:optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
1366634799 127 023730 948 1040T:optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
1367514799 127 021482 948 1008T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
1423466435 127 020614 956 1040T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012620210114
1465304267 127 017258 940 1040T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012620210114
1557846195 127 022922 948 1008T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
1561726676 127 025658 948 1040T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
1594495358 127 022634 948 1040T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
1596905358 127 022634 948 1040T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
1761515319 127 021255 964 1040T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012620210114
1985043164 127 017518 956 1040T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012620210114
2257793848 127 017336 940 1008T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021012620210114
2449802802 127 017030 956 1040T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012620210114
2542522216 127 015250 940 1040T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021012620210114

Compiler output

Implementation: T:opt
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: encrypt.c:30:9: warning: 'LITTLE_ENDIAN' macro redefined [-Wmacro-redefined]
encrypt.c: #define LITTLE_ENDIAN
encrypt.c: ^
encrypt.c: /usr/include/endian.h:45:10: note: previous definition is here
encrypt.c: # define LITTLE_ENDIAN __LITTLE_ENDIAN
encrypt.c: ^
encrypt.c: encrypt.c:42:9: warning: 'EXT_BYTE32' macro redefined [-Wmacro-redefined]
encrypt.c: #define EXT_BYTE32(x,n) ((u8)((u32)(x)>>(8*(3-(n)))))
encrypt.c: ^
encrypt.c: encrypt.c:33:9: note: previous definition is here
encrypt.c: #define EXT_BYTE32(x,n) ((u8)((u32)(x)>>(8*(n))))
encrypt.c: ^
encrypt.c: encrypt.c:43:9: warning: 'INS_BYTE32' macro redefined [-Wmacro-redefined]
encrypt.c: #define INS_BYTE32(x,n) ((u32)(x)<<(8*(3-(n))))
encrypt.c: ^
encrypt.c: encrypt.c:34:9: note: previous definition is here
encrypt.c: #define INS_BYTE32(x,n) ((u32)(x)<<(8*(n)))
encrypt.c: ^
encrypt.c: encrypt.c:44:9: warning: 'U32BIG' macro redefined [-Wmacro-redefined]
encrypt.c: #define U32BIG(x) \
encrypt.c: ^
encrypt.c: encrypt.c:35:9: note: previous definition is here
encrypt.c: #define U32BIG(x) (x)
encrypt.c: ^
encrypt.c: encrypt.c:47:9: warning: 'EXT_BYTE64' macro redefined [-Wmacro-redefined]
encrypt.c: ...

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

Compiler output

Implementation: T:opt
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: encrypt.c:30: warning: "LITTLE_ENDIAN" redefined
encrypt.c: #define LITTLE_ENDIAN
encrypt.c:
encrypt.c: In file included from /usr/include/x86_64-linux-gnu/sys/types.h:193,
encrypt.c: from /usr/include/stdlib.h:394,
encrypt.c: from encrypt.c:4:
encrypt.c: /usr/include/endian.h:45: note: this is the location of the previous definition
encrypt.c: # define LITTLE_ENDIAN __LITTLE_ENDIAN
encrypt.c:
encrypt.c: encrypt.c:42: warning: "EXT_BYTE32" redefined
encrypt.c: #define EXT_BYTE32(x,n) ((u8)((u32)(x)>>(8*(3-(n)))))
encrypt.c:
encrypt.c: encrypt.c:33: note: this is the location of the previous definition
encrypt.c: #define EXT_BYTE32(x,n) ((u8)((u32)(x)>>(8*(n))))
encrypt.c:
encrypt.c: encrypt.c:43: warning: "INS_BYTE32" redefined
encrypt.c: #define INS_BYTE32(x,n) ((u32)(x)<<(8*(3-(n))))
encrypt.c:
encrypt.c: encrypt.c:34: note: this is the location of the previous definition
encrypt.c: #define INS_BYTE32(x,n) ((u32)(x)<<(8*(n)))
encrypt.c:
encrypt.c: encrypt.c:44: warning: "U32BIG" redefined
encrypt.c: #define U32BIG(x) \
encrypt.c:
encrypt.c: encrypt.c:35: note: this is the location of the previous definition
encrypt.c: ...

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

Namespace violations

Implementation: T:opt
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.o constant7 D

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

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.o constant7 D
encrypt.o load32 T
encrypt.o load64 T
encrypt.o permutation384 T
encrypt.o store32 T
encrypt.o store64 T

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