Implementation notes: riscv64, riscvunleashed000, crypto_aead/lakekeyakv1

Computer: riscvunleashed000
Microarchitecture: riscv64; U54 (sifive,u54-mc)
Architecture: riscv64
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_aead
Primitive: lakekeyakv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
13643266992 0 078203 776 848T:opt64lcu6gcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
13707266440 0 078287 792 848T:opt64lcu6gcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
14115463396 0 078341 784 848T:opt64lcu6clang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
14119063396 0 078341 784 848T:opt64lcu6clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
14158362918 0 077513 784 848T:opt64lcu6clang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
14163162918 0 077513 784 848T:opt64lcu6clang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
14163862402 0 075353 776 841T:opt64lcu6clang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
14449069748 0 081587 792 848T:opt64u6gcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
14486669958 0 081157 776 848T:opt64u6gcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
145221158638 0 0169849 776 848T:opt64lcufullgcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
148140147076 0 0162023 784 848T:opt64lcufullclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
148174147076 0 0162023 784 848T:opt64lcufullclang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
148176146598 0 0161195 784 848T:opt64lcufullclang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
148195146598 0 0161195 784 848T:opt64lcufullclang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
148524146170 0 0159129 776 841T:opt64lcufullclang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
148898158514 0 0170361 792 848T:opt64lcufullgcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
15020465132 0 079723 784 848T:opt64u6clang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
15020465606 0 080547 784 848T:opt64u6clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
15020765606 0 080547 784 848T:opt64u6clang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
15031765132 0 079723 784 848T:opt64u6clang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
15052964736 0 077683 776 841T:opt64u6clang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
154250168496 0 0179703 776 848T:opt64ufullgcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
157965167962 0 0179809 792 848T:opt64ufullgcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
159250156174 0 0170767 784 848T:opt64ufullclang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
159271156174 0 0170767 784 848T:opt64ufullclang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
159678156648 0 0171591 784 848T:opt64ufullclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
159756156648 0 0171591 784 848T:opt64ufullclang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
159932155618 0 0168563 776 841T:opt64ufullclang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
16889677522 0 091269 792 848T:opt64lcu6gcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
16945377286 0 089471 792 848T:opt64lcu6gcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
187423188674 0 0200859 792 848T:opt64lcufullgcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
187552188882 0 0202629 792 848T:opt64lcufullgcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
19250382588 0 094765 792 848T:opt64u6gcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
19308283678 0 097417 792 848T:opt64u6gcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
214629205268 0 0217453 792 848T:opt64ufullgcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
214755205572 0 0219319 792 848T:opt64ufullgcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
3555709530 0 022976 776 848T:compact64gcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
44753625292 0 036315 768 848T:inplace32bigcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
4479766630 0 021035 776 848T:compact64clang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
4480126630 0 021035 776 848T:compact64clang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
45117524862 0 039531 776 848T:inplace32biclang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
45120724862 0 039531 776 848T:inplace32biclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
45140623834 0 038223 776 848T:inplace32biclang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
45141823834 0 038223 776 848T:inplace32biclang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
45145123148 0 035895 768 841T:inplace32biclang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
4601877456 0 022147 776 848T:compact64clang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
4602507456 0 022147 776 848T:compact64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
46273825770 0 037413 784 848T:inplace32bigcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
4781439890 0 1224380 792 1156T:refclang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
4781839890 0 1224380 792 1156T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
4876879734 0 1223840 792 1156T:refclang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
4879819734 0 1223840 792 1156T:refclang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
59832332700 0 044677 784 848T:inplace32bigcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
60361433412 0 046911 784 848T:inplace32bigcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
64540511240 0 30424605 792 1160T:refgcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
6886355844 0 018603 768 841T:compact64clang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222
7167036329 0 018240 776 848T:compact64gcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
8155245971 0 016928 760 848T:compact64gcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
9849026237 0 017816 776 848T:compact64gcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
16074427638 0 30419453 792 1160T:refgcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
18706497028 0 30817918 776 1160T:refgcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
26520807628 0 30819137 792 1160T:refgcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024011620231222
40576877436 0 1220095 784 1156T:refclang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024011620231222

Compiler output

Implementation: T:opt64lcufullshld
Security model: timingleaks
Compiler: clang -march=rv64imafdc -mtune=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273:5: error: unrecognized instruction mnemonic, did you mean: ld, sd, sh?
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: ./KeccakF-1600-unrolling.macros:19:5: note: expanded from macro 'rounds'
KeccakF-1600-opt64.c: thetaRhoPiChiIotaPrepareTheta( 0, A, E) \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: ./KeccakF-1600-64.macros:46:13: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
KeccakF-1600-opt64.c: Da = Cu^ROL64(Ce, 1); \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:43:14: note: expanded from macro 'ROL64'
KeccakF-1600-opt64.c: __asm__ ("shld %2,%0,%0" : "=r"(__out) : "0"(__in), "i"(N)); \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: <inline asm>:1:2: note: instantiated into assembly here
KeccakF-1600-opt64.c: shld 1,s0,s0
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273:5: error: unrecognized instruction mnemonic, did you mean: ld, sd, sh?
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: ./KeccakF-1600-unrolling.macros:19:5: note: expanded from macro 'rounds'
KeccakF-1600-opt64.c: thetaRhoPiChiIotaPrepareTheta( 0, A, E) \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: ./KeccakF-1600-64.macros:47:13: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
KeccakF-1600-opt64.c: De = Ca^ROL64(Ci, 1); \
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:43:14: note: expanded from macro 'ROL64'
KeccakF-1600-opt64.c: ...

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

Compiler output

Implementation: T:opt64lcufullshld
Security model: timingleaks
Compiler: gcc -mcpu=sifive-u54 -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c: Assembler messages:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,s11,s11'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,s5,s5'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,s6,s6'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,a5,a5'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,s7,s7'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 28,s4,s4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 20,s3,s3'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 61,t0,t0'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 6,t4,t4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 3,a6,a6'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,t5,t5'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 25,a2,a2'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 18,t2,t2'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 8,a4,a4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 62,a1,a1'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 2,t1,t1'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 41,t6,t6'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 45,t3,t3'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 15,s8,s8'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 10,a4,a4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 43,s4,s4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 27,t3,t3'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 36,t0,t0'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 21,a7,a7'
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -mcpu=sifive-u54 -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt64lcufullshld
gcc -mcpu=sifive-u54 -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt64lcufullshld

Compiler output

Implementation: T:opt64lcufullshld
Security model: timingleaks
Compiler: gcc -mcpu=sifive-u54 -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c: Assembler messages:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,s7,s7'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,s2,s2'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,s11,s11'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,a6,a6'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,a4,a4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 44,s0,s0'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 43,a4,a4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 21,s6,s6'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 14,t3,t3'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 28,a2,a2'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 20,s1,s1'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 3,s10,s10'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 45,s4,s4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 61,t6,t6'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,a7,a7'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 6,s3,s3'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 25,t4,t4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 8,s9,s9'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 18,t2,t2'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 27,a3,a3'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 36,s8,s8'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 10,t5,t5'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 15,s9,s9'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 56,t2,t2'
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -mcpu=sifive-u54 -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt64lcufullshld

Compiler output

Implementation: T:opt64lcufullshld
Security model: timingleaks
Compiler: gcc -mcpu=sifive-u54 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c: Assembler messages:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,s7,s7'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,s11,s11'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,t1,t1'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,a7,a7'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,a4,a4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 21,s5,s5'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 14,t4,t4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 43,a4,a4'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 44,t2,t2'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 61,t0,t0'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 20,s0,s0'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 3,s10,s10'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 45,s3,s3'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 28,a2,a2'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 8,s9,s9'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 6,s2,s2'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 25,t5,t5'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 18,s1,s1'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 1,a6,a6'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 36,t3,t3'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 10,t6,t6'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 27,a3,a3'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 15,s1,s1'
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:273: Error: unrecognized opcode `shld 56,a6,a6'
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -mcpu=sifive-u54 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt64lcufullshld

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=rv64imafdc -mtune=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakDuplex.c: KeccakDuplex.c:63:9: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:73:40: note: expanded from macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=rv64imafdc -mtune=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=rv64imafdc -mtune=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=rv64imafdc -mtune=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=rv64imafdc -mtune=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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -mcpu=sifive-u54 -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakDuplex.c: In file included from KeccakDuplex.h:17,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute'; did you mean 'KeccakF1600_StatePermute'? [-Wimplicit-function-declaration]
KeccakDuplex.c: 53 | #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: 63 | KeccakF_StatePermute(instance->state);
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract'; did you mean 'KeccakF1600_StateXORPermuteExtract'? [-Wimplicit-function-declaration]
KeccakDuplex.c: 73 | #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakF-interface.h:73:40: note: in definition of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: 73 | #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -mcpu=sifive-u54 -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -mcpu=sifive-u54 -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -mcpu=sifive-u54 -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -mcpu=sifive-u54 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref