Implementation notes: amd64, bolero, crypto_hash/nasha256

Computer: bolero
Microarchitecture: amd64; Broadwell+AES (406f1)
Architecture: amd64
CPU ID: GenuineIntel-000406f1-1fc9cbf5
SUPERCOP version: 20240107
Operation: crypto_hash
Primitive: nasha256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2266031138 0 13108841364 816 131824T:opt_v4clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
2286041211 0 13108853148 816 131840T:opt_v4clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
2326031999 0 13108842918 808 131888T:opt_v4clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
2329646558 0 13108857140 816 131824T:opt_v4clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
2516430679 0 13110441621 768 131904T:opt_v4gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
2595641395 0 13108853652 816 131840T:opt_v4clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
2605241096 0 13110454542 776 131904T:opt_v4gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
2755211589 0 022934 776 800T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
276529773 0 020725 768 800T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
2919613226 0 025828 816 728T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
2962015265 0 028702 776 800T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
2962812248 0 026172 816 744T:optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
2964812431 0 026660 816 744T:optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
3100812232 0 022452 816 728T:optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
3384828421 0 13110438337 752 131872T:opt_v4gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
350808714 0 018633 752 768T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
3632932465 0 13110443814 776 131904T:opt_v4gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
446038579 0 019510 808 792T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212

Compiler output

Implementation: T:opt
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
Nasha.c: Nasha.c:627:1: warning: non-void function does not return a value in all control paths [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: Nasha.c:646:1: warning: non-void function does not return a value in all control paths [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt

Compiler output

Implementation: T:opt_v4
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
Nasha.c: Nasha.c:815:29: warning: incompatible pointer to integer conversion assigning to 'uint_16t' (aka 'unsigned short') from 'uint_16t[256]' (aka 'unsigned short[256]') [-Wint-conversion]
Nasha.c: ssbox[i][j] = ssbox[i^j];
Nasha.c: ^ ~~~~~~~~~~
Nasha.c: Nasha.c:854:1: warning: non-void function does not return a value in all control paths [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: Nasha.c:873:1: warning: non-void function does not return a value in all control paths [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: 3 warnings generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt_v4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt_v4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt_v4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt_v4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt_v4

Compiler output

Implementation: T:opt_v4
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
Nasha.c: Nasha.c: In function 'Init':
Nasha.c: Nasha.c:815:29: warning: assignment to 'uint_16t' {aka 'short unsigned int'} from 'uint_16t *' {aka 'short unsigned int *'} makes integer from pointer without a cast [-Wint-conversion]
Nasha.c: 815 | ssbox[i][j] = ssbox[i^j];
Nasha.c: | ^

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt_v4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt_v4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt_v4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt_v4