Implementation notes: amd64, icelake, crypto_hash/keccakc448

Computer: icelake
Architecture: amd64
CPU ID: GenuineIntel-000706e5-bfebfbff
SUPERCOP version: 20200826
Operation: crypto_hash
Primitive: keccakc448
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
116684260 0 016384 4096 0T:inplaceopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
116713120 0 016384 4096 0T:simpleopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
117704752 0 016384 4096 0T:inplaceopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
118572726 0 012288 4096 0T:simpleopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1190819793 0 032768 4096 0T:opt64u6opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
119679052 0 024576 4096 0T:inplaceopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
120495828 0 020480 4096 0T:simpleopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1210918828 0 028672 4096 0T:opt64u6opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1237520297 0 036864 4096 0T:opt64u6opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1265219338 0 032768 4096 0T:opt64lcu6opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1308220553 0 032768 4096 0T:opt64lcu6clang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1324520497 0 032768 4096 0T:opt64lcu6clang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1325319497 0 028672 4096 0T:opt64lcu6clang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1326220466 0 032768 4096 0T:opt64lcu6opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1326710225 0 024576 4096 0T:sseu2opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1327810233 0 024576 4096 0T:sseu2opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
133299368 0 020480 4096 0T:sseu2opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1355520922 0 036864 4096 0T:opt64lcu6opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
138069801 0 024576 4096 0T:sseu2clang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
138099745 0 024576 4096 0T:sseu2clang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
138248878 0 020480 4096 0T:sseu2clang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1394259925 0 069632 4096 0T:opt64lcu24shldopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1407761063 0 073728 4096 0T:opt64lcu24opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1450262289 0 077824 4096 0T:opt64lcu24shldclang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1452963106 0 077824 4096 0T:opt64lcu24opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1454763674 0 077824 4096 0T:opt64lcu24opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1455262345 0 077824 4096 0T:opt64lcu24shldclang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1469763354 0 077824 4096 0T:opt64lcu24shldopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1471464401 0 077824 4096 0T:opt64lcu24clang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1474264457 0 077824 4096 0T:opt64lcu24clang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1477161399 0 073728 4096 0T:opt64lcu24shldclang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1477363396 0 073728 4096 0T:opt64lcu24clang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1491763026 0 073728 4096 0T:opt64lcu24shldopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1654923737 0 036864 4096 0T:opt64u6clang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1655523681 0 036864 4096 0T:opt64u6clang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1665822828 0 032768 4096 0T:opt64u6clang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
176546579 0 020480 4096 0T:inplaceclang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
177485900 0 016384 4096 0T:inplaceclang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
178316579 0 020480 4096 0T:inplaceclang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
217819713 0 020480 4096 0T:mmxu1opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
243188867 0 020480 4096 0T:mmxu1opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
244029897 0 024576 4096 0T:mmxu1opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
2529820689 0 036864 4096 0T:opt32bi-rvku2opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
274133962 0 016384 4096 0T:simpleclang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
274434522 0 020480 4096 0T:simpleclang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
274754522 0 020480 4096 0T:simpleclang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
2877316521 0 028672 4096 0T:opt32bi-rvku2opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
289237113 0 020480 4096 0T:compactopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
2945315977 0 028672 4096 0T:opt32bi-rvku2opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
298783448 0 016384 4096 0T:compactclang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3199128758 0 040960 4096 0T:opt32bi-s2lcu4clang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3221420222 0 032768 4096 0T:opt32bi-rvku2clang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3237420278 0 032768 4096 0T:opt32bi-rvku2clang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3275728702 0 040960 4096 0T:opt32bi-s2lcu4clang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
330443664 0 016384 4096 0T:compactclang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3316828244 262148 040960 266240 0T:opt32biT-s2lcu4opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
3358026289 4 040960 266240 0T:opt32biT-s2lcu4clang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3400026752 0 036864 4096 0T:opt32bi-s2lcu4opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
3455828237 4 040960 266240 0T:opt32biT-s2lcu4clang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3456233345 0 049152 4096 0T:opt32bi-s2lcu4opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
345746465 192 020480 4096 0T:compact8opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
3484630553 262148 045056 266240 0T:opt32biT-s2lcu4opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
3525127546 4 036864 266240 0T:opt32biT-s2lcu4clang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3529125308 0 036864 4096 0T:opt32bi-s2lcu4clang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3558516769 0 028672 4096 0T:opt32bi-rvku2clang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3562930225 262148 045056 266240 0T:opt32biT-s2lcu4opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
3682428689 0 040960 4096 0T:opt32bi-s2lcu4opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
385049057 0 020480 4096 0T:mmxu1clang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
386459961 0 024576 4096 0T:mmxu1clang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
3876010017 0 024576 4096 0T:mmxu1clang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
488922119 0 012288 4096 0T:compactopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
514952997 0 016384 4096 0T:compactopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
666792111 0 012288 4096 0T:compactclang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1026832568 192 016384 4096 0T:compact8opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826
1216056052 0 020480 4096 0T:compact8clang_-march=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1267705470 0 020480 4096 0T:compact8clang_-march=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1386301938 0 012288 4096 0T:compact8clang_-march=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020082620200826
1419431687 192 012288 4096 0T:compact8opt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020082620200826

Compiler output

Implementation: T:inplace32bi
Security model: timingleaks
Compiler: clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
Keccak-inplace32BI.c: Keccak-inplace32BI.c:73:6: error: "The output size must be a multiple of the lane size in this simple implementation."
Keccak-inplace32BI.c: #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-inplace32BI.c: ^
Keccak-inplace32BI.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:inplace32bi
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:inplace32bi
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:inplace32bi

Compiler output

Implementation: T:inplace32bi
Security model: timingleaks
Compiler: opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
Keccak-inplace32BI.c: Keccak-inplace32BI.c: In function 'crypto_hash_keccakc448_inplace32bi_timingleaks':
Keccak-inplace32BI.c: Keccak-inplace32BI.c:73:6: error: #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-inplace32BI.c: 73 | #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-inplace32BI.c: | ^~~~~

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:inplace32bi
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:inplace32bi
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:inplace32bi

Compiler output

Implementation: T:simple32bi
Security model: timingleaks
Compiler: clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
Keccak-simple32BI.c: Keccak-simple32BI.c:73:6: error: "The output size must be a multiple of the lane size in this simple implementation."
Keccak-simple32BI.c: #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-simple32BI.c: ^
Keccak-simple32BI.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:simple32bi
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:simple32bi
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:simple32bi

Compiler output

Implementation: T:simple32bi
Security model: timingleaks
Compiler: opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
Keccak-simple32BI.c: Keccak-simple32BI.c: In function 'crypto_hash_keccakc448_simple32bi_timingleaks':
Keccak-simple32BI.c: Keccak-simple32BI.c:73:6: error: #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-simple32BI.c: 73 | #error "The output size must be a multiple of the lane size in this simple implementation."
Keccak-simple32BI.c: | ^~~~~

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:simple32bi
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:simple32bi
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:simple32bi

Compiler output

Implementation: T:x86_64_asm
Security model: timingleaks
Compiler: clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
keccak.s: keccak.s:495:2: error: unknown directive
keccak.s: .size KeccakPermutation, .-KeccakPermutation
keccak.s: ^
keccak.s: keccak.s:498:2: error: unknown directive
keccak.s: .type KeccakPermutation, %function
keccak.s: ^
keccak.s: <instantiation>:2:8: error: invalid operand for instruction
keccak.s: subq *25, %rsp
keccak.s: ^
keccak.s: keccak.s:502:2: note: while in macro instantiation
keccak.s: mKeccakPermutation
keccak.s: ^
keccak.s: <instantiation>:55:8: error: invalid operand for instruction
keccak.s: addq *25, %rsp
keccak.s: ^
keccak.s: keccak.s:502:2: note: while in macro instantiation
keccak.s: mKeccakPermutation
keccak.s: ^
keccak.s: keccak.s:508:2: error: unknown directive
keccak.s: .size KeccakAbsorb576bits, .-KeccakAbsorb576bits
keccak.s: ^
keccak.s: keccak.s:511:2: error: unknown directive
keccak.s: .type KeccakAbsorb576bits, %function
keccak.s: ^
keccak.s: <instantiation>:2:8: error: invalid operand for instruction
keccak.s: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x86_64_asm
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x86_64_asm
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x86_64_asm
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x86_64_shld
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x86_64_shld
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:x86_64_shld

Compiler output

Implementation: T:x86_64_asm
Security model: timingleaks
Compiler: opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
keccak.s: keccak.s:495:2: error: unknown directive
keccak.s: .size KeccakPermutation, .-KeccakPermutation
keccak.s: ^
keccak.s: keccak.s:498:2: error: unknown directive
keccak.s: .type KeccakPermutation, %function
keccak.s: ^
keccak.s: <instantiation>:2:9: error: invalid operand for instruction
keccak.s: subq *25, %rsp
keccak.s: ^
keccak.s: keccak.s:502:2: note: while in macro instantiation
keccak.s: mKeccakPermutation
keccak.s: ^
keccak.s: <instantiation>:55:9: error: invalid operand for instruction
keccak.s: addq *25, %rsp
keccak.s: ^
keccak.s: keccak.s:502:2: note: while in macro instantiation
keccak.s: mKeccakPermutation
keccak.s: ^
keccak.s: keccak.s:508:2: error: unknown directive
keccak.s: .size KeccakAbsorb576bits, .-KeccakAbsorb576bits
keccak.s: ^
keccak.s: keccak.s:511:2: error: unknown directive
keccak.s: .type KeccakAbsorb576bits, %function
keccak.s: ^
keccak.s: <instantiation>:2:9: error: invalid operand for instruction
keccak.s: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:x86_64_asm
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:x86_64_asm
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:x86_64_asm
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:x86_64_shld
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:x86_64_shld
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:x86_64_shld

Compiler output

Implementation: T:xopu24
Security model: timingleaks
Compiler: clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:185:5: error: '__builtin_ia32_vprotqi' needs target feature xop
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: ./KeccakF-1600-unrolling.macros:17:5: note: expanded from macro 'rounds'
KeccakF-1600-opt64.c: thetaRhoPiChiIotaPrepareTheta( 0, A, E) \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: ./KeccakF-1600-xop.macros:53:5: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
KeccakF-1600-opt64.c: computeD \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: ./KeccakF-1600-xop.macros:40:23: note: expanded from macro 'computeD'
KeccakF-1600-opt64.c: Dei = XOR128(Cae, ROL6464same(Cio, 1)); \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:102:33: note: expanded from macro 'ROL6464same'
KeccakF-1600-opt64.c: #define ROL6464same(a, o) _mm_roti_epi64(a, o)
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/11.0.3/include/xopintrin.h:237:12: note: expanded from macro '_mm_roti_epi64'
KeccakF-1600-opt64.c: (__m128i)__builtin_ia32_vprotqi((__v2di)(__m128i)(A), (N))
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:185:5: error: '__builtin_ia32_vprotqi' needs target feature xop
KeccakF-1600-opt64.c: ./KeccakF-1600-unrolling.macros:17:5: note: expanded from macro 'rounds'
KeccakF-1600-opt64.c: thetaRhoPiChiIotaPrepareTheta( 0, A, E) \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: ./KeccakF-1600-xop.macros:53:5: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
KeccakF-1600-opt64.c: computeD \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:xopu24
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:xopu24
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:xopu24

Compiler output

Implementation: T:xopu24
Security model: timingleaks
Compiler: opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakF-1600-opt64.c: In file included from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/x86intrin.h:38,
KeccakF-1600-opt64.c: from KeccakF-1600-opt64.c:74:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c: In function 'KeccakPermutationOnWords':
KeccakF-1600-opt64.c: /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/xopintrin.h:266:1: error: inlining failed in call to 'always_inline' '_mm_roti_epi64': target specific option mismatch
KeccakF-1600-opt64.c: 266 | _mm_roti_epi64(__m128i __A, const int __B)
KeccakF-1600-opt64.c: | ^~~~~~~~~~~~~~
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:102:33: note: called from here
KeccakF-1600-opt64.c: 102 | #define ROL6464same(a, o) _mm_roti_epi64(a, o)
KeccakF-1600-opt64.c: | ^~~~~~~~~~~~~~~~~~~~
KeccakF-1600-opt64.c: KeccakF-1600-xop.macros:103:13: note: in expansion of macro 'ROL6464same'
KeccakF-1600-opt64.c: 103 | Bsusa = ROL6464same(Bsusa, 2); \
KeccakF-1600-opt64.c: | ^~~~~~~~~~~
KeccakF-1600-opt64.c: KeccakF-1600-xop.macros:123:36: note: in expansion of macro 'thetaRhoPiChiIotaPrepareTheta'
KeccakF-1600-opt64.c: 123 | #define thetaRhoPiChiIota(i, A, E) thetaRhoPiChiIotaPrepareTheta(i, A, E)
KeccakF-1600-opt64.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakF-1600-opt64.c: KeccakF-1600-unrolling.macros:40:5: note: in expansion of macro 'thetaRhoPiChiIota'
KeccakF-1600-opt64.c: 40 | thetaRhoPiChiIota(23, E, A) \
KeccakF-1600-opt64.c: | ^~~~~~~~~~~~~~~~~
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:185:5: note: in expansion of macro 'rounds'
KeccakF-1600-opt64.c: 185 | rounds
KeccakF-1600-opt64.c: | ^~~~~~
KeccakF-1600-opt64.c: In file included from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/x86intrin.h:38,
KeccakF-1600-opt64.c: from KeccakF-1600-opt64.c:74:
KeccakF-1600-opt64.c: /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/xopintrin.h:239:1: error: inlining failed in call to 'always_inline' '_mm_rot_epi64': target specific option mismatch
KeccakF-1600-opt64.c: 239 | _mm_rot_epi64(__m128i __A, __m128i __B)
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:xopu24
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:xopu24
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:xopu24