Implementation notes: amd64, samba, crypto_aead/ketjejrv1

Computer: samba
Microarchitecture: amd64; Skylake (506e3)
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: ketjejrv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
36603039778 0 1239998 860 1024T:referenceclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
40948431786 0 1638056 820 1088T:referencegcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
54360139700 0 1241110 860 1056T:referenceclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
55117442452 0 1243166 860 1088T:referenceclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
58296633562 0 038670 860 1056T:compactclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
59058636678 0 037544 820 1088T:compactgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
67934014096 0 14638160 820 1248T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
69526631598 0 037278 860 1024T:compactclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
71062334090 0 040062 860 1088T:compactclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
78895922647 0 032960 820 1088T:compactgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
80598522129 0 032328 820 1088T:compactgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
81192621121 0 030382 860 1024T:compactclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
81466519016 0 030669 852 1088T:compactclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
86094219139 0 029112 796 1056T:compactgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
95911513916 0 14438062 860 1216T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
96225815420 0 14439878 860 1248T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
104490614616 0 14437422 860 1184T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
181651329275 0 1232478 860 1024T:referenceclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
19486099243 0 14429454 860 1184T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
212952928558 0 1634648 820 1088T:referencegcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
21960978998 0 14630912 820 1248T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
281247327089 0 1232837 852 1088T:referenceclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
294083529495 0 1634280 820 1088T:referencegcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
31251177619 0 14428709 852 1248T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
316968324188 0 1630408 796 1056T:referencegcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
32015899186 0 14630528 820 1248T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
36928947708 0 14627368 796 1216T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625

Compiler output


KeccakP-200-compact.c: KeccakP-200-compact.c:20:36: warning: '/*' within block comment [-Wcomment]
KeccakP-200-compact.c: /* #define DIVISION_INSTRUCTION    /* comment if no division instruction or more compact when not using division */
KeccakP-200-compact.c:                                    ^
KeccakP-200-compact.c: 1 warning generated.
KeccakP-400-reference.c: KeccakP-400-reference.c:227:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-400-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-400-reference.c:             ^
KeccakP-400-reference.c: KeccakP-400-reference.c:238:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-400-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-400-reference.c:             ^
KeccakP-400-reference.c: 2 warnings generated.
KeccakP-800-compact.c: KeccakP-800-compact.c:27:36: warning: '/*' within block comment [-Wcomment]
KeccakP-800-compact.c: /* #define DIVISION_INSTRUCTION    /* comment if no division instruction or more compact when not using division */
KeccakP-800-compact.c:                                    ^
KeccakP-800-compact.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:compactclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:compactclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:compactclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:compactclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:compactclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


KeccakP-200-compact.c: KeccakP-200-compact.c:20:36: warning: "/*" within comment [-Wcomment]
KeccakP-200-compact.c:    20 | /* #define DIVISION_INSTRUCTION    /* comment if no division instruction or more compact when not using division */
KeccakP-200-compact.c:       |
KeccakP-400-reference.c: KeccakP-400-reference.c:238:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-400-reference.c:   238 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-400-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-400-reference.c: KeccakP-400-reference.c:227:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-400-reference.c:   227 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-400-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-800-compact.c: KeccakP-800-compact.c:27:36: warning: "/*" within comment [-Wcomment]
KeccakP-800-compact.c:    27 | /* #define DIVISION_INSTRUCTION    /* comment if no division instruction or more compact when not using division */
KeccakP-800-compact.c:       |

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:compactgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:compactgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:compactgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:compactgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


Ketje.c: Ketje.c:70:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
Ketje.c:         if ( (instance->dataRemainderSize + dataSizeInBytes) > Ketje_BlockSize )
Ketje.c:         ^
Ketje.c: Ketje.c:67:5: note: previous statement is here
Ketje.c:     if ((instance->phase & Ketje_Phase_FeedingAssociatedData) == 0)
Ketje.c:     ^
Ketje.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


Ketje.c: Ketje.c: In function 'Ketje_FeedAssociatedData':
Ketje.c: Ketje.c:67:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
Ketje.c:    67 |     if ((instance->phase & Ketje_Phase_FeedingAssociatedData) == 0)
Ketje.c:       |     ^~
Ketje.c: Ketje.c:70:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
Ketje.c:    70 |         if ( (instance->dataRemainderSize + dataSizeInBytes) > Ketje_BlockSize )
Ketje.c:       |         ^~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


KeccakP-1600-reference.c: KeccakP-1600-reference.c:231:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-1600-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-1600-reference.c:             ^
KeccakP-1600-reference.c: KeccakP-1600-reference.c:242:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-1600-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-1600-reference.c:             ^
KeccakP-1600-reference.c: 2 warnings generated.
KeccakP-200-reference.c: KeccakP-200-reference.c:225:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-200-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-200-reference.c:             ^
KeccakP-200-reference.c: KeccakP-200-reference.c:236:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-200-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-200-reference.c:             ^
KeccakP-200-reference.c: 2 warnings generated.
KeccakP-400-reference.c: KeccakP-400-reference.c:227:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-400-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-400-reference.c:             ^
KeccakP-400-reference.c: KeccakP-400-reference.c:238:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-400-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-400-reference.c:             ^
KeccakP-400-reference.c: 2 warnings generated.
KeccakP-800-reference.c: KeccakP-800-reference.c:229:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-800-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-800-reference.c:             ^
KeccakP-800-reference.c: KeccakP-800-reference.c:240:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-800-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-800-reference.c:             ^
KeccakP-800-reference.c: 2 warnings generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:referenceclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:referenceclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:referenceclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:referenceclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:referenceclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


KeccakP-1600-reference.c: KeccakP-1600-reference.c:242:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-1600-reference.c:   242 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-1600-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-1600-reference.c: KeccakP-1600-reference.c:231:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-1600-reference.c:   231 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-1600-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-200-reference.c: KeccakP-200-reference.c:236:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-200-reference.c:   236 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-200-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-200-reference.c: KeccakP-200-reference.c:225:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-200-reference.c:   225 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-200-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-400-reference.c: KeccakP-400-reference.c:238:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-400-reference.c:   238 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-400-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-400-reference.c: KeccakP-400-reference.c:227:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-400-reference.c:   227 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-400-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-800-reference.c: KeccakP-800-reference.c:240:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-800-reference.c:   240 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-800-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-800-reference.c: KeccakP-800-reference.c:229:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-800-reference.c:   229 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-800-reference.c:       |             ^~~~~~~~~~~~~~~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:referencegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:referencegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:referencegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:referencegcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)