Implementation notes: amd64, glyme, crypto_aead/trivia0v1

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_aead
Primitive: trivia0v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
314356refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020520170105
314876refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020520170105
315900refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020520170105
316600refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020520170105
316696refgcc -funroll-loops -O3 -fomit-frame-pointer2017020520170105
316920refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020520170105
316996refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020520170105
319036refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020520170105
321704refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020520170105
322432refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020520170105
322436refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020520170105
327044refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020520170105
327048refgcc -m64 -O3 -fomit-frame-pointer2017020520170105
327416refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020520170105
327440refgcc -O3 -fomit-frame-pointer2017020520170105
327524refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020520170105
328624refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020520170105
328660refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020520170105
328800refgcc -march=barcelona -O3 -fomit-frame-pointer2017020520170105
329128refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020520170105
329196refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020520170105
329216refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020520170105
329800refgcc -funroll-loops -O2 -fomit-frame-pointer2017020520170105
329800refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020520170105
329816refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020520170105
330452refgcc -march=k8 -O3 -fomit-frame-pointer2017020520170105
330592refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020520170105
331128refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020520170105
331836refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020520170105
332200refgcc -march=nocona -O3 -fomit-frame-pointer2017020520170105
334208refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020520170105
335072refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020520170105
335104refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020520170105
358236refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020520170105
359424refgcc -march=k8 -O2 -fomit-frame-pointer2017020520170105
361008refgcc -march=barcelona -O2 -fomit-frame-pointer2017020520170105
361120refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020520170105
361300refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020520170105
361312refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020520170105
361672refgcc -m64 -O2 -fomit-frame-pointer2017020520170105
361676refgcc -O2 -fomit-frame-pointer2017020520170105
361704refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020520170105
362216refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020520170105
362220refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020520170105
362264refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020520170105
362872refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020520170105
369492refgcc -march=nocona -O2 -fomit-frame-pointer2017020520170105
369524refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020520170105
422212refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020520170105
423684refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020520170105
427652refgcc -funroll-loops -O -fomit-frame-pointer2017020520170105
428004refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020520170105
428964refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020520170105
430404refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020520170105
430544refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020520170105
432612refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020520170105
433420refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020520170105
447620refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020520170105
447648refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020520170105
447660refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020520170105
447804refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020520170105
447840refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020520170105
447852refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020520170105
450872refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020520170105
452248refgcc -march=k8 -O -fomit-frame-pointer2017020520170105
456848refgcc -O -fomit-frame-pointer2017020520170105
456860refgcc -m64 -O -fomit-frame-pointer2017020520170105
457548refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020520170105
466164refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020520170105
466464refgcc -march=barcelona -O -fomit-frame-pointer2017020520170105
486516refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020520170105
486968refgcc -march=nocona -O -fomit-frame-pointer2017020520170105
498364refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020520170105
499084refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020520170105
499220refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020520170105
499424refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020520170105
499784refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020520170105
499888refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020520170105
500424refgcc -funroll-loops -Os -fomit-frame-pointer2017020520170105
501536refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020520170105
501540refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020520170105
512696refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020520170105
512716refgcc -march=k8 -Os -fomit-frame-pointer2017020520170105
512736refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020520170105
512896refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020520170105
513044refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020520170105
513268refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020520170105
513280refgcc -Os -fomit-frame-pointer2017020520170105
513280refgcc -m64 -Os -fomit-frame-pointer2017020520170105
513336refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020520170105
514164refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020520170105
514164refgcc -march=barcelona -Os -fomit-frame-pointer2017020520170105
514672refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020520170105
517036refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020520170105
538604refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020520170105
538900refgcc -march=nocona -Os -fomit-frame-pointer2017020520170105
2078548refgcc -funroll-loops2017020520170105
2079232refgcc2017020520170105

Compiler output

Implementation: crypto_aead/trivia0v1/ref
Compiler: cc
encrypt.c: encrypt.c:123:12: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
encrypt.c: if((a>gt;>gt;31)&1==1) result = result^(CONST_alpha_32);
encrypt.c: ^~~~~
encrypt.c: encrypt.c:123:12: note: place parentheses around the '==' expression to silence this warning
encrypt.c: if((a>gt;>gt;31)&1==1) result = result^(CONST_alpha_32);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: encrypt.c:123:12: note: place parentheses around the & expression to evaluate it first
encrypt.c: if((a>gt;>gt;31)&1==1) result = result^(CONST_alpha_32);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: encrypt.c:148:12: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
encrypt.c: if((b>gt;>gt;63)&1==1) result = result^(CONST_beta_64);
encrypt.c: ^~~~~
encrypt.c: encrypt.c:148:12: note: place parentheses around the '==' expression to silence this warning
encrypt.c: if((b>gt;>gt;63)&1==1) result = result^(CONST_beta_64);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: encrypt.c:148:12: note: place parentheses around the & expression to evaluate it first
encrypt.c: if((b>gt;>gt;63)&1==1) result = result^(CONST_beta_64);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: encrypt.c:183:8: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
encrypt.c: if(b&1==1) result=a;
encrypt.c: ^~~~~
encrypt.c: ...

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