Implementation notes: amd64, sectionthirtyone, crypto_aead/norx6461v1

Computer: sectionthirtyone
Architecture: amd64
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20191221
Operation: crypto_aead
Primitive: norx6461v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
248206962 0 026401 776 928ymmgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
248276962 0 023752 768 928ymmgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
277356925 0 025728 776 872ymmclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
282696925 0 025728 776 872ymmclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
286236286 0 021210 768 856ymmclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
304607797 0 024384 768 928ymmgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
307006925 0 025872 776 872ymmclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
313396565 0 021740 752 896ymmgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
3469910109 0 025276 752 896xmmgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
3483410350 0 027128 768 928xmmgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
3505610350 0 029793 776 928xmmgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
3507811015 0 029968 776 872xmmclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
3533610183 0 025258 768 856xmmclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
3563711015 0 029968 776 872xmmclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
3872911031 0 030112 776 872xmmclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
3987912653 0 029216 768 928xmmgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
432533909 8 019197 760 896refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
441185473 8 024464 784 872refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
442235473 8 024464 784 872refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
446605281 8 024448 784 872refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
494392986 8 018250 776 856refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
4987515067 0 033280 776 856xmmclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
535135708 8 023952 784 856refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020011020191221
6746515141 8 032112 784 928refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
6819314787 8 031512 784 928refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221
7052723022 8 042644 792 928refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020011020191221

Compiler output

Implementation: ymm
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
norx.c: norx.c:350:24: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'crypto_aead_norx6461v1_ymm_encrypt' that is compiled without support for 'avx'
norx.c: const __m256i K = LOADU(k + 0);
norx.c: ^
norx.c: norx.c:47:19: note: expanded from macro 'LOADU'
norx.c: #define LOADU(in) _mm256_loadu_si256((__m256i*)(in))
norx.c: ^
norx.c: norx.c:355:5: error: always_inline function '_mm256_castsi128_si256' requires target feature 'avx', but would be inlined into function 'crypto_aead_norx6461v1_ymm_encrypt' that is compiled without support for 'avx'
norx.c: INITIALIZE(A, B, C, D, N, K);
norx.c: ^
norx.c: norx.c:270:9: note: expanded from macro 'INITIALIZE'
norx.c: A = _mm256_castsi128_si256(N); \
norx.c: ^
norx.c: norx.c:355:5: error: '__builtin_ia32_insert128i256' needs target feature avx2
norx.c: norx.c:271:9: note: expanded from macro 'INITIALIZE'
norx.c: A = _mm256_inserti128_si256(A, _mm_set_epi64x(U1, U0), 1); \
norx.c: ^
norx.c: /usr/lib/llvm-8/lib/clang/8.0.0/include/avx2intrin.h:847:12: note: expanded from macro '_mm256_inserti128_si256'
norx.c: (__m256i)__builtin_ia32_insert128i256((__v4di)(__m256i)(V1), \
norx.c: ^
norx.c: norx.c:355:5: error: '__builtin_ia32_permdi256' needs target feature avx2
norx.c: norx.c:272:9: note: expanded from macro 'INITIALIZE'
norx.c: A = _mm256_permute4x64_epi64(A, _MM_SHUFFLE(3, 1, 0, 2)); \
norx.c: ^
norx.c: /usr/lib/llvm-8/lib/clang/8.0.0/include/avx2intrin.h:838:12: note: expanded from macro '_mm256_permute4x64_epi64'
norx.c: (__m256i)__builtin_ia32_permdi256((__v4di)(__m256i)(V), (int)(M))
norx.c: ...

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

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
norx.o norx_aead_decrypt T
norx.o norx_aead_encrypt T
norx.o norx_decrypt_msg T
norx.o norx_encrypt_msg T
norx.o norx_init T
norx.o norx_output_tag T
norx.o norx_process_header T
norx.o norx_process_trailer T
norx.o norx_verify_tag 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