Implementation notes: x86, gpu, crypto_core/multsntrup761

Computer: gpu
Architecture: x86
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_core
Primitive: multsntrup761
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
4805703582 0 020034 400 768refgcc_-m32_-march=corei7-avx_-O3_-fomit-frame-pointer2019082220190816
4814643582 0 020034 400 768refgcc_-m32_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082220190816
4850403582 0 020034 400 768refgcc_-m32_-march=core-avx-i_-O3_-fomit-frame-pointer2019082220190816
5194443678 0 019862 400 768refgcc_-m32_-march=corei7_-O3_-fomit-frame-pointer2019082220190816
5201723678 0 019810 400 768refgcc_-m32_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082220190816
5433203678 0 019862 400 768refgcc_-m32_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082220190816
5509414302 0 020482 400 768refgcc_-m32_-march=core2_-O3_-fomit-frame-pointer2019082220190816
14650174903 0 023606 400 768refgcc_-funroll-loops_-m32_-march=k8_-O3_-fomit-frame-pointer2019082220190816
14665141859 0 019057 396 768refgcc_-funroll-loops_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2019082220190816
14848471672 0 018061 396 768refgcc_-funroll-loops_-m32_-march=i386_-O2_-fomit-frame-pointer2019082220190816
14860981802 0 018477 396 768refgcc_-funroll-loops_-m32_-march=athlon_-O2_-fomit-frame-pointer2019082220190816
14876963003 0 021414 400 768refgcc_-funroll-loops_-m32_-march=k6-2_-O3_-fomit-frame-pointer2019082220190816
14890322245 0 020398 400 768refgcc_-funroll-loops_-m32_-march=athlon_-O3_-fomit-frame-pointer2019082220190816
14915821831 0 018569 396 768refgcc_-funroll-loops_-m32_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
14924041826 0 018505 396 768refgcc_-funroll-loops_-m32_-march=k8_-O2_-fomit-frame-pointer2019082220190816
15008131815 0 018569 396 768refgcc_-funroll-loops_-m32_-march=k6-3_-O2_-fomit-frame-pointer2019082220190816
15027931691 0 018374 400 768refgcc_-m32_-march=k6-2_-O3_-fomit-frame-pointer2019082220190816
15050401859 0 019057 396 768refgcc_-funroll-loops_-m32_-march=pentium3_-O2_-fomit-frame-pointer2019082220190816
15058684954 0 024414 400 768refgcc_-funroll-loops_-m32_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
15093481691 0 018374 400 768refgcc_-m32_-march=k6-3_-O3_-fomit-frame-pointer2019082220190816
15099322210 0 020166 400 768refgcc_-funroll-loops_-m32_-O3_-fomit-frame-pointer2019082220190816
15112921815 0 018569 396 768refgcc_-funroll-loops_-m32_-march=k6_-O2_-fomit-frame-pointer2019082220190816
15157891815 0 018569 396 768refgcc_-funroll-loops_-m32_-march=k6-2_-O2_-fomit-frame-pointer2019082220190816
15219393166 0 020486 400 768refgcc_-funroll-loops_-m32_-march=prescott_-O3_-fomit-frame-pointer2019082220190816
15220801859 0 019869 396 768refgcc_-funroll-loops_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2019082220190816
15256002202 0 020006 400 768refgcc_-funroll-loops_-m32_-march=k6_-O3_-fomit-frame-pointer2019082220190816
15323973200 0 020466 400 768refgcc_-funroll-loops_-m32_-march=pentium4_-O3_-fomit-frame-pointer2019082220190816
15333603135 0 022337 396 768refgcc_-funroll-loops_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2019082220190816
15366443003 0 021414 400 768refgcc_-funroll-loops_-m32_-march=k6-3_-O3_-fomit-frame-pointer2019082220190816
15394802302 0 021441 396 768refgcc_-funroll-loops_-m32_-march=pentium2_-O3_-fomit-frame-pointer2019082220190816
15498042160 0 019869 396 768refgcc_-funroll-loops_-m32_-march=i486_-O3_-fomit-frame-pointer2019082220190816
15595082302 0 021649 396 768refgcc_-funroll-loops_-m32_-march=pentium3_-O3_-fomit-frame-pointer2019082220190816
15606042302 0 021441 396 768refgcc_-funroll-loops_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2019082220190816
15628521859 0 019057 396 768refgcc_-funroll-loops_-m32_-march=pentium2_-O2_-fomit-frame-pointer2019082220190816
15677321836 0 018853 396 768refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2019082220190816
15689481817 0 018721 396 768refgcc_-funroll-loops_-m32_-O2_-fomit-frame-pointer2019082220190816
15796482253 0 020277 396 768refgcc_-funroll-loops_-m32_-march=pentium_-O3_-fomit-frame-pointer2019082220190816
15811562114 0 018469 396 768refgcc_-funroll-loops_-m32_-march=i386_-O3_-fomit-frame-pointer2019082220190816
15840121831 0 018569 396 768refgcc_-funroll-loops_-m32_-march=prescott_-O2_-fomit-frame-pointer2019082220190816
15900643166 0 020486 400 768refgcc_-funroll-loops_-m32_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
15946201885 0 019337 396 768refgcc_-funroll-loops_-m32_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
16012681836 0 018853 396 768refgcc_-funroll-loops_-m32_-march=pentium_-O2_-fomit-frame-pointer2019082220190816
16089211617 0 018413 396 768refgcc_-funroll-loops_-m32_-march=k6-2_-O_-fomit-frame-pointer2019082220190816
16093481860 0 018453 396 768refgcc_-funroll-loops_-m32_-march=pentium4_-O2_-fomit-frame-pointer2019082220190816
16176841718 0 018937 396 768refgcc_-funroll-loops_-m32_-march=i486_-O2_-fomit-frame-pointer2019082220190816
16177202253 0 020277 396 768refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2019082220190816
16245811617 0 018413 396 768refgcc_-funroll-loops_-m32_-march=k6_-O_-fomit-frame-pointer2019082220190816
16356361617 0 018413 396 768refgcc_-funroll-loops_-m32_-march=k6-3_-O_-fomit-frame-pointer2019082220190816
17213971705 0 018325 396 768refgcc_-funroll-loops_-m32_-march=i386_-O_-fomit-frame-pointer2019082220190816
17363921749 0 018881 396 768refgcc_-funroll-loops_-m32_-march=nocona_-O_-fomit-frame-pointer2019082220190816
17985151724 0 018529 396 768refgcc_-funroll-loops_-m32_-O_-fomit-frame-pointer2019082220190816
18023431644 0 018549 396 768refgcc_-funroll-loops_-m32_-march=k8_-O_-fomit-frame-pointer2019082220190816
18254641666 0 018757 396 768refgcc_-funroll-loops_-m32_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
18372961659 0 019101 396 768refgcc_-funroll-loops_-m32_-march=pentium3_-O_-fomit-frame-pointer2019082220190816
18462081659 0 019221 396 768refgcc_-funroll-loops_-m32_-march=pentium-m_-O_-fomit-frame-pointer2019082220190816
18543161749 0 018881 396 768refgcc_-funroll-loops_-m32_-march=prescott_-O_-fomit-frame-pointer2019082220190816
18628441659 0 019101 396 768refgcc_-funroll-loops_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2019082220190816
18743521659 0 019101 396 768refgcc_-funroll-loops_-m32_-march=pentium2_-O_-fomit-frame-pointer2019082220190816
19025881700 0 018465 396 768refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2019082220190816
19193201755 0 018897 396 768refgcc_-funroll-loops_-m32_-march=pentium4_-O_-fomit-frame-pointer2019082220190816
19196581649 0 018321 396 768refgcc_-funroll-loops_-m32_-march=athlon_-O_-fomit-frame-pointer2019082220190816
19419301705 0 018645 396 768refgcc_-funroll-loops_-m32_-march=i486_-O_-fomit-frame-pointer2019082220190816
19566961700 0 018465 396 768refgcc_-funroll-loops_-m32_-march=pentium_-O_-fomit-frame-pointer2019082220190816
21788854093 0 020658 400 768refgcc_-m32_-march=k8_-O3_-fomit-frame-pointer2019082220190816
21939241380 0 017889 396 768refgcc_-m32_-march=pentium_-O3_-fomit-frame-pointer2019082220190816
22470331025 0 017526 400 768refgcc_-m32_-march=k6_-O3_-fomit-frame-pointer2019082220190816
2251803611 0 012821 388 768refgcc_-funroll-loops_-m32_-march=i386_-Os_-fomit-frame-pointer2019082220190816
2255923654 0 013809 396 768refgcc_-m32_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082220190816
2270601627 0 013917 396 768refgcc_-m32_-march=pentium2_-O_-fomit-frame-pointer2019082220190816
2294448680 0 013921 396 768refgcc_-m32_-march=nocona_-O_-fomit-frame-pointer2019082220190816
2315961750 0 014325 396 768refgcc_-m32_-march=corei7_-O2_-fomit-frame-pointer2019082220190816
23278841417 0 016337 396 768refgcc_-m32_-march=i386_-O3_-fomit-frame-pointer2019082220190816
2336264947 0 014469 396 768refgcc_-m32_-march=pentium_-O2_-fomit-frame-pointer2019082220190816
23406841993 0 018849 396 768refgcc_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2019082220190816
23451511622 0 015021 396 768refgcc_-m32_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
23602531056 0 017022 400 768refgcc_-m32_-march=athlon_-O3_-fomit-frame-pointer2019082220190816
23645401284 0 013937 396 768refgcc_-m32_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
23718601081 0 017521 396 768refgcc_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2019082220190816
2389652749 0 014325 396 768refgcc_-m32_-O2_-fomit-frame-pointer2019082220190816
2391252910 0 014149 396 768refgcc_-m32_-march=prescott_-O2_-fomit-frame-pointer2019082220190816
23914412237 0 018114 400 768refgcc_-m32_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
23942251081 0 017521 396 768refgcc_-m32_-march=pentium2_-O3_-fomit-frame-pointer2019082220190816
23950862237 0 018114 400 768refgcc_-m32_-march=prescott_-O3_-fomit-frame-pointer2019082220190816
2395148744 0 014217 396 768refgcc_-m32_-march=k8_-O2_-fomit-frame-pointer2019082220190816
2396540764 0 014453 396 768refgcc_-m32_-march=k6-3_-O2_-fomit-frame-pointer2019082220190816
2397057764 0 014453 396 768refgcc_-m32_-march=k6-2_-O2_-fomit-frame-pointer2019082220190816
2402048781 0 014373 396 768refgcc_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2019082220190816
2403016756 0 014013 396 768refgcc_-m32_-march=athlon_-O2_-fomit-frame-pointer2019082220190816
24045168336 0 021170 400 768refgcc_-m32_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
2404984697 0 013697 396 768refgcc_-m32_-march=i386_-O_-fomit-frame-pointer2019082220190816
2405916627 0 013957 396 768refgcc_-m32_-march=pentium-m_-O_-fomit-frame-pointer2019082220190816
2410068781 0 014729 396 768refgcc_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2019082220190816
2410440654 0 013809 396 768refgcc_-m32_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082220190816
2411928654 0 013805 396 768refgcc_-m32_-O_-fomit-frame-pointer2019082220190816
2413311633 0 012949 388 768refgcc_-m32_-march=k6-3_-Os_-fomit-frame-pointer2019082220190816
24153211003 0 017078 400 768refgcc_-m32_-O3_-fomit-frame-pointer2019082220190816
2415540764 0 014453 396 768refgcc_-m32_-march=k6_-O2_-fomit-frame-pointer2019082220190816
2415904654 0 013809 396 768refgcc_-m32_-march=core2_-O_-fomit-frame-pointer2019082220190816
2416280637 0 013881 396 768refgcc_-m32_-march=k6-3_-O_-fomit-frame-pointer2019082220190816
2417692750 0 014325 396 768refgcc_-m32_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082220190816
2420847654 0 013809 396 768refgcc_-m32_-march=corei7-avx_-O_-fomit-frame-pointer2019082220190816
2421632654 0 013809 396 768refgcc_-m32_-march=core-avx-i_-O_-fomit-frame-pointer2019082220190816
24219331455 0 017725 396 768refgcc_-m32_-march=i486_-O3_-fomit-frame-pointer2019082220190816
24225242295 0 018154 400 768refgcc_-m32_-march=pentium4_-O3_-fomit-frame-pointer2019082220190816
24241321081 0 017729 396 768refgcc_-m32_-march=pentium3_-O3_-fomit-frame-pointer2019082220190816
2425988618 0 013669 396 768refgcc_-m32_-march=k8_-O_-fomit-frame-pointer2019082220190816
2430080654 0 013809 396 768refgcc_-m32_-march=corei7_-O_-fomit-frame-pointer2019082220190816
2430164750 0 014309 396 768refgcc_-m32_-march=core-avx-i_-O2_-fomit-frame-pointer2019082220190816
2431772617 0 013505 396 768refgcc_-m32_-march=athlon_-O_-fomit-frame-pointer2019082220190816
2432556637 0 013881 396 768refgcc_-m32_-march=k6_-O_-fomit-frame-pointer2019082220190816
2433200750 0 014309 396 768refgcc_-m32_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082220190816
2442100750 0 014309 396 768refgcc_-m32_-march=corei7-avx_-O2_-fomit-frame-pointer2019082220190816
2444784910 0 014149 396 768refgcc_-m32_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
2446188637 0 013881 396 768refgcc_-m32_-march=k6-2_-O_-fomit-frame-pointer2019082220190816
2448208750 0 014325 396 768refgcc_-m32_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082220190816
2448244627 0 013917 396 768refgcc_-m32_-march=pentium3_-O_-fomit-frame-pointer2019082220190816
2448468947 0 014469 396 768refgcc_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2019082220190816
2449308750 0 014341 396 768refgcc_-m32_-march=core2_-O2_-fomit-frame-pointer2019082220190816
2459792781 0 014373 396 768refgcc_-m32_-march=pentium3_-O2_-fomit-frame-pointer2019082220190816
2460288781 0 014373 396 768refgcc_-m32_-march=pentium2_-O2_-fomit-frame-pointer2019082220190816
24722281380 0 017889 396 768refgcc_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2019082220190816
2480600967 0 014033 396 768refgcc_-m32_-march=i386_-O2_-fomit-frame-pointer2019082220190816
2482849654 0 013809 396 768refgcc_-m32_-march=core2_-msse4_-O_-fomit-frame-pointer2019082220190816
2489888997 0 014793 396 768refgcc_-m32_-march=i486_-O2_-fomit-frame-pointer2019082220190816
2494276627 0 013917 396 768refgcc_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2019082220190816
2494443690 0 013821 396 768refgcc_-m32_-march=pentium_-O_-fomit-frame-pointer2019082220190816
2501552680 0 013921 396 768refgcc_-m32_-march=prescott_-O_-fomit-frame-pointer2019082220190816
2503844689 0 013953 396 768refgcc_-m32_-march=pentium4_-O_-fomit-frame-pointer2019082220190816
2530920690 0 013821 396 768refgcc_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2019082220190816
2543811610 0 012837 388 768refgcc_-m32_-march=pentium_-Os_-fomit-frame-pointer2019082220190816
2549823610 0 012837 388 768refgcc_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2019082220190816
2560200633 0 012949 388 768refgcc_-m32_-march=k6-2_-Os_-fomit-frame-pointer2019082220190816
2561688939 0 014165 396 768refgcc_-m32_-march=pentium4_-O2_-fomit-frame-pointer2019082220190816
2569650611 0 012853 388 768refgcc_-funroll-loops_-m32_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
2575524610 0 012853 388 768refgcc_-m32_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082220190816
2575616697 0 013985 396 768refgcc_-m32_-march=i486_-O_-fomit-frame-pointer2019082220190816
2576076610 0 012869 388 768refgcc_-m32_-march=core2_-Os_-fomit-frame-pointer2019082220190816
25940191220 0 012869 388 768refgcc_-m32_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
2596612610 0 012853 388 768refgcc_-m32_-march=corei7_-Os_-fomit-frame-pointer2019082220190816
2598381611 0 012853 388 768refgcc_-funroll-loops_-m32_-march=k8_-Os_-fomit-frame-pointer2019082220190816
2614257610 0 012837 388 768refgcc_-m32_-march=athlon_-Os_-fomit-frame-pointer2019082220190816
2614965610 0 012869 388 768refgcc_-m32_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
2626668610 0 012869 388 768refgcc_-m32_-march=k8_-Os_-fomit-frame-pointer2019082220190816
2627020610 0 012853 388 768refgcc_-m32_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082220190816
2636374610 0 012869 388 768refgcc_-m32_-march=pentium4_-Os_-fomit-frame-pointer2019082220190816
2638647634 0 012933 388 768refgcc_-funroll-loops_-m32_-march=k6_-Os_-fomit-frame-pointer2019082220190816
2641203611 0 012821 388 768refgcc_-funroll-loops_-m32_-Os_-fomit-frame-pointer2019082220190816
2644232610 0 012837 388 768refgcc_-m32_-Os_-fomit-frame-pointer2019082220190816
2649480610 0 012869 388 768refgcc_-m32_-march=prescott_-Os_-fomit-frame-pointer2019082220190816
2652879610 0 012837 388 768refgcc_-m32_-march=i386_-Os_-fomit-frame-pointer2019082220190816
2653184610 0 012837 388 768refgcc_-m32_-march=i486_-Os_-fomit-frame-pointer2019082220190816
2660349611 0 012821 388 768refgcc_-funroll-loops_-m32_-march=pentium_-Os_-fomit-frame-pointer2019082220190816
2660520611 0 012821 388 768refgcc_-funroll-loops_-m32_-march=i486_-Os_-fomit-frame-pointer2019082220190816
2661618634 0 012933 388 768refgcc_-funroll-loops_-m32_-march=k6-3_-Os_-fomit-frame-pointer2019082220190816
2661924633 0 012949 388 768refgcc_-m32_-march=k6_-Os_-fomit-frame-pointer2019082220190816
2681172634 0 012933 388 768refgcc_-funroll-loops_-m32_-march=k6-2_-Os_-fomit-frame-pointer2019082220190816
2689140611 0 012853 388 768refgcc_-funroll-loops_-m32_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
2701980611 0 012821 388 768refgcc_-funroll-loops_-m32_-march=athlon_-Os_-fomit-frame-pointer2019082220190816
2717420611 0 012821 388 768refgcc_-funroll-loops_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2019082220190816
2824092611 0 012853 388 768refgcc_-funroll-loops_-m32_-march=pentium4_-Os_-fomit-frame-pointer2019082220190816
2833772611 0 012853 388 768refgcc_-funroll-loops_-m32_-march=prescott_-Os_-fomit-frame-pointer2019082220190816
2974784610 0 012853 388 768refgcc_-m32_-march=core-avx-i_-Os_-fomit-frame-pointer2019082220190816
2980016610 0 012853 388 768refgcc_-m32_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082220190816
2999392610 0 012853 388 768refgcc_-m32_-march=corei7-avx_-Os_-fomit-frame-pointer2019082220190816
3314796609 0 012745 388 768refgcc_-m32_-march=pentium3_-Os_-fomit-frame-pointer2019082220190816
3316660609 0 012745 388 768refgcc_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2019082220190816
3320799609 0 012745 388 768refgcc_-m32_-march=pentium2_-Os_-fomit-frame-pointer2019082220190816
3347796609 0 012793 388 768refgcc_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2019082220190816
3433340611 0 012729 388 768refgcc_-funroll-loops_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2019082220190816
3459544611 0 012729 388 768refgcc_-funroll-loops_-m32_-march=pentium3_-Os_-fomit-frame-pointer2019082220190816
3465168611 0 012777 388 768refgcc_-funroll-loops_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2019082220190816
3467688611 0 012729 388 768refgcc_-funroll-loops_-m32_-march=pentium2_-Os_-fomit-frame-pointer2019082220190816

Test failure

Implementation: avx
Security model: unknown
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer avx
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer avx
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer avx
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer ref

Compiler output

Implementation: avx
Security model: unknown
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
mult768.c: mult768.c: In function 'squeeze_4591_x16':
mult768.c: mult768.c:19:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
mult768.c: {
mult768.c: ^
mult768.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
mult768.c: from mult768.c:2:
mult768.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:808:1: error: inlining failed in call to always_inline '_mm256_sub_epi16': target specific option mismatch
mult768.c: _mm256_sub_epi16 (__m256i __A, __m256i __B)
mult768.c: ^~~~~~~~~~~~~~~~
mult768.c: mult768.c:12:17: note: called from here
mult768.c: #define sub_x16 _mm256_sub_epi16
mult768.c: ^
mult768.c: mult768.c:20:10: note: in expansion of macro 'sub_x16'
mult768.c: return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(7)),const_x16(4591)));
mult768.c: ^~~~~~~
mult768.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
mult768.c: from mult768.c:2:
mult768.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:553:1: error: inlining failed in call to always_inline '_mm256_mullo_epi16': target specific option mismatch
mult768.c: _mm256_mullo_epi16 (__m256i __A, __m256i __B)
mult768.c: ^~~~~~~~~~~~~~~~~~
mult768.c: mult768.c:12:17: note: called from here
mult768.c: #define sub_x16 _mm256_sub_epi16
mult768.c: ^
mult768.c: mult768.c:20:10: note: in expansion of macro 'sub_x16'
mult768.c: return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(7)),const_x16(4591)));
mult768.c: ...

Number of similar (compiler,implementation) pairs: 156, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer avx
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer avx
gcc -m32 -O2 -fomit-frame-pointer avx
gcc -m32 -O3 -fomit-frame-pointer avx
gcc -m32 -O -fomit-frame-pointer avx
gcc -m32 -Os -fomit-frame-pointer avx
gcc -m32 -march=athlon -O2 -fomit-frame-pointer avx
gcc -m32 -march=athlon -O3 -fomit-frame-pointer avx
gcc -m32 -march=athlon -O -fomit-frame-pointer avx
gcc -m32 -march=athlon -Os -fomit-frame-pointer avx
gcc -m32 -march=core2 -O2 -fomit-frame-pointer avx
gcc -m32 -march=core2 -O3 -fomit-frame-pointer avx
gcc -m32 -march=core2 -O -fomit-frame-pointer avx
gcc -m32 -march=core2 -Os -fomit-frame-pointer avx
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx
gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer avx
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer avx
gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer avx
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer avx
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer avx
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer avx
gcc -m32 -march=corei7 -O3 -fomit-frame-pointer avx
gcc -m32 -march=corei7 -O -fomit-frame-pointer avx
gcc -m32 -march=corei7 -Os -fomit-frame-pointer avx
gcc -m32 -march=i386 -O2 -fomit-frame-pointer avx
gcc -m32 -march=i386 -O3 -fomit-frame-pointer avx
gcc -m32 -march=i386 -O -fomit-frame-pointer avx
gcc -m32 -march=i386 -Os -fomit-frame-pointer avx
gcc -m32 -march=i486 -O2 -fomit-frame-pointer avx
gcc -m32 -march=i486 -O3 -fomit-frame-pointer avx
gcc -m32 -march=i486 -O -fomit-frame-pointer avx
gcc -m32 -march=i486 -Os -fomit-frame-pointer avx
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer avx
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer avx
gcc -m32 -march=k6-2 -O -fomit-frame-pointer avx
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer avx
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer avx
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer avx
gcc -m32 -march=k6-3 -O -fomit-frame-pointer avx
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer avx
gcc -m32 -march=k6 -O2 -fomit-frame-pointer avx
gcc -m32 -march=k6 -O3 -fomit-frame-pointer avx
gcc -m32 -march=k6 -O -fomit-frame-pointer avx
gcc -m32 -march=k6 -Os -fomit-frame-pointer avx
gcc -m32 -march=k8 -O2 -fomit-frame-pointer avx
gcc -m32 -march=k8 -O3 -fomit-frame-pointer avx
gcc -m32 -march=k8 -O -fomit-frame-pointer avx
gcc -m32 -march=k8 -Os -fomit-frame-pointer avx
gcc -m32 -march=nocona -O2 -fomit-frame-pointer avx
gcc -m32 -march=nocona -O3 -fomit-frame-pointer avx
gcc -m32 -march=nocona -O -fomit-frame-pointer avx
gcc -m32 -march=nocona -Os -fomit-frame-pointer avx
gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer avx
gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer avx
gcc -m32 -march=pentium-m -O -fomit-frame-pointer avx
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer avx
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer avx
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer avx
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer avx
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer avx
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer avx
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer avx
gcc -m32 -march=pentium2 -O -fomit-frame-pointer avx
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer avx
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer avx
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer avx
gcc -m32 -march=pentium3 -O -fomit-frame-pointer avx
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer avx
gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer avx
gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer avx
gcc -m32 -march=pentium4 -O -fomit-frame-pointer avx
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer avx
gcc -m32 -march=pentium -O2 -fomit-frame-pointer avx
gcc -m32 -march=pentium -O3 -fomit-frame-pointer avx
gcc -m32 -march=pentium -O -fomit-frame-pointer avx
gcc -m32 -march=pentium -Os -fomit-frame-pointer avx
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer avx
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer avx
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer avx
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer avx
gcc -m32 -march=prescott -O2 -fomit-frame-pointer avx
gcc -m32 -march=prescott -O3 -fomit-frame-pointer avx
gcc -m32 -march=prescott -O -fomit-frame-pointer avx
gcc -m32 -march=prescott -Os -fomit-frame-pointer avx

Compiler output

Implementation: avx
Security model: unknown
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
mult768.c: mult768.c: In function 'squeeze_4591_x16':
mult768.c: mult768.c:19:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
mult768.c: {
mult768.c: ^
mult768.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
mult768.c: from mult768.c:2:
mult768.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:808:1: error: inlining failed in call to always_inline '_mm256_sub_epi16': target specific option mismatch
mult768.c: _mm256_sub_epi16 (__m256i __A, __m256i __B)
mult768.c: ^~~~~~~~~~~~~~~~
mult768.c: mult768.c:12:17: note: called from here
mult768.c: #define sub_x16 _mm256_sub_epi16
mult768.c: ^
mult768.c: mult768.c:20:10: note: in expansion of macro 'sub_x16'
mult768.c: return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(7)),const_x16(4591)));
mult768.c: ^~~~~~~
mult768.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
mult768.c: from mult768.c:2:
mult768.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:553:1: error: inlining failed in call to always_inline '_mm256_mullo_epi16': target specific option mismatch
mult768.c: _mm256_mullo_epi16 (__m256i __A, __m256i __B)
mult768.c: ^~~~~~~~~~~~~~~~~~
mult768.c: mult768.c:12:17: note: called from here
mult768.c: #define sub_x16 _mm256_sub_epi16
mult768.c: ^
mult768.c: mult768.c:20:10: note: in expansion of macro 'sub_x16'
mult768.c: return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(7)),const_x16(4591)));
mult768.c: ...
mult768.c: mult768.c: In function 'squeeze_4591_x16':
mult768.c: mult768.c:19:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
mult768.c: {
mult768.c: ^
mult768.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
mult768.c: from mult768.c:2:
mult768.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:808:1: error: inlining failed in call to always_inline '_mm256_sub_epi16': target specific option mismatch
mult768.c: _mm256_sub_epi16 (__m256i __A, __m256i __B)
mult768.c: ^~~~~~~~~~~~~~~~
mult768.c: mult768.c:12:17: note: called from here
mult768.c: #define sub_x16 _mm256_sub_epi16
mult768.c: ^
mult768.c: mult768.c:20:10: note: in expansion of macro 'sub_x16'
mult768.c: return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(7)),const_x16(4591)));
mult768.c: ^~~~~~~
mult768.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
mult768.c: from mult768.c:2:
mult768.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:553:1: error: inlining failed in call to always_inline '_mm256_mullo_epi16': target specific option mismatch
mult768.c: _mm256_mullo_epi16 (__m256i __A, __m256i __B)
mult768.c: ^~~~~~~~~~~~~~~~~~
mult768.c: mult768.c:12:17: note: called from here
mult768.c: #define sub_x16 _mm256_sub_epi16
mult768.c: ^
mult768.c: mult768.c:20:10: note: in expansion of macro 'sub_x16'
mult768.c: return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(7)),const_x16(4591)));
mult768.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m32 -march=barcelona -O2 -fomit-frame-pointer avx
gcc -m32 -march=barcelona -O3 -fomit-frame-pointer avx
gcc -m32 -march=barcelona -O -fomit-frame-pointer avx
gcc -m32 -march=barcelona -Os -fomit-frame-pointer avx

Compiler output

Implementation: avx
Security model: unknown
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
mult768.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
mult768.c: from mult768.c:2:
mult768.c: mult768.c: In function 'squeeze_4591_x16':
mult768.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:808:1: error: inlining failed in call to always_inline '_mm256_sub_epi16': target specific option mismatch
mult768.c: _mm256_sub_epi16 (__m256i __A, __m256i __B)
mult768.c: ^~~~~~~~~~~~~~~~
mult768.c: mult768.c:12:17: note: called from here
mult768.c: #define sub_x16 _mm256_sub_epi16
mult768.c: ^
mult768.c: mult768.c:20:10: note: in expansion of macro 'sub_x16'
mult768.c: return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(7)),const_x16(4591)));
mult768.c: ^~~~~~~
mult768.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
mult768.c: from mult768.c:2:
mult768.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:553:1: error: inlining failed in call to always_inline '_mm256_mullo_epi16': target specific option mismatch
mult768.c: _mm256_mullo_epi16 (__m256i __A, __m256i __B)
mult768.c: ^~~~~~~~~~~~~~~~~~
mult768.c: mult768.c:12:17: note: called from here
mult768.c: #define sub_x16 _mm256_sub_epi16
mult768.c: ^
mult768.c: mult768.c:20:10: note: in expansion of macro 'sub_x16'
mult768.c: return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(7)),const_x16(4591)));
mult768.c: ^~~~~~~
mult768.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
mult768.c: from mult768.c:2:
mult768.c: ...

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer avx
gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer avx
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer avx
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer avx
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer avx
gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer avx
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer avx
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer avx
gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer avx
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer avx
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer avx
gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer avx

Compiler output

Implementation: round1
Security model: unknown
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
mult.c: mult.c: In function '_mm_load_cvtepi8_epi16':
mult.c: mult.c:58:1: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
mult.c: {
mult.c: ^
mult.c: mult.c: In function 'add':
mult.c: mult.c:81:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
mult.c: {
mult.c: ^
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:85:0,
mult.c: from mult.c:2:
mult.c: mult.c: In function 'fastadd':
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/fmaintrin.h:63:1: error: inlining failed in call to always_inline '_mm256_fmadd_ps': target specific option mismatch
mult.c: _mm256_fmadd_ps (__m256 __A, __m256 __B, __m256 __C)
mult.c: ^~~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
mult.c: from mult.c:2:
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1310:1: error: inlining failed in call to always_inline '_mm256_set1_ps': target specific option mismatch
mult.c: _mm256_set1_ps (float __A)
mult.c: ^~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 88, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer round1
gcc -m32 -O2 -fomit-frame-pointer round1
gcc -m32 -O3 -fomit-frame-pointer round1
gcc -m32 -O -fomit-frame-pointer round1
gcc -m32 -Os -fomit-frame-pointer round1
gcc -m32 -march=athlon -O2 -fomit-frame-pointer round1
gcc -m32 -march=athlon -O3 -fomit-frame-pointer round1
gcc -m32 -march=athlon -O -fomit-frame-pointer round1
gcc -m32 -march=athlon -Os -fomit-frame-pointer round1
gcc -m32 -march=i386 -O2 -fomit-frame-pointer round1
gcc -m32 -march=i386 -O3 -fomit-frame-pointer round1
gcc -m32 -march=i386 -O -fomit-frame-pointer round1
gcc -m32 -march=i386 -Os -fomit-frame-pointer round1
gcc -m32 -march=i486 -O2 -fomit-frame-pointer round1
gcc -m32 -march=i486 -O3 -fomit-frame-pointer round1
gcc -m32 -march=i486 -O -fomit-frame-pointer round1
gcc -m32 -march=i486 -Os -fomit-frame-pointer round1
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer round1
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer round1
gcc -m32 -march=k6-2 -O -fomit-frame-pointer round1
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer round1
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer round1
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer round1
gcc -m32 -march=k6-3 -O -fomit-frame-pointer round1
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer round1
gcc -m32 -march=k6 -O2 -fomit-frame-pointer round1
gcc -m32 -march=k6 -O3 -fomit-frame-pointer round1
gcc -m32 -march=k6 -O -fomit-frame-pointer round1
gcc -m32 -march=k6 -Os -fomit-frame-pointer round1
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer round1
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer round1
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer round1
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer round1
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer round1
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer round1
gcc -m32 -march=pentium2 -O -fomit-frame-pointer round1
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer round1
gcc -m32 -march=pentium -O2 -fomit-frame-pointer round1
gcc -m32 -march=pentium -O3 -fomit-frame-pointer round1
gcc -m32 -march=pentium -O -fomit-frame-pointer round1
gcc -m32 -march=pentium -Os -fomit-frame-pointer round1
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer round1
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer round1
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer round1
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer round1

Compiler output

Implementation: round1
Security model: unknown
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
mult.c: mult.c: In function 'add':
mult.c: mult.c:81:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
mult.c: {
mult.c: ^
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:85:0,
mult.c: from mult.c:2:
mult.c: mult.c: In function 'fastadd':
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/fmaintrin.h:63:1: error: inlining failed in call to always_inline '_mm256_fmadd_ps': target specific option mismatch
mult.c: _mm256_fmadd_ps (__m256 __A, __m256 __B, __m256 __C)
mult.c: ^~~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
mult.c: from mult.c:2:
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1310:1: error: inlining failed in call to always_inline '_mm256_set1_ps': target specific option mismatch
mult.c: _mm256_set1_ps (float __A)
mult.c: ^~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 68, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer round1
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer round1
gcc -m32 -march=core2 -O2 -fomit-frame-pointer round1
gcc -m32 -march=core2 -O3 -fomit-frame-pointer round1
gcc -m32 -march=core2 -O -fomit-frame-pointer round1
gcc -m32 -march=core2 -Os -fomit-frame-pointer round1
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer round1
gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer round1
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer round1
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer round1
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer round1
gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer round1
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer round1
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer round1
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer round1
gcc -m32 -march=corei7 -O3 -fomit-frame-pointer round1
gcc -m32 -march=corei7 -O -fomit-frame-pointer round1
gcc -m32 -march=corei7 -Os -fomit-frame-pointer round1
gcc -m32 -march=k8 -O2 -fomit-frame-pointer round1
gcc -m32 -march=k8 -O3 -fomit-frame-pointer round1
gcc -m32 -march=k8 -O -fomit-frame-pointer round1
gcc -m32 -march=k8 -Os -fomit-frame-pointer round1
gcc -m32 -march=nocona -O2 -fomit-frame-pointer round1
gcc -m32 -march=nocona -O3 -fomit-frame-pointer round1
gcc -m32 -march=nocona -O -fomit-frame-pointer round1
gcc -m32 -march=nocona -Os -fomit-frame-pointer round1
gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer round1
gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer round1
gcc -m32 -march=pentium-m -O -fomit-frame-pointer round1
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer round1
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer round1
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer round1
gcc -m32 -march=pentium3 -O -fomit-frame-pointer round1
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer round1
gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer round1
gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer round1
gcc -m32 -march=pentium4 -O -fomit-frame-pointer round1
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer round1
gcc -m32 -march=prescott -O2 -fomit-frame-pointer round1
gcc -m32 -march=prescott -O3 -fomit-frame-pointer round1
gcc -m32 -march=prescott -O -fomit-frame-pointer round1
gcc -m32 -march=prescott -Os -fomit-frame-pointer round1

Compiler output

Implementation: round1
Security model: unknown
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
mult.c: mult.c: In function 'add':
mult.c: mult.c:81:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
mult.c: {
mult.c: ^
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:85:0,
mult.c: from mult.c:2:
mult.c: mult.c: In function 'fastadd':
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/fmaintrin.h:63:1: error: inlining failed in call to always_inline '_mm256_fmadd_ps': target specific option mismatch
mult.c: _mm256_fmadd_ps (__m256 __A, __m256 __B, __m256 __C)
mult.c: ^~~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
mult.c: from mult.c:2:
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1310:1: error: inlining failed in call to always_inline '_mm256_set1_ps': target specific option mismatch
mult.c: _mm256_set1_ps (float __A)
mult.c: ^~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mult.c: mult.c: In function 'add':
mult.c: mult.c:81:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
mult.c: {
mult.c: ^
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:85:0,
mult.c: from mult.c:2:
mult.c: mult.c: In function 'fastadd':
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/fmaintrin.h:63:1: error: inlining failed in call to always_inline '_mm256_fmadd_ps': target specific option mismatch
mult.c: _mm256_fmadd_ps (__m256 __A, __m256 __B, __m256 __C)
mult.c: ^~~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
mult.c: from mult.c:2:
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1310:1: error: inlining failed in call to always_inline '_mm256_set1_ps': target specific option mismatch
mult.c: _mm256_set1_ps (float __A)
mult.c: ^~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m32 -march=barcelona -O2 -fomit-frame-pointer round1
gcc -m32 -march=barcelona -O3 -fomit-frame-pointer round1
gcc -m32 -march=barcelona -O -fomit-frame-pointer round1
gcc -m32 -march=barcelona -Os -fomit-frame-pointer round1

Compiler output

Implementation: round1
Security model: unknown
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:85:0,
mult.c: from mult.c:2:
mult.c: mult.c: In function 'fastadd':
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/fmaintrin.h:63:1: error: inlining failed in call to always_inline '_mm256_fmadd_ps': target specific option mismatch
mult.c: _mm256_fmadd_ps (__m256 __A, __m256 __B, __m256 __C)
mult.c: ^~~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
mult.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:85:0,
mult.c: from mult.c:2:
mult.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/fmaintrin.h:63:1: error: inlining failed in call to always_inline '_mm256_fmadd_ps': target specific option mismatch
mult.c: _mm256_fmadd_ps (__m256 __A, __m256 __B, __m256 __C)
mult.c: ^~~~~~~~~~~~~~~
mult.c: mult.c:87:10: note: called from here
mult.c: return _mm256_fmadd_ps(y,v1_float,x);
mult.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer round1
gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer round1
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer round1
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer round1
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer round1
gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer round1
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer round1
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer round1
gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer round1
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer round1
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer round1
gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer round1

Compiler output

Implementation: round1
Security model: unknown
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
mult.c: mult.c: In function 'mult24x8_float':
mult.c: mult.c:46:3: error: 'asm' operand has impossible constraints
mult.c: __asm__( \
mult.c: ^
mult.c: mult.c:146:3: note: in expansion of macro 'MULSTEP_fromzero'
mult.c: MULSTEP_fromzero(0,h0,h1,h2,h3,h4)
mult.c: ^~~~~~~~~~~~~~~~
mult.c: mult.c:33:3: error: 'asm' operand has impossible constraints
mult.c: __asm__( \
mult.c: ^
mult.c: mult.c:148:5: note: in expansion of macro 'MULSTEP_noload'
mult.c: MULSTEP_noload(j + 1,h1,h2,h3,h4,h0)
mult.c: ^~~~~~~~~~~~~~
mult.c: mult.c:33:3: error: 'asm' operand has impossible constraints
mult.c: __asm__( \
mult.c: ^
mult.c: mult.c:149:5: note: in expansion of macro 'MULSTEP_noload'
mult.c: MULSTEP_noload(j + 2,h2,h3,h4,h0,h1)
mult.c: ^~~~~~~~~~~~~~
mult.c: mult.c:33:3: error: 'asm' operand has impossible constraints
mult.c: __asm__( \
mult.c: ^
mult.c: mult.c:150:5: note: in expansion of macro 'MULSTEP_noload'
mult.c: MULSTEP_noload(j + 3,h3,h4,h0,h1,h2)
mult.c: ^~~~~~~~~~~~~~
mult.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer round1
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer round1
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer round1