Implementation notes: amd64, hydra7, crypto_aead/flexaead256b128v12

Computer: hydra7
Microarchitecture: amd64; Sandy Bridge+AES (206a7)
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: flexaead256b128v12
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
28104811634 0 026981 804 1088T:opt1gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
28135310417 0 025412 796 1088T:opt1gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
2908197779 0 021464 780 1056T:opt1gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
34186816830 0 032379 820 1088T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
35061315072 0 030347 820 1088T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7727416382 0 020246 796 1056T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625

Compiler output


encrypt.c: In function 'memcpyopt',
encrypt.c:     inlined from 'dirMixQuartersLayer' at encrypt.c:954:2,
encrypt.c:     inlined from 'dirPFK' at encrypt.c:1423:3,
encrypt.c:     inlined from 'FlexAEADv1_init' at encrypt.c:674:3:
encrypt.c: encrypt.c:697:42: warning: 'keystate' may be used uninitialized [-Wmaybe-uninitialized]
encrypt.c:   697 |             *((crypto_uint64 *) (a+i)) = *((crypto_uint64 *) (b+i));
encrypt.c:       |                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'FlexAEADv1_init':
encrypt.c: encrypt.c:629:23: note: 'keystate' declared here
encrypt.c:   629 |         unsigned char keystate[KEYSIZE];
encrypt.c:       |                       ^~~~~~~~
encrypt.c: In function 'memcpyopt',
encrypt.c:     inlined from 'dirMixQuartersLayer' at encrypt.c:954:2,
encrypt.c:     inlined from 'dirPFK' at encrypt.c:1423:3,
encrypt.c:     inlined from 'FlexAEADv1_init' at encrypt.c:674:3:
encrypt.c: encrypt.c:707:42: warning: 'keystate' may be used uninitialized [-Wmaybe-uninitialized]
encrypt.c:   707 |             *((crypto_uint16 *) (a+i)) = *((crypto_uint16 *) (b+i));
encrypt.c:       |                                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'FlexAEADv1_init':
encrypt.c: encrypt.c:629:23: note: 'keystate' declared here
encrypt.c:   629 |         unsigned char keystate[KEYSIZE];
encrypt.c:       |                       ^~~~~~~~
encrypt.c: In function 'memcpyopt',
encrypt.c:     inlined from 'dirMixQuartersLayer' at encrypt.c:954:2,
encrypt.c:     inlined from 'dirPFK' at encrypt.c:1423:3,
encrypt.c: ...

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

Compiler output


encrypt.c: In function 'dirShuffleLayer',
encrypt.c:     inlined from 'dirPFK' at encrypt.c:631:3,
encrypt.c:     inlined from 'sumAD.constprop' at encrypt.c:745:5:
encrypt.c: encrypt.c:585:34: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
encrypt.c:   585 |                 *(state+(2*i+0)) = *(block+(0*(blocklen/2)+i));
encrypt.c:       |                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'sumAD.constprop':
encrypt.c: encrypt.c:48:18: note: at offset 16 into destination object 'state' of size 16
encrypt.c:    48 |    unsigned char state[BLOCKSIZE];
encrypt.c:       |                  ^~~~~
encrypt.c: In function 'dirShuffleLayer',
encrypt.c:     inlined from 'dirPFK' at encrypt.c:631:3,
encrypt.c:     inlined from 'sumAD.constprop' at encrypt.c:745:5:
encrypt.c: encrypt.c:586:34: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
encrypt.c:   586 |                 *(state+(2*i+1)) = *(block+(1*(blocklen/2)+i));
encrypt.c:       |                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'sumAD.constprop':
encrypt.c: encrypt.c:48:18: note: at offset [17, 4294967281] into destination object 'state' of size 16
encrypt.c:    48 |    unsigned char state[BLOCKSIZE];
encrypt.c:       |                  ^~~~~
encrypt.c: In function 'dirShuffleLayer',
encrypt.c:     inlined from 'dirPFK' at encrypt.c:631:3,
encrypt.c:     inlined from 'sumAD.constprop' at encrypt.c:745:5:
encrypt.c: encrypt.c:585:34: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
encrypt.c:   585 |                 *(state+(2*i+0)) = *(block+(0*(blocklen/2)+i));
encrypt.c: ...

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