Implementation notes: armeabi, novenablue, crypto_aead/norx6461v3

Computer: novenablue
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20200702
Operation: crypto_aead
Primitive: norx6461v3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
7523114028 4 034334 420 824neonclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
7757913996 4 032598 420 824neonclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
7758813996 4 032598 420 824neonclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
7760113996 4 034294 420 824neonclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
8572814536 4 032080 416 824neonclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
2076218736 8 027316 428 824refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
2077128736 8 029012 428 824refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
2083178736 8 027316 428 824refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
2102195476 8 023022 424 824refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
2139433522 8 014928 412 816refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042620200417
2212268744 8 029036 428 824refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020042620200417
30694855432 8 069736 420 816refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042620200417
30729550292 8 063044 420 816refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042620200417
31959538552 8 050716 420 816refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020042620200417

Compiler output

Implementation: neon
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
norx.c: In file included from norx.c:18:0:
norx.c: /usr/lib/gcc/arm-linux-gnueabihf/4.9/include/arm_neon.h:31:2: error: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
norx.c: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
norx.c: ^
norx.c: norx.c: In function 'norx_aead_encrypt':
norx.c: norx.c:389:11: error: unknown type name 'uint64x2_t'
norx.c: const uint64x2_t K0 = LOADU(key + 0);
norx.c: ^
norx.c: norx.c:390:11: error: unknown type name 'uint64x2_t'
norx.c: const uint64x2_t K1 = LOADU(key + 16);
norx.c: ^
norx.c: norx.c:391:5: error: unknown type name 'uint64x2_t'
norx.c: uint64x2_t S[8];
norx.c: ^
norx.c: norx.c:104:5: error: unknown type name 'uint64x2_t'
norx.c: uint64x2_t l0, l1, r0, r1; \
norx.c: ^
norx.c: norx.c:178:5: note: in expansion of macro 'G'
norx.c: G(S[0], S[1], S[2], S[3], S[4], S[5], S[6], S[7]); \
norx.c: ^
norx.c: norx.c:190:9: note: in expansion of macro 'F'
norx.c: F(S); \
norx.c: ^
norx.c: norx.c:295:5: note: in expansion of macro 'PERMUTE'
norx.c: PERMUTE(S); \
norx.c: ...

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

Compiler output

Implementation: xmm
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
norx.c: norx.c:461:11: error: unknown type name '__m128i'
norx.c: const __m128i K0 = LOADU(key + 0);
norx.c: ^
norx.c: norx.c:461:24: warning: implicit declaration of function '_mm_loadu_si128' is invalid in C99 [-Wimplicit-function-declaration]
norx.c: const __m128i K0 = LOADU(key + 0);
norx.c: ^
norx.c: norx.c:52:19: note: expanded from macro 'LOADU'
norx.c: #define LOADU(in) _mm_loadu_si128((__m128i*)(in))
norx.c: ^
norx.c: norx.c:461:24: error: use of undeclared identifier '__m128i'
norx.c: norx.c:52:36: note: expanded from macro 'LOADU'
norx.c: #define LOADU(in) _mm_loadu_si128((__m128i*)(in))
norx.c: ^
norx.c: norx.c:461:24: error: expected expression
norx.c: norx.c:52:44: note: expanded from macro 'LOADU'
norx.c: #define LOADU(in) _mm_loadu_si128((__m128i*)(in))
norx.c: ^
norx.c: norx.c:462:11: error: unknown type name '__m128i'
norx.c: const __m128i K1 = LOADU(key + 16);
norx.c: ^
norx.c: norx.c:462:24: error: use of undeclared identifier '__m128i'
norx.c: const __m128i K1 = LOADU(key + 16);
norx.c: ^
norx.c: norx.c:52:36: note: expanded from macro 'LOADU'
norx.c: #define LOADU(in) _mm_loadu_si128((__m128i*)(in))
norx.c: ...

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

Compiler output

Implementation: xmm
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
norx.c: norx.c:25:27: fatal error: immintrin.h: No such file or directory
norx.c: #include <immintrin.h>
norx.c: ^
norx.c: compilation terminated.

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

Compiler output

Implementation: ymm
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
norx.c: norx.c:391:11: error: unknown type name '__m256i'
norx.c: const __m256i K = LOADU(key);
norx.c: ^
norx.c: norx.c:391:23: warning: implicit declaration of function '_mm256_loadu_si256' is invalid in C99 [-Wimplicit-function-declaration]
norx.c: const __m256i K = LOADU(key);
norx.c: ^
norx.c: norx.c:53:19: note: expanded from macro 'LOADU'
norx.c: #define LOADU(in) _mm256_loadu_si256((__m256i*)(in))
norx.c: ^
norx.c: norx.c:391:23: error: use of undeclared identifier '__m256i'
norx.c: norx.c:53:39: note: expanded from macro 'LOADU'
norx.c: #define LOADU(in) _mm256_loadu_si256((__m256i*)(in))
norx.c: ^
norx.c: norx.c:391:23: error: expected expression
norx.c: norx.c:53:47: note: expanded from macro 'LOADU'
norx.c: #define LOADU(in) _mm256_loadu_si256((__m256i*)(in))
norx.c: ^
norx.c: norx.c:392:5: error: use of undeclared identifier '__m256i'
norx.c: __m256i A, B, C, D;
norx.c: ^
norx.c: norx.c:395:16: error: use of undeclared identifier 'A'
norx.c: INITIALISE(A, B, C, D, nonce, K);
norx.c: ^
norx.c: norx.c:293:5: note: expanded from macro 'INITIALISE'
norx.c: A = LOADU(NONCE); \
norx.c: ...

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

Namespace violations

Implementation: neon
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_version D

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

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
norx.o norx_absorb_data T
norx.o norx_aead_decrypt T
norx.o norx_aead_encrypt T
norx.o norx_decrypt_data T
norx.o norx_encrypt_data T
norx.o norx_verify_tag T
norx.o norx_version D

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