Implementation notes: amd64, bigmem, crypto_dh/nistp256

Computer: bigmem
Architecture: amd64
CPU ID: GenuineIntel-000206e6-bfebfbff
SUPERCOP version: 20141124
Operation: crypto_dh
Primitive: nistp256
TimeImplementationCompilerBenchmark dateSUPERCOP version
5328180refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2015021620141124
5328296refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2015021620141124
5328296refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2015021620141124
5328486refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
5328503refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2015021620141124
5328834refgcc -O3 -fomit-frame-pointer2015021620141124
5328956refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2015021620141124
5328964refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2015021620141124
5329050refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2015021620141124
5329058refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2015021620141124
5329769refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2015021620141124
5329948refgcc -march=k8 -O3 -fomit-frame-pointer2015021620141124
5329970refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
5330098refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2015021620141124
5330242refgcc -funroll-loops -O3 -fomit-frame-pointer2015021620141124
5330299refgcc -m64 -O3 -fomit-frame-pointer2015021620141124
5330866refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
5331121refgcc -funroll-loops -O -fomit-frame-pointer2015021620141124
5331146refgcc -march=nocona -O3 -fomit-frame-pointer2015021620141124
5331699refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2015021620141124
5332033refgcc -funroll-loops -O2 -fomit-frame-pointer2015021620141124
5332707refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2015021620141124
5333390refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2015021620141124
5333441refgcc -m64 -Os -fomit-frame-pointer2015021620141124
5333521refgcc -funroll-loops -Os -fomit-frame-pointer2015021620141124
5333679refgcc -Os -fomit-frame-pointer2015021620141124
5333758refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2015021620141124
5333912refgcc -march=barcelona -Os -fomit-frame-pointer2015021620141124
5333954refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2015021620141124
5334031refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2015021620141124
5334093refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2015021620141124
5334107refgcc -march=k8 -O2 -fomit-frame-pointer2015021620141124
5334152refgcc -march=barcelona -O3 -fomit-frame-pointer2015021620141124
5334189refgcc -m64 -O2 -fomit-frame-pointer2015021620141124
5334223refgcc -m64 -march=k8 -Os -fomit-frame-pointer2015021620141124
5334232refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2015021620141124
5334342refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2015021620141124
5334436refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2015021620141124
5334504refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2015021620141124
5334549refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2015021620141124
5334557refgcc -O2 -fomit-frame-pointer2015021620141124
5334639refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2015021620141124
5334872refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2015021620141124
5334940refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2015021620141124
5335050refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
5335187refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2015021620141124
5335240refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2015021620141124
5335360refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
5335552refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2015021620141124
5335555refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2015021620141124
5335761refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2015021620141124
5335841refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
5335898refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2015021620141124
5336014refgcc -march=k8 -Os -fomit-frame-pointer2015021620141124
5336651refgcc -march=barcelona -O2 -fomit-frame-pointer2015021620141124
5336827refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2015021620141124
5337187refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2015021620141124
5337348refgcc -funroll-loops -m64 -O -fomit-frame-pointer2015021620141124
5337983refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2015021620141124
5338363refgcc -march=barcelona -O -fomit-frame-pointer2015021620141124
5338445refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2015021620141124
5338603refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2015021620141124
5339029refgcc -march=nocona -Os -fomit-frame-pointer2015021620141124
5339082refgcc -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
5339612refgcc -O -fomit-frame-pointer2015021620141124
5339881refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2015021620141124
5340035refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2015021620141124
5340128refgcc -m64 -march=core2 -Os -fomit-frame-pointer2015021620141124
5340145refgcc -march=nocona -O -fomit-frame-pointer2015021620141124
5340332refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2015021620141124
5340366refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2015021620141124
5340689refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2015021620141124
5341176refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2015021620141124
5341284refgcc -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
5341851refgcc -m64 -march=nocona -O -fomit-frame-pointer2015021620141124
5342720refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2015021620141124
5344403refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2015021620141124
5344519refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2015021620141124
5347047refgcc -march=k8 -O -fomit-frame-pointer2015021620141124
5347121refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2015021620141124
5347307refgcc -m64 -march=nocona -Os -fomit-frame-pointer2015021620141124
5347636refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2015021620141124
5348472refgcc -m64 -march=barcelona -O -fomit-frame-pointer2015021620141124
5348900refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2015021620141124
5349302refgcc -march=nocona -O2 -fomit-frame-pointer2015021620141124
5349356refgcc -m64 -march=core2 -O -fomit-frame-pointer2015021620141124
5352039refgcc -m64 -march=k8 -O -fomit-frame-pointer2015021620141124
5360508refgcc2015021620141124
5361282refgcc -m64 -O -fomit-frame-pointer2015021620141124
5365654refcc2015021620141124
5369816refgcc -funroll-loops2015021620141124

Compiler output

Implementation: crypto_dh/nistp256/wbl
Compiler: cc
curve.c: curve.c: In function 'p256scalarmult':
curve.c: curve.c:179: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:179: note: use option -std=c99 or -std=gnu99 to compile your code
curve.c: curve.c:182: error: redefinition of 'i'
curve.c: curve.c:179: note: previous definition of 'i' was here
curve.c: curve.c:182: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:183: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:194: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c: In function 'p256dblmult_base':
curve.c: curve.c:255: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:258: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:260: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:265: error: redefinition of 'i'
curve.c: curve.c:255: note: previous definition of 'i' was here
curve.c: curve.c:265: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:266: error: 'for' loop initial declarations are only allowed in C99 mode

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

Compiler output

Implementation: crypto_dh/nistp256/wbl
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
curve.c: curve.c: In function 'p256scalarmult':
curve.c: curve.c:179: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:179: note: use option -std=c99 or -std=gnu99 to compile your code
curve.c: curve.c:182: error: redefinition of 'i'
curve.c: curve.c:179: note: previous definition of 'i' was here
curve.c: curve.c:182: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:183: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:194: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c: In function 'p256dblmult_base':
curve.c: curve.c:255: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:258: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:260: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:265: error: redefinition of 'i'
curve.c: curve.c:255: note: previous definition of 'i' was here
curve.c: curve.c:265: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:266: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c: In function 'p256scalarmult':
curve.c: curve.c:179: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:179: note: use option -std=c99 or -std=gnu99 to compile your code
curve.c: curve.c:182: error: redefinition of 'i'
curve.c: curve.c:179: note: previous definition of 'i' was here
curve.c: curve.c:182: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:183: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:194: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c: In function 'p256dblmult_base':
curve.c: curve.c:255: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:258: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:260: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:265: error: redefinition of 'i'
curve.c: curve.c:255: note: previous definition of 'i' was here
curve.c: curve.c:265: error: 'for' loop initial declarations are only allowed in C99 mode
curve.c: curve.c:266: error: 'for' loop initial declarations are only allowed in C99 mode

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