Implementation notes: amd64, genji346, crypto_kem/titaniumccastd

Computer: genji346
Architecture: amd64
CPU ID: AuthenticAMD-00830f10-178bfbff
SUPERCOP version: 20191017
Operation: crypto_kem
Primitive: titaniumccastd
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
257558096920 0 0266044 880 1608avx2icc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102520191017
257616085307 0 0250539 832 1672avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
257918098808 0 0269286 896 1608avx2icc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102520191017
258304087462 0 0254699 832 1672avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
258482098808 0 0269286 896 1608avx2icc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102520191017
258500098808 0 0269286 896 1608avx2icc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102520191017
259134098808 0 0269286 896 1608avx2icc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102520191017
259244097312 0 0266460 880 1608avx2icc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102520191017
265002084975 0 0249939 832 1672avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
307306099200 0 0269604 880 1608avx2icc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102520191017
307538099200 0 0269604 880 1608avx2icc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102520191017
307588099200 0 0269604 880 1608avx2icc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102520191017
308564099200 0 0269604 880 1608avx2icc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102520191017
310544099648 0 0270068 880 1608avx2icc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102520191017
310646099648 0 0270068 880 1608avx2icc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102520191017
311066099648 0 0270068 880 1608avx2icc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102520191017
311094099648 0 0270068 880 1608avx2icc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102520191017
330822097976 0 0268886 896 1608avx2icc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102520191017
330918097976 0 0268886 896 1608avx2icc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102520191017
331244097976 0 0268886 896 1608avx2icc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102520191017
340092097976 0 0268886 896 1608avx2icc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102520191017
354636067611 0 0234145 824 1624optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
355034067611 0 0234145 824 1624optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
355682076034 0 0243249 824 1624optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
376786052000 0 0216231 816 1624optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
382084077435 0 0244571 832 1672optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
383234073588 0 0240785 824 1624optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
398482050158 0 0215547 832 1672optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
408518049985 0 0215123 832 1672optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
415652061344 0 0230476 880 1608opticc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102520191017
417348060984 0 0231428 880 1608opticc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102520191017
417590060984 0 0231428 880 1608opticc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102520191017
418978060984 0 0231428 880 1608opticc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102520191017
419174066600 0 0237028 880 1608opticc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102520191017
419332066600 0 0237028 880 1608opticc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102520191017
419568060984 0 0231428 880 1608opticc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102520191017
419754066600 0 0237028 880 1608opticc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102520191017
420794066600 0 0237028 880 1608opticc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102520191017
420958067472 0 0236660 880 1608opticc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102520191017
434406065720 0 0236484 880 1608opticc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102520191017
434726065720 0 0236484 880 1608opticc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102520191017
434752065720 0 0236484 880 1608opticc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102520191017
434836065720 0 0236484 880 1608opticc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102520191017
435966070016 0 0240396 880 1608opticc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102520191017
436066070016 0 0240396 880 1608opticc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102520191017
436280070016 0 0240396 880 1608opticc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102520191017
436692070016 0 0240396 880 1608opticc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102520191017
36831584061511 0 0228681 824 1624refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
37202262043275 0 0210025 824 1624refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
37258418043275 0 0210025 824 1624refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
37357670077711 0 0245113 824 1624refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
37441454032636 0 0197667 832 1672refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
37672880049017 0 0216179 832 1672refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
37898970034331 0 0198439 816 1624refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102520191017
38077296032527 0 0197779 832 1672refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102520191017
69941146043744 0 0214052 880 1608reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102520191017
69989604043744 0 0214052 880 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102520191017
70144338043744 0 0214052 880 1608reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102520191017
70172034044792 0 0213828 880 1608reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102520191017
70218544043744 0 0214052 880 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102520191017
88436714045304 0 0216017 888 1608reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102520191017
88495546045304 0 0216017 888 1608reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102520191017
88558368045304 0 0216017 888 1608reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102520191017
88713520045304 0 0216017 888 1608reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102520191017
92610482050928 0 0221225 888 1608reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102520191017
92674782050928 0 0221225 888 1608reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102520191017
92710296050928 0 0221225 888 1608reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102520191017
92891610050928 0 0221225 888 1608reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102520191017
94083664040568 0 0209564 880 1608reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102520191017
94254760040048 0 0210308 880 1608reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102520191017
94287142040048 0 0210308 880 1608reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102520191017
94309412040048 0 0210308 880 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102520191017
94360528040048 0 0210308 880 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102520191017

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