Implementation notes: amd64, h3neo, crypto_sign/sflashv2

Computer: h3neo
Architecture: amd64
CPU ID: AuthenticAMD-00100f63-078bfbff
SUPERCOP version: 20170105
Operation: crypto_sign
Primitive: sflashv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
533273? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2016111520161009
533455? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2016111520161009
535217? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2016111520161009
535300? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2016111520161009
535738? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2016111520161009
536275? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2016111520161009
536636? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2016111520161009
536850? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2016111520161009
537071? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2016111520161009
537091? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2016111520161009
537561? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2016111520161009
538218? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2016111520161009
539106? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2016111520161009
539665? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016111520161009
540048? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2016111520161009
540075? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2016111520161009
540151? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2016111520161009
541056? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016111520161009
541700? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2016111520161009
541904? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2016111520161009
542481? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2016111520161009
544175? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2016111520161009
545014? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2016111520161009
546774? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2016111520161009

Test failure

Implementation: crypto_sign/sflashv2/ref
Compiler: cc
error 111
crypto_sign_open with c=t overlap returns nonzero

Number of similar (compiler,implementation) pairs: 74, namely:
CompilerImplementations
cc ref
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
gcc ref
gcc -O2 -fomit-frame-pointer ref
gcc -O3 -fomit-frame-pointer ref
gcc -O -fomit-frame-pointer ref
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops ref
gcc -funroll-loops -O2 -fomit-frame-pointer ref
gcc -funroll-loops -O3 -fomit-frame-pointer ref
gcc -funroll-loops -O -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc -m64 -O2 -fomit-frame-pointer ref
gcc -m64 -O3 -fomit-frame-pointer ref
gcc -m64 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -march=barcelona -O2 -fomit-frame-pointer ref
gcc -march=barcelona -O3 -fomit-frame-pointer ref
gcc -march=barcelona -O -fomit-frame-pointer ref
gcc -march=k8 -O2 -fomit-frame-pointer ref
gcc -march=k8 -O3 -fomit-frame-pointer ref
gcc -march=k8 -O -fomit-frame-pointer ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -O2 -fomit-frame-pointer ref
gcc -march=nocona -O3 -fomit-frame-pointer ref
gcc -march=nocona -O -fomit-frame-pointer ref

Test failure

Implementation: crypto_sign/sflashv2/ref
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
error 111
crypto_sign_open with c=t overlap returns nonzero
error 111
crypto_sign_open with c=t overlap returns nonzero

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O -fomit-frame-pointer ref

Test failure

Implementation: crypto_sign/sflashv2/ref
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
lib_flash.c: lib_flash.c:409:50: warning: '/*' within block comment [-Wcomment]
lib_flash.c: init_table_flash(CK->M,/*CK->I,*/CK->M1/*,CK->M2/* /*,CK->M3*/);
lib_flash.c: ^
lib_flash.c: lib_flash.c:409:53: warning: '/*' within block comment [-Wcomment]
lib_flash.c: init_table_flash(CK->M,/*CK->I,*/CK->M1/*,CK->M2/* /*,CK->M3*/);
lib_flash.c: ^
lib_flash.c: lib_flash.c:690:3: warning: '/*' within block comment [-Wcomment]
lib_flash.c: /*mis <E0> la puissance 2^7^22 de tmp
lib_flash.c: ^
lib_flash.c: lib_flash.c:692:3: warning: '/*' within block comment [-Wcomment]
lib_flash.c: /*
lib_flash.c: ^
lib_flash.c: lib_flash.c:695:4: warning: '/*' within block comment [-Wcomment]
lib_flash.c: /* inversion affine de S*/
lib_flash.c: ^
lib_flash.c: lib_flash.c:910:34: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
lib_flash.c: printf("Erreur de fichier de cl<82> publique: '%s'\n",fichier);
lib_flash.c: ^~~~
lib_flash.c: lib_flash.c:1016:34: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
lib_flash.c: printf("Erreur de fichier de cl<82> secr<8A>te: '%s'\n",fichier);
lib_flash.c: ^~~~ ~~~~
lib_flash.c: 7 warnings generated.
table_flash.c: table_flash.c:25:8: warning: ^ has lower precedence than <; < will be evaluated first [-Wparentheses]
table_flash.c: if( x^P < x)
table_flash.c: ^~~~~~
table_flash.c: table_flash.c:25:8: note: place parentheses around the '<' expression to silence this warning
table_flash.c: if( x^P < x)
table_flash.c: ^
table_flash.c: ( )
table_flash.c: table_flash.c:25:8: note: place parentheses around the ^ expression to evaluate it first
table_flash.c: if( x^P < x)
table_flash.c: ^
table_flash.c: ( )
table_flash.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: gcc -O2 -fomit-frame-pointer
lib_flash.c: lib_flash.c: In function 'Flash_load_public_key':
lib_flash.c: lib_flash.c:913:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,19266,in);
lib_flash.c: ^
lib_flash.c: lib_flash.c: In function 'Flash_load_private_key':
lib_flash.c: lib_flash.c:1019:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,2823,in);
lib_flash.c: ^

Number of similar (compiler,implementation) pairs: 89, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer ref
gcc -O3 -fomit-frame-pointer ref
gcc -O -fomit-frame-pointer ref
gcc -Os -fomit-frame-pointer ref
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -O2 -fomit-frame-pointer ref
gcc -funroll-loops -O3 -fomit-frame-pointer ref
gcc -funroll-loops -O -fomit-frame-pointer ref
gcc -funroll-loops -Os -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc -m64 -O2 -fomit-frame-pointer ref
gcc -m64 -O3 -fomit-frame-pointer ref
gcc -m64 -O -fomit-frame-pointer ref
gcc -m64 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -O2 -fomit-frame-pointer ref
gcc -march=barcelona -O3 -fomit-frame-pointer ref
gcc -march=barcelona -O -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -O2 -fomit-frame-pointer ref
gcc -march=k8 -O3 -fomit-frame-pointer ref
gcc -march=k8 -O -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -O2 -fomit-frame-pointer ref
gcc -march=nocona -O3 -fomit-frame-pointer ref
gcc -march=nocona -O -fomit-frame-pointer ref
gcc -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
lib_flash.c: lib_flash.c: In function 'Flash_load_public_key':
lib_flash.c: lib_flash.c:913:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,19266,in);
lib_flash.c: ^
lib_flash.c: lib_flash.c: In function 'Flash_load_private_key':
lib_flash.c: lib_flash.c:1019:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,2823,in);
lib_flash.c: ^
lib_flash.c: lib_flash.c: In function 'Flash_load_public_key':
lib_flash.c: lib_flash.c:913:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,19266,in);
lib_flash.c: ^
lib_flash.c: lib_flash.c: In function 'Flash_load_private_key':
lib_flash.c: lib_flash.c:1019:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,2823,in);
lib_flash.c: ^

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref