Implementation notes: amd64, hydra4, crypto_aead/hs1sivhiv2

Computer: hydra4
Microarchitecture: amd64; K10 32nm (300f10)
Architecture: amd64
CPU ID: AuthenticAMD-00300f10-178bfbff
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: hs1sivhiv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
535356477 0 028200 828 1016T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
543158029 0 030568 828 1016T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
544548029 0 030568 828 1016T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
602396127 0 028808 796 1080T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
613295791 0 027264 796 1080T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
694584158 0 023211 772 1048T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
720964343 0 023974 820 1016T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
999365863 0 026576 796 1080T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
1871656248 0 026414 820 1016T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625

Test failure


error 111

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:fasterclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:fasterclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:fasterclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:fasterclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:fasterclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:fastergcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:fastergcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:fastergcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:fastergcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

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: encrypt.c:484:24: warning: unused variable 'ia1' [-Wunused-variable]
encrypt.c:       ALIGN32 uint64_t ia1[4];
encrypt.c:                        ^
encrypt.c: encrypt.c:333:19: warning: unused variable 'j' [-Wunused-variable]
encrypt.c:     unsigned i=0, j;
encrypt.c:                   ^
encrypt.c: 2 warnings and 1 error generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:dolbeau/amd64-avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:dolbeau/amd64-avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:dolbeau/amd64-avx2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:dolbeau/amd64-avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:dolbeau/amd64-avx2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c:    90 | #error "This code requires AVX2 to work"
encrypt.c:       |  ^~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_3':
encrypt.c: encrypt.c:484:24: warning: unused variable 'ia1' [-Wunused-variable]
encrypt.c:   484 |       ALIGN32 uint64_t ia1[4];
encrypt.c:       |                        ^~~
encrypt.c: encrypt.c:333:19: warning: unused variable 'j' [-Wunused-variable]
encrypt.c:   333 |     unsigned i=0, j;
encrypt.c:       |                   ^
encrypt.c: encrypt.c: In function 'hs1_data':
encrypt.c: encrypt.c:625:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c:   625 |   unsigned atot, mtot, arnd64, mrnd64;
encrypt.c:       |                  ^~~~
encrypt.c: encrypt.c:625:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c:   625 |   unsigned atot, mtot, arnd64, mrnd64;
encrypt.c:       |            ^~~~
encrypt.c: In file included from encrypt.c:195:
encrypt.c: c368.h: In function 'chacha_noxor368':
encrypt.c: c368.h:110:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c:   110 |   __m256i rot16 = _mm256_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2,13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
encrypt.c:       |           ^~~~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:dolbeau/amd64-avx2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/amd64-avx2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/amd64-avx2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/amd64-avx2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

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:195:
encrypt.c: ./c368.h:146:11: warning: unused variable 't_3' [-Wunused-variable]
encrypt.c:   __m512i t_3;
encrypt.c:           ^
encrypt.c: ./c368.h:158:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c:   __m512i t_15;
encrypt.c:           ^
encrypt.c: ./c368.h:144:11: warning: unused variable 't_1' [-Wunused-variable]
encrypt.c:   __m512i t_1;
encrypt.c:           ^
encrypt.c: ./c368.h:145:11: warning: unused variable 't_2' [-Wunused-variable]
encrypt.c:   __m512i t_2;
encrypt.c:           ^
encrypt.c: ./c368.h:156:11: warning: unused variable 't_13' [-Wunused-variable]
encrypt.c:   __m512i t_13;
encrypt.c:           ^
encrypt.c: ./c368.h:157:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c:   __m512i t_14;
encrypt.c:           ^
encrypt.c: ./c368.h:143:11: warning: unused variable 't_0' [-Wunused-variable]
encrypt.c:   __m512i t_0;
encrypt.c:           ^
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:dolbeau/amd64-avx512clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

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:195:
encrypt.c: ./c368.h:158:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c:   __m512i t_15;
encrypt.c:           ^
encrypt.c: ./c368.h:144:11: warning: unused variable 't_1' [-Wunused-variable]
encrypt.c:   __m512i t_1;
encrypt.c:           ^
encrypt.c: ./c368.h:145:11: warning: unused variable 't_2' [-Wunused-variable]
encrypt.c:   __m512i t_2;
encrypt.c:           ^
encrypt.c: ./c368.h:146:11: warning: unused variable 't_3' [-Wunused-variable]
encrypt.c:   __m512i t_3;
encrypt.c:           ^
encrypt.c: ./c368.h:156:11: warning: unused variable 't_13' [-Wunused-variable]
encrypt.c:   __m512i t_13;
encrypt.c:           ^
encrypt.c: ./c368.h:157:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c:   __m512i t_14;
encrypt.c:           ^
encrypt.c: ./c368.h:143:11: warning: unused variable 't_0' [-Wunused-variable]
encrypt.c:   __m512i t_0;
encrypt.c:           ^
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:dolbeau/amd64-avx512clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

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:195:
encrypt.c: ./c368.h:152:11: warning: unused variable 't_9' [-Wunused-variable]
encrypt.c:   __m512i t_9;
encrypt.c:           ^
encrypt.c: ./c368.h:150:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c:   __m512i t_7;
encrypt.c:           ^
encrypt.c: ./c368.h:151:11: warning: unused variable 't_8' [-Wunused-variable]
encrypt.c:   __m512i t_8;
encrypt.c:           ^
encrypt.c: ./c368.h:156:11: warning: unused variable 't_13' [-Wunused-variable]
encrypt.c:   __m512i t_13;
encrypt.c:           ^
encrypt.c: ./c368.h:153:11: warning: unused variable 't_10' [-Wunused-variable]
encrypt.c:   __m512i t_10;
encrypt.c:           ^
encrypt.c: ./c368.h:144:11: warning: unused variable 't_1' [-Wunused-variable]
encrypt.c:   __m512i t_1;
encrypt.c:           ^
encrypt.c: ./c368.h:154:11: warning: unused variable 't_11' [-Wunused-variable]
encrypt.c:   __m512i t_11;
encrypt.c:           ^
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:dolbeau/amd64-avx512clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

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:195:
encrypt.c: ./c368.h:156:11: warning: unused variable 't_13' [-Wunused-variable]
encrypt.c:   __m512i t_13;
encrypt.c:           ^
encrypt.c: ./c368.h:158:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c:   __m512i t_15;
encrypt.c:           ^
encrypt.c: ./c368.h:157:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c:   __m512i t_14;
encrypt.c:           ^
encrypt.c: ./c368.h:143:11: warning: unused variable 't_0' [-Wunused-variable]
encrypt.c:   __m512i t_0;
encrypt.c:           ^
encrypt.c: ./c368.h:152:11: warning: unused variable 't_9' [-Wunused-variable]
encrypt.c:   __m512i t_9;
encrypt.c:           ^
encrypt.c: ./c368.h:154:11: warning: unused variable 't_11' [-Wunused-variable]
encrypt.c:   __m512i t_11;
encrypt.c:           ^
encrypt.c: ./c368.h:149:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c:   __m512i t_6;
encrypt.c:           ^
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:dolbeau/amd64-avx512clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

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:195:
encrypt.c: ./c368.h:153:11: warning: unused variable 't_10' [-Wunused-variable]
encrypt.c:   __m512i t_10;
encrypt.c:           ^
encrypt.c: ./c368.h:154:11: warning: unused variable 't_11' [-Wunused-variable]
encrypt.c:   __m512i t_11;
encrypt.c:           ^
encrypt.c: ./c368.h:152:11: warning: unused variable 't_9' [-Wunused-variable]
encrypt.c:   __m512i t_9;
encrypt.c:           ^
encrypt.c: ./c368.h:150:11: warning: unused variable 't_7' [-Wunused-variable]
encrypt.c:   __m512i t_7;
encrypt.c:           ^
encrypt.c: ./c368.h:151:11: warning: unused variable 't_8' [-Wunused-variable]
encrypt.c:   __m512i t_8;
encrypt.c:           ^
encrypt.c: ./c368.h:148:11: warning: unused variable 't_5' [-Wunused-variable]
encrypt.c:   __m512i t_5;
encrypt.c:           ^
encrypt.c: ./c368.h:149:11: warning: unused variable 't_6' [-Wunused-variable]
encrypt.c:   __m512i t_6;
encrypt.c:           ^
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:dolbeau/amd64-avx512clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


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:195:
encrypt.c: encrypt.c: In function 'chacha_noxor368':
encrypt.c: c368.h:158:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c:   158 |   __m512i t_15;
encrypt.c:       |           ^~~~
encrypt.c: c368.h:157:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c:   157 |   __m512i t_14;
encrypt.c:       |           ^~~~
encrypt.c: c368.h:156:11: warning: unused variable 't_13' [-Wunused-variable]
encrypt.c:   156 |   __m512i t_13;
encrypt.c:       |           ^~~~
encrypt.c: c368.h:154:11: warning: unused variable 't_11' [-Wunused-variable]
encrypt.c:   154 |   __m512i t_11;
encrypt.c:       |           ^~~~
encrypt.c: c368.h:153:11: warning: unused variable 't_10' [-Wunused-variable]
encrypt.c:   153 |   __m512i t_10;
encrypt.c:       |           ^~~~
encrypt.c: c368.h:152:11: warning: unused variable 't_9' [-Wunused-variable]
encrypt.c:   152 |   __m512i t_9;
encrypt.c:       |           ^~~
encrypt.c: c368.h:151:11: warning: unused variable 't_8' [-Wunused-variable]
encrypt.c:   151 |   __m512i t_8;
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:dolbeau/amd64-avx512gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/amd64-avx512gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/amd64-avx512gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/amd64-avx512gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


encrypt.c: In file included from encrypt.c:192:
encrypt.c: ./c256.h:131:5: warning: unused variable 't0' [-Wunused-variable]
encrypt.c:     ONEQUAD(0,1,2,3);
encrypt.c:     ^
encrypt.c: ./c256.h:129:26: note: expanded from macro 'ONEQUAD'
encrypt.c: #define ONEQUAD(a,b,c,d) ONEQUAD_TRANSPOSE_NOXOR(a,b,c,d)
encrypt.c:                          ^
encrypt.c: ./c256.h:110:15: note: expanded from macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c:       __m128i t0, t1, t2, t3;                                           \
encrypt.c:               ^
encrypt.c: ./c256.h:131:5: warning: unused variable 't1' [-Wunused-variable]
encrypt.c: ./c256.h:129:26: note: expanded from macro 'ONEQUAD'
encrypt.c: #define ONEQUAD(a,b,c,d) ONEQUAD_TRANSPOSE_NOXOR(a,b,c,d)
encrypt.c:                          ^
encrypt.c: ./c256.h:110:19: note: expanded from macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c:       __m128i t0, t1, t2, t3;                                           \
encrypt.c:                   ^
encrypt.c: ./c256.h:131:5: warning: unused variable 't2' [-Wunused-variable]
encrypt.c: ./c256.h:129:26: note: expanded from macro 'ONEQUAD'
encrypt.c: #define ONEQUAD(a,b,c,d) ONEQUAD_TRANSPOSE_NOXOR(a,b,c,d)
encrypt.c:                          ^
encrypt.c: ./c256.h:110:23: note: expanded from macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c:       __m128i t0, t1, t2, t3;                                           \
encrypt.c:                       ^
encrypt.c: ./c256.h:131:5: warning: unused variable 't3' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:dolbeau/amd64-sseclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:dolbeau/amd64-sseclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:dolbeau/amd64-sseclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:dolbeau/amd64-sseclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:dolbeau/amd64-sseclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


encrypt.c: In file included from encrypt.c:192:
encrypt.c: c256.h: In function 'chacha_noxor368':
encrypt.c: c256.h:110:27: warning: unused variable 't3' [-Wunused-variable]
encrypt.c:   110 |       __m128i t0, t1, t2, t3;                                           \
encrypt.c:       |                           ^~
encrypt.c: c256.h:129:26: note: in expansion of macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c:   129 | #define ONEQUAD(a,b,c,d) ONEQUAD_TRANSPOSE_NOXOR(a,b,c,d)
encrypt.c:       |                          ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:131:5: note: in expansion of macro 'ONEQUAD'
encrypt.c:   131 |     ONEQUAD(0,1,2,3);
encrypt.c:       |     ^~~~~~~
encrypt.c: c256.h:110:23: warning: unused variable 't2' [-Wunused-variable]
encrypt.c:   110 |       __m128i t0, t1, t2, t3;                                           \
encrypt.c:       |                       ^~
encrypt.c: c256.h:129:26: note: in expansion of macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c:   129 | #define ONEQUAD(a,b,c,d) ONEQUAD_TRANSPOSE_NOXOR(a,b,c,d)
encrypt.c:       |                          ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c256.h:131:5: note: in expansion of macro 'ONEQUAD'
encrypt.c:   131 |     ONEQUAD(0,1,2,3);
encrypt.c:       |     ^~~~~~~
encrypt.c: c256.h:110:19: warning: unused variable 't1' [-Wunused-variable]
encrypt.c:   110 |       __m128i t0, t1, t2, t3;                                           \
encrypt.c:       |                   ^~
encrypt.c: c256.h:129:26: note: in expansion of macro 'ONEQUAD_TRANSPOSE_NOXOR'
encrypt.c:   129 | #define ONEQUAD(a,b,c,d) ONEQUAD_TRANSPOSE_NOXOR(a,b,c,d)
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:dolbeau/amd64-ssegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/amd64-ssegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/amd64-ssegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/amd64-ssegcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)