Implementation notes: amd64, gpu, crypto_aead/hs1sivhiv2

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_aead
Primitive: hs1sivhiv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2303114042 0 036389 776 872fasterclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019082620190816
2905514839 0 034342 792 928fastergcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082620190816
2977814839 0 034406 792 928fastergcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082620190816
302649684 0 026845 784 928fastergcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082620190816
3052814839 0 034406 792 928fastergcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082620190816
3054028409 0 045077 784 928dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082620190816
3114814839 0 034406 792 928fastergcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082620190816
3202214872 0 035405 776 1160dolbeau/amd64-sseclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082620190816
3283228014 0 044917 784 928dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082620190816
3305430886 0 050222 792 928dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082620190816
331168332 0 023881 768 896fastergcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082620190816
332929684 0 026845 784 928fastergcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082620190816
3360015336 0 036717 776 1160dolbeau/amd64-sseclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082620190816
3360828014 0 044917 784 928dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082620190816
3369628014 0 044917 784 928dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082620190816
3382428409 0 045077 784 928dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082620190816
3400811847 0 027313 768 896dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082620190816
3406515548 0 035062 792 928fastergcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082620190816
3408328014 0 044917 784 928dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082620190816
3417214872 0 035405 776 1160dolbeau/amd64-sseclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019082620190816
3428715548 0 034998 792 928fastergcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082620190816
3451511847 0 027313 768 896dolbeau/amd64-ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082620190816
3482014042 0 037733 776 872fasterclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082620190816
3486011847 0 027313 768 896dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082620190816
3504430886 0 050222 792 928dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082620190816
352129684 0 026845 784 928fastergcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082620190816
3548421338 0 042622 792 928fastergcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082620190816
3551230886 0 050222 792 928dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082620190816
3555215336 0 036717 776 1160dolbeau/amd64-sseclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082620190816
3564921357 0 043174 792 928fastergcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082620190816
3566815404 0 034750 792 928fastergcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019082620190816
3585921357 0 043174 792 928fastergcc_-funroll-loops_-O3_-fomit-frame-pointer2019082620190816
3590435370 0 037662 792 928fastergcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082620190816
3595816054 0 035070 792 928fastergcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082620190816
361169684 0 026845 784 928fastergcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082620190816
3620411877 0 032229 784 928fastergcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019082620190816
362049812 0 027013 784 928fastergcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082620190816
362679924 0 027125 784 928fastergcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019082620190816
362768332 0 023881 768 896fastergcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082620190816
365728112 0 023673 768 896fastergcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082620190816
365888332 0 023881 768 896fastergcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082620190816
3662111466 0 031701 784 928fastergcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019082620190816
366758546 0 024121 768 896fastergcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019082620190816
3667813149 0 033541 784 928fastergcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082620190816
3670813277 0 033797 784 928fastergcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019082620190816
3671228409 0 045077 784 928dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082620190816
368328332 0 023881 768 896fastergcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082620190816
369089477 0 026085 784 928fastergcc_-march=nocona_-O2_-fomit-frame-pointer2019082620190816
3698011847 0 027313 768 896dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082620190816
370248112 0 023673 768 896fastergcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019082620190816
3714612765 0 033005 784 928fastergcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019082620190816
371729812 0 027013 784 928fastergcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082620190816
373059780 0 026893 784 928fastergcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019082620190816
3741311877 0 032229 784 928fastergcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019082620190816
3757621357 0 043174 792 928fastergcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019082620190816
376268413 0 023921 768 896fastergcc_-march=barcelona_-Os_-fomit-frame-pointer2019082620190816
3763213149 0 033541 784 928fastergcc_-funroll-loops_-O2_-fomit-frame-pointer2019082620190816
376659161 0 026077 784 928fastergcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019082620190816
3782416117 0 035622 792 928fastergcc_-O3_-fomit-frame-pointer2019082620190816
378809104 0 025989 784 928fastergcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082620190816
3788411815 0 031973 784 928fastergcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082620190816
378928421 0 023929 768 896fastergcc_-march=k8_-Os_-fomit-frame-pointer2019082620190816
3790811551 0 031661 784 928fastergcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019082620190816
3798817205 0 036902 792 928fastergcc_-march=k8_-O3_-fomit-frame-pointer2019082620190816
382388400 0 023913 768 896fastergcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082620190816
3829222989 0 045286 792 928fastergcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019082620190816
3830028409 0 045077 784 928dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082620190816
384408546 0 024121 768 896fastergcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019082620190816
3850210189 0 027661 784 928fastergcc_-march=barcelona_-O2_-fomit-frame-pointer2019082620190816
385089477 0 026085 784 928fastergcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082620190816
385449104 0 025989 784 928fastergcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082620190816
3856014042 0 037733 776 872fasterclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082620190816
386708546 0 024121 768 896fastergcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019082620190816
3872717685 0 037662 792 928fastergcc_-march=barcelona_-O3_-fomit-frame-pointer2019082620190816
387338894 0 025781 784 928fastergcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019082620190816
3878832336 0 049277 784 928dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082620190816
388168546 0 024121 768 896fastergcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082620190816
3883623661 0 046238 792 928fastergcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019082620190816
388568807 0 025565 784 928fastergcc_-march=nocona_-O_-fomit-frame-pointer2019082620190816
391448271 0 023777 768 896fastergcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019082620190816
3915615988 0 035486 792 928fastergcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019082620190816
3926810029 0 027157 784 928fastergcc_-m64_-O2_-fomit-frame-pointer2019082620190816
393168413 0 023985 768 896fastergcc_-m64_-Os_-fomit-frame-pointer2019082620190816
3932731959 0 048629 784 928dolbeau/amd64-ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2019082620190816
3933036460 0 055686 792 928dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082620190816
3937611877 0 032229 784 928fastergcc_-funroll-loops_-O_-fomit-frame-pointer2019082620190816
3943236675 0 055958 792 928dolbeau/amd64-ssegcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019082620190816
395688421 0 023929 768 896fastergcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019082620190816
395888807 0 025565 784 928fastergcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019082620190816
3959632086 0 048965 784 928dolbeau/amd64-ssegcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019082620190816
3967831817 0 048485 784 928dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019082620190816
3968012765 0 033005 784 928fastergcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019082620190816
3972022989 0 045286 792 928fastergcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019082620190816
397408112 0 023673 768 896fastergcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082620190816
3987212357 0 027777 768 896dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082620190816
3988411815 0 031973 784 928fastergcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019082620190816
399909653 0 026733 784 928fastergcc_-march=k8_-O2_-fomit-frame-pointer2019082620190816
4003812370 0 027793 768 896dolbeau/amd64-ssegcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019082620190816
4012032336 0 049277 784 928dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082620190816
4016011466 0 031701 784 928fastergcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019082620190816
4021230886 0 050126 792 928dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082620190816
4022012743 0 032605 784 928fastergcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082620190816
4034010029 0 027157 784 928fastergcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082620190816
4041614042 0 037733 776 872fasterclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082620190816
404688532 0 024113 768 896fastergcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082620190816
405369653 0 026733 784 928fastergcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019082620190816
405609026 0 025917 784 928fastergcc_-m64_-march=core2_-O_-fomit-frame-pointer2019082620190816
4064421338 0 042622 792 928fastergcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019082620190816
407288546 0 024121 768 896fastergcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019082620190816
409648808 0 025589 784 928fastergcc_-m64_-march=k8_-O_-fomit-frame-pointer2019082620190816
410129154 0 026077 784 928fastergcc_-march=barcelona_-O_-fomit-frame-pointer2019082620190816
4102836282 0 055374 792 928dolbeau/amd64-ssegcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019082620190816
4108416117 0 035622 792 928fastergcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082620190816
4119332408 0 049077 784 928dolbeau/amd64-ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019082620190816
414249104 0 025989 784 928fastergcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082620190816
4151223661 0 046238 792 928fastergcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082620190816
4174416054 0 035070 792 928fastergcc_-march=nocona_-O3_-fomit-frame-pointer2019082620190816
4182012357 0 027777 768 896dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082620190816
4185236460 0 055750 792 928dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082620190816
419208915 0 025845 784 928fastergcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082620190816
424648546 0 024121 768 896fastergcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082620190816
4247631817 0 048485 784 928dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082620190816
4251232422 0 049357 784 928dolbeau/amd64-ssegcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019082620190816
427489104 0 025989 784 928fastergcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082620190816
4279220378 0 027661 784 928fastergcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082620190816
4279616117 0 035622 792 928fastergcc_-m64_-O3_-fomit-frame-pointer2019082620190816
4292012743 0 032605 784 928fastergcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019082620190816
4300812417 0 027857 768 896dolbeau/amd64-ssegcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019082620190816
4300813149 0 033541 784 928fastergcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019082620190816
4310017205 0 036902 792 928fastergcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019082620190816
431968400 0 023913 768 896fastergcc_-march=nocona_-Os_-fomit-frame-pointer2019082620190816
433088413 0 023985 768 896fastergcc_-Os_-fomit-frame-pointer2019082620190816
4367210029 0 027157 784 928fastergcc_-O2_-fomit-frame-pointer2019082620190816
439088915 0 025845 784 928fastergcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019082620190816
446569161 0 026077 784 928fastergcc_-m64_-O_-fomit-frame-pointer2019082620190816
450448546 0 024121 768 896fastergcc_-funroll-loops_-Os_-fomit-frame-pointer2019082620190816
4516818308 0 026077 784 928fastergcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082620190816
4544416826 0 023921 768 896fastergcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082620190816
4602013277 0 033797 784 928fastergcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082620190816
4636411551 0 031661 784 928fastergcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019082620190816
468408532 0 024113 768 896fastergcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019082620190816
469408808 0 025589 784 928fastergcc_-march=k8_-O_-fomit-frame-pointer2019082620190816
469488413 0 023985 768 896fastergcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082620190816
488929161 0 026077 784 928fastergcc_-O_-fomit-frame-pointer2019082620190816
663698062 0 029581 776 1160refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082620190816
694928062 0 029581 776 1160refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082620190816
718537606 0 031381 776 872refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082620190816
790657606 0 031381 776 872refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082620190816
791227486 0 028189 776 1160refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082620190816
806197606 0 030053 776 872refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019082620190816
843007606 0 031381 776 872refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082620190816
868628189 0 029398 792 928refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082620190816
894428359 0 030078 792 928refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082620190816
909997647 0 028077 784 928refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019082620190816
916176655 0 026094 792 928refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019082620190816
924277621 0 027733 784 928refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019082620190816
928407486 0 028189 776 1160refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019082620190816
931328359 0 030078 792 928refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019082620190816
942006583 0 026054 792 928refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082620190816
943368359 0 030078 792 928refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019082620190816
952327647 0 028077 784 928refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082620190816
953077631 0 027933 784 928refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082620190816
953976623 0 026062 792 928refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082620190816
962847621 0 027733 784 928refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019082620190816
967748183 0 030694 792 928refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019082620190816
968467631 0 027933 784 928refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019082620190816
972647501 0 027229 784 928refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082620190816
974686583 0 026054 792 928refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082620190816
975686583 0 026054 792 928refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082620190816
986766823 0 026222 792 928refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082620190816
995528183 0 030694 792 928refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082620190816
1008848189 0 029398 792 928refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019082620190816
1019448157 0 030382 792 928refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019082620190816
1021128157 0 030382 792 928refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019082620190816
1026286583 0 025958 792 928refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082620190816
1028807501 0 027229 784 928refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019082620190816
1030886595 0 025510 792 928refgcc_-march=nocona_-O3_-fomit-frame-pointer2019082620190816
1033686893 0 026478 792 928refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019082620190816
1043887631 0 027933 784 928refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019082620190816
1057846623 0 025998 792 928refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082620190816
1058526823 0 026222 792 928refgcc_-O3_-fomit-frame-pointer2019082620190816
1064806893 0 026478 792 928refgcc_-march=k8_-O3_-fomit-frame-pointer2019082620190816
1068126559 0 025798 792 928refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019082620190816
1104926823 0 026222 792 928refgcc_-m64_-O3_-fomit-frame-pointer2019082620190816
11106813870 0 026854 792 928refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082620190816
1118806595 0 025510 792 928refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082620190816
1123085863 0 022941 784 928refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019082620190816
1126166935 0 026854 792 928refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019082620190816
1138235863 0 022901 784 928refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082620190816
1138715863 0 022901 784 928refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082620190816
1144265863 0 022941 784 928refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082620190816
1146125919 0 022941 784 928refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082620190816
1149405863 0 022901 784 928refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082620190816
1162645909 0 022861 784 928refgcc_-march=k8_-O2_-fomit-frame-pointer2019082620190816
11737211838 0 023301 784 928refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082620190816
1174205863 0 022901 784 928refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082620190816
1183965863 0 022885 784 928refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019082620190816
1186605863 0 022941 784 928refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082620190816
1203965919 0 023301 784 928refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019082620190816
1210484745 0 020249 768 896refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082620190816
1245245909 0 022861 784 928refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019082620190816
1268284755 0 020281 768 896refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082620190816
1270148321 0 028510 792 928refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019082620190816
1270594755 0 020281 768 896refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019082620190816
1275304747 0 020249 768 896refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019082620190816
1275404755 0 020281 768 896refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019082620190816
1276658256 0 028406 792 928refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082620190816
1285684747 0 020249 768 896refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019082620190816
1291844693 0 020169 768 896refgcc_-m64_-Os_-fomit-frame-pointer2019082620190816
1292684747 0 020249 768 896refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019082620190816
1294685696 0 022213 784 928refgcc_-march=nocona_-O2_-fomit-frame-pointer2019082620190816
1301484693 0 020177 768 896refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019082620190816
1303628256 0 028406 792 928refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019082620190816
1304244747 0 020249 768 896refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082620190816
1312384707 0 020209 768 896refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082620190816
1316004679 0 020137 768 896refgcc_-march=barcelona_-Os_-fomit-frame-pointer2019082620190816
1324404693 0 020169 768 896refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082620190816
1325445696 0 022213 784 928refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082620190816
1326398285 0 028630 792 928refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019082620190816
1337314677 0 020137 768 896refgcc_-march=nocona_-Os_-fomit-frame-pointer2019082620190816
1342365919 0 022941 784 928refgcc_-m64_-O2_-fomit-frame-pointer2019082620190816
1346964679 0 020145 768 896refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019082620190816
1350124679 0 020145 768 896refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082620190816
1350964707 0 020209 768 896refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082620190816
1352044679 0 020145 768 896refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082620190816
1352284707 0 020209 768 896refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082620190816
1361228285 0 028630 792 928refgcc_-funroll-loops_-O_-fomit-frame-pointer2019082620190816
1362164693 0 020169 768 896refgcc_-Os_-fomit-frame-pointer2019082620190816
1368689358 0 020137 768 896refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082620190816
1378004679 0 020137 768 896refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019082620190816
1381568285 0 028630 792 928refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019082620190816
1382648271 0 028390 792 928refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019082620190816
1385044707 0 020209 768 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082620190816
1394044745 0 020249 768 896refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019082620190816
1420444677 0 020137 768 896refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082620190816
1428884679 0 020137 768 896refgcc_-march=k8_-Os_-fomit-frame-pointer2019082620190816
14376616921 0 035598 776 888fastercc2019082620190816
1442085919 0 022941 784 928refgcc_-O2_-fomit-frame-pointer2019082620190816
1444808271 0 028390 792 928refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019082620190816
1451248321 0 028510 792 928refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019082620190816
14572816921 0 035598 776 888fastergcc2019082620190816
1505766219 0 023006 792 928refgcc_-march=k8_-O_-fomit-frame-pointer2019082620190816
1506926157 0 022918 792 928refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019082620190816
1523926164 0 023062 792 928refgcc_-m64_-O_-fomit-frame-pointer2019082620190816
1538286168 0 023062 792 928refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019082620190816
1540206168 0 023062 792 928refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019082620190816
1545646219 0 023006 792 928refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019082620190816
1561446157 0 022918 792 928refgcc_-march=nocona_-O_-fomit-frame-pointer2019082620190816
15646016921 0 035598 776 888fastergcc_-funroll-loops2019082620190816
1597846153 0 023030 792 928refgcc_-march=barcelona_-O_-fomit-frame-pointer2019082620190816
1599646164 0 023062 792 928refgcc_-O_-fomit-frame-pointer2019082620190816
1600166164 0 023062 792 928refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082620190816
1620366168 0 023062 792 928refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082620190816
1622126164 0 023062 792 928refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082620190816
1626486164 0 023062 792 928refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019082620190816
1628326164 0 023062 792 928refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082620190816
1629646164 0 023062 792 928refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019082620190816
1630646164 0 023062 792 928refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082620190816
16311612306 0 023030 792 928refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082620190816
8650809141 0 027847 784 888refgcc_-funroll-loops2019082620190816
8765919141 0 027847 784 888refgcc2019082620190816
9231909141 0 027847 784 888refcc2019082620190816

Test failure

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer dolbeau/amd64-sse
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments faster
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments faster
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments faster
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments faster
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer faster
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer faster
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer faster
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: cc
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^~~~~
encrypt.c: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
encrypt.c: ^~~~~

Number of similar (compiler,implementation) pairs: 87, namely:
CompilerImplementations
cc dolbeau/amd64-avx2
gcc dolbeau/amd64-avx2
gcc -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops dolbeau/amd64-avx2
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:90:2: error: "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx2
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx2
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx2
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx2
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx2
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx2
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx2

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^~~~~
encrypt.c: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
encrypt.c: ^~~~~
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^~~~~
encrypt.c: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
encrypt.c: ^~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^~~~~

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/amd64-avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/amd64-avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/amd64-avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/amd64-avx2

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: cc
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:330:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:45:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx512fintrin.h:13531:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:330:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:111:11: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i x_0 = _mm512_set1_epi32(x[0]);
encrypt.c: ^~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
encrypt.c: from encrypt.c:54:
encrypt.c: encrypt.c: In function 'prf_hash2_3':
encrypt.c: encrypt.c:528:50: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc dolbeau/amd64-avx512
gcc dolbeau/amd64-avx512
gcc -funroll-loops dolbeau/amd64-avx512

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:90:2: error: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: encrypt.c:330:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: /usr/lib/llvm-6.0/lib/clang/6.0.0/include/avx512fintrin.h:9747:48: note: previous definition is here
encrypt.c: static __inline__ long long __DEFAULT_FN_ATTRS _mm512_reduce_add_epi64(__m512i __W) {
encrypt.c: ^
encrypt.c: encrypt.c:343:21: error: invalid input size for constraint 'Yz'
encrypt.c: : [a] "Yz" (a)
encrypt.c: ^
encrypt.c: 3 errors generated.

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx512
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx512
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx512
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-avx512
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx512
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx512
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx512
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-avx512

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: gcc -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:330:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:45:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx512fintrin.h:13531:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:330:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:111:11: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i x_0 = _mm512_set1_epi32(x[0]);
encrypt.c: ^~~
encrypt.c: encrypt.c: In function 'prf_hash2_3':
encrypt.c: encrypt.c:528:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^~~~

Number of similar (compiler,implementation) pairs: 84, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:330:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:45:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx512fintrin.h:13531:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:330:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:111:11: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i x_0 = _mm512_set1_epi32(x[0]);
encrypt.c: ^~~
encrypt.c: encrypt.c: In function 'prf_hash2_3':
encrypt.c: encrypt.c:528:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^~~~
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:330:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:45:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx512fintrin.h:13531:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:330:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:111:11: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i x_0 = _mm512_set1_epi32(x[0]);
encrypt.c: ^~~
encrypt.c: encrypt.c: In function 'prf_hash2_3':
encrypt.c: encrypt.c:528:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:330:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:45:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx512fintrin.h:13531:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:330:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:195:0:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:111:11: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i x_0 = _mm512_set1_epi32(x[0]);
encrypt.c: ^~~

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/amd64-avx512
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/amd64-avx512
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/amd64-avx512
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/amd64-avx512

Compiler output

Implementation: dolbeau/amd64-sse
Security model: unknown
Compiler: cc
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: c256.h: In function 'chacha_noxor368':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:192:0:
encrypt.c: c256.h:14:84: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:105:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 3, 4, 9,14);
encrypt.c: ^~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:192:0:
encrypt.c: c256.h:12:84: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 71, namely:
CompilerImplementations
cc dolbeau/amd64-sse
gcc dolbeau/amd64-sse
gcc -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops dolbeau/amd64-sse
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse

Compiler output

Implementation: dolbeau/amd64-sse
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: In file included from encrypt.c:192:
encrypt.c: ./c256.h:98:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor368' that is compiled without support for 'ssse3'
encrypt.c: VEC4_QUARTERROUND( 0, 4, 8,12);
encrypt.c: ^
encrypt.c: ./c256.h:17:36: note: expanded from macro 'VEC4_QUARTERROUND'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: ./c256.h:12:86: note: expanded from macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ^
encrypt.c: ./c256.h:98:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor368' that is compiled without support for 'ssse3'
encrypt.c: ./c256.h:17:36: note: expanded from macro 'VEC4_QUARTERROUND'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: ./c256.h:14:86: note: expanded from macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ^
encrypt.c: ./c256.h:99:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor368' that is compiled without support for 'ssse3'
encrypt.c: VEC4_QUARTERROUND( 1, 5, 9,13);
encrypt.c: ^
encrypt.c: ./c256.h:17:36: note: expanded from macro 'VEC4_QUARTERROUND'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: ./c256.h:12:86: note: expanded from macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/amd64-sse
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-sse
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-sse
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/amd64-sse

Compiler output

Implementation: dolbeau/amd64-sse
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: c256.h: In function 'chacha_noxor368':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:192:0:
encrypt.c: c256.h:14:84: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:105:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 3, 4, 9,14);
encrypt.c: ^~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:192:0:
encrypt.c: c256.h:12:84: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: c256.h: In function 'chacha_noxor368':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:192:0:
encrypt.c: c256.h:14:84: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:105:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 3, 4, 9,14);
encrypt.c: ^~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/smmintrin.h:32:0,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:192:0:
encrypt.c: c256.h:12:84: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse