Implementation notes: amd64, hydra1, crypto_hash/mgrostl256

Computer: hydra1
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_hash
Primitive: mgrostl256
TimeImplementationCompilerBenchmark dateSUPERCOP version
41099opt-64gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016101220161009
41135opt-64gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016101220161009
41195opt-64gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016101220161009
41270opt-64gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016101220161009
41295opt-64gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016101220161009
41363opt-64gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016101220161009
41405opt-64gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016101220161009
41461opt-64gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016101220161009
41469opt-64gcc -funroll-loops -O3 -fomit-frame-pointer2016101220161009
41517opt-64gcc -funroll-loops -O2 -fomit-frame-pointer2016101220161009
41673opt-64gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016101220161009
41795opt-64gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016101220161009
41848opt-64gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016101220161009
41883opt-64gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016101220161009
42061opt-64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016101220161009
42211opt-64gcc -funroll-loops -m64 -O -fomit-frame-pointer2016101220161009
42237opt-64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016101220161009
42264opt-64gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016101220161009
42317opt-64gcc -funroll-loops -O -fomit-frame-pointer2016101220161009
42522opt-64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016101220161009
42528opt-64gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016101220161009
42632opt-64gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016101220161009
42808opt-64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016101220161009
42955opt-64gcc -m64 -O3 -fomit-frame-pointer2016101220161009
42979opt-64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016101220161009
43035opt-64gcc -fno-schedule-insns -O3 -fomit-frame-pointer2016101220161009
43065opt-64gcc -O3 -fomit-frame-pointer2016101220161009
43107opt-64gcc -march=k8 -O3 -fomit-frame-pointer2016101220161009
43346opt-64gcc -m64 -march=k8 -O3 -fomit-frame-pointer2016101220161009
43437opt-64gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016101220161009
43577opt-64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016101220161009
43597opt-64gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016101220161009
43624opt-64gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016101220161009
43805opt-64gcc -march=barcelona -O3 -fomit-frame-pointer2016101220161009
44050opt-64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016101220161009
44147opt-64gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016101220161009
44197opt-64gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016101220161009
44237opt-64gcc -m64 -march=core2 -O2 -fomit-frame-pointer2016101220161009
44274opt-64gcc -m64 -march=k8 -O -fomit-frame-pointer2016101220161009
44301opt-64gcc -march=k8 -O -fomit-frame-pointer2016101220161009
44313opt-64gcc -O2 -fomit-frame-pointer2016101220161009
44315opt-64gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016101220161009
44323opt-64gcc -m64 -march=nocona -O3 -fomit-frame-pointer2016101220161009
44429opt-64gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016101220161009
44474opt-64gcc -m64 -O2 -fomit-frame-pointer2016101220161009
44632opt-64gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016101220161009
44654opt-64gcc -m64 -march=barcelona -O -fomit-frame-pointer2016101220161009
44658opt-64gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016101220161009
44757opt-64gcc -fno-schedule-insns -O2 -fomit-frame-pointer2016101220161009
44811opt-64gcc -march=barcelona -O2 -fomit-frame-pointer2016101220161009
44821opt-64gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016101220161009
44876opt-64gcc -march=nocona -O3 -fomit-frame-pointer2016101220161009
44901opt-64gcc -m64 -march=k8 -O2 -fomit-frame-pointer2016101220161009
44901opt-64gcc -march=barcelona -O -fomit-frame-pointer2016101220161009
44936opt-64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016101220161009
44941opt-64gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016101220161009
44997opt-64gcc -march=k8 -O2 -fomit-frame-pointer2016101220161009
45355opt-64gcc -m64 -march=nocona -O -fomit-frame-pointer2016101220161009
45376opt-64gcc -march=nocona -O -fomit-frame-pointer2016101220161009
45546opt-64gcc -m64 -march=corei7 -O -fomit-frame-pointer2016101220161009
45984opt-64gcc -m64 -march=core2 -O -fomit-frame-pointer2016101220161009
45997opt-64gcc -m64 -O -fomit-frame-pointer2016101220161009
46075opt-64gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016101220161009
46125opt-64gcc -fno-schedule-insns -O -fomit-frame-pointer2016101220161009
46243opt-64gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016101220161009
46387opt-64gcc -O -fomit-frame-pointer2016101220161009
46502opt-64gcc -march=nocona -O2 -fomit-frame-pointer2016101220161009
46571opt-64gcc -m64 -march=nocona -O2 -fomit-frame-pointer2016101220161009
51258opt-64gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016101220161009
51362opt-64gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016101220161009
51370opt-64gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016101220161009
51673opt-64gcc -funroll-loops -m64 -Os -fomit-frame-pointer2016101220161009
51675opt-64gcc -funroll-loops -Os -fomit-frame-pointer2016101220161009
51784opt-64gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016101220161009
51896opt-64gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016101220161009
52740opt-64gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016101220161009
53110opt-64gcc -m64 -march=nocona -Os -fomit-frame-pointer2016101220161009
53152opt-64gcc -m64 -march=core2 -Os -fomit-frame-pointer2016101220161009
53219opt-64gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016101220161009
53248opt-64gcc -march=nocona -Os -fomit-frame-pointer2016101220161009
53269opt-64gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016101220161009
53392opt-64gcc -m64 -march=corei7 -Os -fomit-frame-pointer2016101220161009
53467opt-64gcc -Os -fomit-frame-pointer2016101220161009
53504opt-64gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016101220161009
53537opt-64gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016101220161009
53559opt-64gcc -fno-schedule-insns -Os -fomit-frame-pointer2016101220161009
53592opt-64gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016101220161009
53741opt-64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2016101220161009
53741opt-64gcc -march=barcelona -Os -fomit-frame-pointer2016101220161009
53861opt-64gcc -m64 -march=k8 -Os -fomit-frame-pointer2016101220161009
53869opt-64gcc -march=k8 -Os -fomit-frame-pointer2016101220161009
53871opt-64gcc -m64 -Os -fomit-frame-pointer2016101220161009
86152opt-32gcc -funroll-loops -O3 -fomit-frame-pointer2016101220161009
86163opt-32gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016101220161009
86185opt-32gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016101220161009
86432opt-32gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016101220161009
86479opt-32gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016101220161009
87068opt-32gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016101220161009
87120opt-32gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016101220161009
87180opt-32gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016101220161009
87462opt-32gcc -funroll-loops -O2 -fomit-frame-pointer2016101220161009
87470opt-32gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016101220161009
87707opt-32gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016101220161009
87735opt-32gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016101220161009
87771opt-32gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016101220161009
87904opt-32gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016101220161009
99216opt-32gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016101220161009
99385opt-32gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016101220161009
99404opt-32gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016101220161009
99468opt-32gcc -funroll-loops -Os -fomit-frame-pointer2016101220161009
99530opt-32gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016101220161009
99681opt-32gcc -funroll-loops -m64 -Os -fomit-frame-pointer2016101220161009
99720opt-32gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016101220161009
99742opt-32gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016101220161009
100062opt-32gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016101220161009
100901opt-32gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016101220161009
100916opt-32gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016101220161009
101110opt-32gcc -march=nocona -O3 -fomit-frame-pointer2016101220161009
101365opt-32gcc -m64 -march=nocona -O3 -fomit-frame-pointer2016101220161009
101373opt-32gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016101220161009
101375opt-32gcc -funroll-loops -m64 -O -fomit-frame-pointer2016101220161009
101448opt-32gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016101220161009
101449opt-32gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016101220161009
101528opt-32gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016101220161009
101586opt-32gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016101220161009
101664opt-32gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016101220161009
101795opt-32gcc -funroll-loops -O -fomit-frame-pointer2016101220161009
102840opt-32gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016101220161009
103563opt-32gcc -march=nocona -O2 -fomit-frame-pointer2016101220161009
103616opt-32gcc -m64 -march=nocona -O2 -fomit-frame-pointer2016101220161009
103755opt-32gcc -m64 -march=nocona -O -fomit-frame-pointer2016101220161009
103904opt-32gcc -march=nocona -O -fomit-frame-pointer2016101220161009
104190opt-32gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016101220161009
104211opt-32gcc -m64 -march=corei7 -O -fomit-frame-pointer2016101220161009
104337opt-32gcc -m64 -march=core2 -O -fomit-frame-pointer2016101220161009
104362opt-32gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016101220161009
104385opt-32gcc -O3 -fomit-frame-pointer2016101220161009
104571opt-32gcc -fno-schedule-insns -O3 -fomit-frame-pointer2016101220161009
104596opt-32gcc -march=k8 -O3 -fomit-frame-pointer2016101220161009
104603opt-32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016101220161009
104610opt-32gcc -m64 -O3 -fomit-frame-pointer2016101220161009
104660opt-32gcc -m64 -march=k8 -O3 -fomit-frame-pointer2016101220161009
104753opt-32gcc -fno-schedule-insns -O -fomit-frame-pointer2016101220161009
104768opt-32gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016101220161009
104980opt-32gcc -O -fomit-frame-pointer2016101220161009
105056opt-32gcc -march=barcelona -O3 -fomit-frame-pointer2016101220161009
105176opt-32gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016101220161009
105229opt-32gcc -m64 -O -fomit-frame-pointer2016101220161009
105240opt-32gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016101220161009
105245opt-32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016101220161009
105248opt-32gcc -march=k8 -O -fomit-frame-pointer2016101220161009
105268opt-32gcc -m64 -march=k8 -O -fomit-frame-pointer2016101220161009
105415opt-32gcc -march=barcelona -O -fomit-frame-pointer2016101220161009
105850opt-32gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016101220161009
105885opt-32gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016101220161009
105928opt-32gcc -m64 -march=barcelona -O -fomit-frame-pointer2016101220161009
106094opt-32gcc -fno-schedule-insns -O2 -fomit-frame-pointer2016101220161009
106104opt-32gcc -O2 -fomit-frame-pointer2016101220161009
107066opt-32gcc -march=k8 -O2 -fomit-frame-pointer2016101220161009
107365opt-32gcc -march=barcelona -O2 -fomit-frame-pointer2016101220161009
107464opt-32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016101220161009
107498opt-32gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016101220161009
107573opt-32gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016101220161009
107820opt-32gcc -m64 -march=k8 -O2 -fomit-frame-pointer2016101220161009
110036opt-32gcc -m64 -O2 -fomit-frame-pointer2016101220161009
110047opt-32gcc -m64 -march=core2 -O2 -fomit-frame-pointer2016101220161009
110168opt-32gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016101220161009
110489opt-32gcc -march=nocona -Os -fomit-frame-pointer2016101220161009
110521opt-32gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016101220161009
110651opt-32gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016101220161009
110748opt-32gcc -m64 -march=nocona -Os -fomit-frame-pointer2016101220161009
112802opt-32gcc -fno-schedule-insns -Os -fomit-frame-pointer2016101220161009
112825opt-32gcc -m64 -Os -fomit-frame-pointer2016101220161009
112962opt-32gcc -m64 -march=barcelona -Os -fomit-frame-pointer2016101220161009
113220opt-32gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016101220161009
113288opt-32gcc -march=barcelona -Os -fomit-frame-pointer2016101220161009
113338opt-32gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016101220161009
113369opt-32gcc -Os -fomit-frame-pointer2016101220161009
113412opt-32gcc -m64 -march=k8 -Os -fomit-frame-pointer2016101220161009
113494opt-32gcc -march=k8 -Os -fomit-frame-pointer2016101220161009
113608opt-32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016101220161009
113715opt-32gcc -m64 -march=corei7 -Os -fomit-frame-pointer2016101220161009
113881opt-32gcc -m64 -march=core2 -Os -fomit-frame-pointer2016101220161009
114368opt-32gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016101220161009
115070opt-32clang -O3 -fomit-frame-pointer -Qunused-arguments2016101220161009
117100opt-32clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
117104opt-32clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
117243opt-32clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
117573opt-32clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016101220161009
117632opt-32clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
312491opt-32gcc -funroll-loops2016101220161009
313246opt-32cc2016101220161009
313504opt-32gcc2016101220161009
3401200refclang -O3 -fomit-frame-pointer -Qunused-arguments2016101220161009
3414642refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
3414691refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
3415237refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
3593307refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016101220161009
3597986refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
4143986refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016101220161009
4144342refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016101220161009
4192796refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016101220161009
4193227refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016101220161009
4204157refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016101220161009
4226675refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016101220161009
4227584refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016101220161009
4227877refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016101220161009
4283507refgcc -O3 -fomit-frame-pointer2016101220161009
4283747refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016101220161009
4283881refgcc -m64 -O3 -fomit-frame-pointer2016101220161009
4300022refgcc -funroll-loops -O2 -fomit-frame-pointer2016101220161009
4315142refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016101220161009
4315160refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016101220161009
4321918refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016101220161009
4322141refgcc -funroll-loops -O3 -fomit-frame-pointer2016101220161009
4336110refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016101220161009
4343330refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016101220161009
4343348refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016101220161009
4343381refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016101220161009
4356823refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016101220161009
4357988refgcc -march=barcelona -O2 -fomit-frame-pointer2016101220161009
4358184refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016101220161009
4358241refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016101220161009
4361733refgcc -O2 -fomit-frame-pointer2016101220161009
4361975refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016101220161009
4362040refgcc -m64 -O2 -fomit-frame-pointer2016101220161009
4411804refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016101220161009
4413107refgcc -march=nocona -O3 -fomit-frame-pointer2016101220161009
4414477refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016101220161009
4416258refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016101220161009
4428736refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016101220161009
4428898refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016101220161009
4444984refgcc -march=k8 -O2 -fomit-frame-pointer2016101220161009
4445811refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016101220161009
4497169refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016101220161009
4524189refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016101220161009
4524332refgcc -march=k8 -O3 -fomit-frame-pointer2016101220161009
4537279refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016101220161009
4556294refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016101220161009
4556397refgcc -march=barcelona -O3 -fomit-frame-pointer2016101220161009
4556830refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016101220161009
4636778refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016101220161009
4691962refgcc -march=nocona -O2 -fomit-frame-pointer2016101220161009
4692128refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016101220161009
4710711refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016101220161009
4711727refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016101220161009
4711803refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016101220161009
4715467refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016101220161009
4715693refgcc -funroll-loops -Os -fomit-frame-pointer2016101220161009
4715842refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016101220161009
4716801refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016101220161009
4717082refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016101220161009
4717176refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016101220161009
4858017refgcc -march=k8 -Os -fomit-frame-pointer2016101220161009
4858287refgcc -march=barcelona -Os -fomit-frame-pointer2016101220161009
4858568refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016101220161009
4858656refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016101220161009
4859693refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016101220161009
4859846refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016101220161009
4860222refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016101220161009
4860280refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016101220161009
4860434refgcc -Os -fomit-frame-pointer2016101220161009
4860553refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016101220161009
4860604refgcc -m64 -Os -fomit-frame-pointer2016101220161009
4860786refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016101220161009
4876821refgcc -march=nocona -Os -fomit-frame-pointer2016101220161009
4876936refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016101220161009
4951518refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016101220161009
4951862refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016101220161009
5261888refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016101220161009
5281631refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016101220161009
5292184refgcc -m64 -march=k8 -O -fomit-frame-pointer2016101220161009
5292952refgcc -march=k8 -O -fomit-frame-pointer2016101220161009
5361553refgcc -march=nocona -O -fomit-frame-pointer2016101220161009
5379234refgcc -march=barcelona -O -fomit-frame-pointer2016101220161009
5379264refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016101220161009
5379282refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016101220161009
5379854refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016101220161009
5383368refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016101220161009
5383437refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016101220161009
5418165refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016101220161009
5424260refgcc -O -fomit-frame-pointer2016101220161009
5424848refgcc -funroll-loops -O -fomit-frame-pointer2016101220161009
5432943refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016101220161009
5434083refgcc -m64 -march=core2 -O -fomit-frame-pointer2016101220161009
5437094refgcc -fno-schedule-insns -O -fomit-frame-pointer2016101220161009
5452456refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016101220161009
5452632refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016101220161009
5458890refgcc -m64 -march=nocona -O -fomit-frame-pointer2016101220161009
5463784refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016101220161009
5468257refgcc -m64 -O -fomit-frame-pointer2016101220161009
15036912refgcc2016101220161009
15037386refgcc -funroll-loops2016101220161009
15038455refcc2016101220161009

Test failure

Implementation: crypto_hash/mgrostl256/opt-32
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

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

Compiler output

Implementation: crypto_hash/mgrostl256/opt-64
Compiler: cc
hash.c: hash.c:242:14: warning: 'inP' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:241:14: warning: 'outQ' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:240:14: warning: 'z' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:239:14: warning: 'y' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^
try.c: crypto_hash_mgrostl256.a(hash.o): In function `Transform':
try.c: hash.c:(.text+0x...): undefined reference to `F512'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc opt-64
gcc opt-64
gcc -funroll-loops opt-64

Compiler output

Implementation: crypto_hash/mgrostl256/opt-64
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
hash.c: hash.c:239:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:238:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:240:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:238:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:241:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:238:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: inline void F1024(u64 *h, const u64 *m) {
hash.c: ^
hash.c: static
hash.c: hash.c:242:3: warning: non-constant static local variable in inline function may be different in different files [-Wstatic-local-in-inline]
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:238:1: note: use 'static' to give inline function 'F1024' internal linkage
hash.c: ...

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

Compiler output

Implementation: crypto_hash/mgrostl256/opt-64
Compiler: gcc -O2 -fomit-frame-pointer
hash.c: hash.c:242:14: warning: 'inP' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:241:14: warning: 'outQ' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:240:14: warning: 'z' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:239:14: warning: 'y' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^

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

Compiler output

Implementation: crypto_hash/mgrostl256/opt-64
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
hash.c: hash.c:242:14: warning: 'inP' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:241:14: warning: 'outQ' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:240:14: warning: 'z' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:239:14: warning: 'y' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:242:14: warning: 'inP' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 inP[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:241:14: warning: 'outQ' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 outQ[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:240:14: warning: 'z' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 z[COLS1024] __attribute__((aligned(16)));
hash.c: ^
hash.c: hash.c:239:14: warning: 'y' is static but declared in inline function 'F1024' which is not static
hash.c: static u64 y[COLS1024] __attribute__((aligned(16)));
hash.c: ^

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