Implementation notes: amd64, scw1b63b1, crypto_sign/falcon1024dyn

Computer: scw1b63b1
Architecture: amd64
CPU ID: GenuineIntel-000506f1-0f8bfbff
SUPERCOP version: 20191017
Operation: crypto_sign
Primitive: falcon1024dyn
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3366810191126 0 0211822 824 1632fpugcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
3611852147502 0 0165239 800 1600fpuclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
3613134139019 0 0155991 800 1600fpuclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
3613606139019 0 0155991 800 1600fpuclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
379181079312 0 096249 792 1600fpuclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
3832720159124 0 0176719 800 1600fpuclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
383954286881 0 0105614 824 1632fpugcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
384658083697 0 0102230 824 1632fpugcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
428903471752 0 089262 816 1600fpugcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
44673342161832 0 0179695 800 1600refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
45367872142756 0 0160007 800 1600refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
45375902142756 0 0160007 800 1600refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
45416374151183 0 0169207 800 1600refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
45558410168191 0 0189006 824 1632refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
4572565086536 0 0103777 792 1600refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121720191017
4594415493914 0 0112734 824 1632refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
4689683091161 0 0109774 824 1632refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017
4784334478050 0 095734 816 1600refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121720191017

Test failure

Implementation: crypto_sign/falcon1024dyn/avx2
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111

Number of similar (compiler,implementation) pairs: 4, 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 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE avx2

Compiler output

Implementation: crypto_sign/falcon1024dyn/avx2
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rng.c: fatal error: error in backend: Do not know how to split this operator's operand!
rng.c:
rng.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
rng.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
rng.c: Target: x86_64-pc-linux-gnu
rng.c: Thread model: posix
rng.c: InstalledDir: /usr/bin
rng.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
rng.c: clang: note: diagnostic msg:
rng.c: ********************
rng.c:
rng.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
rng.c: Preprocessed source(s) and associated run script(s) are located at:
rng.c: clang: note: diagnostic msg: /tmp/rng-8703c7.c
rng.c: clang: note: diagnostic msg: /tmp/rng-8703c7.sh
rng.c: clang: note: diagnostic msg:
rng.c:
rng.c: ********************

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

Compiler output

Implementation: crypto_sign/falcon1024dyn/avx2
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rng.c: fatal error: error in backend: Do not know how to split this operator's operand!
rng.c:
rng.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
rng.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
rng.c: Target: x86_64-pc-linux-gnu
rng.c: Thread model: posix
rng.c: InstalledDir: /usr/bin
rng.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
rng.c: clang: note: diagnostic msg:
rng.c: ********************
rng.c:
rng.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
rng.c: Preprocessed source(s) and associated run script(s) are located at:
rng.c: clang: note: diagnostic msg: /tmp/rng-1f45da.c
rng.c: clang: note: diagnostic msg: /tmp/rng-1f45da.sh
rng.c: clang: note: diagnostic msg:
rng.c:
rng.c: ********************

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

Compiler output

Implementation: crypto_sign/falcon1024dyn/avx2
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rng.c: fatal error: error in backend: Do not know how to split this operator's operand!
rng.c:
rng.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
rng.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
rng.c: Target: x86_64-pc-linux-gnu
rng.c: Thread model: posix
rng.c: InstalledDir: /usr/bin
rng.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
rng.c: clang: note: diagnostic msg:
rng.c: ********************
rng.c:
rng.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
rng.c: Preprocessed source(s) and associated run script(s) are located at:
rng.c: clang: note: diagnostic msg: /tmp/rng-f6231d.c
rng.c: clang: note: diagnostic msg: /tmp/rng-f6231d.sh
rng.c: clang: note: diagnostic msg:
rng.c:
rng.c: ********************

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

Compiler output

Implementation: crypto_sign/falcon1024dyn/avx2
Compiler: clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rng.c: fatal error: error in backend: Do not know how to split this operator's operand!
rng.c:
rng.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
rng.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
rng.c: Target: x86_64-pc-linux-gnu
rng.c: Thread model: posix
rng.c: InstalledDir: /usr/bin
rng.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
rng.c: clang: note: diagnostic msg:
rng.c: ********************
rng.c:
rng.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
rng.c: Preprocessed source(s) and associated run script(s) are located at:
rng.c: clang: note: diagnostic msg: /tmp/rng-6296e0.c
rng.c: clang: note: diagnostic msg: /tmp/rng-6296e0.sh
rng.c: clang: note: diagnostic msg:
rng.c:
rng.c: ********************

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

Compiler output

Implementation: crypto_sign/falcon1024dyn/avx2
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rng.c: fatal error: error in backend: Do not know how to split this operator's operand!
rng.c:
rng.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
rng.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
rng.c: Target: x86_64-pc-linux-gnu
rng.c: Thread model: posix
rng.c: InstalledDir: /usr/bin
rng.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
rng.c: clang: note: diagnostic msg:
rng.c: ********************
rng.c:
rng.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
rng.c: Preprocessed source(s) and associated run script(s) are located at:
rng.c: clang: note: diagnostic msg: /tmp/rng-8c2365.c
rng.c: clang: note: diagnostic msg: /tmp/rng-8c2365.sh
rng.c: clang: note: diagnostic msg:
rng.c:
rng.c: ********************

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

Namespace violations

Implementation: crypto_sign/falcon1024dyn/fpu
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
codec.o falcon1024dyn_fpu_comp_decode T
codec.o falcon1024dyn_fpu_comp_encode T
codec.o falcon1024dyn_fpu_max_FG_bits R
codec.o falcon1024dyn_fpu_max_fg_bits R
codec.o falcon1024dyn_fpu_max_sig_bits R
codec.o falcon1024dyn_fpu_modq_decode T
codec.o falcon1024dyn_fpu_modq_encode T
codec.o falcon1024dyn_fpu_trim_i16_decode T
codec.o falcon1024dyn_fpu_trim_i16_encode T
codec.o falcon1024dyn_fpu_trim_i8_decode T
codec.o falcon1024dyn_fpu_trim_i8_encode T
common.o falcon1024dyn_fpu_hash_to_point_ct T
common.o falcon1024dyn_fpu_hash_to_point_vartime T
common.o falcon1024dyn_fpu_is_short T
common.o falcon1024dyn_fpu_is_short_half T
fft.o falcon1024dyn_fpu_FFT T
fft.o falcon1024dyn_fpu_iFFT T
fft.o falcon1024dyn_fpu_poly_LDL_fft T
fft.o falcon1024dyn_fpu_poly_LDLmv_fft T
fft.o falcon1024dyn_fpu_poly_add T
fft.o falcon1024dyn_fpu_poly_add_muladj_fft T
fft.o falcon1024dyn_fpu_poly_adj_fft T
fft.o falcon1024dyn_fpu_poly_div_autoadj_fft T
fft.o falcon1024dyn_fpu_poly_div_fft T
fft.o falcon1024dyn_fpu_poly_invnorm2_fft T
fft.o falcon1024dyn_fpu_poly_merge_fft T
fft.o falcon1024dyn_fpu_poly_mul_autoadj_fft T
fft.o falcon1024dyn_fpu_poly_mul_fft T
fft.o falcon1024dyn_fpu_poly_muladj_fft T
fft.o falcon1024dyn_fpu_poly_mulconst T
fft.o falcon1024dyn_fpu_poly_mulselfadj_fft T
fft.o falcon1024dyn_fpu_poly_neg T
fft.o falcon1024dyn_fpu_poly_split_fft T
fft.o falcon1024dyn_fpu_poly_sub T
fpr.o falcon1024dyn_fpu_fpr_gm_tab R
fpr.o falcon1024dyn_fpu_fpr_p2_tab R
keygen.o falcon1024dyn_fpu_keygen T
rng.o falcon1024dyn_fpu_get_seed T
rng.o falcon1024dyn_fpu_prng_get_bytes T
rng.o falcon1024dyn_fpu_prng_init T
rng.o falcon1024dyn_fpu_prng_refill T
shake.o falcon1024dyn_fpu_i_shake256_extract T
shake.o falcon1024dyn_fpu_i_shake256_flip T
shake.o falcon1024dyn_fpu_i_shake256_init T
shake.o falcon1024dyn_fpu_i_shake256_inject T
sign.o falcon1024dyn_fpu_expand_privkey T
sign.o falcon1024dyn_fpu_gaussian0_sampler T
sign.o falcon1024dyn_fpu_sampler T
sign.o falcon1024dyn_fpu_sign_dyn T
sign.o falcon1024dyn_fpu_sign_tree T
vrfy.o falcon1024dyn_fpu_complete_private T
vrfy.o falcon1024dyn_fpu_compute_public T
vrfy.o falcon1024dyn_fpu_count_nttzero T
vrfy.o falcon1024dyn_fpu_is_invertible T
vrfy.o falcon1024dyn_fpu_to_ntt_monty T
vrfy.o falcon1024dyn_fpu_verify_raw T
vrfy.o falcon1024dyn_fpu_verify_recover T

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

Namespace violations

Implementation: crypto_sign/falcon1024dyn/ref
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
codec.o falcon1024dyn_ref_comp_decode T
codec.o falcon1024dyn_ref_comp_encode T
codec.o falcon1024dyn_ref_max_FG_bits R
codec.o falcon1024dyn_ref_max_fg_bits R
codec.o falcon1024dyn_ref_max_sig_bits R
codec.o falcon1024dyn_ref_modq_decode T
codec.o falcon1024dyn_ref_modq_encode T
codec.o falcon1024dyn_ref_trim_i16_decode T
codec.o falcon1024dyn_ref_trim_i16_encode T
codec.o falcon1024dyn_ref_trim_i8_decode T
codec.o falcon1024dyn_ref_trim_i8_encode T
common.o falcon1024dyn_ref_hash_to_point_ct T
common.o falcon1024dyn_ref_hash_to_point_vartime T
common.o falcon1024dyn_ref_is_short T
common.o falcon1024dyn_ref_is_short_half T
fft.o falcon1024dyn_ref_FFT T
fft.o falcon1024dyn_ref_iFFT T
fft.o falcon1024dyn_ref_poly_LDL_fft T
fft.o falcon1024dyn_ref_poly_LDLmv_fft T
fft.o falcon1024dyn_ref_poly_add T
fft.o falcon1024dyn_ref_poly_add_muladj_fft T
fft.o falcon1024dyn_ref_poly_adj_fft T
fft.o falcon1024dyn_ref_poly_div_autoadj_fft T
fft.o falcon1024dyn_ref_poly_div_fft T
fft.o falcon1024dyn_ref_poly_invnorm2_fft T
fft.o falcon1024dyn_ref_poly_merge_fft T
fft.o falcon1024dyn_ref_poly_mul_autoadj_fft T
fft.o falcon1024dyn_ref_poly_mul_fft T
fft.o falcon1024dyn_ref_poly_muladj_fft T
fft.o falcon1024dyn_ref_poly_mulconst T
fft.o falcon1024dyn_ref_poly_mulselfadj_fft T
fft.o falcon1024dyn_ref_poly_neg T
fft.o falcon1024dyn_ref_poly_split_fft T
fft.o falcon1024dyn_ref_poly_sub T
fpr.o falcon1024dyn_ref_fpr_add T
fpr.o falcon1024dyn_ref_fpr_div T
fpr.o falcon1024dyn_ref_fpr_expm_p63 T
fpr.o falcon1024dyn_ref_fpr_gm_tab R
fpr.o falcon1024dyn_ref_fpr_mul T
fpr.o falcon1024dyn_ref_fpr_p2_tab R
fpr.o falcon1024dyn_ref_fpr_scaled T
fpr.o falcon1024dyn_ref_fpr_sqrt T
keygen.o falcon1024dyn_ref_keygen T
rng.o falcon1024dyn_ref_get_seed T
rng.o falcon1024dyn_ref_prng_get_bytes T
rng.o falcon1024dyn_ref_prng_init T
rng.o falcon1024dyn_ref_prng_refill T
shake.o falcon1024dyn_ref_i_shake256_extract T
shake.o falcon1024dyn_ref_i_shake256_flip T
shake.o falcon1024dyn_ref_i_shake256_init T
shake.o falcon1024dyn_ref_i_shake256_inject T
sign.o falcon1024dyn_ref_expand_privkey T
sign.o falcon1024dyn_ref_gaussian0_sampler T
sign.o falcon1024dyn_ref_sampler T
sign.o falcon1024dyn_ref_sign_dyn T
sign.o falcon1024dyn_ref_sign_tree T
vrfy.o falcon1024dyn_ref_complete_private T
vrfy.o falcon1024dyn_ref_compute_public T
vrfy.o falcon1024dyn_ref_count_nttzero T
vrfy.o falcon1024dyn_ref_is_invertible T
vrfy.o falcon1024dyn_ref_to_ntt_monty T
vrfy.o falcon1024dyn_ref_verify_raw T
vrfy.o falcon1024dyn_ref_verify_recover T

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
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
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
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref