Implementation notes: amd64, luft, crypto_kem/mceliece6688128f

Computer: luft
Architecture: amd64
CPU ID: GenuineIntel-000306d4-bfebfbff
SUPERCOP version: 20200702
Operation: crypto_kem
Primitive: mceliece6688128f
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2787288132949 0 0229376 4096 0vecclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
2813772129269 0 0225280 4096 0vecclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
2842276111711 0 0208896 4096 0vecclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
2976656111711 0 0208896 4096 0vecclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
3417860192273 0 0290816 4096 0vecgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071320200702
401682072723 0 0167936 4096 0vecclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
575887682231 0 0180224 4096 0vecgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071320200702
585516876567 0 0172032 4096 0vecgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071320200702
603818067619 0 0163840 4096 0vecgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071320200702
454684092107666 0 0208896 4096 0refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071320200702
46618354848161 0 0147456 4096 0refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
47024534838348 0 0135168 4096 0refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
47037468438058 0 0135168 4096 0refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
47045077638348 0 0135168 4096 0refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
56907173617601 0 0110592 4096 0refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020071320200702
68739350022359 0 0118784 4096 0refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071320200702
69573527216948 0 0114688 4096 0refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071320200702
72916482013935 0 0110592 4096 0refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020071320200702

Compiler output

Implementation: avx
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
consts.S: consts.S:26:17: error: unexpected token in '.section' directive
consts.S: .section .rodata
consts.S: ^
consts.S: consts.S:28:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_avx_MASK0_0
consts.S: ^
consts.S: consts.S:29:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_avx_MASK0_1
consts.S: ^
consts.S: consts.S:30:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_avx_MASK1_0
consts.S: ^
consts.S: consts.S:31:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_avx_MASK1_1
consts.S: ^
consts.S: consts.S:32:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_avx_MASK2_0
consts.S: ^
consts.S: consts.S:33:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_avx_MASK2_1
consts.S: ^
consts.S: consts.S:34:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_avx_MASK3_0
consts.S: ^
consts.S: consts.S:35:1: error: unknown directive
consts.S: ...

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

Compiler output

Implementation: avx
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
bm.c: bm.c:136:44: error: '__builtin_ia32_vec_ext_v4di' needs target feature avx
bm.c: out[ (4*0 + k)*16 + i ] = (vec256_extract(buf[i], 0) >> (k*16)) & GFMASK;
bm.c: ^
bm.c: ./vec256.h:41:41: note: expanded from macro 'vec256_extract'
bm.c: #define vec256_extract(a,i) ((uint64_t) _mm256_extract_epi64((vec256) (a),(i)))
bm.c: ^
bm.c: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/11.0.3/include/avxintrin.h:2024:14: note: expanded from macro '_mm256_extract_epi64'
bm.c: (long long)__builtin_ia32_vec_ext_v4di((__v4di)(__m256i)(X), (int)(N))
bm.c: ^
bm.c: bm.c:137:44: error: '__builtin_ia32_vec_ext_v4di' needs target feature avx
bm.c: out[ (4*1 + k)*16 + i ] = (vec256_extract(buf[i], 1) >> (k*16)) & GFMASK;
bm.c: ^
bm.c: ./vec256.h:41:41: note: expanded from macro 'vec256_extract'
bm.c: #define vec256_extract(a,i) ((uint64_t) _mm256_extract_epi64((vec256) (a),(i)))
bm.c: ^
bm.c: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/11.0.3/include/avxintrin.h:2024:14: note: expanded from macro '_mm256_extract_epi64'
bm.c: (long long)__builtin_ia32_vec_ext_v4di((__v4di)(__m256i)(X), (int)(N))
bm.c: ^
bm.c: bm.c:138:44: error: '__builtin_ia32_vec_ext_v4di' needs target feature avx
bm.c: out[ (4*2 + k)*16 + i ] = (vec256_extract(buf[i], 2) >> (k*16)) & GFMASK;
bm.c: ^
bm.c: ./vec256.h:41:41: note: expanded from macro 'vec256_extract'
bm.c: #define vec256_extract(a,i) ((uint64_t) _mm256_extract_epi64((vec256) (a),(i)))
bm.c: ^
bm.c: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/11.0.3/include/avxintrin.h:2024:14: note: expanded from macro '_mm256_extract_epi64'
bm.c: ...

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

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: ld: warning: could not create compact unwind for _crypto_stream_aes256ctr_dolbeau_aesenc_int_xor: register 3 saved somewhere other than in frame
try.c: ld: warning: could not create compact unwind for _crypto_stream_aes256ctr_dolbeau_aesenc_int_xor: register 3 saved somewhere other than in frame
measure.c: ld: warning: could not create compact unwind for _crypto_stream_aes256ctr_dolbeau_aesenc_int_xor: register 3 saved somewhere other than in frame

Number of similar (compiler,implementation) pairs: 10, 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
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE vec
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE vec
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE vec
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE vec
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE vec

Compiler output

Implementation: sse
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
consts.S: consts.S:26:17: error: unexpected token in '.section' directive
consts.S: .section .rodata
consts.S: ^
consts.S: consts.S:28:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_sse_MASK0_0
consts.S: ^
consts.S: consts.S:29:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_sse_MASK0_1
consts.S: ^
consts.S: consts.S:30:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_sse_MASK1_0
consts.S: ^
consts.S: consts.S:31:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_sse_MASK1_1
consts.S: ^
consts.S: consts.S:32:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_sse_MASK2_0
consts.S: ^
consts.S: consts.S:33:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_sse_MASK2_1
consts.S: ^
consts.S: consts.S:34:1: error: unknown directive
consts.S: .hidden crypto_kem_mceliece6688128f_sse_MASK3_0
consts.S: ^
consts.S: consts.S:35:1: error: unknown directive
consts.S: ...

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