Implementation notes: amd64, glyme, crypto_aead/norx3261v1

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_aead
Primitive: norx3261v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
58128xmmgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020420170105
58128xmmgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020420170105
58208xmmgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020420170105
58240xmmgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020420170105
58240xmmgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020420170105
58460xmmgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020420170105
58572xmmgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020420170105
58812xmmgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020420170105
58812xmmgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020420170105
60824xmmgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020420170105
60828xmmgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020420170105
60828xmmgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020420170105
60828xmmgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020420170105
60828xmmgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020420170105
61288xmmclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020420170105
61288xmmclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
68368xmmgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020420170105
68368xmmgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020420170105
68548xmmgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020420170105
68548xmmgcc -march=nocona -O2 -fomit-frame-pointer2017020420170105
68616xmmgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020420170105
68616xmmgcc -march=nocona -O3 -fomit-frame-pointer2017020420170105
68880xmmgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020420170105
68980xmmgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020420170105
70804xmmgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020420170105
70804xmmgcc -march=k8 -O2 -fomit-frame-pointer2017020420170105
71152xmmgcc -march=barcelona -O2 -fomit-frame-pointer2017020420170105
71176xmmclang -O3 -fomit-frame-pointer -Qunused-arguments2017020420170105
71176xmmclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
71176xmmclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
71176xmmclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
71324xmmgcc -march=barcelona -O3 -fomit-frame-pointer2017020420170105
71392xmmgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020420170105
71440xmmgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020420170105
71520xmmgcc -O3 -fomit-frame-pointer2017020420170105
71520xmmgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020420170105
71520xmmgcc -m64 -O3 -fomit-frame-pointer2017020420170105
71588xmmgcc -O2 -fomit-frame-pointer2017020420170105
71588xmmgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020420170105
71588xmmgcc -m64 -O2 -fomit-frame-pointer2017020420170105
71792xmmgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020420170105
71796xmmgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020420170105
71824xmmgcc -funroll-loops -O2 -fomit-frame-pointer2017020420170105
71824xmmgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020420170105
71852xmmgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020420170105
72112xmmgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020420170105
72112xmmgcc -march=k8 -O3 -fomit-frame-pointer2017020420170105
72216xmmgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020420170105
72216xmmgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020420170105
72732xmmgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020420170105
72732xmmgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020420170105
72844xmmgcc -funroll-loops -O3 -fomit-frame-pointer2017020420170105
72844xmmgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020420170105
72844xmmgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020420170105
73128xmmgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020420170105
73128xmmgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020420170105
73380xmmgcc -march=nocona -O -fomit-frame-pointer2017020420170105
73572xmmgcc -m64 -march=k8 -O -fomit-frame-pointer2017020420170105
73572xmmgcc -march=k8 -O -fomit-frame-pointer2017020420170105
73676xmmgcc -march=barcelona -O -fomit-frame-pointer2017020420170105
73700xmmgcc -m64 -march=nocona -O -fomit-frame-pointer2017020420170105
73704xmmgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020420170105
73704xmmgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020420170105
73720xmmgcc -fno-schedule-insns -O -fomit-frame-pointer2017020420170105
73748xmmgcc -O -fomit-frame-pointer2017020420170105
73748xmmgcc -m64 -O -fomit-frame-pointer2017020420170105
74136xmmgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020420170105
74300xmmgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020420170105
74300xmmgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020420170105
74448xmmgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020420170105
74452xmmgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020420170105
74456xmmgcc -funroll-loops -O -fomit-frame-pointer2017020420170105
74492xmmgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020420170105
75144xmmgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020420170105
105588refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
105800refclang -O3 -fomit-frame-pointer -Qunused-arguments2017020420170105
105800refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
105800refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
107352refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020420170105
107352refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
112052refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020420170105
112104refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020420170105
112576refgcc -funroll-loops -Os -fomit-frame-pointer2017020420170105
112712refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020420170105
112712refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020420170105
112868refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020420170105
113276refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020420170105
115704refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020420170105
115708refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020420170105
115708refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020420170105
115712refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020420170105
115804refgcc -march=k8 -Os -fomit-frame-pointer2017020420170105
115864refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020420170105
115896refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020420170105
115908refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020420170105
116096refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020420170105
116308refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020420170105
116328refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020420170105
116328refgcc -march=barcelona -Os -fomit-frame-pointer2017020420170105
116372refgcc -O3 -fomit-frame-pointer2017020420170105
116372refgcc -m64 -O3 -fomit-frame-pointer2017020420170105
116388refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020420170105
116388refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020420170105
116468refgcc -m64 -Os -fomit-frame-pointer2017020420170105
116508refgcc -Os -fomit-frame-pointer2017020420170105
116528refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020420170105
116656refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020420170105
116776refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020420170105
117004refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020420170105
117168refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020420170105
117320refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020420170105
117340refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020420170105
118040refgcc -march=nocona -Os -fomit-frame-pointer2017020420170105
118224refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020420170105
118264refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020420170105
118412refgcc -funroll-loops -O3 -fomit-frame-pointer2017020420170105
118580refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020420170105
118804refgcc -O2 -fomit-frame-pointer2017020420170105
119004refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020420170105
119004refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020420170105
119052refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020420170105
119072refgcc -m64 -O2 -fomit-frame-pointer2017020420170105
119244refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020420170105
119368refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020420170105
119368refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020420170105
119632refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020420170105
119796refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020420170105
121080refgcc -funroll-loops -O2 -fomit-frame-pointer2017020420170105
121080refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020420170105
121136refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020420170105
121500refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020420170105
121684refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020420170105
121736refgcc -m64 -O -fomit-frame-pointer2017020420170105
121776refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020420170105
121800refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020420170105
121912refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020420170105
121920refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020420170105
121928refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020420170105
121932refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020420170105
121984refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020420170105
121996refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020420170105
121996refgcc -march=k8 -O2 -fomit-frame-pointer2017020420170105
122028refgcc -march=nocona -O -fomit-frame-pointer2017020420170105
122060refgcc -funroll-loops -O -fomit-frame-pointer2017020420170105
122084refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020420170105
122096refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020420170105
122100refgcc -march=barcelona -O2 -fomit-frame-pointer2017020420170105
122112refgcc -O -fomit-frame-pointer2017020420170105
122148refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020420170105
122164refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020420170105
122188refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020420170105
122212refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020420170105
122264refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020420170105
122280refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020420170105
122288refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020420170105
122288refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020420170105
122520refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020420170105
122548refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020420170105
122548refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020420170105
122560refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020420170105
122580refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020420170105
122624refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020420170105
122652refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020420170105
122992refgcc -march=barcelona -O -fomit-frame-pointer2017020420170105
123136xmmgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020420170105
123136xmmgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020420170105
123136xmmgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020420170105
123136xmmgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020420170105
123248refgcc -march=barcelona -O3 -fomit-frame-pointer2017020420170105
123280refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020420170105
123344xmmgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020420170105
123352refgcc -march=k8 -O -fomit-frame-pointer2017020420170105
123468refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020420170105
123544refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020420170105
123688refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020420170105
123792refgcc -march=k8 -O3 -fomit-frame-pointer2017020420170105
124180refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020420170105
124316refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020420170105
124316refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020420170105
124316refgcc -march=nocona -O2 -fomit-frame-pointer2017020420170105
124316refgcc -march=nocona -O3 -fomit-frame-pointer2017020420170105
131412xmmgcc -march=nocona -Os -fomit-frame-pointer2017020420170105
131500xmmgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020420170105
131532xmmgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020420170105
131700xmmgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020420170105
135392xmmgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020420170105
135484xmmgcc -march=barcelona -Os -fomit-frame-pointer2017020420170105
135572xmmgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020420170105
135572xmmgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020420170105
135672xmmgcc -Os -fomit-frame-pointer2017020420170105
135880xmmgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020420170105
135880xmmgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020420170105
135952xmmgcc -m64 -Os -fomit-frame-pointer2017020420170105
136088xmmgcc -march=k8 -Os -fomit-frame-pointer2017020420170105
136128xmmgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020420170105
136128xmmgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020420170105
136236xmmgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020420170105
136384xmmgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020420170105
136792xmmgcc -funroll-loops -Os -fomit-frame-pointer2017020420170105
588036xmmgcc -funroll-loops2017020420170105
588052xmmgcc2017020420170105
618444xmmcc2017020420170105
777956refgcc -funroll-loops2017020420170105
782948refgcc2017020420170105
822292refcc2017020420170105

Test failure

Implementation: crypto_aead/norx3261v1/xmm
Compiler: gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer xmm

Compiler output

Implementation: crypto_aead/norx3261v1/xmm
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
norx.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/x86intrin.h:43:0,
norx.c: from norx.c:27:
norx.c: norx.c: In function 'crypto_aead_norx3261v1_xmm_decrypt':
norx.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/smmintrin.h:166:1: error: inlining failed in call to always_inline '_mm_blend_epi16': target specific option mismatch
norx.c: _mm_blend_epi16 (__m128i __X, __m128i __Y, const int __M)
norx.c: ^~~~~~~~~~~~~~~
norx.c: norx.c:249:58: note: called from here
norx.c: W2 = LOADL(IN + 32); STOREL(OUT + 32, XOR(C, W2)); C = BLEND(C, W2); \
norx.c: ^
norx.c: norx.c:430:13: note: in expansion of macro 'DECRYPT_BLOCK'
norx.c: DECRYPT_BLOCK(A, B, C, D, c, m);
norx.c: ^~~~~~~~~~~~~
norx.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/x86intrin.h:43:0,
norx.c: from norx.c:27:
norx.c: /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/smmintrin.h:166:1: error: inlining failed in call to always_inline '_mm_blend_epi16': target specific option mismatch
norx.c: _mm_blend_epi16 (__m128i __X, __m128i __Y, const int __M)
norx.c: ^~~~~~~~~~~~~~~
norx.c: norx.c:249:58: note: called from here
norx.c: W2 = LOADL(IN + 32); STOREL(OUT + 32, XOR(C, W2)); C = BLEND(C, W2); \
norx.c: ^
norx.c: norx.c:430:13: note: in expansion of macro 'DECRYPT_BLOCK'
norx.c: DECRYPT_BLOCK(A, B, C, D, c, m);
norx.c: ^~~~~~~~~~~~~
norx.c: In file included from /usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd11.0/6.3.0/include/x86intrin.h:43:0,
norx.c: from norx.c:27:
norx.c: ...

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