Implementation notes: x86, gpu, crypto_core/invsntrup857

Computer: gpu
Architecture: x86
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_core
Primitive: invsntrup857
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
175349552442 0 018508 404 768refgcc_-m32_-march=core-avx-i_-O3_-fomit-frame-pointer2019082220190816
177593172442 0 018508 404 768refgcc_-m32_-march=corei7-avx_-O3_-fomit-frame-pointer2019082220190816
182880552442 0 018508 404 768refgcc_-m32_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082220190816
204846312565 0 018368 404 768refgcc_-m32_-march=corei7_-O3_-fomit-frame-pointer2019082220190816
206664452565 0 018368 404 768refgcc_-m32_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082220190816
208326002565 0 018316 404 768refgcc_-m32_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082220190816
302023157822 0 026168 404 768refgcc_-funroll-loops_-m32_-march=k8_-O3_-fomit-frame-pointer2019082220190816
307295263720 0 020564 404 768refgcc_-funroll-loops_-m32_-march=pentium4_-O3_-fomit-frame-pointer2019082220190816
3082455813956 0 023620 404 768refgcc_-m32_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
308706763081 0 018876 404 768refgcc_-m32_-march=core2_-O3_-fomit-frame-pointer2019082220190816
309171787875 0 026932 404 768refgcc_-funroll-loops_-m32_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
309939633590 0 022463 400 768refgcc_-funroll-loops_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2019082220190816
316765503376 0 020248 404 768refgcc_-funroll-loops_-m32_-march=prescott_-O3_-fomit-frame-pointer2019082220190816
322563486893 0 023064 404 768refgcc_-m32_-march=k8_-O3_-fomit-frame-pointer2019082220190816
322581092774 0 018244 404 768refgcc_-m32_-march=prescott_-O3_-fomit-frame-pointer2019082220190816
322704972774 0 018244 404 768refgcc_-m32_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
328092963376 0 020248 404 768refgcc_-funroll-loops_-m32_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
330816002551 0 017952 404 768refgcc_-m32_-march=pentium4_-O3_-fomit-frame-pointer2019082220190816
349899732589 0 018995 400 768refgcc_-m32_-march=pentium-m_-O3_-fomit-frame-pointer2019082220190816
575583181122 0 016824 404 768refgcc_-m32_-O3_-fomit-frame-pointer2019082220190816
608317831424 0 017748 404 768refgcc_-m32_-march=k6-3_-O3_-fomit-frame-pointer2019082220190816
622869901216 0 017348 404 768refgcc_-m32_-march=k6_-O3_-fomit-frame-pointer2019082220190816
648243801424 0 017748 404 768refgcc_-m32_-march=k6-2_-O3_-fomit-frame-pointer2019082220190816
659648462778 0 020380 404 768refgcc_-funroll-loops_-m32_-O3_-fomit-frame-pointer2019082220190816
665470003402 0 021448 404 768refgcc_-funroll-loops_-m32_-march=k6-3_-O3_-fomit-frame-pointer2019082220190816
669853231174 0 014349 396 768refgcc_-m32_-march=core2_-O2_-fomit-frame-pointer2019082220190816
672400441133 0 014185 396 768refgcc_-m32_-march=k8_-O2_-fomit-frame-pointer2019082220190816
672993341061 0 016656 404 768refgcc_-m32_-march=athlon_-O3_-fomit-frame-pointer2019082220190816
674538361174 0 014333 396 768refgcc_-m32_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082220190816
680378901174 0 014333 396 768refgcc_-m32_-march=corei7_-O2_-fomit-frame-pointer2019082220190816
687032881265 0 017251 400 768refgcc_-m32_-march=pentium2_-O3_-fomit-frame-pointer2019082220190816
691169131265 0 017459 400 768refgcc_-m32_-march=pentium3_-O3_-fomit-frame-pointer2019082220190816
692648913402 0 021448 404 768refgcc_-funroll-loops_-m32_-march=k6-2_-O3_-fomit-frame-pointer2019082220190816
692701491265 0 017251 400 768refgcc_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2019082220190816
692818281174 0 014333 396 768refgcc_-m32_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082220190816
695598761174 0 014317 396 768refgcc_-m32_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082220190816
696325782966 0 020404 404 768refgcc_-funroll-loops_-m32_-march=k6_-O3_-fomit-frame-pointer2019082220190816
698389281174 0 014317 396 768refgcc_-m32_-march=core-avx-i_-O2_-fomit-frame-pointer2019082220190816
700031281174 0 014329 396 768refgcc_-m32_-O2_-fomit-frame-pointer2019082220190816
707950762573 0 019077 396 768refgcc_-funroll-loops_-m32_-march=k8_-O_-fomit-frame-pointer2019082220190816
709284542374 0 021139 400 768refgcc_-funroll-loops_-m32_-march=pentium2_-O3_-fomit-frame-pointer2019082220190816
710398922320 0 020096 404 768refgcc_-funroll-loops_-m32_-march=athlon_-O3_-fomit-frame-pointer2019082220190816
713758983612 0 019865 396 768refgcc_-funroll-loops_-m32_-march=k8_-O2_-fomit-frame-pointer2019082220190816
713791042508 0 015025 396 768refgcc_-m32_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
717569432374 0 021347 400 768refgcc_-funroll-loops_-m32_-march=pentium3_-O3_-fomit-frame-pointer2019082220190816
719484222625 0 019041 396 768refgcc_-funroll-loops_-m32_-march=k6-3_-O_-fomit-frame-pointer2019082220190816
720445601970 0 013845 396 768refgcc_-m32_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
720674282625 0 019041 396 768refgcc_-funroll-loops_-m32_-march=k6-2_-O_-fomit-frame-pointer2019082220190816
720921081000 0 013765 396 768refgcc_-m32_-march=core2_-msse4_-O_-fomit-frame-pointer2019082220190816
723265731000 0 013765 396 768refgcc_-m32_-march=core-avx-i_-O_-fomit-frame-pointer2019082220190816
724296281000 0 013765 396 768refgcc_-m32_-march=corei7-avx_-O_-fomit-frame-pointer2019082220190816
730251961000 0 013765 396 768refgcc_-m32_-march=core2_-O_-fomit-frame-pointer2019082220190816
731051393669 0 020685 396 768refgcc_-funroll-loops_-m32_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
731361341000 0 013765 396 768refgcc_-m32_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082220190816
733979111174 0 014317 396 768refgcc_-m32_-march=corei7-avx_-O2_-fomit-frame-pointer2019082220190816
735052502605 0 019009 396 768refgcc_-funroll-loops_-m32_-O_-fomit-frame-pointer2019082220190816
735949533545 0 020041 396 768refgcc_-funroll-loops_-m32_-O2_-fomit-frame-pointer2019082220190816
737140911000 0 013765 396 768refgcc_-m32_-march=corei7_-O_-fomit-frame-pointer2019082220190816
738116162625 0 019041 396 768refgcc_-funroll-loops_-m32_-march=k6_-O_-fomit-frame-pointer2019082220190816
746332863387 0 019645 396 768refgcc_-funroll-loops_-m32_-march=athlon_-O2_-fomit-frame-pointer2019082220190816
74646483968 0 013621 396 768refgcc_-m32_-march=k8_-O_-fomit-frame-pointer2019082220190816
751815761000 0 013765 396 768refgcc_-m32_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082220190816
755620003450 0 019793 396 768refgcc_-funroll-loops_-m32_-march=k6-2_-O2_-fomit-frame-pointer2019082220190816
756933603450 0 019793 396 768refgcc_-funroll-loops_-m32_-march=k6_-O2_-fomit-frame-pointer2019082220190816
757275803341 0 020925 396 768refgcc_-funroll-loops_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2019082220190816
762107643341 0 020113 396 768refgcc_-funroll-loops_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2019082220190816
762687841180 0 014461 396 768refgcc_-m32_-march=k6-3_-O2_-fomit-frame-pointer2019082220190816
767726071590 0 017591 400 768refgcc_-funroll-loops_-m32_-march=i386_-O3_-fomit-frame-pointer2019082220190816
768516603450 0 019793 396 768refgcc_-funroll-loops_-m32_-march=k6-3_-O2_-fomit-frame-pointer2019082220190816
77125227996 0 013853 396 768refgcc_-m32_-march=k6-3_-O_-fomit-frame-pointer2019082220190816
772633341157 0 013997 396 768refgcc_-m32_-march=athlon_-O2_-fomit-frame-pointer2019082220190816
773488801000 0 013741 396 768refgcc_-m32_-O_-fomit-frame-pointer2019082220190816
779763901197 0 014277 396 768refgcc_-m32_-march=pentium3_-O2_-fomit-frame-pointer2019082220190816
781540382374 0 021139 400 768refgcc_-funroll-loops_-m32_-march=pentiumpro_-O3_-fomit-frame-pointer2019082220190816
781672703341 0 020113 396 768refgcc_-funroll-loops_-m32_-march=pentium3_-O2_-fomit-frame-pointer2019082220190816
782584171197 0 014633 396 768refgcc_-m32_-march=pentium-m_-O2_-fomit-frame-pointer2019082220190816
782804941133 0 013877 396 768refgcc_-m32_-march=pentium4_-O2_-fomit-frame-pointer2019082220190816
78288240983 0 013813 396 768refgcc_-m32_-march=pentium-m_-O_-fomit-frame-pointer2019082220190816
784082403341 0 020113 396 768refgcc_-funroll-loops_-m32_-march=pentium2_-O2_-fomit-frame-pointer2019082220190816
784910971197 0 014277 396 768refgcc_-m32_-march=pentium2_-O2_-fomit-frame-pointer2019082220190816
78592789972 0 012889 388 768refgcc_-m32_-march=k6_-Os_-fomit-frame-pointer2019082220190816
78608736996 0 013853 396 768refgcc_-m32_-march=k6-2_-O_-fomit-frame-pointer2019082220190816
796714982589 0 019241 396 768refgcc_-funroll-loops_-m32_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
798504411180 0 014461 396 768refgcc_-m32_-march=k6-2_-O2_-fomit-frame-pointer2019082220190816
80139675907 0 012729 388 768refgcc_-m32_-march=i486_-Os_-fomit-frame-pointer2019082220190816
81239596921 0 012697 388 768refgcc_-m32_-march=pentium2_-Os_-fomit-frame-pointer2019082220190816
81724920996 0 013853 396 768refgcc_-m32_-march=k6_-O_-fomit-frame-pointer2019082220190816
818671952450 0 019405 396 768refgcc_-funroll-loops_-m32_-march=pentium2_-O_-fomit-frame-pointer2019082220190816
823727391814 0 012761 388 768refgcc_-m32_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
82487164972 0 012889 388 768refgcc_-m32_-march=k6-3_-Os_-fomit-frame-pointer2019082220190816
825222352577 0 018861 396 768refgcc_-funroll-loops_-m32_-march=athlon_-O_-fomit-frame-pointer2019082220190816
82920676921 0 012697 388 768refgcc_-m32_-march=pentium3_-Os_-fomit-frame-pointer2019082220190816
833882851197 0 014277 396 768refgcc_-m32_-march=pentiumpro_-O2_-fomit-frame-pointer2019082220190816
835270833450 0 019557 396 768refgcc_-funroll-loops_-m32_-march=pentium4_-O2_-fomit-frame-pointer2019082220190816
83836428976 0 013485 396 768refgcc_-m32_-march=athlon_-O_-fomit-frame-pointer2019082220190816
83885337983 0 013773 396 768refgcc_-m32_-march=pentium3_-O_-fomit-frame-pointer2019082220190816
84032712983 0 013773 396 768refgcc_-m32_-march=pentium2_-O_-fomit-frame-pointer2019082220190816
84075660972 0 012889 388 768refgcc_-m32_-march=k6-2_-Os_-fomit-frame-pointer2019082220190816
84443626907 0 012745 388 768refgcc_-m32_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082220190816
84567467907 0 012761 388 768refgcc_-m32_-march=core2_-Os_-fomit-frame-pointer2019082220190816
84616074907 0 012745 388 768refgcc_-m32_-march=corei7-avx_-Os_-fomit-frame-pointer2019082220190816
84754332907 0 012729 388 768refgcc_-m32_-Os_-fomit-frame-pointer2019082220190816
848140531180 0 014461 396 768refgcc_-m32_-march=k6_-O2_-fomit-frame-pointer2019082220190816
84854692907 0 012745 388 768refgcc_-m32_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082220190816
849864202623 0 019289 396 768refgcc_-funroll-loops_-m32_-march=pentium4_-O_-fomit-frame-pointer2019082220190816
851434042450 0 019525 396 768refgcc_-funroll-loops_-m32_-march=pentium-m_-O_-fomit-frame-pointer2019082220190816
85478201937 0 012729 388 768refgcc_-funroll-loops_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2019082220190816
85547100927 0 012729 388 768refgcc_-funroll-loops_-m32_-march=athlon_-Os_-fomit-frame-pointer2019082220190816
856558492450 0 019405 396 768refgcc_-funroll-loops_-m32_-march=pentium3_-O_-fomit-frame-pointer2019082220190816
85785987927 0 012729 388 768refgcc_-funroll-loops_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2019082220190816
85830432986 0 012873 388 768refgcc_-funroll-loops_-m32_-march=k6_-Os_-fomit-frame-pointer2019082220190816
85867176907 0 012729 388 768refgcc_-m32_-march=pentium-mmx_-Os_-fomit-frame-pointer2019082220190816
86013406927 0 012761 388 768refgcc_-funroll-loops_-m32_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
86058028907 0 012761 388 768refgcc_-m32_-march=prescott_-Os_-fomit-frame-pointer2019082220190816
86287684907 0 012745 388 768refgcc_-m32_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082220190816
86399446921 0 012697 388 768refgcc_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2019082220190816
86407818937 0 012681 388 768refgcc_-funroll-loops_-m32_-march=pentium2_-Os_-fomit-frame-pointer2019082220190816
86802772907 0 012745 388 768refgcc_-m32_-march=corei7_-Os_-fomit-frame-pointer2019082220190816
87114909921 0 012729 388 768refgcc_-m32_-march=pentium-m_-Os_-fomit-frame-pointer2019082220190816
87177204907 0 012761 388 768refgcc_-m32_-march=pentium4_-Os_-fomit-frame-pointer2019082220190816
87278624907 0 012729 388 768refgcc_-m32_-march=athlon_-Os_-fomit-frame-pointer2019082220190816
87382879995 0 013785 396 768refgcc_-m32_-march=pentium4_-O_-fomit-frame-pointer2019082220190816
87761519937 0 012681 388 768refgcc_-funroll-loops_-m32_-march=pentium3_-Os_-fomit-frame-pointer2019082220190816
87827064907 0 012761 388 768refgcc_-m32_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
87926211907 0 012729 388 768refgcc_-m32_-march=i386_-Os_-fomit-frame-pointer2019082220190816
881166962450 0 019405 396 768refgcc_-funroll-loops_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2019082220190816
88158528907 0 012745 388 768refgcc_-m32_-march=core-avx-i_-Os_-fomit-frame-pointer2019082220190816
88359450937 0 012681 388 768refgcc_-funroll-loops_-m32_-march=pentiumpro_-Os_-fomit-frame-pointer2019082220190816
88439660927 0 012777 388 768refgcc_-funroll-loops_-m32_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
88719991927 0 012761 388 768refgcc_-funroll-loops_-m32_-march=pentium4_-Os_-fomit-frame-pointer2019082220190816
88728996927 0 012777 388 768refgcc_-funroll-loops_-m32_-march=k8_-Os_-fomit-frame-pointer2019082220190816
88829547907 0 012729 388 768refgcc_-m32_-march=pentium_-Os_-fomit-frame-pointer2019082220190816
88876636907 0 012761 388 768refgcc_-m32_-march=k8_-Os_-fomit-frame-pointer2019082220190816
90632124983 0 013773 396 768refgcc_-m32_-march=pentiumpro_-O_-fomit-frame-pointer2019082220190816
91201884927 0 012761 388 768refgcc_-funroll-loops_-m32_-march=prescott_-Os_-fomit-frame-pointer2019082220190816
91319724986 0 012873 388 768refgcc_-funroll-loops_-m32_-march=k6-3_-Os_-fomit-frame-pointer2019082220190816
92612868927 0 012729 388 768refgcc_-funroll-loops_-m32_-march=pentium_-Os_-fomit-frame-pointer2019082220190816
94049583927 0 012729 388 768refgcc_-funroll-loops_-m32_-march=i386_-Os_-fomit-frame-pointer2019082220190816
94156479927 0 012729 388 768refgcc_-funroll-loops_-m32_-march=i486_-Os_-fomit-frame-pointer2019082220190816
94468740927 0 012729 388 768refgcc_-funroll-loops_-m32_-Os_-fomit-frame-pointer2019082220190816
95675828986 0 012873 388 768refgcc_-funroll-loops_-m32_-march=k6-2_-Os_-fomit-frame-pointer2019082220190816
1088490031745 0 019387 400 768refgcc_-funroll-loops_-m32_-march=pentium_-O3_-fomit-frame-pointer2019082220190816
1102423501321 0 017463 400 768refgcc_-m32_-march=pentium_-O3_-fomit-frame-pointer2019082220190816
1149949651289 0 014053 396 768refgcc_-m32_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
1158414902524 0 019133 396 768refgcc_-funroll-loops_-m32_-march=pentium_-O2_-fomit-frame-pointer2019082220190816
1158540382440 0 018681 396 768refgcc_-funroll-loops_-m32_-march=prescott_-O2_-fomit-frame-pointer2019082220190816
1169857771321 0 017463 400 768refgcc_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2019082220190816
1170007202336 0 018321 396 768refgcc_-funroll-loops_-m32_-march=i386_-O2_-fomit-frame-pointer2019082220190816
1171924942440 0 018681 396 768refgcc_-funroll-loops_-m32_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
1187705401315 0 014413 396 768refgcc_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2019082220190816
1188636482524 0 019133 396 768refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O2_-fomit-frame-pointer2019082220190816
1190841451745 0 019387 400 768refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O3_-fomit-frame-pointer2019082220190816
1205557572661 0 018873 396 768refgcc_-funroll-loops_-m32_-march=i386_-O_-fomit-frame-pointer2019082220190816
1215521671289 0 014053 396 768refgcc_-m32_-march=prescott_-O2_-fomit-frame-pointer2019082220190816
1221065671318 0 015875 400 768refgcc_-m32_-march=i386_-O3_-fomit-frame-pointer2019082220190816
1240246652668 0 019161 396 768refgcc_-funroll-loops_-m32_-march=i486_-O_-fomit-frame-pointer2019082220190816
1254349801031 0 013809 396 768refgcc_-m32_-march=prescott_-O_-fomit-frame-pointer2019082220190816
1257494341377 0 017263 400 768refgcc_-m32_-march=i486_-O3_-fomit-frame-pointer2019082220190816
1269915302638 0 019313 396 768refgcc_-funroll-loops_-m32_-march=prescott_-O_-fomit-frame-pointer2019082220190816
1275421471031 0 013809 396 768refgcc_-m32_-march=nocona_-O_-fomit-frame-pointer2019082220190816
1276085321321 0 013989 396 768refgcc_-m32_-march=i386_-O2_-fomit-frame-pointer2019082220190816
1277762401039 0 013777 396 768refgcc_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2019082220190816
1285573162638 0 019313 396 768refgcc_-funroll-loops_-m32_-march=nocona_-O_-fomit-frame-pointer2019082220190816
1301582671633 0 018959 400 768refgcc_-funroll-loops_-m32_-march=i486_-O3_-fomit-frame-pointer2019082220190816
1309628311315 0 014413 396 768refgcc_-m32_-march=pentium_-O2_-fomit-frame-pointer2019082220190816
1338619861395 0 014765 396 768refgcc_-m32_-march=i486_-O2_-fomit-frame-pointer2019082220190816
1340636162375 0 019165 396 768refgcc_-funroll-loops_-m32_-march=i486_-O2_-fomit-frame-pointer2019082220190816
1382567552640 0 019029 396 768refgcc_-funroll-loops_-m32_-march=pentium_-O_-fomit-frame-pointer2019082220190816
1382791292640 0 019029 396 768refgcc_-funroll-loops_-m32_-march=pentium-mmx_-O_-fomit-frame-pointer2019082220190816
1406519401039 0 013777 396 768refgcc_-m32_-march=pentium_-O_-fomit-frame-pointer2019082220190816
1410738621049 0 013909 396 768refgcc_-m32_-march=i486_-O_-fomit-frame-pointer2019082220190816
1488910211042 0 013637 396 768refgcc_-m32_-march=i386_-O_-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
recip.c: recip.c: In function 'montproduct':
recip.c: recip.c:72:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
recip.c: {
recip.c: ^
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
recip.c: from recip.c:1:
recip.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
recip.c: _mm256_sub_epi16 (__m256i __A, __m256i __B)
recip.c: ^~~~~~~~~~~~~~~~
recip.c: recip.c:78:10: note: called from here
recip.c: return _mm256_sub_epi16(hi,e);
recip.c: ^~~~~~~~~~~~~~~~~~~~~~
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
recip.c: from recip.c:1:
recip.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:546:1: error: inlining failed in call to always_inline '_mm256_mulhi_epi16': target specific option mismatch
recip.c: _mm256_mulhi_epi16 (__m256i __A, __m256i __B)
recip.c: ^~~~~~~~~~~~~~~~~~
recip.c: recip.c:77:5: note: called from here
recip.c: e = _mm256_mulhi_epi16(d,qvec);
recip.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
recip.c: from recip.c:1:
recip.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1325:1: error: inlining failed in call to always_inline '_mm256_set1_epi16': target specific option mismatch
recip.c: _mm256_set1_epi16 (short __A)
recip.c: ^~~~~~~~~~~~~~~~~
recip.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
recip.c: recip.c: In function 'montproduct':
recip.c: recip.c:72:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
recip.c: {
recip.c: ^
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
recip.c: from recip.c:1:
recip.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
recip.c: _mm256_sub_epi16 (__m256i __A, __m256i __B)
recip.c: ^~~~~~~~~~~~~~~~
recip.c: recip.c:78:10: note: called from here
recip.c: return _mm256_sub_epi16(hi,e);
recip.c: ^~~~~~~~~~~~~~~~~~~~~~
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
recip.c: from recip.c:1:
recip.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:546:1: error: inlining failed in call to always_inline '_mm256_mulhi_epi16': target specific option mismatch
recip.c: _mm256_mulhi_epi16 (__m256i __A, __m256i __B)
recip.c: ^~~~~~~~~~~~~~~~~~
recip.c: recip.c:77:5: note: called from here
recip.c: e = _mm256_mulhi_epi16(d,qvec);
recip.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
recip.c: from recip.c:1:
recip.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1325:1: error: inlining failed in call to always_inline '_mm256_set1_epi16': target specific option mismatch
recip.c: _mm256_set1_epi16 (short __A)
recip.c: ^~~~~~~~~~~~~~~~~
recip.c: ...
recip.c: recip.c: In function 'montproduct':
recip.c: recip.c:72:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
recip.c: {
recip.c: ^
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
recip.c: from recip.c:1:
recip.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
recip.c: _mm256_sub_epi16 (__m256i __A, __m256i __B)
recip.c: ^~~~~~~~~~~~~~~~
recip.c: recip.c:78:10: note: called from here
recip.c: return _mm256_sub_epi16(hi,e);
recip.c: ^~~~~~~~~~~~~~~~~~~~~~
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
recip.c: from recip.c:1:
recip.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:546:1: error: inlining failed in call to always_inline '_mm256_mulhi_epi16': target specific option mismatch
recip.c: _mm256_mulhi_epi16 (__m256i __A, __m256i __B)
recip.c: ^~~~~~~~~~~~~~~~~~
recip.c: recip.c:77:5: note: called from here
recip.c: e = _mm256_mulhi_epi16(d,qvec);
recip.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:41:0,
recip.c: from recip.c:1:
recip.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avxintrin.h:1325:1: error: inlining failed in call to always_inline '_mm256_set1_epi16': target specific option mismatch
recip.c: _mm256_set1_epi16 (short __A)
recip.c: ^~~~~~~~~~~~~~~~~
recip.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
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
recip.c: from recip.c:1:
recip.c: recip.c: In function 'montproduct':
recip.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
recip.c: _mm256_sub_epi16 (__m256i __A, __m256i __B)
recip.c: ^~~~~~~~~~~~~~~~
recip.c: recip.c:78:10: note: called from here
recip.c: return _mm256_sub_epi16(hi,e);
recip.c: ^~~~~~~~~~~~~~~~~~~~~~
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
recip.c: from recip.c:1:
recip.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:546:1: error: inlining failed in call to always_inline '_mm256_mulhi_epi16': target specific option mismatch
recip.c: _mm256_mulhi_epi16 (__m256i __A, __m256i __B)
recip.c: ^~~~~~~~~~~~~~~~~~
recip.c: recip.c:77:5: note: called from here
recip.c: e = _mm256_mulhi_epi16(d,qvec);
recip.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
recip.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:43:0,
recip.c: from recip.c:1:
recip.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/avx2intrin.h:546:1: error: inlining failed in call to always_inline '_mm256_mulhi_epi16': target specific option mismatch
recip.c: _mm256_mulhi_epi16 (__m256i __A, __m256i __B)
recip.c: ^~~~~~~~~~~~~~~~~~
recip.c: recip.c:76:6: note: called from here
recip.c: hi = _mm256_mulhi_epi16(x,y);
recip.c: ~~~^~~~~~~~~~~~~~~~~~~~~~~~~
recip.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