Implementation notes: amd64, genji262, crypto_kem/titaniumccastd

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20191017
Operation: crypto_kem
Primitive: titaniumccastd
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
394127885363 0 0250923 816 1672avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
394506288632 0 0255827 816 1672avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
394955085714 0 0251523 816 1672avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
395826298808 0 0269822 880 1608avx2icc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
396165098808 0 0269822 880 1608avx2icc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
397012098808 0 0269822 880 1608avx2icc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
399179098808 0 0269822 880 1608avx2icc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
407360896920 0 0266580 864 1608avx2icc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
410491497312 0 0266996 864 1608avx2icc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
415461299200 0 0270140 864 1608avx2icc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
419940499200 0 0270140 864 1608avx2icc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
420730299648 0 0270604 864 1608avx2icc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
422085499200 0 0270140 864 1608avx2icc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
424536299648 0 0270604 864 1608avx2icc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
426203899648 0 0270604 864 1608avx2icc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
427189499200 0 0270140 864 1608avx2icc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
427455699648 0 0270604 864 1608avx2icc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
451783252000 0 0216767 800 1624optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
455142672004 0 0239147 816 1672optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
458759467611 0 0234681 808 1624optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
462631467611 0 0234681 808 1624optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
466336276034 0 0243721 808 1624optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
470443673588 0 0241321 808 1624optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
476698250158 0 0216147 816 1672optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
483582049981 0 0215723 816 1672optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
491198461344 0 0231012 864 1608opticc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
494274060984 0 0231900 864 1608opticc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
496106660984 0 0231900 864 1608opticc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
498108660984 0 0231900 864 1608opticc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
501265660984 0 0231900 864 1608opticc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
502933266600 0 0237564 864 1608opticc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
504807666600 0 0237564 864 1608opticc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
507577466600 0 0237564 864 1608opticc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
510411067472 0 0237132 864 1608opticc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
515057466600 0 0237564 864 1608opticc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
527148697976 0 0269422 880 1608avx2icc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
527260897976 0 0269422 880 1608avx2icc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
529080297976 0 0269422 880 1608avx2icc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
539946097976 0 0269422 880 1608avx2icc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
551826070016 0 0240932 864 1608opticc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
552437670016 0 0240932 864 1608opticc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
552472870016 0 0240932 864 1608opticc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
553702665720 0 0237020 864 1608opticc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
554397865720 0 0237020 864 1608opticc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
555563870016 0 0240932 864 1608opticc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
555893865720 0 0237020 864 1608opticc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
560533665720 0 0237020 864 1608opticc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
37806696461511 0 0229217 808 1624refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
38144565846073 0 0213267 816 1672refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
38281562034331 0 0198975 800 1624refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
38350072232527 0 0198379 816 1672refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
39248730443275 0 0210561 808 1624refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
39278230277711 0 0245649 808 1624refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
39311232443275 0 0210561 808 1624refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
50585418432639 0 0198267 816 1672refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
70627321643744 0 0214588 864 1608reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
70718786644792 0 0214364 864 1608reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
70771588843744 0 0214588 864 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
70788095443744 0 0214588 864 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
71009866443744 0 0214588 864 1608reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
93859997040048 0 0210844 864 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
93862529240048 0 0210844 864 1608reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
93877467240048 0 0210844 864 1608reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
94117014240048 0 0210844 864 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
94200959640568 0 0210100 864 1608reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
143289799450928 0 0221761 872 1608reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
143450351050928 0 0221761 872 1608reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
143483166250928 0 0221761 872 1608reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
143630251645304 0 0216553 872 1608reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
143809142445304 0 0216553 872 1608reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
143843673650928 0 0221761 872 1608reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
144106406445304 0 0216553 872 1608reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
144244599445304 0 0216553 872 1608reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017

Test failure

Implementation: avx2
Security model: unknown
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer avx2
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer avx2
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer avx2
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer avx2
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer avx2
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer avx2
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer opt
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer opt
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer opt
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer opt
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer opt
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer opt
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:18:
encrypt.c: In file included from /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/x86intrin.h:27:
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:30:51: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.c: __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.c: ^
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:38:51: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.c: __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.c: ^
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:41:10: error: use of unknown builtin '__builtin_ia32_bsrsi' [-Wimplicit-function-declaration]
encrypt.c: return __builtin_ia32_bsrsi (__X);
encrypt.c: ^
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:46:51: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.c: __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.c: ^
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:62:51: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.c: __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.c: ^
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:69:51: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.c: __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.c: ^
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:76:51: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.c: __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.c: ^
encrypt.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/ia32intrin.h:91:51: warning: unknown attribute '__artificial__' ignored [-Wunknown-attributes]
encrypt.c: __attribute__((__gnu_inline__, __always_inline__, __artificial__))
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx2

Compiler output

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

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE opt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE opt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE opt
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref

Compiler output

Implementation: avx2
Security model: unknown
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: 63 | bb = b + (i / 8) * Q_BITS;
pack.c: | ^
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `sampler_zq':
try.c: sampler.c:(.text+0x...): undefined reference to `load_24'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/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: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
pack.c: pack.c(63): warning #2332: a value of type "const unsigned char *" cannot be assigned to an entity of type "unsigned char *" (dropping qualifiers)
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
pack.c:

Number of similar (compiler,implementation) pairs: 72, namely:
CompilerImplementations
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer avx2
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer avx2
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer avx2
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer avx2
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer avx2
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer avx2
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer avx2
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer avx2
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer avx2
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer avx2
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer avx2
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer avx2
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer avx2
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer avx2
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer avx2
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer avx2
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer avx2
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer avx2
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer avx2
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer avx2
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer avx2
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer avx2
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer avx2
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer avx2
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer opt
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer opt
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer opt
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer opt
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer opt
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer opt
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer opt
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer opt
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer opt
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer opt
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer opt
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer opt
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer opt
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer opt
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer opt
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer opt
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer opt
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer opt
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer opt
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer opt
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer opt
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer opt
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer opt
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer opt
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer ref
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer ref
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer ref
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer ref
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer ref
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer ref
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer ref
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer ref
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer ref
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer ref
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer ref
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer ref
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer ref
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer ref
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer ref

Compiler output

Implementation: opt
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
pack.c: pack.c:63:6: warning: assigning to 'unsigned char *' from 'const unsigned char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^ ~~~~~~~~~~~~~~~~~~~~
pack.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE opt
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref

Compiler output

Implementation: opt
Security model: unknown
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: 63 | bb = b + (i / 8) * Q_BITS;
pack.c: | ^
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt_keypair':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: encrypt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(encrypt.o): in function `crypto_encrypt_open':
try.c: encrypt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `fastrandombytes':
try.c: fastrandombytes.c:(.text+0x...): undefined reference to `load_32'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: fastrandombytes.c:(.text+0x...): undefined reference to `store_32'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `ntt_2':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q2'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: ntt.c:(.text+0x...): undefined reference to `barrett_4q'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `ntt_core':
try.c: ntt.c:(.text+0x...): undefined reference to `barrett_2q2'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(ntt.o): in function `intt_core':
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE opt

Compiler output

Implementation: ref
Security model: unknown
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:63:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: 63 | bb = b + (i / 8) * Q_BITS;
pack.c: | ^
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(fastrandombytes.o): in function `fastrandombytes':
try.c: fastrandombytes.c:(.text+0x...): undefined reference to `load_32'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: fastrandombytes.c:(.text+0x...): undefined reference to `store_32'
try.c: /software/compilers/gcc/gcc-9.2.0-full+isl+binutils/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: crypto_kem_titaniumccastd.a(sampler.o): in function `sampler_zq':
try.c: sampler.c:(.text+0x...): undefined reference to `load_24'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref