Implementation notes: amd64, hertz, crypto_aead/photonbeetleaead128rate32v1

Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20240716
Operation: crypto_aead
Primitive: photonbeetleaead128rate32v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
120091575060 0 096254 844 1096T:table3clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
122672516351 0 037678 844 1096T:table2clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
122962675540 0 096862 844 1096T:table3clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
167300614039 0 035238 844 1096T:table2clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
219445112532 0 027568 836 1096T:table2clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
219973471988 0 087024 836 1096T:table3clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
221053511662 0 027005 820 1096T:table2gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
224376971054 0 086397 820 1096T:table3gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
226284770256 0 083976 796 1064T:table3gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
281941110853 0 024584 796 1064T:table2gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
322537811796 0 032990 844 1096T:bitslice_sb32clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
322623211796 0 033102 844 1096T:bitslice_sb32clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
32393899989 0 025088 836 1096T:bitslice_sb32clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
32896409233 0 024272 836 1096T:bitslice_sb64clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
329615910822 0 031982 844 1096T:bitslice_sb64clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
329699910822 0 032094 844 1096T:bitslice_sb64clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
37332128617 0 3223949 820 1128T:bitslice_sb64gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
38875718663 0 024013 820 1096T:bitslice_sb32gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
76274398118 0 021848 796 1064T:bitslice_sb32gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
78646247879 0 3221600 796 1096T:bitslice_sb64gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
1040622510904 16 1632264 876 1128T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
1505774011512 16 1632920 876 1128T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
1273167183347 16 1217128 820 1096T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
1363503654347 16 1219773 844 1128T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
2252630914039 16 1619168 860 1128T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716

Compiler output


encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:205:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb32_timingleaks_encrypt' at encrypt.c:292:18:
encrypt.c: encrypt.c:103:27: warning: writing 4 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:   103 |                 out_32[i] = in_left_32[i] ^ in_right_32[i];
encrypt.c:       |                 ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb32_timingleaks_encrypt':
encrypt.c: encrypt.c:273:17: note: at offset 32 into destination object 'State' of size 32
encrypt.c:   273 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:205:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb32_timingleaks_encrypt' at encrypt.c:292:18:
encrypt.c: encrypt.c:103:27: warning: writing 4 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:   103 |                 out_32[i] = in_left_32[i] ^ in_right_32[i];
encrypt.c:       |                 ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb32_timingleaks_encrypt':
encrypt.c: encrypt.c:273:17: note: at offset 36 into destination object 'State' of size 32
encrypt.c:   273 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:205:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb32_timingleaks_encrypt' at encrypt.c:292:18:
encrypt.c: encrypt.c:103:27: warning: writing 4 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:   103 |                 out_32[i] = in_left_32[i] ^ in_right_32[i];
encrypt.c: ...

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

Compiler output


encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:202:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb64_timingleaks_encrypt' at encrypt.c:290:18:
encrypt.c: encrypt.c:103:27: warning: writing 8 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:   103 |                 out_64[i] = in_left_64[i] ^ in_right_64[i];
encrypt.c:       |                 ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb64_timingleaks_encrypt':
encrypt.c: encrypt.c:271:17: note: at offset 32 into destination object 'State' of size 32
encrypt.c:   271 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:202:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb64_timingleaks_encrypt' at encrypt.c:290:18:
encrypt.c: encrypt.c:103:27: warning: writing 8 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:   103 |                 out_64[i] = in_left_64[i] ^ in_right_64[i];
encrypt.c:       |                 ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb64_timingleaks_encrypt':
encrypt.c: encrypt.c:271:17: note: at offset 40 into destination object 'State' of size 32
encrypt.c:   271 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:202:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_bitslice_sb64_timingleaks_encrypt' at encrypt.c:290:18:
encrypt.c: encrypt.c:103:27: warning: writing 8 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:   103 |                 out_64[i] = in_left_64[i] ^ in_right_64[i];
encrypt.c: ...

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

Compiler output


encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'rhoohr' at encrypt.c:159:3,
encrypt.c:     inlined from 'rhoohr' at encrypt.c:148:13,
encrypt.c:     inlined from 'ENCorDEC' at encrypt.c:211:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_ref_timingleaks_encrypt' at encrypt.c:281:18:
encrypt.c: encrypt.c:97:52: warning: writing 32 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:    97 |         for (i = 0; i < iolen_inbytes; i++) out[i] = in_left[i] ^ in_right[i];
encrypt.c:       |                                             ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_ref_timingleaks_encrypt':
encrypt.c: encrypt.c:263:17: note: at offset 32 into destination object 'State' of size 32
encrypt.c:   263 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'rhoohr' at encrypt.c:159:3,
encrypt.c:     inlined from 'rhoohr' at encrypt.c:148:13,
encrypt.c:     inlined from 'ENCorDEC' at encrypt.c:211:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_ref_timingleaks_encrypt' at encrypt.c:281:18:
encrypt.c: encrypt.c:97:52: warning: writing 32 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:    97 |         for (i = 0; i < iolen_inbytes; i++) out[i] = in_left[i] ^ in_right[i];
encrypt.c:       |                                             ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_ref_timingleaks_encrypt':
encrypt.c: encrypt.c:263:17: note: at offset [64, 96] into destination object 'State' of size 32
encrypt.c:   263 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c: ...

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

Compiler output


encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:183:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_table2_timingleaks_encrypt' at encrypt.c:271:18:
encrypt.c: encrypt.c:98:52: warning: writing 32 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:    98 |         for (i = 0; i < iolen_inbytes; i++) out[i] = in_left[i] ^ in_right[i];
encrypt.c:       |                                             ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_table2_timingleaks_encrypt':
encrypt.c: encrypt.c:252:17: note: at offset 32 into destination object 'State' of size 32
encrypt.c:   252 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:183:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_table2_timingleaks_encrypt' at encrypt.c:271:18:
encrypt.c: encrypt.c:98:52: warning: writing 32 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:    98 |         for (i = 0; i < iolen_inbytes; i++) out[i] = in_left[i] ^ in_right[i];
encrypt.c:       |                                             ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_table2_timingleaks_encrypt':
encrypt.c: encrypt.c:252:17: note: at offset [64, 96] into destination object 'State' of size 32
encrypt.c:   252 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'rhoohr' at encrypt.c:157:3,
encrypt.c:     inlined from 'rhoohr' at encrypt.c:146:20,
encrypt.c:     inlined from 'ENCorDEC' at encrypt.c:209:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_table2_timingleaks_encrypt' at encrypt.c:272:18:
encrypt.c: ...

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

Compiler output


encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:183:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_table3_timingleaks_encrypt' at encrypt.c:272:18:
encrypt.c: encrypt.c:98:52: warning: writing 32 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:    98 |         for (i = 0; i < iolen_inbytes; i++) out[i] = in_left[i] ^ in_right[i];
encrypt.c:       |                                             ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_table3_timingleaks_encrypt':
encrypt.c: encrypt.c:253:17: note: at offset 32 into destination object 'State' of size 32
encrypt.c:   253 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'HASH' at encrypt.c:183:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_table3_timingleaks_encrypt' at encrypt.c:272:18:
encrypt.c: encrypt.c:98:52: warning: writing 32 bytes into a region of size 0 [-Wstringop-overflow=]
encrypt.c:    98 |         for (i = 0; i < iolen_inbytes; i++) out[i] = in_left[i] ^ in_right[i];
encrypt.c:       |                                             ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_photonbeetleaead128rate32v1_table3_timingleaks_encrypt':
encrypt.c: encrypt.c:253:17: note: at offset [64, 96] into destination object 'State' of size 32
encrypt.c:   253 |         uint8_t State[STATE_INBYTES] = { 0 };
encrypt.c:       |                 ^~~~~
encrypt.c: In function 'XOR',
encrypt.c:     inlined from 'rhoohr' at encrypt.c:157:3,
encrypt.c:     inlined from 'rhoohr' at encrypt.c:146:20,
encrypt.c:     inlined from 'ENCorDEC' at encrypt.c:209:2,
encrypt.c:     inlined from 'crypto_aead_photonbeetleaead128rate32v1_table3_timingleaks_encrypt' at encrypt.c:273:18:
encrypt.c: ...

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

Namespace violations


photon.o PHOTON_Permutation T

Number of similar (implementation,compiler) pairs: 10, namely:
ImplementationCompiler
T:bitslice_sb32clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:bitslice_sb32clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:bitslice_sb32clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:bitslice_sb32gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:bitslice_sb32gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:bitslice_sb64clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:bitslice_sb64clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:bitslice_sb64clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:bitslice_sb64gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:bitslice_sb64gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)

Namespace violations


photon.o AddKey T
photon.o DEBUG B
photon.o FieldMult T
photon.o MessBitLen B
photon.o MixColMatrix R
photon.o MixColumn T
photon.o PHOTON_Permutation T
photon.o Permutation T
photon.o PrintState T
photon.o PrintState_Column T
photon.o RC R
photon.o ReductionPoly R
photon.o ShiftRow T
photon.o SubCell T
photon.o WORDFILTER R
photon.o sbox D

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)

Namespace violations


photon.o PHOTON_Permutation T
photon.o RC R
photon.o SCShRMCS_Table2 R

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:table2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:table2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:table2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:table2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:table2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)

Namespace violations


photon.o PHOTON_Permutation T
photon.o RC R
photon.o SCShRMCS_Table2 R
photon.o SCShRMCS_Table3 R

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:table3clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:table3clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:table3clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:table3gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:table3gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)