Implementation notes: amd64, oki, crypto_kem/titaniumccastd

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_kem
Primitive: titaniumccastd
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2198940? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012120181123
2244230? ? ?? ? ?avx2clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2247402? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012120181123
2255068? ? ?? ? ?avx2clang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2338124? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012120181123
2400316? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012120181123
2410268? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012120181123
2447704? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012120181123
2454938? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012120181123
2517536? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012120181123
2519494? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012120181123
3152260? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012120181123
3163306? ? ?? ? ?optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012120181123
3166396? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012120181123
3201078? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019012120181123
3210454? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019012120181123
3215514? ? ?? ? ?optgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019012120181123
3225932? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
3226632? ? ?? ? ?optgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
3227658? ? ?? ? ?optgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019012120181123
3232608? ? ?? ? ?optgcc_-funroll-loops_-O3_-fomit-frame-pointer2019012120181123
3234000? ? ?? ? ?optgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019012120181123
3237516? ? ?? ? ?optgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
3239986? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
3270624? ? ?? ? ?optgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019012120181123
3276844? ? ?? ? ?optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
3278328? ? ?? ? ?optclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
3282332? ? ?? ? ?optgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019012120181123
3289130? ? ?? ? ?optclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019012120181123
3291280? ? ?? ? ?optclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019012120181123
3291978? ? ?? ? ?optclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
3292498? ? ?? ? ?optclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
3298718? ? ?? ? ?optgcc_-m64_-O3_-fomit-frame-pointer2019012120181123
3299962? ? ?? ? ?optgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019012120181123
3307900? ? ?? ? ?optgcc_-funroll-loops_-O2_-fomit-frame-pointer2019012120181123
3308276? ? ?? ? ?optgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019012120181123
3312324? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
3312732? ? ?? ? ?optgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019012120181123
3320396? ? ?? ? ?optgcc_-O3_-fomit-frame-pointer2019012120181123
3320784? ? ?? ? ?optgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
3322148? ? ?? ? ?optgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
3323610? ? ?? ? ?optgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
3324444? ? ?? ? ?optgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
3333258? ? ?? ? ?optgcc_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
3336560? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
3338286? ? ?? ? ?optgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
3350766? ? ?? ? ?optgcc_-march=k8_-O3_-fomit-frame-pointer2019012120181123
3355188? ? ?? ? ?optclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
3367718? ? ?? ? ?optclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012120181123
3398178? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019012120181123
3401124? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019012120181123
3413166? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012120181123
3414126? ? ?? ? ?optgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019012120181123
3448358? ? ?? ? ?optgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
3448770? ? ?? ? ?optgcc_-march=k8_-O2_-fomit-frame-pointer2019012120181123
3450846? ? ?? ? ?optgcc_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
3450878? ? ?? ? ?optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012120181123
3451358? ? ?? ? ?optgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
3452418? ? ?? ? ?optgcc_-O2_-fomit-frame-pointer2019012120181123
3454306? ? ?? ? ?optgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
3458294? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012120181123
3468398? ? ?? ? ?optgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019012120181123
3469084? ? ?? ? ?optgcc_-m64_-O2_-fomit-frame-pointer2019012120181123
3475910? ? ?? ? ?optgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019012120181123
3476634? ? ?? ? ?optgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019012120181123
3540062? ? ?? ? ?optgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
3550236? ? ?? ? ?optgcc_-funroll-loops_-O_-fomit-frame-pointer2019012120181123
3559120? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
3564232? ? ?? ? ?optgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019012120181123
3568542? ? ?? ? ?optgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
3601676? ? ?? ? ?optgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019012120181123
3604156? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
3666258? ? ?? ? ?optgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
3667134? ? ?? ? ?optgcc_-O_-fomit-frame-pointer2019012120181123
3667480? ? ?? ? ?optgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
3670864? ? ?? ? ?optgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
3671098? ? ?? ? ?optgcc_-march=k8_-O_-fomit-frame-pointer2019012120181123
3672226? ? ?? ? ?optgcc_-m64_-O_-fomit-frame-pointer2019012120181123
3674454? ? ?? ? ?optgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019012120181123
3675176? ? ?? ? ?optgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019012120181123
3677710? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019012120181123
3682320? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012120181123
3682784? ? ?? ? ?optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012120181123
3683588? ? ?? ? ?optgcc_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
3695748? ? ?? ? ?optgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019012120181123
3698216? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012120181123
3700490? ? ?? ? ?optgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019012120181123
3710690? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019012120181123
5466452? ? ?? ? ?optgcc_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
5468448? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
5474880? ? ?? ? ?optgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
5480282? ? ?? ? ?optgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
5739474? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
5803124? ? ?? ? ?optgcc_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
5839740? ? ?? ? ?optgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
5895342? ? ?? ? ?optgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
6052384? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
6054724? ? ?? ? ?optgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019012120181123
6190566? ? ?? ? ?optgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
6206984? ? ?? ? ?optgcc_-march=nocona_-O_-fomit-frame-pointer2019012120181123
366050264? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
366447752? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019012120181123
366511002? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
366681884? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019012120181123
366947150? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012120181123
366957536? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
366972666? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
366985658? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
368004672? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019012120181123
368312192? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019012120181123
368492428? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
370856740? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
371210962? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019012120181123
371275912? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019012120181123
371420834? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
371438502? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019012120181123
372819854? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
372968586? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
379320334? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019012120181123
379453428? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012120181123
379645630? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019012120181123
379829978? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019012120181123
379991614? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019012120181123
380293764? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
381124474? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
381383834? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
382674858? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012120181123
383042464? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019012120181123
383046472? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019012120181123
383220530? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019012120181123
384410546? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012120181123
384498124? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019012120181123
384515834? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019012120181123
384815104? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019012120181123
384827510? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019012120181123
384854528? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019012120181123
384909536? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
386226988? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012120181123
386302486? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
386508252? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019012120181123
386569774? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
386577318? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
386603626? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019012120181123
386623854? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012120181123
386626894? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019012120181123
386632930? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019012120181123
386656968? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
386746388? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019012120181123
386947146? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019012120181123
387727366? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012120181123
396687330? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
396913844? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
396953416? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019012120181123
396957902? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
420284252? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019012120181123
420341240? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
420600304? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
420646928? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
420669384? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
420707336? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019012120181123
420893160? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019012120181123
442073054? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019012120181123
442080658? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019012120181123
442090628? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
442103592? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
442159732? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019012120181123
442290740? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012120181123
442296624? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019012120181123
442303416? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019012120181123
442337390? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012120181123
442373838? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012120181123
442476530? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019012120181123
442604378? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019012120181123
442646120? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019012120181123
442716170? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
442753972? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
442858546? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019012120181123
485614984? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
485986880? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
487644614? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
487864084? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
490043896? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
490319456? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
493884798? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
493894758? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
542168574? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019012120181123
542363534? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
549692754? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
549764234? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019012120181123

Compiler output

Implementation: avx2
Security model: unknown
Compiler: cc
encrypt.c: encrypt.c:24:1: error: unknown type name '__m256i'
encrypt.c: static const __m256i V_B4Q_B4Q_B4Q_B4Q = {BARRETT_FACTOR_4Q, BARRETT_FACTOR_4Q, BARRETT_FACTOR_4Q, BARRETT_FACTOR_4Q};
encrypt.c: ^
encrypt.c: encrypt.c:24:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:24:1: warning: (near initialization for 'V_B4Q_B4Q_B4Q_B4Q') [enabled by default]
encrypt.c: encrypt.c:24:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:24:1: warning: (near initialization for 'V_B4Q_B4Q_B4Q_B4Q') [enabled by default]
encrypt.c: encrypt.c:24:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:24:1: warning: (near initialization for 'V_B4Q_B4Q_B4Q_B4Q') [enabled by default]
encrypt.c: encrypt.c:25:1: error: unknown type name '__m256i'
encrypt.c: static const __m256i V_Q_Q_Q_Q = {Q, Q, Q, Q};
encrypt.c: ^
encrypt.c: encrypt.c:25:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:25:1: warning: (near initialization for 'V_Q_Q_Q_Q') [enabled by default]
encrypt.c: encrypt.c:25:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:25:1: warning: (near initialization for 'V_Q_Q_Q_Q') [enabled by default]
encrypt.c: encrypt.c:25:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:25:1: warning: (near initialization for 'V_Q_Q_Q_Q') [enabled by default]
encrypt.c: encrypt.c:26:1: error: unknown type name '__m256i'
encrypt.c: static const __m256i V_Q2_Q2_Q2_Q2 = {Q2, Q2, Q2, Q2};
encrypt.c: ^
encrypt.c: encrypt.c:26:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:26:1: warning: (near initialization for 'V_Q2_Q2_Q2_Q2') [enabled by default]
encrypt.c: encrypt.c:26:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:26:1: warning: (near initialization for 'V_Q2_Q2_Q2_Q2') [enabled by default]
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:67:8: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ^
encrypt.c: encrypt.c:68:8: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: v = _mm256_loadu_si256((__m256i *)(s + j));
encrypt.c: ^
encrypt.c: encrypt.c:69:8: error: always_inline function '_mm256_mul_epu32' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ^
encrypt.c: encrypt.c:70:4: error: always_inline function '_mm256_storeu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: _mm256_storeu_si256((__m256i *)(a[i] + j), t);
encrypt.c: ^
encrypt.c: encrypt.c:82:8: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ^
encrypt.c: encrypt.c:83:8: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: v = _mm256_loadu_si256((__m256i *)(e[i] + j));
encrypt.c: ^
encrypt.c: encrypt.c:84:8: error: always_inline function '_mm256_add_epi64' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: t = _mm256_add_epi64(u, v);
encrypt.c: ^
encrypt.c: encrypt.c:85:9: error: always_inline function '_mm256_mul_epu32' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: t1 = _mm256_mul_epu32(t, V_B4Q_B4Q_B4Q_B4Q);
encrypt.c: ^
encrypt.c: encrypt.c:86:9: error: always_inline function '_mm256_srli_epi64' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: ...

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

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
pack.c: pack.c:63:6: warning: assigning to 'unsigned char *' from 'const unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^ ~~~~~~~~~~~~~~~~~~~~
pack.c: 1 warning generated.
try.c: fatal error: error in backend: Cannot select: 0x23ecfd0: v4i64 = X86ISD::VTRUNC 0x23ece00
try.c: 0x23ece00: v16i32 = vselect 0x23f38c0, 0x237d2c0, 0x23eccd0
try.c: 0x23f38c0: v4i1 = X86ISD::PCMPGTM 0x23d68c0, 0x237e070
try.c: 0x23d68c0: v4i64 = X86ISD::VBROADCAST 0x237e400
try.c: 0x237e400: i64,ch = load<LD8[%uglygep72]> 0x22d0db0, 0x2372690, undef:i64
try.c: 0x2372690: i64 = add 0x23d77a0, 0x2358150
try.c: 0x23d77a0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x238a560: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x2358150: i64 = shl 0x2389d10, Constant:i8<3>
try.c: 0x2389d10: i64,ch = CopyFromReg 0x22d0db0, Register:i64 %vreg50
try.c: 0x23d7c60: i64 = Register %vreg50
try.c: 0x2376c90: i8 = Constant<3>
try.c: 0x23d4f30: i64 = undef
try.c: 0x237e070: v4i64,ch = CopyFromReg 0x22d0db0, Register:v4i64 %vreg13
try.c: 0x23703f0: v4i64 = Register %vreg13
try.c: 0x237d2c0: v16i32 = X86ISD::VBROADCAST 0x2389f70
try.c: 0x2389f70: i32,ch = load<LD4[ConstantPool]> 0x22d0db0, 0x23ec940, undef:i64
try.c: 0x23ec940: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2384a40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x23d4f30: i64 = undef
try.c: 0x23eccd0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x23ecba0: i32 = Constant<0>
try.c: 0x23ecba0: i32 = Constant<0>
try.c: 0x23ecba0: i32 = Constant<0>
try.c: 0x23ecba0: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments
pack.c: pack.c:63:6: warning: assigning to 'unsigned char *' from 'const unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^ ~~~~~~~~~~~~~~~~~~~~
pack.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments opt
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:69:8: error: always_inline function '_mm256_mul_epu32' requires target feature 'avx2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'avx2'
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ^
encrypt.c: encrypt.c:84:8: error: always_inline function '_mm256_add_epi64' requires target feature 'avx2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'avx2'
encrypt.c: t = _mm256_add_epi64(u, v);
encrypt.c: ^
encrypt.c: encrypt.c:85:9: error: always_inline function '_mm256_mul_epu32' requires target feature 'avx2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'avx2'
encrypt.c: t1 = _mm256_mul_epu32(t, V_B4Q_B4Q_B4Q_B4Q);
encrypt.c: ^
encrypt.c: encrypt.c:86:9: error: always_inline function '_mm256_srli_epi64' requires target feature 'avx2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'avx2'
encrypt.c: t1 = _mm256_srli_epi64(t1, BARRETT_BITSHIFT_4Q);
encrypt.c: ^
encrypt.c: encrypt.c:87:9: error: always_inline function '_mm256_mul_epu32' requires target feature 'avx2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'avx2'
encrypt.c: t1 = _mm256_mul_epu32(t1, V_Q_Q_Q_Q);
encrypt.c: ^
encrypt.c: encrypt.c:88:8: error: always_inline function '_mm256_sub_epi64' requires target feature 'avx2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'avx2'
encrypt.c: t = _mm256_sub_epi64(t, t1);
encrypt.c: ^
encrypt.c: 6 errors generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
pack.c: pack.c:63:6: warning: assigning to 'unsigned char *' from 'const unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^ ~~~~~~~~~~~~~~~~~~~~
pack.c: 1 warning generated.
try.c: fatal error: error in backend: Cannot select: 0x133c8e0: v4i64 = X86ISD::VTRUNC 0x133c710
try.c: 0x133c710: v16i32 = vselect 0x1339350, 0x12ba380, 0x133c5e0
try.c: 0x1339350: v4i1 = X86ISD::PCMPGTM 0x1325250, 0x12bb130
try.c: 0x1325250: v4i64 = X86ISD::VBROADCAST 0x12bb4c0
try.c: 0x12bb4c0: i64,ch = load<LD8[%uglygep72]> 0x121fdb0, 0x13059b0, undef:i64
try.c: 0x13059b0: i64 = add 0x1326130, 0x12ccf90
try.c: 0x1326130: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x130cd30: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x12ccf90: i64 = shl 0x130c4e0, Constant:i8<3>
try.c: 0x130c4e0: i64,ch = CopyFromReg 0x121fdb0, Register:i64 %vreg50
try.c: 0x13265f0: i64 = Register %vreg50
try.c: 0x12c5130: i8 = Constant<3>
try.c: 0x13238c0: i64 = undef
try.c: 0x12bb130: v4i64,ch = CopyFromReg 0x121fdb0, Register:v4i64 %vreg13
try.c: 0x12be0c0: v4i64 = Register %vreg13
try.c: 0x12ba380: v16i32 = X86ISD::VBROADCAST 0x130c740
try.c: 0x130c740: i32,ch = load<LD4[ConstantPool]> 0x121fdb0, 0x133c250, undef:i64
try.c: 0x133c250: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x12d5c10: i64 = TargetConstantPool<i32 1> 0
try.c: 0x13238c0: i64 = undef
try.c: 0x133c5e0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x133c4b0: i32 = Constant<0>
try.c: 0x133c4b0: i32 = Constant<0>
try.c: 0x133c4b0: i32 = Constant<0>
try.c: 0x133c4b0: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc
encrypt.c: encrypt.c: In function 'crypto_encrypt_keypair':
encrypt.c: encrypt.c:67:6: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:41:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/avxintrin.h:925:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
encrypt.c: _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:70:4: note: called from here
encrypt.c: _mm256_storeu_si256((__m256i *)(a[i] + j), t);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:43:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:69:6: note: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:41:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: ...

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

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c: In function 'crypto_encrypt_keypair':
encrypt.c: encrypt.c:67:6: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:41:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/avxintrin.h:925:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
encrypt.c: _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:70:4: note: called from here
encrypt.c: _mm256_storeu_si256((__m256i *)(a[i] + j), t);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:43:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:69:6: note: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:41:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: ...
encrypt.c: encrypt.c: In function 'crypto_encrypt_keypair':
encrypt.c: encrypt.c:67:6: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:41:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/avxintrin.h:925:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
encrypt.c: _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:70:4: note: called from here
encrypt.c: _mm256_storeu_si256((__m256i *)(a[i] + j), t);
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:43:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:69:6: note: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:41:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: ...

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

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:43:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: encrypt.c: In function 'crypto_encrypt_keypair':
encrypt.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:69:6: note: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:43:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:69:6: note: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/immintrin.h:43:0,
encrypt.c: from /usr/lib64/gcc/x86_64-suse-linux/7/include/x86intrin.h:48,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/avx2intrin.h:822:1: error: inlining failed in call to always_inline '_mm256_sub_epi64': target specific option mismatch
encrypt.c: _mm256_sub_epi64 (__m256i __A, __m256i __B)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer avx2
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^

Number of similar (compiler,implementation) pairs: 165, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer avx2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx2
gcc -O2 -fomit-frame-pointer opt
gcc -O3 -fomit-frame-pointer opt
gcc -O -fomit-frame-pointer opt
gcc -fno-schedule-insns -O2 -fomit-frame-pointer opt
gcc -fno-schedule-insns -O3 -fomit-frame-pointer opt
gcc -fno-schedule-insns -O -fomit-frame-pointer opt
gcc -funroll-loops -O2 -fomit-frame-pointer opt
gcc -funroll-loops -O3 -fomit-frame-pointer opt
gcc -funroll-loops -O -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer opt
gcc -m64 -O2 -fomit-frame-pointer opt
gcc -m64 -O3 -fomit-frame-pointer opt
gcc -m64 -O -fomit-frame-pointer opt
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer opt
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer opt
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer opt
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer opt
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer opt
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer opt
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O -fomit-frame-pointer opt
gcc -m64 -march=k8 -O2 -fomit-frame-pointer opt
gcc -m64 -march=k8 -O3 -fomit-frame-pointer opt
gcc -m64 -march=k8 -O -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer opt
gcc -m64 -march=nocona -O2 -fomit-frame-pointer opt
gcc -m64 -march=nocona -O3 -fomit-frame-pointer opt
gcc -m64 -march=nocona -O -fomit-frame-pointer opt
gcc -march=barcelona -O2 -fomit-frame-pointer opt
gcc -march=barcelona -O3 -fomit-frame-pointer opt
gcc -march=barcelona -O -fomit-frame-pointer opt
gcc -march=k8 -O2 -fomit-frame-pointer opt
gcc -march=k8 -O3 -fomit-frame-pointer opt
gcc -march=k8 -O -fomit-frame-pointer opt
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv opt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv opt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv opt
gcc -march=nocona -O2 -fomit-frame-pointer opt
gcc -march=nocona -O3 -fomit-frame-pointer opt
gcc -march=nocona -O -fomit-frame-pointer opt
gcc -O2 -fomit-frame-pointer ref
gcc -O3 -fomit-frame-pointer ref
gcc -O -fomit-frame-pointer ref
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops -O2 -fomit-frame-pointer ref
gcc -funroll-loops -O3 -fomit-frame-pointer ref
gcc -funroll-loops -O -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc -m64 -O2 -fomit-frame-pointer ref
gcc -m64 -O3 -fomit-frame-pointer ref
gcc -m64 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -march=barcelona -O2 -fomit-frame-pointer ref
gcc -march=barcelona -O3 -fomit-frame-pointer ref
gcc -march=barcelona -O -fomit-frame-pointer ref
gcc -march=k8 -O2 -fomit-frame-pointer ref
gcc -march=k8 -O3 -fomit-frame-pointer ref
gcc -march=k8 -O -fomit-frame-pointer ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -O2 -fomit-frame-pointer ref
gcc -march=nocona -O3 -fomit-frame-pointer ref
gcc -march=nocona -O -fomit-frame-pointer ref

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `sampler_zq':
try.c: sampler.c:(.text+0x...): undefined reference to `load_24'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: sampler.c:(.text+0x...): undefined reference to `barrett_zq'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx2

Compiler output

Implementation: opt
Security model: unknown
Compiler: cc
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [enabled by default]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `load_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `store_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `load_24':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_24'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `load_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_32'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `store_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_32'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `barrett_4q':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_4q'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `barrett_8q':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_8q'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `barrett_16q':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_16q'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `barrett_2q2':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_2q2'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `barrett_4q2':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_4q2'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `barrett_zq':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_zq'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(pack.o): in function `load_8':
try.c: pack.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(pack.o): in function `store_8':
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
pack.c: pack.c:63:6: warning: assigning to 'unsigned char *' from 'const unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^ ~~~~~~~~~~~~~~~~~~~~
pack.c: 1 warning generated.
try.c: fatal error: error in backend: Cannot select: 0xfdd110: v4i64 = X86ISD::VTRUNC 0xfdcf40
try.c: 0xfdcf40: v16i32 = vselect 0xfbbfb0, 0xf5fb80, 0xfdce10
try.c: 0xfbbfb0: v4i1 = X86ISD::PCMPGTM 0xfc5600, 0xf81290
try.c: 0xfc5600: v4i64 = X86ISD::VBROADCAST 0xf81620
try.c: 0xf81620: i64,ch = load<LD8[%uglygep72]> 0xebedd0, 0xfc16f0, undef:i64
try.c: 0xfc16f0: i64 = add 0xfc64e0, 0xf87d50
try.c: 0xfc64e0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xfb7260: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xf87d50: i64 = shl 0xfb6a10, Constant:i8<3>
try.c: 0xfb6a10: i64,ch = CopyFromReg 0xebedd0, Register:i64 %vreg50
try.c: 0xfc69a0: i64 = Register %vreg50
try.c: 0xf65330: i8 = Constant<3>
try.c: 0xfc3c70: i64 = undef
try.c: 0xf81290: v4i64,ch = CopyFromReg 0xebedd0, Register:v4i64 %vreg13
try.c: 0xf5a110: v4i64 = Register %vreg13
try.c: 0xf5fb80: v16i32 = X86ISD::VBROADCAST 0xfb6c70
try.c: 0xfb6c70: i32,ch = load<LD4[ConstantPool]> 0xebedd0, 0xfdca80, undef:i64
try.c: 0xfdca80: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xf73fc0: i64 = TargetConstantPool<i32 1> 0
try.c: 0xfc3c70: i64 = undef
try.c: 0xfdce10: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0xfdcce0: i32 = Constant<0>
try.c: 0xfdcce0: i32 = Constant<0>
try.c: 0xfdcce0: i32 = Constant<0>
try.c: 0xfdcce0: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
pack.c: pack.c:63:6: warning: assigning to 'unsigned char *' from 'const unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^ ~~~~~~~~~~~~~~~~~~~~
pack.c: 1 warning generated.
try.c: fatal error: error in backend: Cannot select: 0x205e2c0: v4i64 = X86ISD::VTRUNC 0x205e0f0
try.c: 0x205e0f0: v16i32 = vselect 0x2063080, 0x1fdf340, 0x205dfc0
try.c: 0x2063080: v4i1 = X86ISD::PCMPGTM 0x2045ba0, 0x1fe00f0
try.c: 0x2045ba0: v4i64 = X86ISD::VBROADCAST 0x1fe0480
try.c: 0x1fe0480: i64,ch = load<LD8[%uglygep72]> 0x1f40dd0, 0x1fc17e0, undef:i64
try.c: 0x1fc17e0: i64 = add 0x2046a80, 0x1fd6100
try.c: 0x2046a80: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2039510: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1fd6100: i64 = shl 0x2038cc0, Constant:i8<3>
try.c: 0x2038cc0: i64,ch = CopyFromReg 0x1f40dd0, Register:i64 %vreg50
try.c: 0x2046f40: i64 = Register %vreg50
try.c: 0x1fe7310: i8 = Constant<3>
try.c: 0x2044210: i64 = undef
try.c: 0x1fe00f0: v4i64,ch = CopyFromReg 0x1f40dd0, Register:v4i64 %vreg13
try.c: 0x2005f00: v4i64 = Register %vreg13
try.c: 0x1fdf340: v16i32 = X86ISD::VBROADCAST 0x2038f20
try.c: 0x2038f20: i32,ch = load<LD4[ConstantPool]> 0x1f40dd0, 0x205dc30, undef:i64
try.c: 0x205dc30: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2003a20: i64 = TargetConstantPool<i32 1> 0
try.c: 0x2044210: i64 = undef
try.c: 0x205dfc0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x205de90: i32 = Constant<0>
try.c: 0x205de90: i32 = Constant<0>
try.c: 0x205de90: i32 = Constant<0>
try.c: 0x205de90: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: gcc
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt_keypair':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: encrypt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt_open':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `fastrandombytes':
try.c: fastrandombytes.c:(.text+0x...): undefined reference to `load_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: fastrandombytes.c:(.text+0x...): undefined reference to `store_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `ntt_2':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `ntt_core':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_2q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `intt_core':
try.c: ...

Number of similar (compiler,implementation) pairs: 28, namely:
CompilerImplementations
gcc opt
gcc -Os -fomit-frame-pointer opt
gcc -fno-schedule-insns -Os -fomit-frame-pointer opt
gcc -funroll-loops opt
gcc -funroll-loops -Os -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer opt
gcc -m64 -Os -fomit-frame-pointer opt
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer opt
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer opt
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer opt
gcc -m64 -march=corei7 -Os -fomit-frame-pointer opt
gcc -m64 -march=k8 -Os -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer opt
gcc -m64 -march=nocona -Os -fomit-frame-pointer opt
gcc -march=barcelona -Os -fomit-frame-pointer opt
gcc -march=k8 -Os -fomit-frame-pointer opt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv opt
gcc -march=nocona -Os -fomit-frame-pointer opt

Compiler output

Implementation: opt
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer opt
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer opt
gcc -m64 -march=barcelona -O -fomit-frame-pointer opt
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O -fomit-frame-pointer ref

Compiler output

Implementation: opt
Security model: unknown
Compiler: gcc -m64 -march=barcelona -Os -fomit-frame-pointer
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt_keypair':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: encrypt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt_open':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `fastrandombytes':
try.c: fastrandombytes.c:(.text+0x...): undefined reference to `load_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: fastrandombytes.c:(.text+0x...): undefined reference to `store_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `ntt_2':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `ntt_core':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_2q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `intt_core':
try.c: ...
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt_keypair':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: encrypt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt_open':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `fastrandombytes':
try.c: fastrandombytes.c:(.text+0x...): undefined reference to `load_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: fastrandombytes.c:(.text+0x...): undefined reference to `store_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `ntt_2':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `ntt_core':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_2q2'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `intt_core':
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=barcelona -Os -fomit-frame-pointer opt

Compiler output

Implementation: ref
Security model: unknown
Compiler: cc
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [enabled by default]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `load_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `store_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `load_24':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_24'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `load_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_32'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `store_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_32'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(pack.o): in function `load_8':
try.c: pack.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(pack.o): in function `store_8':
try.c: pack.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(pack.o): in function `load_24':
try.c: pack.c:(.text+0x...): multiple definition of `load_24'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(pack.o): in function `load_32':
try.c: pack.c:(.text+0x...): multiple definition of `load_32'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(pack.o): in function `store_32':
try.c: pack.c:(.text+0x...): multiple definition of `store_32'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `load_8':
try.c: sampler.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `store_8':
try.c: sampler.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccastd.a(encrypt.o):encrypt.c:(.text+0x...): first defined here
try.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `load_24':
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
pack.c: pack.c:63:6: warning: assigning to 'unsigned char *' from 'const unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^ ~~~~~~~~~~~~~~~~~~~~
pack.c: 1 warning generated.
try.c: fatal error: error in backend: Cannot select: 0x22a5370: v4i64 = X86ISD::VTRUNC 0x22a51a0
try.c: 0x22a51a0: v16i32 = vselect 0x22ad220, 0x2222400, 0x22a5070
try.c: 0x22ad220: v4i1 = X86ISD::PCMPGTM 0x228ec60, 0x22231b0
try.c: 0x228ec60: v4i64 = X86ISD::VBROADCAST 0x2223540
try.c: 0x2223540: i64,ch = load<LD8[%uglygep72]> 0x2188dd0, 0x2230f20, undef:i64
try.c: 0x2230f20: i64 = add 0x228fb40, 0x22240c0
try.c: 0x228fb40: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x223a6f0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x22240c0: i64 = shl 0x2239ea0, Constant:i8<3>
try.c: 0x2239ea0: i64,ch = CopyFromReg 0x2188dd0, Register:i64 %vreg50
try.c: 0x2290000: i64 = Register %vreg50
try.c: 0x223e340: i8 = Constant<3>
try.c: 0x228d2d0: i64 = undef
try.c: 0x22231b0: v4i64,ch = CopyFromReg 0x2188dd0, Register:v4i64 %vreg13
try.c: 0x22498d0: v4i64 = Register %vreg13
try.c: 0x2222400: v16i32 = X86ISD::VBROADCAST 0x223a100
try.c: 0x223a100: i32,ch = load<LD4[ConstantPool]> 0x2188dd0, 0x22a4ce0, undef:i64
try.c: 0x22a4ce0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2227a90: i64 = TargetConstantPool<i32 1> 0
try.c: 0x228d2d0: i64 = undef
try.c: 0x22a5070: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x22a4f40: i32 = Constant<0>
try.c: 0x22a4f40: i32 = Constant<0>
try.c: 0x22a4f40: i32 = Constant<0>
try.c: 0x22a4f40: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
pack.c: pack.c:63:6: warning: assigning to 'unsigned char *' from 'const unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^ ~~~~~~~~~~~~~~~~~~~~
pack.c: 1 warning generated.
try.c: fatal error: error in backend: Cannot select: 0x287c120: v4i64 = X86ISD::VTRUNC 0x287bf50
try.c: 0x287bf50: v16i32 = vselect 0x2883c90, 0x27fc760, 0x287be20
try.c: 0x2883c90: v4i1 = X86ISD::PCMPGTM 0x2865a10, 0x2821c70
try.c: 0x2865a10: v4i64 = X86ISD::VBROADCAST 0x2822000
try.c: 0x2822000: i64,ch = load<LD8[%uglygep72]> 0x275fdd0, 0x27fe780, undef:i64
try.c: 0x27fe780: i64 = add 0x28668f0, 0x280f580
try.c: 0x28668f0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2855c80: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x280f580: i64 = shl 0x2855430, Constant:i8<3>
try.c: 0x2855430: i64,ch = CopyFromReg 0x275fdd0, Register:i64 %vreg50
try.c: 0x2866db0: i64 = Register %vreg50
try.c: 0x2810b80: i8 = Constant<3>
try.c: 0x2864080: i64 = undef
try.c: 0x2821c70: v4i64,ch = CopyFromReg 0x275fdd0, Register:v4i64 %vreg13
try.c: 0x28269c0: v4i64 = Register %vreg13
try.c: 0x27fc760: v16i32 = X86ISD::VBROADCAST 0x2855690
try.c: 0x2855690: i32,ch = load<LD4[ConstantPool]> 0x275fdd0, 0x287ba90, undef:i64
try.c: 0x287ba90: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2814f10: i64 = TargetConstantPool<i32 1> 0
try.c: 0x2864080: i64 = undef
try.c: 0x287be20: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x287bcf0: i32 = Constant<0>
try.c: 0x287bcf0: i32 = Constant<0>
try.c: 0x287bcf0: i32 = Constant<0>
try.c: 0x287bcf0: i32 = Constant<0>
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: gcc
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `fastrandombytes':
try.c: fastrandombytes.c:(.text+0x...): undefined reference to `load_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: fastrandombytes.c:(.text+0x...): undefined reference to `store_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(pack.o): in function `poly_encode_c2':
try.c: pack.c:(.text+0x...): undefined reference to `store_8'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(pack.o): in function `poly_decode_c2':
try.c: pack.c:(.text+0x...): undefined reference to `load_8'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `sampler_zb':
try.c: sampler.c:(.text+0x...): undefined reference to `load_8'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: sampler.c:(.text+0x...): undefined reference to `load_8'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: sampler.c:(.text+0x...): undefined reference to `load_8'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `sampler_zq':
try.c: sampler.c:(.text+0x...): undefined reference to `load_24'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `sampler_binomial':
try.c: sampler.c:(.text+0x...): undefined reference to `load_8'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc ref
gcc -funroll-loops ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: gcc -Os -fomit-frame-pointer
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `fastrandombytes':
try.c: fastrandombytes.c:(.text+0x...): undefined reference to `load_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: fastrandombytes.c:(.text+0x...): undefined reference to `store_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `sampler_zq':
try.c: sampler.c:(.text+0x...): undefined reference to `load_24'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 26, namely:
CompilerImplementations
gcc -Os -fomit-frame-pointer ref
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -Os -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc -m64 -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: ref
Security model: unknown
Compiler: gcc -m64 -march=barcelona -Os -fomit-frame-pointer
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `fastrandombytes':
try.c: fastrandombytes.c:(.text+0x...): undefined reference to `load_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: fastrandombytes.c:(.text+0x...): undefined reference to `store_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `sampler_zq':
try.c: sampler.c:(.text+0x...): undefined reference to `load_24'
try.c: collect2: error: ld returned 1 exit status
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `fastrandombytes':
try.c: fastrandombytes.c:(.text+0x...): undefined reference to `load_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: fastrandombytes.c:(.text+0x...): undefined reference to `store_32'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `sampler_zq':
try.c: sampler.c:(.text+0x...): undefined reference to `load_24'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref