Implementation notes: amd64, hertz, crypto_stream/lexv2

Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20240716
Operation: crypto_stream
Primitive: lexv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
66539660 0 423349 804 1064T:e/v2/schwabe/amd64-1gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
66749368 0 123248 820 1032T:e/v2/schwabe/amd64-1clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
66939660 0 425469 804 1128T:e/v2/schwabe/amd64-1gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
67049456 0 421568 780 1032T:e/v2/schwabe/amd64-1gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
67099418 0 129343 828 1032T:e/v2/schwabe/amd64-1clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
67629418 0 129439 828 1032T:e/v2/schwabe/amd64-1clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
705216604 0 432853 804 1128T:e/v2/refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
711913852 0 426328 780 1032T:e/v2/refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
716714426 0 428581 804 1064T:e/v2/refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
717717995 0 137927 828 1032T:e/v2/refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
718517995 0 138039 828 1032T:e/v2/refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
720514245 0 128032 820 1032T:e/v2/refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
75849012 0 421120 780 1032T:e/v2/schwabe/amd64-2gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
76038924 0 122800 820 1032T:e/v2/schwabe/amd64-2clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
76039216 0 425021 804 1128T:e/v2/schwabe/amd64-2gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
76068974 0 128895 828 1032T:e/v2/schwabe/amd64-2clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
76099216 0 422901 804 1064T:e/v2/schwabe/amd64-2gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
76178974 0 128991 828 1032T:e/v2/schwabe/amd64-2clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716

Compiler output


lex.c: In file included from lex.c:1:
lex.c: ./e/lex.c:685:9: warning: array index 10 is past the end of the array (that has type 'u32[10]' (aka 'unsigned int[10]')) [-Warray-bounds]
lex.c:   685 |         ctx->ks[10] = (t0 & 0xFF00FF00) ^ ((t2 & 0xFF00FF00)>>8); /* Leak for odd rounds */
lex.c:       |         ^       ~~
lex.c: ./e/ecrypt-sync.h:53:3: note: array 'ks' declared here
lex.c:    53 |   u32 ks[NUMWORDS];                     /* Keystream words collected from leaks */
lex.c:       |   ^
lex.c: In file included from lex.c:1:
lex.c: ./e/lex.c:692:6: warning: array index 11 is past the end of the array (that has type 'u32[10]' (aka 'unsigned int[10]')) [-Warray-bounds]
lex.c:   692 |             ctx->ks[11] = ((s0 & 0xFF00FF)<<8) ^ (s2 & 0xFF00FF);    /* Leak for even rounds */
lex.c:       |             ^       ~~
lex.c: ./e/ecrypt-sync.h:53:3: note: array 'ks' declared here
lex.c:    53 |   u32 ks[NUMWORDS];                     /* Keystream words collected from leaks */
lex.c:       |   ^
lex.c: In file included from lex.c:1:
lex.c: ./e/lex.c:698:13: warning: array index 12 is past the end of the array (that has type 'u32[10]' (aka 'unsigned int[10]')) [-Warray-bounds]
lex.c:   698 |             ctx->ks[12] = (t0 & 0xFF00FF00) ^ ((t2 & 0xFF00FF00)>>8); /* Leak for odd rounds */
lex.c:       |             ^       ~~
lex.c: ./e/ecrypt-sync.h:53:3: note: array 'ks' declared here
lex.c:    53 |   u32 ks[NUMWORDS];                     /* Keystream words collected from leaks */
lex.c:       |   ^
lex.c: 3 warnings generated.

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

Compiler output


lex.c: In file included from lex.c:1:
lex.c: e/lex.c: In function 'rijndaelEncrypt':
lex.c: e/lex.c:685:16: warning: array subscript 10 is above array bounds of 'u32[10]' {aka 'unsigned int[10]'} [-Warray-bounds=]
lex.c:   685 |         ctx->ks[10] = (t0 & 0xFF00FF00) ^ ((t2 & 0xFF00FF00)>>8); /* Leak for odd rounds */
lex.c:       |         ~~~~~~~^~~~
lex.c: In file included from e/lex.c:34:
lex.c: e/ecrypt-sync.h:53:7: note: while referencing 'ks'
lex.c:    53 |   u32 ks[NUMWORDS];                     /* Keystream words collected from leaks */
lex.c:       |       ^~
lex.c: e/lex.c:692:20: warning: array subscript 11 is above array bounds of 'u32[10]' {aka 'unsigned int[10]'} [-Warray-bounds=]
lex.c:   692 |             ctx->ks[11] = ((s0 & 0xFF00FF)<<8) ^ (s2 & 0xFF00FF);    /* Leak for even rounds */
lex.c:       |             ~~~~~~~^~~~
lex.c: e/ecrypt-sync.h:53:7: note: while referencing 'ks'
lex.c:    53 |   u32 ks[NUMWORDS];                     /* Keystream words collected from leaks */
lex.c:       |       ^~
lex.c: e/lex.c:698:20: warning: array subscript 12 is above array bounds of 'u32[10]' {aka 'unsigned int[10]'} [-Warray-bounds=]
lex.c:   698 |             ctx->ks[12] = (t0 & 0xFF00FF00) ^ ((t2 & 0xFF00FF00)>>8); /* Leak for odd rounds */
lex.c:       |             ~~~~~~~^~~~
lex.c: e/ecrypt-sync.h:53:7: note: while referencing 'ks'
lex.c:    53 |   u32 ks[NUMWORDS];                     /* Keystream words collected from leaks */
lex.c:       |       ^~

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

Namespace violations


lex.o ECRYPT_process_blocks T
lex.o LEX_ivsetup T
lex.o rijndaelEncrypt T
lex.o rijndaelKeySetupEnc T

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

Namespace violations


table.o aes_constants R
table.o aes_table0 R
table.o aes_table1 R
table.o aes_table2 R
table.o aes_table3 R
table.o aes_tablex R

Number of similar (implementation,compiler) pairs: 6, namely:
ImplementationCompiler
T:e/v2/schwabe/amd64-1clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:e/v2/schwabe/amd64-1clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:e/v2/schwabe/amd64-1clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:e/v2/schwabe/amd64-1gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:e/v2/schwabe/amd64-1gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:e/v2/schwabe/amd64-1gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)