Implementation notes: amd64, h3neo, crypto_aead/pi64cipher128v2

Computer: h3neo
Microarchitecture: amd64; K10 45nm (100f63)
Architecture: amd64
CPU ID: AuthenticAMD-00100f63-078bfbff
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: pi64cipher128v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1031058126 8 024843 852 1024T:ref3clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
10915810242 8 026979 852 1024T:ref2clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
1098638109 8 024227 852 1024T:ref3clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
11877510209 8 026331 852 1024T:ref2clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
1244748037 8 023219 852 1024T:ref3clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
1312099487 8 024683 852 1024T:ref2clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
1415308268 8 022515 852 1024T:ref3clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
15005631815 8 047059 812 1088T:goptvgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
16470110702 8 028156 820 1088T:ref3gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
1653348599 8 024780 820 1088T:ref3gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
1691296032 8 021259 812 1088T:ref3gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
17726233230 8 050748 820 1088T:goptvgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
1775845425 8 018997 844 1024T:ref3clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
17937637416 8 053636 820 1088T:goptvgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
2069415434 8 019415 796 1056T:ref3gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
27819511285 8 025383 796 1056T:goptvgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
5132898144 8 024364 820 1088T:ref2gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
5304746853 8 022131 812 1088T:ref2gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
6131596901 8 021155 852 1024T:ref2clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
7033735663 8 019285 844 1024T:ref2clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625
9789135907 8 019935 796 1056T:ref2gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070520240625

Compiler output


pi-cipher.c: pi-cipher.c:286:9: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
pi-cipher.c:         n_t += __builtin_shuffle(y, g_mask);
pi-cipher.c:                ^
pi-cipher.c: pi-cipher.c:305:9: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
pi-cipher.c:         m_t += __builtin_shuffle(x, g_mask);
pi-cipher.c:                ^
pi-cipher.c: pi-cipher.c:354:9: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
pi-cipher.c:         m_t += __builtin_shuffle(x, g_mask);
pi-cipher.c:                ^
pi-cipher.c: 3 errors generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:goptvclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:goptvclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:goptvclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:goptvclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:goptvclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


pi-cipher.c: pi-cipher.c: In function 'rotl_q':
pi-cipher.c: pi-cipher.c:272:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c:   272 | {
pi-cipher.c:       | ^
pi-cipher.c: pi-cipher.c: In function 'e1':
pi-cipher.c: pi-cipher.c:566:13: note: the ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
pi-cipher.c:   566 | static void e1(
pi-cipher.c:       |             ^~
pi-cipher.c: pi-cipher.c: In function 'vect_ast':
pi-cipher.c: pi-cipher.c:337:10: warning: AVX vector argument without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c:   337 | vchunk_t vect_ast(vchunk_t x, vchunk_t y)
pi-cipher.c:       |          ^~~~~~~~

Number of similar (implementation,compiler) pairs: 2, namely:
ImplementationCompiler
T:goptvgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:goptvgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


pi-cipher.c: pi-cipher.c: In function 'rotl_q':
pi-cipher.c: pi-cipher.c:272:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c:   272 | {
pi-cipher.c:       | ^
pi-cipher.c: pi-cipher.c: In function 'e1':
pi-cipher.c: pi-cipher.c:566:13: note: the ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
pi-cipher.c:   566 | static void e1(
pi-cipher.c:       |             ^~
pi-cipher.c: pi-cipher.c: In function 'pi64_init':
pi-cipher.c: pi-cipher.c:842:5: warning: 'pi' accessing 128 bytes in a region of size 32 [-Wstringop-overflow=]
pi-cipher.c:   842 |     pi(ctx->cis);
pi-cipher.c:       |     ^~~~~~~~~~~~
pi-cipher.c: pi-cipher.c:842:5: note: referencing argument 1 of type 'word_t (*)[4]' {aka 'long unsigned int (*)[4]'}
pi-cipher.c: pi-cipher.c:649:13: note: in a call to function 'pi'
pi-cipher.c:   649 | static void pi(
pi-cipher.c:       |             ^~

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:goptvgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


pi-cipher.c: pi-cipher.c: In function 'rotl_q':
pi-cipher.c: pi-cipher.c:272:1: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c:   272 | {
pi-cipher.c:       | ^
pi-cipher.c: pi-cipher.c: In function 'e1':
pi-cipher.c: pi-cipher.c:566:13: note: the ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
pi-cipher.c:   566 | static void e1(
pi-cipher.c:       |             ^~
pi-cipher.c: pi-cipher.c: In function 'vect_ast_precomputed_mu':
pi-cipher.c: pi-cipher.c:277:10: warning: AVX vector argument without AVX enabled changes the ABI [-Wpsabi]
pi-cipher.c:   277 | vchunk_t vect_ast_precomputed_mu(vchunk_t y)
pi-cipher.c:       |          ^~~~~~~~~~~~~~~~~~~~~~~

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:goptvgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


encrypt.c: encrypt.c:253:42: warning: variable 'npub64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                          ^
encrypt.c: encrypt.c:251:45: warning: unused variable 'z0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                             ^
encrypt.c: encrypt.c:253:51: warning: variable 'k64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                                   ^
encrypt.c: encrypt.c:251:41: warning: unused variable 'y3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                         ^
encrypt.c: encrypt.c:251:37: warning: unused variable 'y2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                     ^
encrypt.c: encrypt.c:251:33: warning: unused variable 'y1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                 ^
encrypt.c: encrypt.c:251:57: warning: unused variable 'z3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                         ^
encrypt.c: encrypt.c:251:53: warning: unused variable 'z2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                     ^
encrypt.c: encrypt.c:251:49: warning: unused variable 'z1' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:optimized_nonSSEclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:251:33: warning: unused variable 'y1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                 ^
encrypt.c: encrypt.c:251:37: warning: unused variable 'y2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                     ^
encrypt.c: encrypt.c:251:41: warning: unused variable 'y3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                         ^
encrypt.c: encrypt.c:261:31: warning: variable 'CommonInternalState8' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int8_t   *InternalState8, *CommonInternalState8, *tempTag8;
encrypt.c:                               ^
encrypt.c: encrypt.c:251:45: warning: unused variable 'z0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                             ^
encrypt.c: encrypt.c:253:51: warning: variable 'k64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                                   ^
encrypt.c: encrypt.c:251:49: warning: unused variable 'z1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                 ^
encrypt.c: encrypt.c:253:42: warning: variable 'npub64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                          ^
encrypt.c: encrypt.c:251:53: warning: unused variable 'z2' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:optimized_nonSSEclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:265:42: warning: unused variable 'j1' [-Wunused-variable]
encrypt.c:  unsigned long long i, j, jj, ii, b, i1, j1, a;
encrypt.c:                                          ^
encrypt.c: encrypt.c:251:21: warning: unused variable 'x2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                     ^
encrypt.c: encrypt.c:251:17: warning: unused variable 'x1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                 ^
encrypt.c: encrypt.c:251:13: warning: unused variable 'x0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:             ^
encrypt.c: encrypt.c:265:31: warning: unused variable 'ii' [-Wunused-variable]
encrypt.c:  unsigned long long i, j, jj, ii, b, i1, j1, a;
encrypt.c:                               ^
encrypt.c: encrypt.c:251:29: warning: unused variable 'y0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                             ^
encrypt.c: encrypt.c:251:25: warning: unused variable 'x3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                         ^
encrypt.c: encrypt.c:251:37: warning: unused variable 'y2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                     ^
encrypt.c: encrypt.c:251:33: warning: unused variable 'y1' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:optimized_nonSSEclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:251:33: warning: unused variable 'y1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                 ^
encrypt.c: encrypt.c:251:29: warning: unused variable 'y0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                             ^
encrypt.c: encrypt.c:251:25: warning: unused variable 'x3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                         ^
encrypt.c: encrypt.c:251:41: warning: unused variable 'y3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                         ^
encrypt.c: encrypt.c:253:51: warning: variable 'k64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                                   ^
encrypt.c: encrypt.c:253:42: warning: variable 'npub64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                          ^
encrypt.c: encrypt.c:251:37: warning: unused variable 'y2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                     ^
encrypt.c: encrypt.c:251:13: warning: unused variable 'x0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:             ^
encrypt.c: encrypt.c:261:31: warning: variable 'CommonInternalState8' set but not used [-Wunused-but-set-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:optimized_nonSSEclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:251:13: warning: unused variable 'x0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:             ^
encrypt.c: encrypt.c:265:42: warning: unused variable 'j1' [-Wunused-variable]
encrypt.c:  unsigned long long i, j, jj, ii, b, i1, j1, a;
encrypt.c:                                          ^
encrypt.c: encrypt.c:251:17: warning: unused variable 'x1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                 ^
encrypt.c: encrypt.c:251:29: warning: unused variable 'y0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                             ^
encrypt.c: encrypt.c:251:33: warning: unused variable 'y1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                 ^
encrypt.c: encrypt.c:265:31: warning: unused variable 'ii' [-Wunused-variable]
encrypt.c:  unsigned long long i, j, jj, ii, b, i1, j1, a;
encrypt.c:                               ^
encrypt.c: encrypt.c:251:21: warning: unused variable 'x2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                     ^
encrypt.c: encrypt.c:251:25: warning: unused variable 'x3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                         ^
encrypt.c: encrypt.c:251:49: warning: unused variable 'z1' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:optimized_nonSSEclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_pi64cipher128v2_optimized_nonSSE_timingleaks_encrypt':
encrypt.c: encrypt.c:265:42: warning: unused variable 'j1' [-Wunused-variable]
encrypt.c:   265 |  unsigned long long i, j, jj, ii, b, i1, j1, a;
encrypt.c:       |                                          ^~
encrypt.c: encrypt.c:265:31: warning: unused variable 'ii' [-Wunused-variable]
encrypt.c:   265 |  unsigned long long i, j, jj, ii, b, i1, j1, a;
encrypt.c:       |                               ^~
encrypt.c: encrypt.c:261:31: warning: variable 'CommonInternalState8' set but not used [-Wunused-but-set-variable]
encrypt.c:   261 |  u_int8_t   *InternalState8, *CommonInternalState8, *tempTag8;
encrypt.c:       |                               ^~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:253:51: warning: variable 'k64' set but not used [-Wunused-but-set-variable]
encrypt.c:   253 |  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:       |                                                   ^~~
encrypt.c: encrypt.c:253:42: warning: variable 'npub64' set but not used [-Wunused-but-set-variable]
encrypt.c:   253 |  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:       |                                          ^~~~~~
encrypt.c: encrypt.c:251:57: warning: unused variable 'z3' [-Wunused-variable]
encrypt.c:   251 |  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:       |                                                         ^~
encrypt.c: encrypt.c:251:53: warning: unused variable 'z2' [-Wunused-variable]
encrypt.c:   251 |  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:       |                                                     ^~
encrypt.c: encrypt.c:251:49: warning: unused variable 'z1' [-Wunused-variable]
encrypt.c:   251 |  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:       |                                                 ^~
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:optimized_nonSSEgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:optimized_nonSSEgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:optimized_nonSSEgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:optimized_nonSSEgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


encrypt.c: encrypt.c:136:13: warning: unused variable 'x0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:             ^
encrypt.c: encrypt.c:136:17: warning: unused variable 'x1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                 ^
encrypt.c: encrypt.c:134:68: warning: unused variable 't13' [-Wunused-variable]
encrypt.c:  u_int64_t  t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13;
encrypt.c:                                                                    ^
encrypt.c: encrypt.c:136:57: warning: unused variable 'z3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                         ^
encrypt.c: encrypt.c:136:53: warning: unused variable 'z2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                     ^
encrypt.c: encrypt.c:138:42: warning: variable 'npub64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                          ^
encrypt.c: encrypt.c:134:63: warning: unused variable 't12' [-Wunused-variable]
encrypt.c:  u_int64_t  t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13;
encrypt.c:                                                               ^
encrypt.c: encrypt.c:146:31: warning: variable 'CommonInternalState8' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int8_t   *InternalState8, *CommonInternalState8, *tempTag8;
encrypt.c:                               ^
encrypt.c: encrypt.c:136:33: warning: unused variable 'y1' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:136:33: warning: unused variable 'y1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                 ^
encrypt.c: encrypt.c:138:51: warning: variable 'k64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                                   ^
encrypt.c: encrypt.c:136:45: warning: unused variable 'z0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                             ^
encrypt.c: encrypt.c:136:25: warning: unused variable 'x3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                         ^
encrypt.c: encrypt.c:150:42: warning: unused variable 'j1' [-Wunused-variable]
encrypt.c:  unsigned long long i, j, jj, ii, b, i1, j1, a;
encrypt.c:                                          ^
encrypt.c: encrypt.c:136:49: warning: unused variable 'z1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                 ^
encrypt.c: encrypt.c:136:21: warning: unused variable 'x2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                     ^
encrypt.c: encrypt.c:136:37: warning: unused variable 'y2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                     ^
encrypt.c: encrypt.c:136:29: warning: unused variable 'y0' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:136:17: warning: unused variable 'x1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                 ^
encrypt.c: encrypt.c:136:13: warning: unused variable 'x0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:             ^
encrypt.c: encrypt.c:146:31: warning: variable 'CommonInternalState8' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int8_t   *InternalState8, *CommonInternalState8, *tempTag8;
encrypt.c:                               ^
encrypt.c: encrypt.c:138:42: warning: variable 'npub64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                          ^
encrypt.c: encrypt.c:134:68: warning: unused variable 't13' [-Wunused-variable]
encrypt.c:  u_int64_t  t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13;
encrypt.c:                                                                    ^
encrypt.c: encrypt.c:138:51: warning: variable 'k64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                                   ^
encrypt.c: encrypt.c:134:63: warning: unused variable 't12' [-Wunused-variable]
encrypt.c:  u_int64_t  t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13;
encrypt.c:                                                               ^
encrypt.c: encrypt.c:136:57: warning: unused variable 'z3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                         ^
encrypt.c: encrypt.c:136:37: warning: unused variable 'y2' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:136:45: warning: unused variable 'z0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                             ^
encrypt.c: encrypt.c:136:21: warning: unused variable 'x2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                     ^
encrypt.c: encrypt.c:136:49: warning: unused variable 'z1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                 ^
encrypt.c: encrypt.c:136:41: warning: unused variable 'y3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                         ^
encrypt.c: encrypt.c:136:13: warning: unused variable 'x0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:             ^
encrypt.c: encrypt.c:136:17: warning: unused variable 'x1' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                 ^
encrypt.c: encrypt.c:136:53: warning: unused variable 'z2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                     ^
encrypt.c: encrypt.c:136:37: warning: unused variable 'y2' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                     ^
encrypt.c: encrypt.c:136:57: warning: unused variable 'z3' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:150:42: warning: unused variable 'j1' [-Wunused-variable]
encrypt.c:  unsigned long long i, j, jj, ii, b, i1, j1, a;
encrypt.c:                                          ^
encrypt.c: encrypt.c:138:42: warning: variable 'npub64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                          ^
encrypt.c: encrypt.c:138:51: warning: variable 'k64' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:                                                   ^
encrypt.c: encrypt.c:146:31: warning: variable 'CommonInternalState8' set but not used [-Wunused-but-set-variable]
encrypt.c:  u_int8_t   *InternalState8, *CommonInternalState8, *tempTag8;
encrypt.c:                               ^
encrypt.c: encrypt.c:134:68: warning: unused variable 't13' [-Wunused-variable]
encrypt.c:  u_int64_t  t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13;
encrypt.c:                                                                    ^
encrypt.c: encrypt.c:134:63: warning: unused variable 't12' [-Wunused-variable]
encrypt.c:  u_int64_t  t0, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13;
encrypt.c:                                                               ^
encrypt.c: encrypt.c:136:57: warning: unused variable 'z3' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:                                                         ^
encrypt.c: encrypt.c:136:13: warning: unused variable 'x0' [-Wunused-variable]
encrypt.c:  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:             ^
encrypt.c: encrypt.c:136:49: warning: unused variable 'z1' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_pi64cipher128v2_ref_timingleaks_encrypt':
encrypt.c: encrypt.c:150:42: warning: unused variable 'j1' [-Wunused-variable]
encrypt.c:   150 |  unsigned long long i, j, jj, ii, b, i1, j1, a;
encrypt.c:       |                                          ^~
encrypt.c: encrypt.c:146:31: warning: variable 'CommonInternalState8' set but not used [-Wunused-but-set-variable]
encrypt.c:   146 |  u_int8_t   *InternalState8, *CommonInternalState8, *tempTag8;
encrypt.c:       |                               ^~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:138:51: warning: variable 'k64' set but not used [-Wunused-but-set-variable]
encrypt.c:   138 |  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:       |                                                   ^~~
encrypt.c: encrypt.c:138:42: warning: variable 'npub64' set but not used [-Wunused-but-set-variable]
encrypt.c:   138 |  u_int64_t  *c64, *m64, *ad64, *nsec64, *npub64, *k64;
encrypt.c:       |                                          ^~~~~~
encrypt.c: encrypt.c:136:57: warning: unused variable 'z3' [-Wunused-variable]
encrypt.c:   136 |  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:       |                                                         ^~
encrypt.c: encrypt.c:136:53: warning: unused variable 'z2' [-Wunused-variable]
encrypt.c:   136 |  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:       |                                                     ^~
encrypt.c: encrypt.c:136:49: warning: unused variable 'z1' [-Wunused-variable]
encrypt.c:   136 |  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:       |                                                 ^~
encrypt.c: encrypt.c:136:45: warning: unused variable 'z0' [-Wunused-variable]
encrypt.c:   136 |  u_int64_t  x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, z3;
encrypt.c:       |                                             ^~
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


pi-cipher.c: In function 'mu',
pi-cipher.c:     inlined from 'ast' at pi-cipher.c:257:5:
pi-cipher.c: pi-cipher.c:226:5: warning: 'phi' reading 8 bytes from a region of size 4 [-Wstringop-overread]
pi-cipher.c:   226 |     phi(t, x, mu_const, mu_v_const, mu_rot_const);
pi-cipher.c:       |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pi-cipher.c: pi-cipher.c: In function 'ast':
pi-cipher.c: pi-cipher.c:226:5: note: referencing argument 4 of type 'const uint8_t *' {aka 'const unsigned char *'}
pi-cipher.c: pi-cipher.c:175:13: note: in a call to function 'phi'
pi-cipher.c:   175 | static void phi(
pi-cipher.c:       |             ^~~
pi-cipher.c: In function 'ny',
pi-cipher.c:     inlined from 'ast' at pi-cipher.c:258:5:
pi-cipher.c: pi-cipher.c:237:5: warning: 'phi' reading 8 bytes from a region of size 4 [-Wstringop-overread]
pi-cipher.c:   237 |     phi(dest, x, ny_const, ny_v_const, ny_rot_const);
pi-cipher.c:       |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pi-cipher.c: pi-cipher.c: In function 'ast':
pi-cipher.c: pi-cipher.c:237:5: note: referencing argument 4 of type 'const uint8_t *' {aka 'const unsigned char *'}
pi-cipher.c: pi-cipher.c:175:13: note: in a call to function 'phi'
pi-cipher.c:   175 | static void phi(
pi-cipher.c:       |             ^~~

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
T:ref2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ref2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ref2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


pi-cipher.c: In function 'mu',
pi-cipher.c:     inlined from 'ast' at pi-cipher.c:257:5,
pi-cipher.c:     inlined from 'e1' at pi-cipher.c:271:9,
pi-cipher.c:     inlined from 'pi' at pi-cipher.c:305:9:
pi-cipher.c: pi-cipher.c:226:5: warning: 'phi' reading 8 bytes from a region of size 4 [-Wstringop-overread]
pi-cipher.c:   226 |     phi(t, x, mu_const, mu_v_const, mu_rot_const);
pi-cipher.c:       |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pi-cipher.c: pi-cipher.c: In function 'pi':
pi-cipher.c: pi-cipher.c:226:5: note: referencing argument 4 of type 'const uint8_t *' {aka 'const unsigned char *'}
pi-cipher.c: pi-cipher.c:175:13: note: in a call to function 'phi'
pi-cipher.c:   175 | static void phi(
pi-cipher.c:       |             ^~~
pi-cipher.c: In function 'ny',
pi-cipher.c:     inlined from 'ast' at pi-cipher.c:258:5,
pi-cipher.c:     inlined from 'e1' at pi-cipher.c:271:9,
pi-cipher.c:     inlined from 'pi' at pi-cipher.c:305:9:
pi-cipher.c: pi-cipher.c:237:5: warning: 'phi' reading 8 bytes from a region of size 4 [-Wstringop-overread]
pi-cipher.c:   237 |     phi(dest, x, ny_const, ny_v_const, ny_rot_const);
pi-cipher.c:       |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pi-cipher.c: pi-cipher.c: In function 'pi':
pi-cipher.c: pi-cipher.c:237:5: note: referencing argument 4 of type 'const uint8_t *' {aka 'const unsigned char *'}
pi-cipher.c: pi-cipher.c:175:13: note: in a call to function 'phi'
pi-cipher.c:   175 | static void phi(
pi-cipher.c:       |             ^~~
pi-cipher.c: In function 'mu',
pi-cipher.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:ref2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)