Implementation notes: amd64, oki, crypto_kem/titaniumccatoy

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_kem
Primitive: titaniumccatoy
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1447740? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012120181123
1489674? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012120181123
1505878? ? ?? ? ?avx2clang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
1518752? ? ?? ? ?avx2clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012120181123
1564480? ? ?? ? ?avx2gcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012120181123
1567346? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012120181123
1568706? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012120181123
1609428? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012120181123
1623886? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012120181123
1668828? ? ?? ? ?avx2gcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012120181123
1668904? ? ?? ? ?avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012120181123
2033046? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012120181123
2034376? ? ?? ? ?optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012120181123
2053312? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012120181123
2058752? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019012120181123
2063600? ? ?? ? ?optgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019012120181123
2065834? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019012120181123
2071516? ? ?? ? ?optgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
2071548? ? ?? ? ?optgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019012120181123
2073446? ? ?? ? ?optgcc_-funroll-loops_-O3_-fomit-frame-pointer2019012120181123
2090686? ? ?? ? ?optgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
2091564? ? ?? ? ?optgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019012120181123
2092130? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
2093314? ? ?? ? ?optclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2096250? ? ?? ? ?optclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2098320? ? ?? ? ?optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2099356? ? ?? ? ?optgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019012120181123
2100354? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
2102624? ? ?? ? ?optclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
2103064? ? ?? ? ?optclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
2104748? ? ?? ? ?optclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
2113550? ? ?? ? ?optgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019012120181123
2133050? ? ?? ? ?optgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019012120181123
2133866? ? ?? ? ?optgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019012120181123
2134180? ? ?? ? ?optgcc_-funroll-loops_-O2_-fomit-frame-pointer2019012120181123
2135094? ? ?? ? ?optgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
2135892? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
2137892? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
2138666? ? ?? ? ?optgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
2139306? ? ?? ? ?optgcc_-m64_-O3_-fomit-frame-pointer2019012120181123
2139796? ? ?? ? ?optgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019012120181123
2145604? ? ?? ? ?optclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2146882? ? ?? ? ?optgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
2147286? ? ?? ? ?optgcc_-O3_-fomit-frame-pointer2019012120181123
2159928? ? ?? ? ?optclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012120181123
2180500? ? ?? ? ?optgcc_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
2188360? ? ?? ? ?optgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019012120181123
2189788? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019012120181123
2190376? ? ?? ? ?optgcc_-march=k8_-O3_-fomit-frame-pointer2019012120181123
2191458? ? ?? ? ?optgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
2191916? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019012120181123
2192574? ? ?? ? ?optgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
2209652? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012120181123
2223720? ? ?? ? ?optgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019012120181123
2227884? ? ?? ? ?optgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
2228996? ? ?? ? ?optgcc_-march=k8_-O2_-fomit-frame-pointer2019012120181123
2229694? ? ?? ? ?optgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019012120181123
2229736? ? ?? ? ?optgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019012120181123
2230008? ? ?? ? ?optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012120181123
2230146? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012120181123
2236342? ? ?? ? ?optgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
2239664? ? ?? ? ?optgcc_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
2242392? ? ?? ? ?optgcc_-O2_-fomit-frame-pointer2019012120181123
2246138? ? ?? ? ?optgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
2253064? ? ?? ? ?optgcc_-m64_-O2_-fomit-frame-pointer2019012120181123
2290506? ? ?? ? ?optgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
2291686? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
2300766? ? ?? ? ?optgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019012120181123
2302360? ? ?? ? ?optgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
2302510? ? ?? ? ?optgcc_-funroll-loops_-O_-fomit-frame-pointer2019012120181123
2302558? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
2304480? ? ?? ? ?optgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019012120181123
2379818? ? ?? ? ?optgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012120181123
2384470? ? ?? ? ?optgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019012120181123
2385090? ? ?? ? ?optgcc_-march=k8_-O_-fomit-frame-pointer2019012120181123
2387834? ? ?? ? ?optgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
2390076? ? ?? ? ?optgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019012120181123
2392142? ? ?? ? ?optgcc_-m64_-O_-fomit-frame-pointer2019012120181123
2393566? ? ?? ? ?optgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019012120181123
2397360? ? ?? ? ?optgcc_-O_-fomit-frame-pointer2019012120181123
2398828? ? ?? ? ?optgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019012120181123
2400730? ? ?? ? ?optgcc_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
2400868? ? ?? ? ?optgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019012120181123
2401628? ? ?? ? ?optgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
2409448? ? ?? ? ?optgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019012120181123
2417132? ? ?? ? ?optgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
2446800? ? ?? ? ?optgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012120181123
2459344? ? ?? ? ?optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012120181123
3505034? ? ?? ? ?optgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
3560120? ? ?? ? ?optgcc_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
3579934? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
3582136? ? ?? ? ?optgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
3764520? ? ?? ? ?optgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
3791704? ? ?? ? ?optgcc_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
3828748? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
3846808? ? ?? ? ?optgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
3934900? ? ?? ? ?optgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
3961026? ? ?? ? ?optgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
3965080? ? ?? ? ?optgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019012120181123
3994276? ? ?? ? ?optgcc_-march=nocona_-O_-fomit-frame-pointer2019012120181123
157814270? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
157869582? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019012120181123
157894240? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
158214666? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019012120181123
158245354? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019012120181123
158254686? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
158266890? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019012120181123
158286218? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019012120181123
158502400? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
158910180? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019012120181123
158921370? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019012120181123
159531928? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019012120181123
159779390? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019012120181123
159789266? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
159819184? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
159957586? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019012120181123
160063542? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
160390762? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
162433710? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019012120181123
162676158? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019012120181123
162776212? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019012120181123
162876392? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019012120181123
163657332? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019012120181123
163986798? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019012120181123
163994572? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019012120181123
164066980? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019012120181123
164094930? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019012120181123
164113366? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019012120181123
164558388? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2019012120181123
164566574? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019012120181123
164574030? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019012120181123
164574082? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019012120181123
164622736? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019012120181123
164630310? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2019012120181123
164801444? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2019012120181123
164961014? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019012120181123
165243526? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
165250188? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019012120181123
165251902? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019012120181123
165271026? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019012120181123
165303568? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019012120181123
165326044? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019012120181123
165331238? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2019012120181123
165364750? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2019012120181123
165379038? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019012120181123
165739702? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019012120181123
167350456? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
167490722? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019012120181123
167619212? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
167782128? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
172742782? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019012120181123
172772078? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
173139306? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2019012120181123
173340672? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2019012120181123
181531120? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
181539514? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2019012120181123
181563392? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
181845788? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019012120181123
181856596? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019012120181123
181898776? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
181989948? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
190633784? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019012120181123
190641882? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019012120181123
190904728? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
190980376? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2019012120181123
190984344? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019012120181123
190988336? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019012120181123
190998622? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019012120181123
191000192? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2019012120181123
191005360? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019012120181123
191033850? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019012120181123
191034302? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019012120181123
191041132? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019012120181123
191045024? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2019012120181123
191069040? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019012120181123
191125788? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019012120181123
191133388? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019012120181123
205494864? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
205801958? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
208155344? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
208320758? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019012120181123
209039320? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
209081594? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
221471404? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
221545980? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019012120181123
231819546? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
231913794? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019012120181123
234901542? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019012120181123
234905142? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2019012120181123

Compiler output

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

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

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:68:8: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ^
encrypt.c: encrypt.c:69: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:70: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:71: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:83:8: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_encrypt_keypair' that is compiled without support for 'sse4.2'
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ^
encrypt.c: encrypt.c:84: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:85: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:86: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:87: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:65: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: 0x292b300: v4i64 = X86ISD::VTRUNC 0x292b130
try.c: 0x292b130: v16i32 = vselect 0x291a680, 0x28bd5a0, 0x292b000
try.c: 0x291a680: v4i1 = X86ISD::PCMPGTM 0x2912be0, 0x28a7fd0
try.c: 0x2912be0: v4i64 = X86ISD::VBROADCAST 0x28a8360
try.c: 0x28a8360: i64,ch = load<LD8[%uglygep72]> 0x280cdd0, 0x28c7630, undef:i64
try.c: 0x28c7630: i64 = add 0x2913ac0, 0x28b3300
try.c: 0x2913ac0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x28f8a60: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x28b3300: i64 = shl 0x28f8210, Constant:i8<3>
try.c: 0x28f8210: i64,ch = CopyFromReg 0x280cdd0, Register:i64 %vreg50
try.c: 0x2913f80: i64 = Register %vreg50
try.c: 0x28a28d0: i8 = Constant<3>
try.c: 0x2911250: i64 = undef
try.c: 0x28a7fd0: v4i64,ch = CopyFromReg 0x280cdd0, Register:v4i64 %vreg13
try.c: 0x28ad490: v4i64 = Register %vreg13
try.c: 0x28bd5a0: v16i32 = X86ISD::VBROADCAST 0x28f8470
try.c: 0x28f8470: i32,ch = load<LD4[ConstantPool]> 0x280cdd0, 0x292ac70, undef:i64
try.c: 0x292ac70: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x28aafb0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x2911250: i64 = undef
try.c: 0x292b000: 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: 0x292aed0: i32 = Constant<0>
try.c: 0x292aed0: i32 = Constant<0>
try.c: 0x292aed0: i32 = Constant<0>
try.c: 0x292aed0: 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:65: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:70: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:85: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:86: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:87: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:88: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:89: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:65: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: 0xe28fa0: v4i64 = X86ISD::VTRUNC 0xe28dd0
try.c: 0xe28dd0: v16i32 = vselect 0xe31c90, 0xda92b0, 0xe28ca0
try.c: 0xe31c90: v4i1 = X86ISD::PCMPGTM 0xe148b0, 0xdaa060
try.c: 0xe148b0: v4i64 = X86ISD::VBROADCAST 0xdaa3f0
try.c: 0xdaa3f0: i64,ch = load<LD8[%uglygep72]> 0xd0edb0, 0xdd0800, undef:i64
try.c: 0xdd0800: i64 = add 0xe15790, 0xdd1320
try.c: 0xe15790: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xdb9dc0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xdd1320: i64 = shl 0xdb9570, Constant:i8<3>
try.c: 0xdb9570: i64,ch = CopyFromReg 0xd0edb0, Register:i64 %vreg50
try.c: 0xe15c50: i64 = Register %vreg50
try.c: 0xdb4400: i8 = Constant<3>
try.c: 0xe12f20: i64 = undef
try.c: 0xdaa060: v4i64,ch = CopyFromReg 0xd0edb0, Register:v4i64 %vreg13
try.c: 0xdd5c50: v4i64 = Register %vreg13
try.c: 0xda92b0: v16i32 = X86ISD::VBROADCAST 0xdb97d0
try.c: 0xdb97d0: i32,ch = load<LD4[ConstantPool]> 0xd0edb0, 0xe28910, undef:i64
try.c: 0xe28910: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xdd3770: i64 = TargetConstantPool<i32 1> 0
try.c: 0xe12f20: i64 = undef
try.c: 0xe28ca0: 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: 0xe28b70: i32 = Constant<0>
try.c: 0xe28b70: i32 = Constant<0>
try.c: 0xe28b70: i32 = Constant<0>
try.c: 0xe28b70: 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:68: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:71: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:70: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:68: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:71: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:70: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:68: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:71: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:70: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:70: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:70: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:65: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:65: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_titaniumccatoy.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:65: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_titaniumccatoy.a(fastrandombytes.o): in function `load_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(fastrandombytes.o): in function `store_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(fastrandombytes.o): in function `load_24':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_24'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(fastrandombytes.o): in function `load_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_32'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(fastrandombytes.o): in function `store_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_32'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(ntt.o): in function `barrett_4q':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_4q'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(ntt.o): in function `barrett_8q':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_8q'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(ntt.o): in function `barrett_16q':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_16q'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(ntt.o): in function `barrett_2q2':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_2q2'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(ntt.o): in function `barrett_4q2':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_4q2'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(ntt.o): in function `barrett_zq':
try.c: ntt.c:(.text+0x...): multiple definition of `barrett_zq'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(pack.o): in function `load_8':
try.c: pack.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccatoy.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_titaniumccatoy.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:65: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: 0x1f9a2c0: v4i64 = X86ISD::VTRUNC 0x1f9a0f0
try.c: 0x1f9a0f0: v16i32 = vselect 0x1f8c040, 0x1f2b4b0, 0x1f99fc0
try.c: 0x1f8c040: v4i1 = X86ISD::PCMPGTM 0x1f843c0, 0x1f2c260
try.c: 0x1f843c0: v4i64 = X86ISD::VBROADCAST 0x1f2c5f0
try.c: 0x1f2c5f0: i64,ch = load<LD8[%uglygep72]> 0x1e7ddd0, 0x1f30420, undef:i64
try.c: 0x1f30420: i64 = add 0x1f852a0, 0x1f19670
try.c: 0x1f852a0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1f17440: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1f19670: i64 = shl 0x1f16bf0, Constant:i8<3>
try.c: 0x1f16bf0: i64,ch = CopyFromReg 0x1e7ddd0, Register:i64 %vreg50
try.c: 0x1f85760: i64 = Register %vreg50
try.c: 0x1f24f30: i8 = Constant<3>
try.c: 0x1f82220: i64 = undef
try.c: 0x1f2c260: v4i64,ch = CopyFromReg 0x1e7ddd0, Register:v4i64 %vreg13
try.c: 0x1f3c240: v4i64 = Register %vreg13
try.c: 0x1f2b4b0: v16i32 = X86ISD::VBROADCAST 0x1f16e50
try.c: 0x1f16e50: i32,ch = load<LD4[ConstantPool]> 0x1e7ddd0, 0x1f99c30, undef:i64
try.c: 0x1f99c30: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1f45660: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1f82220: i64 = undef
try.c: 0x1f99fc0: 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: 0x1f99e90: i32 = Constant<0>
try.c: 0x1f99e90: i32 = Constant<0>
try.c: 0x1f99e90: i32 = Constant<0>
try.c: 0x1f99e90: 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:65: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: 0x22f6140: v4i64 = X86ISD::VTRUNC 0x22f5f70
try.c: 0x22f5f70: v16i32 = vselect 0x22ef700, 0x22816e0, 0x22f5e40
try.c: 0x22ef700: v4i1 = X86ISD::PCMPGTM 0x22e0a40, 0x2279220
try.c: 0x22e0a40: v4i64 = X86ISD::VBROADCAST 0x22795b0
try.c: 0x22795b0: i64,ch = load<LD8[%uglygep72]> 0x21dadd0, 0x228ee00, undef:i64
try.c: 0x228ee00: i64 = add 0x22e1920, 0x222b400
try.c: 0x22e1920: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x22aceb0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x222b400: i64 = shl 0x22ac660, Constant:i8<3>
try.c: 0x22ac660: i64,ch = CopyFromReg 0x21dadd0, Register:i64 %vreg50
try.c: 0x22e1de0: i64 = Register %vreg50
try.c: 0x225d520: i8 = Constant<3>
try.c: 0x22df0b0: i64 = undef
try.c: 0x2279220: v4i64,ch = CopyFromReg 0x21dadd0, Register:v4i64 %vreg13
try.c: 0x22a3710: v4i64 = Register %vreg13
try.c: 0x22816e0: v16i32 = X86ISD::VBROADCAST 0x22ac8c0
try.c: 0x22ac8c0: i32,ch = load<LD4[ConstantPool]> 0x21dadd0, 0x22f5ab0, undef:i64
try.c: 0x22f5ab0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x22a1230: i64 = TargetConstantPool<i32 1> 0
try.c: 0x22df0b0: i64 = undef
try.c: 0x22f5e40: 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: 0x22f5d10: i32 = Constant<0>
try.c: 0x22f5d10: i32 = Constant<0>
try.c: 0x22f5d10: i32 = Constant<0>
try.c: 0x22f5d10: 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:65: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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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:65: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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_768_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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_1280_512':
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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_768_1024':
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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_1024_1024_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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_512_512_inv':
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: crypto_kem_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_512_256':
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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_1024_1280':
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:65: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:65: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:65: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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_768_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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_1280_512':
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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_768_1024':
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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_1024_1024_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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_512_512_inv':
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: crypto_kem_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_512_256':
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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_1024_1280':
try.c: ...
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:65: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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_768_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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_1280_512':
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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_768_1024':
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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_1024_1024_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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_512_512_inv':
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: crypto_kem_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_512_256':
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_titaniumccatoy.a(ntt.o): in function `ntt_butterfly_1024_1280':
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:65: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_titaniumccatoy.a(fastrandombytes.o): in function `load_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(fastrandombytes.o): in function `store_8':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(fastrandombytes.o): in function `load_24':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_24'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(fastrandombytes.o): in function `load_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `load_32'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(fastrandombytes.o): in function `store_32':
try.c: fastrandombytes.c:(.text+0x...): multiple definition of `store_32'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(pack.o): in function `load_8':
try.c: pack.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(pack.o): in function `store_8':
try.c: pack.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(pack.o): in function `load_24':
try.c: pack.c:(.text+0x...): multiple definition of `load_24'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(pack.o): in function `load_32':
try.c: pack.c:(.text+0x...): multiple definition of `load_32'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(pack.o): in function `store_32':
try.c: pack.c:(.text+0x...): multiple definition of `store_32'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(sampler.o): in function `load_8':
try.c: sampler.c:(.text+0x...): multiple definition of `load_8'; crypto_kem_titaniumccatoy.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_titaniumccatoy.a(sampler.o): in function `store_8':
try.c: sampler.c:(.text+0x...): multiple definition of `store_8'; crypto_kem_titaniumccatoy.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_titaniumccatoy.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:65: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: 0x22c3940: v4i64 = X86ISD::VTRUNC 0x22c3770
try.c: 0x22c3770: v16i32 = vselect 0x22dd060, 0x226ec00, 0x22c3640
try.c: 0x22dd060: v4i1 = X86ISD::PCMPGTM 0x22bf3a0, 0x2258120
try.c: 0x22bf3a0: v4i64 = X86ISD::VBROADCAST 0x22584b0
try.c: 0x22584b0: i64,ch = load<LD8[%uglygep72]> 0x21b8de0, 0x227c100, undef:i64
try.c: 0x227c100: i64 = add 0x22c0280, 0x22615f0
try.c: 0x22c0280: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x22a8130: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x22615f0: i64 = shl 0x22a78e0, Constant:i8<3>
try.c: 0x22a78e0: i64,ch = CopyFromReg 0x21b8de0, Register:i64 %vreg50
try.c: 0x22c0740: i64 = Register %vreg50
try.c: 0x224d790: i8 = Constant<3>
try.c: 0x22bda10: i64 = undef
try.c: 0x2258120: v4i64,ch = CopyFromReg 0x21b8de0, Register:v4i64 %vreg13
try.c: 0x2269420: v4i64 = Register %vreg13
try.c: 0x226ec00: v16i32 = X86ISD::VBROADCAST 0x22a7b40
try.c: 0x22a7b40: i32,ch = load<LD4[ConstantPool]> 0x21b8de0, 0x22c32b0, undef:i64
try.c: 0x22c32b0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2259ee0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x22bda10: i64 = undef
try.c: 0x22c3640: 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: 0x22c3510: i32 = Constant<0>
try.c: 0x22c3510: i32 = Constant<0>
try.c: 0x22c3510: i32 = Constant<0>
try.c: 0x22c3510: 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:65: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: 0x2493520: v4i64 = X86ISD::VTRUNC 0x2493350
try.c: 0x2493350: v16i32 = vselect 0x249d3e0, 0x2443d60, 0x2493220
try.c: 0x249d3e0: v4i1 = X86ISD::PCMPGTM 0x247fe40, 0x243bd70
try.c: 0x247fe40: v4i64 = X86ISD::VBROADCAST 0x243c100
try.c: 0x243c100: i64,ch = load<LD8[%uglygep72]> 0x2379de0, 0x245f550, undef:i64
try.c: 0x245f550: i64 = add 0x2480d20, 0x24122b0
try.c: 0x2480d20: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2473c70: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x24122b0: i64 = shl 0x2473420, Constant:i8<3>
try.c: 0x2473420: i64,ch = CopyFromReg 0x2379de0, Register:i64 %vreg50
try.c: 0x24811e0: i64 = Register %vreg50
try.c: 0x241fe10: i8 = Constant<3>
try.c: 0x247e4b0: i64 = undef
try.c: 0x243bd70: v4i64,ch = CopyFromReg 0x2379de0, Register:v4i64 %vreg13
try.c: 0x24184c0: v4i64 = Register %vreg13
try.c: 0x2443d60: v16i32 = X86ISD::VBROADCAST 0x2473680
try.c: 0x2473680: i32,ch = load<LD4[ConstantPool]> 0x2379de0, 0x2492e90, undef:i64
try.c: 0x2492e90: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x24143e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x247e4b0: i64 = undef
try.c: 0x2493220: 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: 0x24930f0: i32 = Constant<0>
try.c: 0x24930f0: i32 = Constant<0>
try.c: 0x24930f0: i32 = Constant<0>
try.c: 0x24930f0: 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:65: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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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_titaniumccatoy.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:65: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_titaniumccatoy.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_titaniumccatoy.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:65: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_titaniumccatoy.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_titaniumccatoy.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:65: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_titaniumccatoy.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_titaniumccatoy.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