Implementation notes: amd64, icelake, crypto_kem/hqc1281

Computer: icelake
Architecture: amd64
CPU ID: GenuineIntel-000706e5-bfebfbff
SUPERCOP version: 20200826
Operation: crypto_kem
Primitive: hqc1281
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
138931836003 52 069632 4096 0T:optopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
177653436174 186 01597440 57344 0T:refopt-local-bin-g++_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
220511916149 173 01576960 57344 0T:refopt-local-bin-g++_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
227471815802 52 045056 4096 0T:optopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
236769112072 52 040960 4096 0T:optopt-local-bin-gcc_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
248925912473 165 01568768 57344 0T:refopt-local-bin-g++_-march=icelake-client_-mtune=icelake-client_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826

Compiler output

Implementation: T:opt
Security model: timingleaks
Compiler: clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
gf2x_avx2.c: gf2x_avx2.c:87:19: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
gf2x_avx2.c: rightVector = __builtin_shuffle(
gf2x_avx2.c: ^
gf2x_avx2.c: gf2x_avx2.c:87:17: error: assigning to 'v8uint32' (vector of 8 'uint32_t' values) from incompatible type 'int'
gf2x_avx2.c: rightVector = __builtin_shuffle(
gf2x_avx2.c: ^ ~~~~~~~~~~~~~~~~~~
gf2x_avx2.c: gf2x_avx2.c:89:16: error: assigning to 'v8uint32' (vector of 8 'uint32_t' values) from incompatible type 'int'
gf2x_avx2.c: leftVector = __builtin_shuffle(
gf2x_avx2.c: ^ ~~~~~~~~~~~~~~~~~~
gf2x_avx2.c: 3 errors generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang++ -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rng.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL6DivRemERNS_4GF2XES1_RKS0_RKNS_11GF2XModulusE: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL6DivRemERNS_4GF2XES1_RKS0_RKNS_11GF2XModulusE.cold: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL3divERNS_4GF2XERKS0_RKNS_11GF2XModulusE: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL3divERNS_4GF2XERKS0_RKNS_11GF2XModulusE.cold: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __Z14_ntl_gpowermodP17_ntl_gbigint_bodyS0_S0_PS0_: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __Z14_ntl_gpowermodP17_ntl_gbigint_bodyS0_S0_PS0_.cold: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL28MultiThreadedGenGermainPrimeERNS_2ZZEll: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL28MultiThreadedGenGermainPrimeERNS_2ZZEll.cold: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL11RandomPrimeERNS_2ZZEll: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL11RandomPrimeERNS_2ZZEll.cold: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for ___gmpz_powm: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL13new_fft_notabEPlPKllRKNS_12FFTPrimeInfoEll: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL21new_fft_flipped_notabEPlPKllRKNS_12FFTPrimeInfoE: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL14new_ifft_notabEPlPKllRKNS_12FFTPrimeInfoEl: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL22new_ifft_flipped_notabEPlPKllRKNS_12FFTPrimeInfoE: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL7CompModERNS_5ZZ_pXERKS0_RKNS_13ZZ_pXArgumentERKNS_12ZZ_pXModulusE: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTL7CompModERNS_5ZZ_pXERKS0_RKNS_13ZZ_pXArgumentERKNS_12ZZ_pXModulusE.cold: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for __ZN3NTLL14fft_trunc_pairERNS_5ZZVecES1_llllllRKNS_2ZZElPNS_19RecursiveThreadPoolE.constprop.0: dwarf uses DW_CFA_GNU_args_size
try.cpp: ld: warning: could not create compact unwind for ___gmpn_binvert: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for ___gmpn_gcd_subdiv_step: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for _mpn_mu_div_qr2: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for ___gmpn_mu_divappr_q: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for ___gmpn_toom33_mul: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for ___gmpn_toom3_sqr: does not use RBP or RSP based frame
try.cpp: ld: warning: could not create compact unwind for ___gmpn_toom42_mul: does not use RBP or RSP based frame
try.cpp: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang++ -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang++ -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang++ -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: opt-local-bin-g++ -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.cpp: ld: warning: PIE disabled. Absolute addressing (perhaps -mdynamic-no-pic) not allowed in code signed PIE, but used in ___gmpn_divexact_1 from /Users/krovetz/tmp/supercop-20200826/supercop-data/icelake/amd64/lib/libgmp.a(dive_1.o). To fix this warning, don't compile with -mdynamic-no-pic or link with -Wl,-no_pie
try.cpp: ld: warning: PIE disabled. Absolute addressing (perhaps -mdynamic-no-pic) not allowed in code signed PIE, but used in ___gmpn_divexact_1 from /Users/krovetz/tmp/supercop-20200826/supercop-data/icelake/amd64/lib/libgmp.a(dive_1.o). To fix this warning, don't compile with -mdynamic-no-pic or link with -Wl,-no_pie
measure.cpp: ld: warning: PIE disabled. Absolute addressing (perhaps -mdynamic-no-pic) not allowed in code signed PIE, but used in ___gmpn_divexact_1 from /Users/krovetz/tmp/supercop-20200826/supercop-data/icelake/amd64/lib/libgmp.a(dive_1.o). To fix this warning, don't compile with -mdynamic-no-pic or link with -Wl,-no_pie

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
opt-local-bin-g++ -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
opt-local-bin-g++ -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
opt-local-bin-g++ -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref