Implementation notes: amd64, bolero, crypto_aead/hs1sivlov2
Computer: bolero
Microarchitecture: amd64; Broadwell+AES (406f1)
Architecture: amd64
CPU ID: GenuineIntel-000406f1-1fc9cbf5
SUPERCOP version: 20240808
Operation: crypto_aead
Primitive: hs1sivlov2
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
4960 | 10786 0 0 | 30300 832 856 | T:faster | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
5032 | 9723 0 0 | 29108 832 856 | T:dolbeau/amd64-avx2 | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
5032 | 8980 0 0 | 29902 792 928 | T:faster | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
5044 | 13445 0 0 | 36564 832 872 | T:dolbeau/amd64-avx2 | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
5052 | 13909 0 0 | 37340 832 872 | T:dolbeau/amd64-avx2 | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
5084 | 9309 0 0 | 29438 824 920 | T:dolbeau/amd64-avx2 | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
5184 | 7586 0 0 | 27934 824 920 | T:faster | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
5272 | 8029 0 0 | 26849 768 896 | T:faster | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
5320 | 8646 0 0 | 29069 784 928 | T:faster | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
7060 | 8099 0 0 | 27460 832 856 | T:dolbeau/amd64-sse | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
7212 | 18140 0 0 | 41470 792 928 | T:dolbeau/amd64-sse | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
7236 | 10233 0 0 | 31550 792 928 | T:dolbeau/amd64-sse | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
7356 | 11517 0 0 | 34676 832 872 | T:dolbeau/amd64-sse | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
7360 | 11997 0 0 | 35468 832 872 | T:dolbeau/amd64-sse | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
7420 | 7810 0 0 | 27966 824 920 | T:dolbeau/amd64-sse | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
7768 | 10291 0 0 | 31045 784 928 | T:dolbeau/amd64-sse | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
15592 | 8343 0 0 | 31988 832 872 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
15708 | 7141 0 0 | 29132 832 856 | T:ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
22214 | 7655 0 0 | 30988 832 872 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
22944 | 5916 0 0 | 27246 792 928 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
25344 | 4617 0 0 | 24100 832 856 | T:ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
26344 | 3919 0 0 | 24246 824 920 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
31608 | 6380 0 0 | 29766 792 928 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
39620 | 6201 0 0 | 27086 792 928 | T:ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
Test failure
error 111
crypto_aead_decrypt returns nonzero
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Test failure
error 111
Number of similar (implementation,compiler) pairs: 2, namely:
Implementation | Compiler |
T:faster | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:faster | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Test failure
error 111
crypto_aead_decrypt allows trivial forgeries
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: encrypt.c:493:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: encrypt.c:493:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: 6 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: encrypt.c:493:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: encrypt.c:493:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: 6 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: encrypt.c:493:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: encrypt.c:493:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: 6 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx2 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: encrypt.c:493:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: encrypt.c:493:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: 6 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c:90:2: error: "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: encrypt.c:493:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: encrypt.c:493:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: 6 warnings and 1 error generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx2 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c:85: warning: "_bswap64" redefined
encrypt.c: 85 | #define _bswap64(a) __builtin_bswap64(a)
encrypt.c: |
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/x86gprintrin.h:33,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:27,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/ia32intrin.h:273: note: this is the location of the previous definition
encrypt.c: 273 | #define _bswap64(a) __bswapq(a)
encrypt.c: |
encrypt.c: encrypt.c:86: warning: "_bswap" redefined
encrypt.c: 86 | #define _bswap(a) __builtin_bswap(a)
encrypt.c: |
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/x86gprintrin.h:33,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:27,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/ia32intrin.h:307: note: this is the location of the previous definition
encrypt.c: 307 | #define _bswap(a) __bswapd(a)
encrypt.c: |
encrypt.c: In file included from encrypt.c:194:
encrypt.c: encrypt.c: In function 'chacha_noxor128':
encrypt.c: c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: 71 | __m128i t_15;
encrypt.c: | ^~~~
encrypt.c: c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: 70 | __m128i t_14;
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/amd64-avx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/amd64-avx2 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/amd64-avx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
encrypt.c: encrypt.c:90:2: error: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: encrypt.c:317:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/avx512fintrin.h:9318:51: note: previous definition is here
encrypt.c: static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_add_epi64(__m512i __W) {
encrypt.c: ^
encrypt.c: encrypt.c:330:21: error: invalid input size for constraint 'Yz'
encrypt.c: : [a] "Yz" (a)
encrypt.c: ^
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx512 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c:90:2: error: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: encrypt.c:317:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/avx512fintrin.h:9318:51: note: previous definition is here
encrypt.c: static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_add_epi64(__m512i __W) {
encrypt.c: ^
encrypt.c: encrypt.c:330:21: error: invalid input size for constraint 'Yz'
encrypt.c: : [a] "Yz" (a)
encrypt.c: ^
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx512 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c:90:2: error: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: encrypt.c:317:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/avx512fintrin.h:9318:51: note: previous definition is here
encrypt.c: static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_add_epi64(__m512i __W) {
encrypt.c: ^
encrypt.c: encrypt.c:330:21: error: invalid input size for constraint 'Yz'
encrypt.c: : [a] "Yz" (a)
encrypt.c: ^
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx512 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c:90:2: error: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: encrypt.c:317:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/avx512fintrin.h:9318:51: note: previous definition is here
encrypt.c: static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_add_epi64(__m512i __W) {
encrypt.c: ^
encrypt.c: encrypt.c:330:21: error: invalid input size for constraint 'Yz'
encrypt.c: : [a] "Yz" (a)
encrypt.c: ^
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx512 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c:90:2: error: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: encrypt.c:317:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^
encrypt.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/avx512fintrin.h:9318:51: note: previous definition is here
encrypt.c: static __inline__ long long __DEFAULT_FN_ATTRS512 _mm512_reduce_add_epi64(__m512i __W) {
encrypt.c: ^
encrypt.c: encrypt.c:330:21: error: invalid input size for constraint 'Yz'
encrypt.c: : [a] "Yz" (a)
encrypt.c: ^
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx512 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c:85: warning: "_bswap64" redefined
encrypt.c: 85 | #define _bswap64(a) __builtin_bswap64(a)
encrypt.c: |
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/x86gprintrin.h:33,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:27,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/ia32intrin.h:273: note: this is the location of the previous definition
encrypt.c: 273 | #define _bswap64(a) __bswapq(a)
encrypt.c: |
encrypt.c: encrypt.c:86: warning: "_bswap" redefined
encrypt.c: 86 | #define _bswap(a) __builtin_bswap(a)
encrypt.c: |
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/x86gprintrin.h:33,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:27,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/ia32intrin.h:307: note: this is the location of the previous definition
encrypt.c: 307 | #define _bswap(a) __bswapd(a)
encrypt.c: |
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: 90 | #error "This code requires AVX512F to work"
encrypt.c: | ^~~~~
encrypt.c: In file included from encrypt.c:194:
encrypt.c: encrypt.c: In function 'chacha_noxor128':
encrypt.c: c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: 71 | __m128i t_15;
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx512 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/amd64-avx512 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/amd64-avx512 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/amd64-avx512 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
encrypt.c: In file included from encrypt.c:190:
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: encrypt.c:502:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: encrypt.c:502:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: 6 warnings generated.
Number of similar (implementation,compiler) pairs: 2, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:dolbeau/amd64-sse | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: In file included from encrypt.c:190:
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: encrypt.c:502:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: encrypt.c:502:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: 6 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: In file included from encrypt.c:190:
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: encrypt.c:502:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: encrypt.c:502:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: 6 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: In file included from encrypt.c:190:
encrypt.c: ./c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: __m128i t_7;
encrypt.c: ^
encrypt.c: ./c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: __m128i t_6;
encrypt.c: ^
encrypt.c: ./c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: __m128i t_14;
encrypt.c: ^
encrypt.c: ./c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: __m128i t_15;
encrypt.c: ^
encrypt.c: encrypt.c:502:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: encrypt.c:502:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: ^
encrypt.c: In file included from encrypt.c:190:
encrypt.c: ./c128.h:99:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor128' that is compiled without support for 'ssse3'
encrypt.c: VEC4_QUARTERROUND( 0, 4, 8,12);
encrypt.c: ^
encrypt.c: ./c128.h:17:36: note: expanded from macro 'VEC4_QUARTERROUND'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: In file included from encrypt.c:190:
encrypt.c: encrypt.c: In function 'chacha_noxor128':
encrypt.c: c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: 71 | __m128i t_15;
encrypt.c: | ^~~~
encrypt.c: c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: 70 | __m128i t_14;
encrypt.c: | ^~~~
encrypt.c: c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: 63 | __m128i t_7;
encrypt.c: | ^~~
encrypt.c: c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: 62 | __m128i t_6;
encrypt.c: | ^~~
encrypt.c: encrypt.c: In function 'hs1_data':
encrypt.c: encrypt.c:502:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: 502 | unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: | ^~~~
encrypt.c: encrypt.c:502:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: 502 | unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: | ^~~~
encrypt.c: encrypt.c:101:66: warning: array subscript 1 is outside array bounds of 'uint64_t[1]' {aka 'long unsigned int[1]'} [-Warray-bounds]
encrypt.c: 101 | static inline void write64le(uint64_t *p, const uint64_t w) { *p = w; }
encrypt.c: | ~~~^~~
encrypt.c: encrypt.c:496:33: note: while referencing 'h'
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
encrypt.c: In file included from encrypt.c:190:
encrypt.c: encrypt.c: In function 'chacha_noxor128':
encrypt.c: c128.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: 71 | __m128i t_15;
encrypt.c: | ^~~~
encrypt.c: c128.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: 70 | __m128i t_14;
encrypt.c: | ^~~~
encrypt.c: c128.h:63:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c: 63 | __m128i t_7;
encrypt.c: | ^~~
encrypt.c: c128.h:62:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c: 62 | __m128i t_6;
encrypt.c: | ^~~
encrypt.c: encrypt.c: In function 'hs1_data':
encrypt.c: encrypt.c:502:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: 502 | unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: | ^~~~
encrypt.c: encrypt.c:502:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: 502 | unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: | ^~~~
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
hs1.c: In function 'xor16',
hs1.c: inlined from 'xor_copy_chacha_key' at hs1.c:886:9,
hs1.c: inlined from 'hs1_gen_siv' at hs1.c:973:5:
hs1.c: hs1.c:58:54: warning: 'chacha_state' is used uninitialized [-Wuninitialized]
hs1.c: 58 | static void xor16 (void *d, const void *s) { *(T *)d ^= *(T *)s; }
hs1.c: | ^~
hs1.c: hs1.c: In function 'hs1_gen_siv':
hs1.c: hs1.c:936:50: note: 'chacha_state' declared here
hs1.c: 936 | __attribute__ ((aligned(32))) chacha_state_t chacha_state;
hs1.c: | ^~~~~~~~~~~~
hs1.c: In function 'xor16',
hs1.c: inlined from 'xor_copy_chacha_key' at hs1.c:886:9,
hs1.c: inlined from 'hs1siv_decrypt.part.0' at hs1.c:1023:5:
hs1.c: hs1.c:58:54: warning: 'chacha_state' is used uninitialized [-Wuninitialized]
hs1.c: 58 | static void xor16 (void *d, const void *s) { *(T *)d ^= *(T *)s; }
hs1.c: | ^~
hs1.c: hs1.c: In function 'hs1siv_decrypt.part.0':
hs1.c: hs1.c:1011:50: note: 'chacha_state' declared here
hs1.c: 1011 | __attribute__ ((aligned(32))) chacha_state_t chacha_state;
hs1.c: | ^~~~~~~~~~~~
hs1.c: In function 'xor16',
hs1.c: inlined from 'xor_copy_chacha_key' at hs1.c:886:9,
hs1.c: inlined from 'hs1' at hs1.c:1062:5:
hs1.c: hs1.c:58:54: warning: 'chacha_state' is used uninitialized [-Wuninitialized]
hs1.c: 58 | static void xor16 (void *d, const void *s) { *(T *)d ^= *(T *)s; }
hs1.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:faster | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
encrypt.c: encrypt.c:326:14: warning: unused variable 'k' [-Wunused-variable]
encrypt.c: unsigned k = (HS1_SIV_HASH_RNDS > 4 ? 1 : 2);
encrypt.c: ^
encrypt.c: 1 warning generated.
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c: In function 'hs1_hash':
encrypt.c: encrypt.c:326:14: warning: unused variable 'k' [-Wunused-variable]
encrypt.c: 326 | unsigned k = (HS1_SIV_HASH_RNDS > 4 ? 1 : 2);
encrypt.c: | ^
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
chacha_moon.o _chacha_blocks T
chacha_moon.o chacha_blocks T
hs1.o hash_finalize T
hs1.o hash_step T
hs1.o hs1 T
hs1.o hs1_bzero T
hs1.o hs1_gen_siv T
hs1.o hs1_memcpy T
hs1.o hs1_setup T
hs1.o hs1siv_decrypt T
hs1.o hs1siv_encrypt T
hs1.o poly_finalize T
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:faster | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:faster | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:faster | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:faster | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:faster | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
encrypt.o chacha T
encrypt.o chacha_ivsetup T
encrypt.o chacha_keysetup T
encrypt.o hs1 T
encrypt.o hs1_hash T
encrypt.o hs1siv_chacha256 T
encrypt.o hs1siv_decrypt T
encrypt.o hs1siv_encrypt T
encrypt.o hs1siv_subkeygen T
encrypt.o prf_hash2 T
Number of similar (implementation,compiler) pairs: 8, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |