Implementation notes: amd64, glyme, crypto_encrypt/ntruees743ep1

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_encrypt
Primitive: ntruees743ep1
TimeImplementationCompilerBenchmark dateSUPERCOP version
379708refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020620170105
381848refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020620170105
395848refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020620170105
396552refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020620170105
397848refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020620170105
397976refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020620170105
398124refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020620170105
398248refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020620170105
401384refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020620170105
401844refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020620170105
402540refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020620170105
402636refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020620170105
403520refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020620170105
404036refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020620170105
410040refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020620170105
410040refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020620170105
411932refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020620170105
412528refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020620170105
437624refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020620170105
438536refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020620170105
441800refgcc -funroll-loops -O3 -fomit-frame-pointer2017020620170105
442072refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020620170105
442396refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020620170105
444932refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020620170105
447420refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020620170105
448872refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020620170105
449688refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020620170105
449908refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020620170105
450592refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020620170105
452064refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020620170105
452692refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020620170105
456516refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020620170105
456524refgcc -funroll-loops -O2 -fomit-frame-pointer2017020620170105
457008refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020620170105
457100refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020620170105
457224refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020620170105
457596refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020620170105
458096refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020620170105
462796refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020620170105
463432refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020620170105
467844refgcc -funroll-loops -O -fomit-frame-pointer2017020620170105
469552refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020620170105
470172refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020620170105
470608refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020620170105
471540refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020620170105
472316refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020620170105
472360refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020620170105
474944refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020620170105
475616refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020620170105
491492refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020620170105
491576refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020620170105
491984refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020620170105
492272refgcc -O3 -fomit-frame-pointer2017020620170105
494716refgcc -m64 -O3 -fomit-frame-pointer2017020620170105
497860refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020620170105
498360refgcc -march=nocona -O3 -fomit-frame-pointer2017020620170105
502612refgcc -march=barcelona -O3 -fomit-frame-pointer2017020620170105
504176refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020620170105
504840refgcc -march=k8 -O3 -fomit-frame-pointer2017020620170105
508108refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020620170105
531448refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020620170105
534396refgcc -march=k8 -O2 -fomit-frame-pointer2017020620170105
534612refgcc -march=barcelona -O2 -fomit-frame-pointer2017020620170105
534636refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020620170105
536980refgcc -O2 -fomit-frame-pointer2017020620170105
538412refgcc -m64 -O2 -fomit-frame-pointer2017020620170105
541336refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020620170105
545624refgcc -march=nocona -O2 -fomit-frame-pointer2017020620170105
545976refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020620170105
555548refgcc -march=barcelona -O -fomit-frame-pointer2017020620170105
555844refgcc -march=k8 -O -fomit-frame-pointer2017020620170105
557932refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020620170105
561916refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020620170105
566928refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020620170105
568076refgcc -m64 -O -fomit-frame-pointer2017020620170105
568324refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020620170105
569372refgcc -O -fomit-frame-pointer2017020620170105
570676refgcc -march=nocona -O -fomit-frame-pointer2017020620170105
608856refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020620170105
609364refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020620170105
610176refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020620170105
610792refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020620170105
611968refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020620170105
613752refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020620170105
618736refgcc -funroll-loops -Os -fomit-frame-pointer2017020620170105
629784refgcc -march=k8 -Os -fomit-frame-pointer2017020620170105
631812refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020620170105
632804refgcc -m64 -Os -fomit-frame-pointer2017020620170105
632824refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020620170105
632852refgcc -march=barcelona -Os -fomit-frame-pointer2017020620170105
634412refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020620170105
634740refgcc -Os -fomit-frame-pointer2017020620170105
646368refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020620170105
647956refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020620170105
654704refgcc -march=nocona -Os -fomit-frame-pointer2017020620170105
657856refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020620170105
1944980refgcc -funroll-loops2017020620170105
1945460refgcc2017020620170105

Compiler output

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