Implementation notes: amd64, cryptothinkx, crypto_sign/sflashv2

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_sign
Primitive: sflashv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
171480? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017021620170105
181359? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017021620170105
181464? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017021620170105
181635? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017021620170105
181920? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021620170105
182352? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017021620170105
182817? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017021620170105
188637? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017021620170105
192426? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017021620170105
192975? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017021620170105
195855? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021620170105
200358? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017021620170105
200955? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017021620170105
202284? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017021620170105
203478? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017021620170105
203640? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017021620170105
209340? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017021620170105
213711? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017021620170105
213729? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017021620170105
214287? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017021620170105
214539? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017021620170105
215157? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017021620170105
216870? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017021620170105
217542? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017021620170105
225906? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017021620170105
226476? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017021620170105
227310? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017021620170105
229431? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017021620170105
234297? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017021620170105
234591? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017021620170105
234744? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017021620170105
234954? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017021620170105
236856? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017021620170105
237249? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021620170105
238116? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017021620170105
238644? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017021620170105
240474? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017021620170105
240681? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021620170105
240726? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017021620170105
240852? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021620170105
241839? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017021620170105
242430? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017021620170105
244785? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017021620170105
245152? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017021620170105
248511? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017021620170105
248865? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017021620170105
248997? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017021620170105
249429? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017021620170105
249729? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017021620170105
249870? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021620170105
251469? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017021620170105
252312? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017021620170105
253104? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021620170105
256800? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017021620170105
258249? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017021620170105
258342? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017021620170105
259050? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017021620170105
259080? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017021620170105
260067? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017021620170105
260364? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017021620170105
260763? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017021620170105
261984? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017021620170105
264552? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017021620170105
264720? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017021620170105
265077? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021620170105
265932? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017021620170105
266340? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017021620170105
266439? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017021620170105
266448? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017021620170105
267280? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017021620170105
267492? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017021620170105
268092? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017021620170105
268539? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017021620170105
268572? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017021620170105
269262? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017021620170105
269730? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017021620170105
269883? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017021620170105
270936? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017021620170105
271128? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021620170105
271548? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017021620170105
272304? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017021620170105
274428? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017021620170105
275385? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017021620170105
275769? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017021620170105
276204? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017021620170105
276429? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017021620170105
277290? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017021620170105
277641? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017021620170105
279033? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017021620170105
279291? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017021620170105
280074? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017021620170105
280209? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017021620170105
283206? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017021620170105
284529? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017021620170105
286880? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021620170105
287222? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021620170105
287628? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017021620170105
287793? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017021620170105
288237? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017021620170105
289035? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017021620170105
289563? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017021620170105
290220? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017021620170105
293571? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017021620170105
293979? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021620170105
297688? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017021620170105
297699? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017021620170105
298980? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017021620170105
301878? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017021620170105
302295? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017021620170105
303588? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017021620170105
304719? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017021620170105
304788? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017021620170105
307494? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021620170105
310158? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017021620170105
315376? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017021620170105
315840? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017021620170105
315976? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021620170105
316956? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017021620170105
319041? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021620170105
320506? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017021620170105
323784? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021620170105
328128? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017021620170105
798789? ? ?? ? ?refcc2017021620170105
799272? ? ?? ? ?refgcc2017021620170105
915212? ? ?? ? ?refgcc_-funroll-loops2017021620170105

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: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -maes -mpclmul -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: 104, 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=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -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 -O3 -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 -O3 -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-avx -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O3 -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