Implementation notes: amd64, glyme, crypto_encrypt/ntruees787ep1

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_encrypt
Primitive: ntruees787ep1
TimeImplementationCompilerBenchmark dateSUPERCOP version
514348refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020620170105
514660refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020620170105
524348refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020620170105
525564refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020620170105
525800refgcc -funroll-loops -O3 -fomit-frame-pointer2017020620170105
539860refgcc -march=nocona -O3 -fomit-frame-pointer2017020620170105
540548refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020620170105
541532refgcc -m64 -O3 -fomit-frame-pointer2017020620170105
541676refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020620170105
542828refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020620170105
542836refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020620170105
543532refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020620170105
543880refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020620170105
544408refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020620170105
545200refgcc -march=k8 -O3 -fomit-frame-pointer2017020620170105
545424refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020620170105
547448refgcc -O3 -fomit-frame-pointer2017020620170105
548104refgcc -march=barcelona -O3 -fomit-frame-pointer2017020620170105
549388refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020620170105
554476refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020620170105
559136refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020620170105
562100refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020620170105
562672refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020620170105
985848refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020620170105
986212refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020620170105
994704refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020620170105
995676refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020620170105
996136refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020620170105
996420refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020620170105
996756refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020620170105
998100refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020620170105
1002276refgcc -funroll-loops -O2 -fomit-frame-pointer2017020620170105
1051420refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020620170105
1052068refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020620170105
1052136refgcc -funroll-loops -O -fomit-frame-pointer2017020620170105
1052724refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020620170105
1053220refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020620170105
1054672refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020620170105
1055160refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020620170105
1055856refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020620170105
1061316refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020620170105
1080044refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020620170105
1335108refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020620170105
1335272refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020620170105
1335284refgcc -march=barcelona -O2 -fomit-frame-pointer2017020620170105
1335444refgcc -march=nocona -O2 -fomit-frame-pointer2017020620170105
1338684refgcc -O2 -fomit-frame-pointer2017020620170105
1338852refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020620170105
1338892refgcc -m64 -O2 -fomit-frame-pointer2017020620170105
1340752refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020620170105
1341980refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020620170105
1342004refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020620170105
1342064refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020620170105
1342124refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020620170105
1343180refgcc -march=k8 -O2 -fomit-frame-pointer2017020620170105
1347120refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020620170105
1515264refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020620170105
1515396refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020620170105
1516508refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020620170105
1517524refgcc -march=nocona -O -fomit-frame-pointer2017020620170105
1518360refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020620170105
1519344refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020620170105
1520424refgcc -O -fomit-frame-pointer2017020620170105
1520444refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020620170105
1520776refgcc -march=k8 -O -fomit-frame-pointer2017020620170105
1521444refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020620170105
1522000refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020620170105
1522552refgcc -march=barcelona -O -fomit-frame-pointer2017020620170105
1522684refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020620170105
1524512refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020620170105
1526372refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020620170105
1526624refgcc -m64 -O -fomit-frame-pointer2017020620170105
1676068refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020620170105
1677968refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020620170105
1680900refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020620170105
1681320refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020620170105
1681784refgcc -march=nocona -Os -fomit-frame-pointer2017020620170105
1685128refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020620170105
1685220refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020620170105
1685280refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020620170105
1685316refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020620170105
1685464refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020620170105
1685520refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020620170105
1685528refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020620170105
1685616refgcc -funroll-loops -Os -fomit-frame-pointer2017020620170105
1685668refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020620170105
1685676refgcc -Os -fomit-frame-pointer2017020620170105
1685684refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020620170105
1685724refgcc -march=k8 -Os -fomit-frame-pointer2017020620170105
1685728refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020620170105
1685784refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020620170105
1685800refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020620170105
1685816refgcc -march=barcelona -Os -fomit-frame-pointer2017020620170105
1685852refgcc -m64 -Os -fomit-frame-pointer2017020620170105
1686048refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020620170105
1690324refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020620170105
4678788refgcc -funroll-loops2017020620170105
4689828refgcc2017020620170105

Compiler output

Implementation: crypto_encrypt/ntruees787ep1/ref
Compiler: cc
crypto_sha1.c: crypto_sha1.c:85:33: warning: '&' within '^' [-Wbitwise-op-parentheses]
crypto_sha1.c: E += RL(A, 5) + K00_19 + (B & (C ^ D) ^ D) + data[ 0]; B = RL(B, 30);
crypto_sha1.c: ~~^~~~~~~~~ ~
crypto_sha1.c: crypto_sha1.c:85:33: note: place parentheses around the '&' expression to silence this warning
crypto_sha1.c: E += RL(A, 5) + K00_19 + (B & (C ^ D) ^ D) + data[ 0]; B = RL(B, 30);
crypto_sha1.c: ^
crypto_sha1.c: ( )
crypto_sha1.c: crypto_sha1.c:86:33: warning: '&' within '^' [-Wbitwise-op-parentheses]
crypto_sha1.c: D += RL(E, 5) + K00_19 + (A & (B ^ C) ^ C) + data[ 1]; A = RL(A, 30);
crypto_sha1.c: ~~^~~~~~~~~ ~
crypto_sha1.c: crypto_sha1.c:86:33: note: place parentheses around the '&' expression to silence this warning
crypto_sha1.c: D += RL(E, 5) + K00_19 + (A & (B ^ C) ^ C) + data[ 1]; A = RL(A, 30);
crypto_sha1.c: ^
crypto_sha1.c: ( )
crypto_sha1.c: crypto_sha1.c:87:33: warning: '&' within '^' [-Wbitwise-op-parentheses]
crypto_sha1.c: C += RL(D, 5) + K00_19 + (E & (A ^ B) ^ B) + data[ 2]; E = RL(E, 30);
crypto_sha1.c: ~~^~~~~~~~~ ~
crypto_sha1.c: crypto_sha1.c:87:33: note: place parentheses around the '&' expression to silence this warning
crypto_sha1.c: C += RL(D, 5) + K00_19 + (E & (A ^ B) ^ B) + data[ 2]; E = RL(E, 30);
crypto_sha1.c: ^
crypto_sha1.c: ( )
crypto_sha1.c: crypto_sha1.c:88:33: warning: '&' within '^' [-Wbitwise-op-parentheses]
crypto_sha1.c: B += RL(C, 5) + K00_19 + (D & (E ^ A) ^ A) + data[ 3]; D = RL(D, 30);
crypto_sha1.c: ~~^~~~~~~~~ ~
crypto_sha1.c: crypto_sha1.c:88:33: note: place parentheses around the '&' expression to silence this warning
crypto_sha1.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