Implementation notes: aarch64, supercoplxc, crypto_hash/shake256

Computer: supercoplxc
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_hash
Primitive: shake256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
282401204 0 055326 800 768oncore64bitsclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019090220190816
282401204 0 055326 800 768oncore64bitsclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019090220190816
282401204 0 055326 800 768oncore64bitsclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019090220190816
283201204 0 055270 800 768oncore64bitsclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019090220190816
28320152 0 013552 848 768opensslclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019090220190816
28320152 0 013600 848 768opensslclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019090220190816
28320152 0 013600 848 768opensslclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019090220190816
28320152 0 013600 848 768opensslclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019090220190816
28320216 0 012379 944 760opensslgcc_-O3_-fomit-frame-pointer2019090220190816
28320208 0 010410 920 736opensslgcc_-Os_-fomit-frame-pointer2019090220190816
28320216 0 011050 936 744opensslgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
28320208 0 010410 920 736opensslgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
28320252 0 013458 920 744opensslgcc_-funroll-loops2019090220190816
28320216 0 013186 936 744opensslgcc_-funroll-loops_-O2_-fomit-frame-pointer2019090220190816
28320216 0 013755 944 760opensslgcc_-funroll-loops_-O3_-fomit-frame-pointer2019090220190816
28320208 0 010474 920 736opensslgcc_-funroll-loops_-Os_-fomit-frame-pointer2019090220190816
28320216 0 013266 936 744opensslgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
28320216 0 013723 944 760opensslgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
28320208 0 010474 920 736opensslgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
284001204 0 055326 800 768oncore64bitsclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019090220190816
28400828 0 052505 896 744oncore64bitsgcc_-O2_-fomit-frame-pointer2019090220190816
284002092 0 055841 896 744oncore64bitsgcc_-funroll-loops_-O2_-fomit-frame-pointer2019090220190816
284002092 0 055921 896 744oncore64bitsgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
284003412 0 057649 896 760oncore64bitsgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
28400252 0 013458 920 744opensslcc2019090220190816
28400152 0 013600 848 768opensslclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019090220190816
28400252 0 013458 920 744opensslgcc2019090220190816
28400216 0 011106 936 744opensslgcc_-O2_-fomit-frame-pointer2019090220190816
28400224 0 011274 936 744opensslgcc_-O_-fomit-frame-pointer2019090220190816
28400216 0 012363 944 760opensslgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
28400224 0 011274 936 744opensslgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
28400224 0 014498 936 744opensslgcc_-funroll-loops_-O_-fomit-frame-pointer2019090220190816
28400224 0 014498 936 744opensslgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
284802464 0 055353 896 760oncore64bitsgcc_-O3_-fomit-frame-pointer2019090220190816
28480748 0 051793 880 736oncore64bitsgcc_-funroll-loops_-Os_-fomit-frame-pointer2019090220190816
28480748 0 051793 880 736oncore64bitsgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
285603636 0 057897 896 760oncore64bitsgcc_-funroll-loops_-O3_-fomit-frame-pointer2019090220190816
28720824 0 052657 896 744oncore64bitsgcc_-O_-fomit-frame-pointer2019090220190816
28720824 0 052657 896 744oncore64bitsgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
287202088 0 057145 896 744oncore64bitsgcc_-funroll-loops_-O_-fomit-frame-pointer2019090220190816
287202088 0 057145 896 744oncore64bitsgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
28800828 0 052449 896 744oncore64bitsgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
288002248 0 055113 896 760oncore64bitsgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
2888014204 0 027161 896 760gil/singlefile_unrolledgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
28880748 0 051729 880 736oncore64bitsgcc_-Os_-fomit-frame-pointer2019090220190816
28880748 0 051729 880 736oncore64bitsgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
2912014204 0 025801 896 760gil/singlefile_unrolledgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
304803048 0 014657 896 760gil/singlefilegcc_-O3_-fomit-frame-pointer2019090220190816
305603016 0 016001 896 760gil/singlefilegcc_-funroll-loops_-O3_-fomit-frame-pointer2019090220190816
316803012 0 015977 896 760gil/singlefilegcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
3176015044 0 028033 896 760gil/singlefile_unrolledgcc_-funroll-loops_-O3_-fomit-frame-pointer2019090220190816
3184015092 0 026705 896 760gil/singlefile_unrolledgcc_-O3_-fomit-frame-pointer2019090220190816
324003036 0 014641 896 760gil/singlefilegcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
333601552 0 014366 800 768gil/singlefileclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019090220190816
333601552 0 014414 800 768gil/singlefileclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019090220190816
333601552 0 014414 800 768gil/singlefileclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019090220190816
333601552 0 014414 800 768gil/singlefileclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019090220190816
336001564 0 014430 800 768gil/singlefileclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019090220190816
361602532 0 060641 880 744oncore64bitsgcc_-funroll-loops2019090220190816
3624014092 0 026600 888 744gil/singlefile_unrolledgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
362402532 0 060641 880 744oncore64bitscc2019090220190816
364002532 0 060641 880 744oncore64bitsgcc2019090220190816
3808015812 0 028686 800 768gil/singlefile_unrolledclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019090220190816
3808015812 0 028686 800 768gil/singlefile_unrolledclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019090220190816
3816015812 0 028630 800 768gil/singlefile_unrolledclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019090220190816
3816015812 0 028686 800 768gil/singlefile_unrolledclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019090220190816
4008014940 0 027360 888 744gil/singlefile_unrolledgcc_-funroll-loops_-O2_-fomit-frame-pointer2019090220190816
4016013532 0 023329 880 736gil/singlefile_unrolledgcc_-funroll-loops_-Os_-fomit-frame-pointer2019090220190816
4016013532 0 023329 880 736gil/singlefile_unrolledgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
4024013532 0 023265 880 736gil/singlefile_unrolledgcc_-Os_-fomit-frame-pointer2019090220190816
4024013532 0 023265 880 736gil/singlefile_unrolledgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
412802992 0 015472 888 744gil/singlefilegcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
413603024 0 015424 888 744gil/singlefilegcc_-funroll-loops_-O2_-fomit-frame-pointer2019090220190816
4160014388 0 024736 888 744gil/singlefile_unrolledgcc_-O2_-fomit-frame-pointer2019090220190816
4216013500 0 023792 888 744gil/singlefile_unrolledgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
432802408 0 012736 888 744gil/singlefilegcc_-O2_-fomit-frame-pointer2019090220190816
469602368 0 012632 888 744gil/singlefilegcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
504001476 0 011257 880 736gil/singlefilegcc_-funroll-loops_-Os_-fomit-frame-pointer2019090220190816
504001476 0 011257 880 736gil/singlefilegcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
508001476 0 011193 880 736gil/singlefilegcc_-Os_-fomit-frame-pointer2019090220190816
508001476 0 011193 880 736gil/singlefilegcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
5256015592 0 029312 888 744gil/singlefile_unrolledgcc_-funroll-loops_-O_-fomit-frame-pointer2019090220190816
5256015592 0 029312 888 744gil/singlefile_unrolledgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
5288015012 0 025512 888 744gil/singlefile_unrolledgcc_-O_-fomit-frame-pointer2019090220190816
5288015012 0 025512 888 744gil/singlefile_unrolledgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
5472022000 0 034870 800 768gil/singlefile_unrolledclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019090220190816
622406728 0 017272 888 744kcp/optimized1600ARMv8Agcc_-O2_-fomit-frame-pointer2019090220190816
622406804 0 018665 896 760kcp/optimized1600ARMv8Agcc_-O3_-fomit-frame-pointer2019090220190816
622406776 0 017264 888 744kcp/optimized1600ARMv8Agcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
622406852 0 018681 896 760kcp/optimized1600ARMv8Agcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
622406784 0 019376 888 744kcp/optimized1600ARMv8Agcc_-funroll-loops_-O2_-fomit-frame-pointer2019090220190816
622406860 0 020001 896 760kcp/optimized1600ARMv8Agcc_-funroll-loops_-O3_-fomit-frame-pointer2019090220190816
622406580 0 020424 888 744kcp/optimized1600ARMv8Agcc_-funroll-loops_-O_-fomit-frame-pointer2019090220190816
622406832 0 019400 888 744kcp/optimized1600ARMv8Agcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
622406908 0 020017 896 760kcp/optimized1600ARMv8Agcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
622406580 0 020424 888 744kcp/optimized1600ARMv8Agcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
623206588 0 017296 888 744kcp/optimized1600ARMv8Agcc_-O_-fomit-frame-pointer2019090220190816
623206368 0 016224 872 736kcp/optimized1600ARMv8Agcc_-Os_-fomit-frame-pointer2019090220190816
623206588 0 017296 888 744kcp/optimized1600ARMv8Agcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
623206368 0 016224 872 736kcp/optimized1600ARMv8Agcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
623206368 0 016256 872 736kcp/optimized1600ARMv8Agcc_-funroll-loops_-Os_-fomit-frame-pointer2019090220190816
623206368 0 016256 872 736kcp/optimized1600ARMv8Agcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
624807548 0 020488 872 744kcp/optimized1600ARMv8Acc2019090220190816
624807548 0 020488 872 744kcp/optimized1600ARMv8Agcc2019090220190816
624807548 0 020488 872 744kcp/optimized1600ARMv8Agcc_-funroll-loops2019090220190816
682403236 0 016944 888 744gil/singlefilegcc_-funroll-loops_-O_-fomit-frame-pointer2019090220190816
682403236 0 016944 888 744gil/singlefilegcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
744002656 0 013136 888 744gil/singlefilegcc_-O_-fomit-frame-pointer2019090220190816
744002656 0 013136 888 744gil/singlefilegcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
852002492 0 026334 800 768oncore32bitsclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019090220190816
852802432 0 026222 800 768oncore32bitsclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019090220190816
852802492 0 026334 800 768oncore32bitsclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019090220190816
852802492 0 026334 800 768oncore32bitsclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019090220190816
852802504 0 026350 800 768oncore32bitsclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019090220190816
853603260 0 025897 896 760oncore32bitsgcc_-O3_-fomit-frame-pointer2019090220190816
853603708 0 027729 896 760oncore32bitsgcc_-funroll-loops_-O3_-fomit-frame-pointer2019090220190816
856003692 0 027673 896 760oncore32bitsgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
859203276 0 025897 896 760oncore32bitsgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
892801532 0 022961 896 744oncore32bitsgcc_-O2_-fomit-frame-pointer2019090220190816
900801956 0 025545 896 744oncore32bitsgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
901601980 0 025497 896 744oncore32bitsgcc_-funroll-loops_-O2_-fomit-frame-pointer2019090220190816
904001492 0 022305 880 736oncore32bitsgcc_-funroll-loops_-Os_-fomit-frame-pointer2019090220190816
904001492 0 022305 880 736oncore32bitsgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
931201532 0 022905 896 744oncore32bitsgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
935201500 0 022241 880 736oncore32bitsgcc_-Os_-fomit-frame-pointer2019090220190816
935201500 0 022241 880 736oncore32bitsgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
947201584 0 023177 896 744oncore32bitsgcc_-O_-fomit-frame-pointer2019090220190816
947202044 0 026865 896 744oncore32bitsgcc_-funroll-loops_-O_-fomit-frame-pointer2019090220190816
947202044 0 026865 896 744oncore32bitsgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
948001584 0 023177 896 744oncore32bitsgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
1294404544 0 032425 880 744oncore32bitscc2019090220190816
1295204544 0 032425 880 744oncore32bitsgcc2019090220190816
1295204544 0 032425 880 744oncore32bitsgcc_-funroll-loops2019090220190816
135520116 0 034177 880 744usekcpcc2019090220190816
135520116 0 034177 880 744usekcpgcc2019090220190816
13552072 0 027721 896 744usekcpgcc_-O2_-fomit-frame-pointer2019090220190816
13552072 0 028897 896 760usekcpgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
13552072 0 027025 880 736usekcpgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
13552072 0 027089 880 736usekcpgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019090220190816
13560036 0 030150 800 768usekcpclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019090220190816
13560072 0 029801 896 744usekcpgcc_-funroll-loops_-O2_-fomit-frame-pointer2019090220190816
13560072 0 029873 896 744usekcpgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
13560072 0 030257 896 760usekcpgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019090220190816
13568036 0 030150 800 768usekcpclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019090220190816
13568036 0 030150 800 768usekcpclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019090220190816
13608072 0 027089 880 736usekcpgcc_-funroll-loops_-Os_-fomit-frame-pointer2019090220190816
13616036 0 030086 800 768usekcpclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019090220190816
13616032 0 030134 800 768usekcpclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019090220190816
13616072 0 028913 896 760usekcpgcc_-O3_-fomit-frame-pointer2019090220190816
13616092 0 027897 896 744usekcpgcc_-O_-fomit-frame-pointer2019090220190816
13616072 0 027025 880 736usekcpgcc_-Os_-fomit-frame-pointer2019090220190816
13616072 0 027665 896 744usekcpgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019090220190816
13616092 0 027897 896 744usekcpgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
136160116 0 034177 880 744usekcpgcc_-funroll-loops2019090220190816
13616072 0 030289 896 760usekcpgcc_-funroll-loops_-O3_-fomit-frame-pointer2019090220190816
13616092 0 031121 896 744usekcpgcc_-funroll-loops_-O_-fomit-frame-pointer2019090220190816
13616092 0 031121 896 744usekcpgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019090220190816
263568019748 0 032432 872 744gil/singlefilegcc2019090220190816
263576019748 0 032432 872 744gil/singlefilecc2019090220190816
268520019748 0 032432 872 744gil/singlefilegcc_-funroll-loops2019090220190816
10253920447444 0 0460136 872 744gil/singlefile_unrolledgcc2019090220190816
11125520447444 0 0460136 872 744gil/singlefile_unrolledgcc_-funroll-loops2019090220190816
11254960447444 0 0460136 872 744gil/singlefile_unrolledcc2019090220190816

Compiler output

Implementation: kcp/optimized1600ARMv7A
Security model: unknown
Compiler: cc
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:1: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:2: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:3: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:4: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:5: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:6: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:7: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:8: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:9: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:10: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:11: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:12: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:13: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:14: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:16: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:17: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:18: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:23: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:24: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:26: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:53: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:269: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:270: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:271: Error: junk at end of line, first unrecognized character is `@'
keccak.s: ...

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
cc kcp/optimized1600ARMv7A
gcc kcp/optimized1600ARMv7A
gcc -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -O -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -Os -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -fno-schedule-insns -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -fno-schedule-insns -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -fno-schedule-insns -O -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -fno-schedule-insns -Os -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -funroll-loops kcp/optimized1600ARMv7A
gcc -funroll-loops -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -funroll-loops -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -funroll-loops -O -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -funroll-loops -Os -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer kcp/optimized1600ARMv7A
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer kcp/optimized1600ARMv7A

Compiler output

Implementation: kcp/optimized1600ARMv7A
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
keccak.s: keccak.s:1:1: error: unexpected token at start of statement
keccak.s: @
keccak.s: ^
keccak.s: keccak.s:2:1: error: unexpected token at start of statement
keccak.s: @ Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni,
keccak.s: ^
keccak.s: keccak.s:3:1: error: unexpected token at start of statement
keccak.s: @ Joan Daemen, Michaƫl Peeters, Gilles Van Assche and Ronny Van Keer, hereby
keccak.s: keccak.s:4:1: error: unexpected token at start of statement
keccak.s: @ denoted as "the implementer".
keccak.s: ^
keccak.s: keccak.s:5:1: error: unexpected token at start of statement
keccak.s: @
keccak.s: ^
keccak.s: keccak.s:6:1: error: unexpected token at start of statement
keccak.s: @ For more information, feedback or questions, please refer to our websites:
keccak.s: ^
keccak.s: keccak.s:7:1: error: unexpected token at start of statement
keccak.s: @ http://keccak.noekeon.org/
keccak.s: ^
keccak.s: keccak.s:8:1: error: unexpected token at start of statement
keccak.s: @ http://keyak.noekeon.org/
keccak.s: ^
keccak.s: keccak.s:9:1: error: unexpected token at start of statement
keccak.s: @ http://ketje.noekeon.org/
keccak.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv7A
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv7A

Compiler output

Implementation: kcp/optimized1600ARMv8A
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
keccak.s: <instantiation>:18:18: error: invalid operand for instruction
keccak.s: mov v5.2d[0], v0.2d[1] // v5 = (A[4] ^ A[14]) || ????
keccak.s: ^
keccak.s: keccak.s:524:5: note: while in macro instantiation
keccak.s: KeccakRound
keccak.s: ^
keccak.s: <instantiation>:23:18: error: invalid operand for instruction
keccak.s: mov v4.2d[1], v3.2d[0] // v4 = B[4] || B[3]
keccak.s: ^
keccak.s: keccak.s:524:5: note: while in macro instantiation
keccak.s: KeccakRound
keccak.s: ^
keccak.s: <instantiation>:57:18: error: invalid operand for instruction
keccak.s: mov x11, v20.2d[0] // x11 = A[1]
keccak.s: ^
keccak.s: keccak.s:524:5: note: while in macro instantiation
keccak.s: KeccakRound
keccak.s: ^
keccak.s: <instantiation>:2:18: error: invalid operand for instruction
keccak.s: mov x10, v25.2d[0]
keccak.s: ^
keccak.s: <instantiation>:59:5: note: while in macro instantiation
keccak.s: RhoPi v25.2d[0], x11, x10, 1 // A[10] = ROTL64(A[1], 1)
keccak.s: ^
keccak.s: keccak.s:524:5: note: while in macro instantiation
keccak.s: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600ARMv8A
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600ARMv8A

Compiler output

Implementation: kcp/optimized1600AVX2
Security model: unknown
Compiler: clang++ -O3 -fomit-frame-pointer -Qunused-arguments
KeccakSpongeWidth1600.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
SHAKE256.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
KeccakP-1600-AVX2.cpp: In file included from KeccakP-1600-AVX2.cpp:18:
KeccakP-1600-AVX2.cpp: In file included from /usr/include/clang/7.0.1/include/x86intrin.h:27:
KeccakP-1600-AVX2.cpp: /usr/include/clang/7.0.1/include/ia32intrin.h:48:10: error: use of undeclared identifier '__builtin_ia32_readeflags_u32'
KeccakP-1600-AVX2.cpp: return __builtin_ia32_readeflags_u32();
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: /usr/include/clang/7.0.1/include/ia32intrin.h:54:3: error: use of undeclared identifier '__builtin_ia32_writeeflags_u32'
KeccakP-1600-AVX2.cpp: __builtin_ia32_writeeflags_u32(__f);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: /usr/include/clang/7.0.1/include/ia32intrin.h:60:10: error: use of undeclared identifier '__builtin_ia32_rdpmc'; did you mean '__builtin_arm_dmb'?
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdpmc(__A);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: /usr/include/clang/7.0.1/include/ia32intrin.h:60:10: note: '__builtin_arm_dmb' declared here
KeccakP-1600-AVX2.cpp: /usr/include/clang/7.0.1/include/ia32intrin.h:60:10: error: argument to '__builtin_arm_dmb' must be a constant integer
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdpmc(__A);
KeccakP-1600-AVX2.cpp: ^ ~~~
KeccakP-1600-AVX2.cpp: /usr/include/clang/7.0.1/include/ia32intrin.h:66:10: error: use of undeclared identifier '__builtin_ia32_rdtscp'; did you mean '__builtin_arm_rsrp'?
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdtscp(__A);
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: /usr/include/clang/7.0.1/include/ia32intrin.h:66:10: note: '__builtin_arm_rsrp' declared here
KeccakP-1600-AVX2.cpp: /usr/include/clang/7.0.1/include/ia32intrin.h:66:32: error: cannot initialize a parameter of type 'const char *' with an lvalue of type 'unsigned int *'
KeccakP-1600-AVX2.cpp: return __builtin_ia32_rdtscp(__A);
KeccakP-1600-AVX2.cpp: ^~~
KeccakP-1600-AVX2.cpp: /usr/include/clang/7.0.1/include/ia32intrin.h:75:3: error: use of undeclared identifier '__builtin_ia32_wbinvd'
KeccakP-1600-AVX2.cpp: __builtin_ia32_wbinvd();
KeccakP-1600-AVX2.cpp: ^
KeccakP-1600-AVX2.cpp: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang++ -O3 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2
clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2
clang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2
clang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX2
clang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600AVX2

Compiler output

Implementation: kcp/optimized1600AVX2
Security model: unknown
Compiler: g++
KeccakP-1600-AVX2.cpp: KeccakP-1600-AVX2.cpp:18:14: fatal error: x86intrin.h: No such file or directory
KeccakP-1600-AVX2.cpp: #include <x86intrin.h>
KeccakP-1600-AVX2.cpp: ^~~~~~~~~~~~~
KeccakP-1600-AVX2.cpp: compilation terminated.

Number of similar (compiler,implementation) pairs: 13, namely:
CompilerImplementations
g++ kcp/optimized1600AVX2
g++ -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -fno-schedule-insns -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -fno-schedule-insns -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -fno-schedule-insns -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -fno-schedule-insns -Os -fomit-frame-pointer kcp/optimized1600AVX2
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer kcp/optimized1600AVX2
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer kcp/optimized1600AVX2
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer kcp/optimized1600AVX2

Compiler output

Implementation: kcp/optimized1600AVX512
Security model: unknown
Compiler: cc
KeccakP-1600-AVX512.c: KeccakP-1600-AVX512.c:24:10: fatal error: smmintrin.h: No such file or directory
KeccakP-1600-AVX512.c: #include <smmintrin.h>
KeccakP-1600-AVX512.c: ^~~~~~~~~~~~~
KeccakP-1600-AVX512.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
cc kcp/optimized1600AVX512
gcc kcp/optimized1600AVX512
gcc -O2 -fomit-frame-pointer kcp/optimized1600AVX512
gcc -O3 -fomit-frame-pointer kcp/optimized1600AVX512
gcc -O -fomit-frame-pointer kcp/optimized1600AVX512
gcc -Os -fomit-frame-pointer kcp/optimized1600AVX512
gcc -fno-schedule-insns -O2 -fomit-frame-pointer kcp/optimized1600AVX512
gcc -fno-schedule-insns -O3 -fomit-frame-pointer kcp/optimized1600AVX512
gcc -fno-schedule-insns -O -fomit-frame-pointer kcp/optimized1600AVX512
gcc -fno-schedule-insns -Os -fomit-frame-pointer kcp/optimized1600AVX512
gcc -funroll-loops kcp/optimized1600AVX512
gcc -funroll-loops -O2 -fomit-frame-pointer kcp/optimized1600AVX512
gcc -funroll-loops -O3 -fomit-frame-pointer kcp/optimized1600AVX512
gcc -funroll-loops -O -fomit-frame-pointer kcp/optimized1600AVX512
gcc -funroll-loops -Os -fomit-frame-pointer kcp/optimized1600AVX512
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer kcp/optimized1600AVX512
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer kcp/optimized1600AVX512
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer kcp/optimized1600AVX512
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer kcp/optimized1600AVX512

Compiler output

Implementation: kcp/optimized1600AVX512
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
KeccakP-1600-AVX512.c: In file included from KeccakP-1600-AVX512.c:24:
KeccakP-1600-AVX512.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/smmintrin.h:27:
KeccakP-1600-AVX512.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/tmmintrin.h:27:
KeccakP-1600-AVX512.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/pmmintrin.h:27:
KeccakP-1600-AVX512.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/emmintrin.h:27:
KeccakP-1600-AVX512.c: In file included from /usr/lib/llvm-7/lib/clang/7.0.1/include/xmmintrin.h:27:
KeccakP-1600-AVX512.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:64:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
KeccakP-1600-AVX512.c: return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
KeccakP-1600-AVX512.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-AVX512.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:143:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
KeccakP-1600-AVX512.c: return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
KeccakP-1600-AVX512.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-AVX512.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:173:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
KeccakP-1600-AVX512.c: return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
KeccakP-1600-AVX512.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-AVX512.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:203:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
KeccakP-1600-AVX512.c: return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
KeccakP-1600-AVX512.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-AVX512.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:230:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
KeccakP-1600-AVX512.c: return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
KeccakP-1600-AVX512.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-AVX512.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:253:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
KeccakP-1600-AVX512.c: return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
KeccakP-1600-AVX512.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakP-1600-AVX512.c: /usr/lib/llvm-7/lib/clang/7.0.1/include/mmintrin.h:274:12: error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
KeccakP-1600-AVX512.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX512
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX512
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX512
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments kcp/optimized1600AVX512
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments kcp/optimized1600AVX512