Implementation notes: amd64, oki, crypto_kem/titaniumccalite

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_kem
Primitive: titaniumccalite
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1874342? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012120181123
1899116? ? ?? ? ?avx2clang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
1937238? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012120181123
1970992? ? ?? ? ?avx2clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2031314? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012120181123
2055042? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012120181123
2059916? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012120181123
2124538? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012120181123
2133048? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012120181123
2198374? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012120181123
2225406? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012120181123
2767960? ? ?? ? ?optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012120181123
2771478? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012120181123
2805432? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012120181123
2822670? ? ?? ? ?optgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
2823734? ? ?? ? ?optgcc_-funroll-loops_-O3_-fomit-frame-pointer2019012120181123
2826736? ? ?? ? ?optgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019012120181123
2828632? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
2829826? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
2831060? ? ?? ? ?optgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
2839170? ? ?? ? ?optgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019012120181123
2839908? ? ?? ? ?optgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019012120181123
2843896? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019012120181123
2849968? ? ?? ? ?optclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
2852422? ? ?? ? ?optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2856246? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019012120181123
2862952? ? ?? ? ?optclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
2863128? ? ?? ? ?optclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2863246? ? ?? ? ?optclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
2878912? ? ?? ? ?optclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2880152? ? ?? ? ?optgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019012120181123
2895704? ? ?? ? ?optgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019012120181123
2901174? ? ?? ? ?optgcc_-funroll-loops_-O2_-fomit-frame-pointer2019012120181123
2901680? ? ?? ? ?optgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019012120181123
2905104? ? ?? ? ?optgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
2906476? ? ?? ? ?optgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
2906928? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
2909004? ? ?? ? ?optgcc_-O3_-fomit-frame-pointer2019012120181123
2911194? ? ?? ? ?optgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
2911654? ? ?? ? ?optgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
2912792? ? ?? ? ?optgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019012120181123
2913208? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
2920852? ? ?? ? ?optgcc_-m64_-O3_-fomit-frame-pointer2019012120181123
2922142? ? ?? ? ?optgcc_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
2922464? ? ?? ? ?optgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019012120181123
2923164? ? ?? ? ?optgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
2933014? ? ?? ? ?optgcc_-march=k8_-O3_-fomit-frame-pointer2019012120181123
2948140? ? ?? ? ?optclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2956806? ? ?? ? ?optclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2996226? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012120181123
3001984? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019012120181123
3004892? ? ?? ? ?optgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019012120181123
3005746? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019012120181123
3043120? ? ?? ? ?optgcc_-march=k8_-O2_-fomit-frame-pointer2019012120181123
3047308? ? ?? ? ?optgcc_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
3047790? ? ?? ? ?optgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
3049718? ? ?? ? ?optgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
3049742? ? ?? ? ?optgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
3050532? ? ?? ? ?optgcc_-m64_-O2_-fomit-frame-pointer2019012120181123
3050732? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012120181123
3051056? ? ?? ? ?optgcc_-O2_-fomit-frame-pointer2019012120181123
3056164? ? ?? ? ?optgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019012120181123
3057740? ? ?? ? ?optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012120181123
3057950? ? ?? ? ?optgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019012120181123
3073552? ? ?? ? ?optgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019012120181123
3160314? ? ?? ? ?optgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019012120181123
3165142? ? ?? ? ?optgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
3174456? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
3179170? ? ?? ? ?optgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019012120181123
3180684? ? ?? ? ?optgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
3189784? ? ?? ? ?optgcc_-funroll-loops_-O_-fomit-frame-pointer2019012120181123
3196824? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
3275864? ? ?? ? ?optgcc_-m64_-O_-fomit-frame-pointer2019012120181123
3276642? ? ?? ? ?optgcc_-march=k8_-O_-fomit-frame-pointer2019012120181123
3281946? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012120181123
3283518? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012120181123
3283648? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019012120181123
3287104? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019012120181123
3288352? ? ?? ? ?optgcc_-O_-fomit-frame-pointer2019012120181123
3289330? ? ?? ? ?optgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019012120181123
3291306? ? ?? ? ?optgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
3293648? ? ?? ? ?optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012120181123
3296970? ? ?? ? ?optgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
3298520? ? ?? ? ?optgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
3304392? ? ?? ? ?optgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019012120181123
3305490? ? ?? ? ?optgcc_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
3306072? ? ?? ? ?optgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019012120181123
3314628? ? ?? ? ?optgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019012120181123
4277526? ? ?? ? ?optgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
4332276? ? ?? ? ?optgcc_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
4347756? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
4404170? ? ?? ? ?optgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
4550718? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
4552610? ? ?? ? ?optgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
4689656? ? ?? ? ?optgcc_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
4689808? ? ?? ? ?optgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
4783926? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
4794358? ? ?? ? ?optgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019012120181123
4919634? ? ?? ? ?optgcc_-march=nocona_-O_-fomit-frame-pointer2019012120181123
4994190? ? ?? ? ?optgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
289812252? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
289843038? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019012120181123
289925504? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
290125744? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
290220726? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012120181123
290255296? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
290406686? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
290439446? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019012120181123
291029536? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
291313918? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019012120181123
291315602? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019012120181123
293239912? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019012120181123
293549086? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019012120181123
293551978? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
293670860? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019012120181123
293686574? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
294335588? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
294789580? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
299114098? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019012120181123
299397896? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019012120181123
299430446? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012120181123
299606576? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019012120181123
301809056? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019012120181123
302117878? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019012120181123
302120450? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019012120181123
302129502? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019012120181123
302175652? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
302249478? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
302298088? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012120181123
302826856? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012120181123
302845968? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
303035218? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
303266332? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019012120181123
303325620? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019012120181123
303353108? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019012120181123
303419564? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012120181123
303444176? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019012120181123
303499008? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019012120181123
304390466? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019012120181123
304446524? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019012120181123
304722572? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
304735706? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012120181123
304739812? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019012120181123
304742420? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019012120181123
304803006? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
304808312? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
304830572? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019012120181123
304852166? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
304975152? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019012120181123
305381554? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012120181123
313588854? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
313594246? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
313969992? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019012120181123
313994924? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
334110002? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019012120181123
334162482? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
334449518? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
334533538? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019012120181123
334562300? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
334569434? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
334738070? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019012120181123
350981518? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019012120181123
351005448? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019012120181123
351217562? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012120181123
351285144? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019012120181123
351293510? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019012120181123
351296138? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012120181123
351323188? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019012120181123
351345310? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019012120181123
351398392? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012120181123
351497468? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
351518290? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019012120181123
351518634? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
351522406? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019012120181123
351524806? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019012120181123
351567146? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
351575940? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
380256348? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
380411472? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
383367078? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
383706452? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
385118120? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
385128870? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
386735822? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
386958784? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
427505142? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
427509696? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019012120181123
434868078? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
434874832? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019012120181123

Compiler output

Implementation: avx2
Security model: unknown
Compiler: cc
encrypt.c: encrypt.c:20: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:20:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:20:1: warning: (near initialization for 'V_B4Q_B4Q_B4Q_B4Q') [enabled by default]
encrypt.c: encrypt.c:20:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:20:1: warning: (near initialization for 'V_B4Q_B4Q_B4Q_B4Q') [enabled by default]
encrypt.c: encrypt.c:20:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:20:1: warning: (near initialization for 'V_B4Q_B4Q_B4Q_B4Q') [enabled by default]
encrypt.c: encrypt.c:21: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:21:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:21:1: warning: (near initialization for 'V_Q_Q_Q_Q') [enabled by default]
encrypt.c: encrypt.c:21:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:21:1: warning: (near initialization for 'V_Q_Q_Q_Q') [enabled by default]
encrypt.c: encrypt.c:21:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:21:1: warning: (near initialization for 'V_Q_Q_Q_Q') [enabled by default]
encrypt.c: encrypt.c:22: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:22:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:22:1: warning: (near initialization for 'V_Q2_Q2_Q2_Q2') [enabled by default]
encrypt.c: encrypt.c:22:1: warning: excess elements in scalar initializer [enabled by default]
encrypt.c: encrypt.c:22: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:64: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:65: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:66: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:67: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:79: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:80: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:81: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:82: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:83: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: 0x217fd20: v4i64 = X86ISD::VTRUNC 0x217fb50
try.c: 0x217fb50: v16i32 = vselect 0x2173aa0, 0x2101330, 0x217fa20
try.c: 0x2173aa0: v4i1 = X86ISD::PCMPGTM 0x216c240, 0x21020e0
try.c: 0x216c240: v4i64 = X86ISD::VBROADCAST 0x2102470
try.c: 0x2102470: i64,ch = load<LD8[%uglygep72]> 0x2065dd0, 0x2118af0, undef:i64
try.c: 0x2118af0: i64 = add 0x216d120, 0x211be40
try.c: 0x216d120: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2167970: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x211be40: i64 = shl 0x2167120, Constant:i8<3>
try.c: 0x2167120: i64,ch = CopyFromReg 0x2065dd0, Register:i64 %vreg50
try.c: 0x216d5e0: i64 = Register %vreg50
try.c: 0x2103e90: i8 = Constant<3>
try.c: 0x216a8b0: i64 = undef
try.c: 0x21020e0: v4i64,ch = CopyFromReg 0x2065dd0, Register:v4i64 %vreg13
try.c: 0x21162a0: v4i64 = Register %vreg13
try.c: 0x2101330: v16i32 = X86ISD::VBROADCAST 0x2167380
try.c: 0x2167380: i32,ch = load<LD4[ConstantPool]> 0x2065dd0, 0x217f690, undef:i64
try.c: 0x217f690: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x212c820: i64 = TargetConstantPool<i32 1> 0
try.c: 0x216a8b0: i64 = undef
try.c: 0x217fa20: 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: 0x217f8f0: i32 = Constant<0>
try.c: 0x217f8f0: i32 = Constant<0>
try.c: 0x217f8f0: i32 = Constant<0>
try.c: 0x217f8f0: 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:66: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:81: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:82: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:83: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:84: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:85: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: 0x1ff7210: v4i64 = X86ISD::VTRUNC 0x1ff7040
try.c: 0x1ff7040: v16i32 = vselect 0x1fe88e0, 0x1f81a00, 0x1ff6f10
try.c: 0x1fe88e0: v4i1 = X86ISD::PCMPGTM 0x1fe0b00, 0x1f827b0
try.c: 0x1fe0b00: v4i64 = X86ISD::VBROADCAST 0x1f82b40
try.c: 0x1f82b40: i64,ch = load<LD8[%uglygep72]> 0x1edadd0, 0x1fca1b0, undef:i64
try.c: 0x1fca1b0: i64 = add 0x1fe19e0, 0x1f73960
try.c: 0x1fe19e0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1f94830: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1f73960: i64 = shl 0x1f93fe0, Constant:i8<3>
try.c: 0x1f93fe0: i64,ch = CopyFromReg 0x1edadd0, Register:i64 %vreg50
try.c: 0x1fe1ea0: i64 = Register %vreg50
try.c: 0x1f87050: i8 = Constant<3>
try.c: 0x1fdf170: i64 = undef
try.c: 0x1f827b0: v4i64,ch = CopyFromReg 0x1edadd0, Register:v4i64 %vreg13
try.c: 0x1f9b5c0: v4i64 = Register %vreg13
try.c: 0x1f81a00: v16i32 = X86ISD::VBROADCAST 0x1f94240
try.c: 0x1f94240: i32,ch = load<LD4[ConstantPool]> 0x1edadd0, 0x1ff6b80, undef:i64
try.c: 0x1ff6b80: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1f8fc20: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1fdf170: i64 = undef
try.c: 0x1ff6f10: 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: 0x1ff6de0: i32 = Constant<0>
try.c: 0x1ff6de0: i32 = Constant<0>
try.c: 0x1ff6de0: i32 = Constant<0>
try.c: 0x1ff6de0: 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:64: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:67: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:66: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:64: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:67: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:66: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:64: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:67: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:66: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:66: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:66: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_titaniumccalite.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_titaniumccalite.a(fastrandombytes.o): in function `load_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccalite.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_titaniumccalite.a(fastrandombytes.o): in function `store_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccalite.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_titaniumccalite.a(fastrandombytes.o): in function `load_24':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_24'; crypto_kem_titaniumccalite.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_titaniumccalite.a(fastrandombytes.o): in function `load_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_32'; crypto_kem_titaniumccalite.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_titaniumccalite.a(fastrandombytes.o): in function `store_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_32'; crypto_kem_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `barrett_4q':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_4q'; crypto_kem_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `barrett_8q':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_8q'; crypto_kem_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `barrett_16q':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_16q'; crypto_kem_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `barrett_2q2':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_2q2'; crypto_kem_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `barrett_4q2':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_4q2'; crypto_kem_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `barrett_zq':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_zq'; crypto_kem_titaniumccalite.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_titaniumccalite.a(pack.o): in function `load_8':
try.c: pack.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccalite.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_titaniumccalite.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: 0x1072fb0: v4i64 = X86ISD::VTRUNC 0x1072de0
try.c: 0x1072de0: v16i32 = vselect 0x106fa20, 0xff53c0, 0x1072cb0
try.c: 0x106fa20: v4i1 = X86ISD::PCMPGTM 0x105b890, 0x1014530
try.c: 0x105b890: v4i64 = X86ISD::VBROADCAST 0x10148c0
try.c: 0x10148c0: i64,ch = load<LD8[%uglygep72]> 0xf55de0, 0x1058400, undef:i64
try.c: 0x1058400: i64 = add 0x105c770, 0xfd7730
try.c: 0x105c770: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1055690: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xfd7730: i64 = shl 0x1054e40, Constant:i8<3>
try.c: 0x1054e40: i64,ch = CopyFromReg 0xf55de0, Register:i64 %vreg50
try.c: 0x105cc30: i64 = Register %vreg50
try.c: 0xfd8d30: i8 = Constant<3>
try.c: 0x1059f00: i64 = undef
try.c: 0x1014530: v4i64,ch = CopyFromReg 0xf55de0, Register:v4i64 %vreg13
try.c: 0xfff4d0: v4i64 = Register %vreg13
try.c: 0xff53c0: v16i32 = X86ISD::VBROADCAST 0x10550a0
try.c: 0x10550a0: i32,ch = load<LD4[ConstantPool]> 0xf55de0, 0x1072920, undef:i64
try.c: 0x1072920: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xff0eb0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1059f00: i64 = undef
try.c: 0x1072cb0: 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: 0x1072b80: i32 = Constant<0>
try.c: 0x1072b80: i32 = Constant<0>
try.c: 0x1072b80: i32 = Constant<0>
try.c: 0x1072b80: 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: 0x13ce3b0: v4i64 = X86ISD::VTRUNC 0x13ce1e0
try.c: 0x13ce1e0: v16i32 = vselect 0x13cae20, 0x135c470, 0x13ce0b0
try.c: 0x13cae20: v4i1 = X86ISD::PCMPGTM 0x13b88b0, 0x135d220
try.c: 0x13b88b0: v4i64 = X86ISD::VBROADCAST 0x135d5b0
try.c: 0x135d5b0: i64,ch = load<LD8[%uglygep72]> 0x12b1dd0, 0x1333b70, undef:i64
try.c: 0x1333b70: i64 = add 0x13b9790, 0x134f4d0
try.c: 0x13b9790: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1371e70: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x134f4d0: i64 = shl 0x1371620, Constant:i8<3>
try.c: 0x1371620: i64,ch = CopyFromReg 0x12b1dd0, Register:i64 %vreg50
try.c: 0x13b9c50: i64 = Register %vreg50
try.c: 0x1350ad0: i8 = Constant<3>
try.c: 0x13b6f20: i64 = undef
try.c: 0x135d220: v4i64,ch = CopyFromReg 0x12b1dd0, Register:v4i64 %vreg13
try.c: 0x13634f0: v4i64 = Register %vreg13
try.c: 0x135c470: v16i32 = X86ISD::VBROADCAST 0x1371880
try.c: 0x1371880: i32,ch = load<LD4[ConstantPool]> 0x12b1dd0, 0x13cdd20, undef:i64
try.c: 0x13cdd20: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x134af90: i64 = TargetConstantPool<i32 1> 0
try.c: 0x13b6f20: i64 = undef
try.c: 0x13ce0b0: 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: 0x13cdf80: i32 = Constant<0>
try.c: 0x13cdf80: i32 = Constant<0>
try.c: 0x13cdf80: i32 = Constant<0>
try.c: 0x13cdf80: 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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `intt_core':
try.c: ...

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

Compiler output

Implementation: opt
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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1024_1536':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_8q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1536_768':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_16q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_512_1280':
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: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1024_1280':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_8q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1280_1280_inv':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_16q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_768_768_inv':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_8q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_512_768':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: ...

Number of similar (compiler,implementation) pairs: 26, namely:
CompilerImplementations
gcc -Os -fomit-frame-pointer opt
gcc -fno-schedule-insns -Os -fomit-frame-pointer 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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1024_1536':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_8q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1536_768':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_16q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_512_1280':
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: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1024_1280':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_8q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1280_1280_inv':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_16q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_768_768_inv':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_8q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_512_768':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1024_1536':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_8q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1536_768':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_16q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_512_1280':
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: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1024_1280':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_8q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_1280_1280_inv':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_16q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_768_768_inv':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_8q'
try.c: /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: crypto_kem_titaniumccalite.a(ntt.o): in function `ntt_butterfly_512_768':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
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_titaniumccalite.a(fastrandombytes.o): in function `load_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccalite.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_titaniumccalite.a(fastrandombytes.o): in function `store_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccalite.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_titaniumccalite.a(fastrandombytes.o): in function `load_24':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_24'; crypto_kem_titaniumccalite.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_titaniumccalite.a(fastrandombytes.o): in function `load_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_32'; crypto_kem_titaniumccalite.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_titaniumccalite.a(fastrandombytes.o): in function `store_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_32'; crypto_kem_titaniumccalite.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_titaniumccalite.a(pack.o): in function `load_8':
try.c: pack.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccalite.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_titaniumccalite.a(pack.o): in function `store_8':
try.c: pack.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccalite.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_titaniumccalite.a(pack.o): in function `load_24':
try.c: pack.c:(.text+0x...): multiple definition of `load_24'; crypto_kem_titaniumccalite.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_titaniumccalite.a(pack.o): in function `load_32':
try.c: pack.c:(.text+0x...): multiple definition of `load_32'; crypto_kem_titaniumccalite.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_titaniumccalite.a(pack.o): in function `store_32':
try.c: pack.c:(.text+0x...): multiple definition of `store_32'; crypto_kem_titaniumccalite.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_titaniumccalite.a(sampler.o): in function `load_8':
try.c: sampler.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccalite.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_titaniumccalite.a(sampler.o): in function `store_8':
try.c: sampler.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccalite.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_titaniumccalite.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: 0x1637aa0: v4i64 = X86ISD::VTRUNC 0x16378d0
try.c: 0x16378d0: v16i32 = vselect 0x1635520, 0x15d2840, 0x16377a0
try.c: 0x1635520: v4i1 = X86ISD::PCMPGTM 0x1621990, 0x15d35f0
try.c: 0x1621990: v4i64 = X86ISD::VBROADCAST 0x15d3980
try.c: 0x15d3980: i64,ch = load<LD8[%uglygep72]> 0x151cdd0, 0x15c8770, undef:i64
try.c: 0x15c8770: i64 = add 0x1622870, 0x159d300
try.c: 0x1622870: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x15c5ec0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x159d300: i64 = shl 0x15c5670, Constant:i8<3>
try.c: 0x15c5670: i64,ch = CopyFromReg 0x151cdd0, Register:i64 %vreg50
try.c: 0x1622d30: i64 = Register %vreg50
try.c: 0x15cfb30: i8 = Constant<3>
try.c: 0x1620000: i64 = undef
try.c: 0x15d35f0: v4i64,ch = CopyFromReg 0x151cdd0, Register:v4i64 %vreg13
try.c: 0x15bd420: v4i64 = Register %vreg13
try.c: 0x15d2840: v16i32 = X86ISD::VBROADCAST 0x15c58d0
try.c: 0x15c58d0: i32,ch = load<LD4[ConstantPool]> 0x151cdd0, 0x1637410, undef:i64
try.c: 0x1637410: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x15dec40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1620000: i64 = undef
try.c: 0x16377a0: 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: 0x1637670: i32 = Constant<0>
try.c: 0x1637670: i32 = Constant<0>
try.c: 0x1637670: i32 = Constant<0>
try.c: 0x1637670: 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: 0x1c38ef0: v4i64 = X86ISD::VTRUNC 0x1c38d20
try.c: 0x1c38d20: v16i32 = vselect 0x1c29840, 0x1bc3f60, 0x1c38bf0
try.c: 0x1c29840: v4i1 = X86ISD::PCMPGTM 0x1c227e0, 0x1bbbaa0
try.c: 0x1c227e0: v4i64 = X86ISD::VBROADCAST 0x1bbbe30
try.c: 0x1bbbe30: i64,ch = load<LD8[%uglygep72]> 0x1b1cdd0, 0x1bd7460, undef:i64
try.c: 0x1bd7460: i64 = add 0x1c236c0, 0x1bb74d0
try.c: 0x1c236c0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1c17c60: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1bb74d0: i64 = shl 0x1c17410, Constant:i8<3>
try.c: 0x1c17410: i64,ch = CopyFromReg 0x1b1cdd0, Register:i64 %vreg50
try.c: 0x1c23b80: i64 = Register %vreg50
try.c: 0x1b9fe40: i8 = Constant<3>
try.c: 0x1c20e50: i64 = undef
try.c: 0x1bbbaa0: v4i64,ch = CopyFromReg 0x1b1cdd0, Register:v4i64 %vreg13
try.c: 0x1be45b0: v4i64 = Register %vreg13
try.c: 0x1bc3f60: v16i32 = X86ISD::VBROADCAST 0x1c17670
try.c: 0x1c17670: i32,ch = load<LD4[ConstantPool]> 0x1b1cdd0, 0x1c38860, undef:i64
try.c: 0x1c38860: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1bbd860: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1c20e50: i64 = undef
try.c: 0x1c38bf0: 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: 0x1c38ac0: i32 = Constant<0>
try.c: 0x1c38ac0: i32 = Constant<0>
try.c: 0x1c38ac0: i32 = Constant<0>
try.c: 0x1c38ac0: 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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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: 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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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_titaniumccalite.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