Implementation notes: amd64, cryptothinkx, crypto_hash/nasha256

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_hash
Primitive: nasha256
TimeImplementationCompilerBenchmark dateSUPERCOP version
19821opt_v4clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017020120170105
20385opt_v4clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
20490opt_v4clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
20523opt_v4clang -O3 -fomit-frame-pointer -Qunused-arguments2017020120170105
20661opt_v4clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017020120170105
21060opt_v4clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020120170105
21060opt_v4clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2017020120170105
21066opt_v4clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
21075opt_v4clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
22596opt_v4clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2017020120170105
25503optclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2017020120170105
25509optclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017020120170105
25539optclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2017020120170105
25551optclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2017020120170105
25599optclang -O3 -fomit-frame-pointer -Qunused-arguments2017020120170105
25608optclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
25614optclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
25614optclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
25737optclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020120170105
25770optclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
29814optgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
29916opt_v4gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
30009opt_v4gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020120170105
30138opt_v4gcc -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
30204opt_v4gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
30210opt_v4gcc -funroll-loops -O3 -fomit-frame-pointer2017020120170105
30477opt_v4gcc -funroll-loops -O -fomit-frame-pointer2017020120170105
30486opt_v4gcc -funroll-loops -m64 -O -fomit-frame-pointer2017020120170105
30501opt_v4gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
30528opt_v4gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
30528opt_v4gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020120170105
30552optgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020120170105
30561optgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
30624optgcc -funroll-loops -O2 -fomit-frame-pointer2017020120170105
30675opt_v4gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020120170105
30690opt_v4gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
30705opt_v4gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020120170105
30705optgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020120170105
30717opt_v4gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
30723opt_v4gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
30723optgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
30726optgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020120170105
30729opt_v4gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020120170105
30732opt_v4gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
30750opt_v4gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020120170105
30777optgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
30822optgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020120170105
30825optgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
30861opt_v4gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020120170105
30876opt_v4gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020120170105
30882opt_v4gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
30882optgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
30885optgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
30936optgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020120170105
30945opt_v4gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2017020120170105
30996opt_v4gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020120170105
31074opt_v4gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020120170105
31077opt_v4gcc -O -fomit-frame-pointer2017020120170105
31095opt_v4gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020120170105
31095opt_v4gcc -m64 -march=corei7 -O -fomit-frame-pointer2017020120170105
31104opt_v4gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
31104opt_v4gcc -m64 -march=core-avx-i -O -fomit-frame-pointer2017020120170105
31104opt_v4gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020120170105
31107opt_v4gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020120170105
31119opt_v4gcc -m64 -march=corei7-avx -O -fomit-frame-pointer2017020120170105
31146optgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
31158optgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020120170105
31173opt_v4gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020120170105
31173opt_v4gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
31197opt_v4gcc -funroll-loops -O2 -fomit-frame-pointer2017020120170105
31197opt_v4gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020120170105
31224opt_v4gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
31368optgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
31383optgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
31521opt_v4gcc -march=barcelona -O2 -fomit-frame-pointer2017020120170105
31530opt_v4gcc -march=k8 -O2 -fomit-frame-pointer2017020120170105
31533opt_v4gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
31536opt_v4gcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
31548opt_v4gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
31569opt_v4gcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
31572optgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
31584opt_v4gcc -march=k8 -O3 -fomit-frame-pointer2017020120170105
31587opt_v4gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
31599opt_v4gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
31638opt_v4gcc -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
31680opt_v4gcc -march=barcelona -O -fomit-frame-pointer2017020120170105
31692opt_v4gcc -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
31695opt_v4gcc -march=barcelona -O3 -fomit-frame-pointer2017020120170105
31704opt_v4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020120170105
31722optgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020120170105
31725opt_v4gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2017020120170105
31725optgcc -march=nocona -O3 -fomit-frame-pointer2017020120170105
31746opt_v4gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020120170105
31752opt_v4gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020120170105
31755opt_v4gcc -m64 -O3 -fomit-frame-pointer2017020120170105
31755opt_v4gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020120170105
31761optgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
31770opt_v4gcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
31770opt_v4gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2017020120170105
31773opt_v4gcc -O2 -fomit-frame-pointer2017020120170105
31803opt_v4gcc -m64 -O2 -fomit-frame-pointer2017020120170105
31815optgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020120170105
31818opt_v4gcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
31824opt_v4gcc -O3 -fomit-frame-pointer2017020120170105
31839opt_v4gcc -march=nocona -O3 -fomit-frame-pointer2017020120170105
31842opt_v4gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2017020120170105
31848opt_v4gcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
31851opt_v4gcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
31866opt_v4gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2017020120170105
31869opt_v4gcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020120170105
31872opt_v4gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020120170105
31875opt_v4gcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020120170105
31881opt_v4gcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020120170105
31881opt_v4gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2017020120170105
31884opt_v4gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2017020120170105
31887opt_v4gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020120170105
31887opt_v4gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020120170105
31896opt_v4gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020120170105
31896opt_v4gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020120170105
31905optgcc -march=k8 -O2 -fomit-frame-pointer2017020120170105
31911opt_v4gcc -march=nocona -O2 -fomit-frame-pointer2017020120170105
31947optgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
32124optgcc -march=barcelona -O3 -fomit-frame-pointer2017020120170105
32133opt_v4gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020120170105
32139optgcc -m64 -O2 -fomit-frame-pointer2017020120170105
32163optgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
32193optgcc -funroll-loops -O3 -fomit-frame-pointer2017020120170105
32205opt_v4gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
32211optgcc -march=k8 -O3 -fomit-frame-pointer2017020120170105
32223optgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020120170105
32253opt_v4gcc -march=nocona -O -fomit-frame-pointer2017020120170105
32256optgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
32271optgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
32295optgcc -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
32370optgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020120170105
32373opt_v4gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
32373optgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020120170105
32379opt_v4gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
32382opt_v4gcc -m64 -Os -fomit-frame-pointer2017020120170105
32388opt_v4gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020120170105
32400opt_v4gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
32400opt_v4gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020120170105
32400optgcc -march=nocona -O -fomit-frame-pointer2017020120170105
32427opt_v4gcc -funroll-loops -Os -fomit-frame-pointer2017020120170105
32433opt_v4gcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020120170105
32451optgcc -O3 -fomit-frame-pointer2017020120170105
32457optgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020120170105
32466optgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020120170105
32493optgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020120170105
32499optgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020120170105
32505optgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2017020120170105
32514optgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020120170105
32541optgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2017020120170105
32544optgcc -m64 -march=core2 -O -fomit-frame-pointer2017020120170105
32568optgcc -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
32568optgcc -m64 -O3 -fomit-frame-pointer2017020120170105
32568optgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2017020120170105
32574optgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
32583optgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020120170105
32601optgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020120170105
32616optgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
32625optgcc -march=nocona -O2 -fomit-frame-pointer2017020120170105
32715opt_v4gcc -march=k8 -O -fomit-frame-pointer2017020120170105
32787optgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2017020120170105
32805optgcc -funroll-loops -O -fomit-frame-pointer2017020120170105
32805optgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020120170105
32820optgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
32925optgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020120170105
32937optgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
32961opt_v4gcc -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
32964optgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2017020120170105
32970optgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
32982opt_v4gcc -march=nocona -Os -fomit-frame-pointer2017020120170105
33141optgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
33195optgcc -O2 -fomit-frame-pointer2017020120170105
33210optgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2017020120170105
33213optgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2017020120170105
33231optgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020120170105
33243opt_v4gcc -m64 -O -fomit-frame-pointer2017020120170105
33258optgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020120170105
33264optgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020120170105
33288optgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020120170105
33399optgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2017020120170105
33402opt_v4gcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020120170105
33408opt_v4gcc -march=barcelona -Os -fomit-frame-pointer2017020120170105
33420opt_v4gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020120170105
33426opt_v4gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2017020120170105
33429opt_v4gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2017020120170105
33429opt_v4gcc -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
33432opt_v4gcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
33432opt_v4gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2017020120170105
33432optgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020120170105
33435opt_v4gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020120170105
33438opt_v4gcc -Os -fomit-frame-pointer2017020120170105
33438opt_v4gcc -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
33438opt_v4gcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
33447opt_v4gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020120170105
33450opt_v4gcc -march=k8 -Os -fomit-frame-pointer2017020120170105
33453optgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020120170105
33462opt_v4gcc -m64 -march=core2 -Os -fomit-frame-pointer2017020120170105
33465optgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020120170105
33486optgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020120170105
33531optgcc -funroll-loops -Os -fomit-frame-pointer2017020120170105
33531opt_v4gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020120170105
33537optgcc -march=k8 -O -fomit-frame-pointer2017020120170105
33555optgcc -march=barcelona -O -fomit-frame-pointer2017020120170105
33558optgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
33561optgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
33564optgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
33579optgcc -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
33582optgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
33588optgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020120170105
33588optgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020120170105
33591optgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2017020120170105
33594optgcc -O -fomit-frame-pointer2017020120170105
33612optgcc -m64 -O -fomit-frame-pointer2017020120170105
33639optgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
33648optgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020120170105
33693optgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020120170105
33726optgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
34044optgcc -march=barcelona -O2 -fomit-frame-pointer2017020120170105
34419opt_v4gcc -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
34425opt_v4gcc -m64 -march=core2 -O -fomit-frame-pointer2017020120170105
34524optgcc -march=nocona -Os -fomit-frame-pointer2017020120170105
34587optgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
34995optgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020120170105
35091opt_v4gcc -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
35328optgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020120170105
35448optgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2017020120170105
35724optgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020120170105
35730optgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020120170105
35784optgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020120170105
35790optgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2017020120170105
35838optgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020120170105
35901optgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2017020120170105
35946optgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
35958optgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020120170105
35964optgcc -march=barcelona -Os -fomit-frame-pointer2017020120170105
35973optgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
35985optgcc -march=k8 -Os -fomit-frame-pointer2017020120170105
36024optgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
36072optgcc -m64 -Os -fomit-frame-pointer2017020120170105
36387optgcc -Os -fomit-frame-pointer2017020120170105
36387optgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
60960opt_v4gcc -funroll-loops2017020120170105
63048opt_v4gcc2017020120170105
68415optgcc2017020120170105
70152opt_v4cc2017020120170105
70593optgcc -funroll-loops2017020120170105
75471optcc2017020120170105

Compiler output

Implementation: crypto_hash/nasha256/opt_v4
Compiler: cc
Nasha.c: Nasha.c: In function ‘Init’:
Nasha.c: Nasha.c:815:29: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
Nasha.c: ssbox[i][j] = ssbox[i^j];
Nasha.c: ^

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

Compiler output

Implementation: crypto_hash/nasha256/opt
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
Nasha.c: Nasha.c:627:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: Nasha.c:646:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments opt
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments opt
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt

Compiler output

Implementation: crypto_hash/nasha256/opt_v4
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
Nasha.c: Nasha.c:815:29: warning: incompatible pointer to integer conversion assigning to 'uint_16t' (aka 'unsigned short') from 'uint_16t [256]' [-Wint-conversion]
Nasha.c: ssbox[i][j] = ssbox[i^j];
Nasha.c: ^ ~~~~~~~~~~
Nasha.c: Nasha.c:854:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: Nasha.c:873:1: warning: control may reach end of non-void function [-Wreturn-type]
Nasha.c: }
Nasha.c: ^
Nasha.c: 3 warnings generated.

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments opt_v4
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments opt_v4
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments opt_v4
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments opt_v4
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments opt_v4
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments opt_v4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt_v4
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt_v4
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt_v4
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments opt_v4

Compiler output

Implementation: crypto_hash/nasha256/opt_v4
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
Nasha.c: Nasha.c: In function ‘Init’:
Nasha.c: Nasha.c:815:29: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
Nasha.c: ssbox[i][j] = ssbox[i^j];
Nasha.c: ^
Nasha.c: Nasha.c: In function ‘Init’:
Nasha.c: Nasha.c:815:29: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
Nasha.c: ssbox[i][j] = ssbox[i^j];
Nasha.c: ^

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