Implementation notes: amd64, hydra7, crypto_aead/pi64cipher128v1

Computer: hydra7
Microarchitecture: amd64; Sandy Bridge+AES (206a7)
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: pi64cipher128v1

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_pi64cipher128v1_optimized_nonSSE_timingleaks_encrypt':
encrypt.c: encrypt.c:346:56: warning: operation on 'i1' may be undefined [-Wsequence-point]
encrypt.c:   346 |                  InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c:       |                                                      ~~^~
encrypt.c: encrypt.c:448:82: warning: operation on 'i1' may be undefined [-Wsequence-point]
encrypt.c:   448 |                  c[CRYPTO_NSECBYTES+b+i] = InternalState8[i1] = InternalState8[i1++] ^ m[b+i];
encrypt.c:       |                                                                                ~~^~
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: ...

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: In function 'crypto_aead_pi64cipher128v1_ref_timingleaks_encrypt':
encrypt.c: encrypt.c:231:56: warning: operation on 'i1' may be undefined [-Wsequence-point]
encrypt.c:   231 |                  InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c:       |                                                      ~~^~
encrypt.c: encrypt.c:333:82: warning: operation on 'i1' may be undefined [-Wsequence-point]
encrypt.c:   333 |                  c[CRYPTO_NSECBYTES+b+i] = InternalState8[i1] = InternalState8[i1++] ^ m[b+i];
encrypt.c:       |                                                                                ~~^~
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: ...

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)