Implementation notes: x86, floodyberry, crypto_stream/salsa208

Computer: floodyberry
Architecture: x86
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20140505
Operation: crypto_stream
Primitive: salsa208
TimeImplementationCompilerBenchmark dateSUPERCOP version
3187x86_xmm5gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
3200x86_xmm5gcc -m32 -O2 -fomit-frame-pointer2014050820140505
3200x86_xmm5gcc -m32 -O3 -fomit-frame-pointer2014050820140505
3225x86_xmm5clang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
3225x86_xmm5icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
3237e/x86-xmm5gcc -m32 -O3 -fomit-frame-pointer2014050820140505
3250x86_xmm5icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
3262e/x86-xmm5icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
3263e/x86-xmm5gcc -m32 -O2 -fomit-frame-pointer2014050820140505
3263x86_xmm5gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
3275e/x86-xmm5gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
3275e/x86-xmm5icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
3312e/x86-xmm5gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
3662e/x86-xmm4icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
3675e/x86-xmm4gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
3712e/x86-xmm4icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
3725e/x86-xmm4gcc -m32 -O3 -fomit-frame-pointer2014050820140505
3725e/x86-xmm4gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
3750e/x86-xmm4gcc -m32 -O2 -fomit-frame-pointer2014050820140505
4537e/x86-xmm2gcc -m32 -O2 -fomit-frame-pointer2014050820140505
4537e/x86-xmm2gcc -m32 -O3 -fomit-frame-pointer2014050820140505
4537e/x86-xmm2gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
4538e/x86-xmm2gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
4538e/x86-xmm2icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
4550e/x86-xmm2icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
4888e/x86-xmmgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
4912e/x86-xmmgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
4950e/x86-xmmgcc -m32 -O2 -fomit-frame-pointer2014050820140505
4950e/x86-xmmgcc -m32 -O3 -fomit-frame-pointer2014050820140505
4963e/x86-xmmicc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
4988e/x86-xmmicc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
7000e/x86-mmxgcc -m32 -O2 -fomit-frame-pointer2014050820140505
7025e/x86-mmxclang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
7025e/x86-mmxgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
7025e/x86-mmxgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
7025e/x86-mmxicc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
7037e/x86-mmxicc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
7087e/x86-mmxgcc -m32 -O3 -fomit-frame-pointer2014050820140505
7088e/x86-3gcc -m32 -O2 -fomit-frame-pointer2014050820140505
7112e/x86-athlongcc -m32 -O3 -fomit-frame-pointer2014050820140505
7113e/x86-3gcc -m32 -O3 -fomit-frame-pointer2014050820140505
7125e/x86-pmgcc -m32 -O3 -fomit-frame-pointer2014050820140505
7150e/x86-pmclang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
7150e/x86-athlongcc -m32 -O2 -fomit-frame-pointer2014050820140505
7150e/x86-athlonicc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
7162e/x86-2icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
7162e/x86-3icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
7162e/x86-3icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
7175e/x86-3clang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
7175e/x86-2gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
7175e/x86-3gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
7175e/x86-2icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
7188e/x86-pmgcc -m32 -O2 -fomit-frame-pointer2014050820140505
7200e/x86-2gcc -m32 -O3 -fomit-frame-pointer2014050820140505
7200e/x86-pmicc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
7212e/x86-pmgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
7212e/x86-pmicc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
7213e/x86-2gcc -m32 -O2 -fomit-frame-pointer2014050820140505
7213e/x86-2gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
7225e/x86-1gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
7225e/x86-athlonicc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
7237e/x86-1gcc -m32 -O2 -fomit-frame-pointer2014050820140505
7237e/x86-1gcc -m32 -O3 -fomit-frame-pointer2014050820140505
7250e/x86-1gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
7250e/x86-1icc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
7262e/x86-1icc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
7263e/x86-2clang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
7263e/x86-pmgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
7275e/x86-3gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
7275e/x86-athlongcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
7325e/x86-1clang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
7425e/x86-athlonclang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
7437e/mergedclang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
7487e/x86-athlongcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
8750e/refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
8813e/regsgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
9013e/mergedgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
9050e/mergedgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
9087e/mergedgcc -m32 -O3 -fomit-frame-pointer2014050820140505
9150e/regsgcc -m32 -O3 -fomit-frame-pointer2014050820140505
9387e/mergedgcc -m32 -O2 -fomit-frame-pointer2014050820140505
9925e/refgcc -m32 -O3 -fomit-frame-pointer2014050820140505
10687e/mergedicc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
11087e/regsclang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
11238e/regsgcc -m32 -O2 -fomit-frame-pointer2014050820140505
11813e/regsicc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
12175e/regsgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
12337e/reficc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
12863e/mergedicc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
12988e/refclang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
13150e/refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
13337refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
13512reficc -m32 -O3 -static -xHost -fomit-frame-pointer2014050820140505
13825refgcc -m32 -O3 -fomit-frame-pointer2014050820140505
14175e/refgcc -m32 -O2 -fomit-frame-pointer2014050820140505
16525e/regsicc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
17363reficc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505
17388refclang -O1 -march=native -m32 -fomit-frame-pointer2014050820140505
17625refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
17650refgcc -m32 -O2 -fomit-frame-pointer2014050820140505
18150e/reficc -m32 -O1 -static -xHost -fomit-frame-pointer2014050820140505

Test failure

Implementation: crypto_stream/salsa208/e/x86-xmm
Compiler: clang -O1 -march=native -m32 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
clang -O1 -march=native -m32 -fomit-frame-pointer e/x86-xmm e/x86-xmm2 e/x86-xmm4 e/x86-xmm5
clang -O3 -march=native -m32 -fomit-frame-pointer e/merged e/ref e/regs e/x86-1 e/x86-2 e/x86-3 e/x86-athlon e/x86-mmx e/x86-pm e/x86-xmm e/x86-xmm2 e/x86-xmm4 e/x86-xmm5 ref x86_xmm5

Compiler output

Implementation: crypto_stream/salsa208/e/x86-1
Compiler: clang -O1 -march=native -m32 -fomit-frame-pointer
salsa20.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
salsa20.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
salsa20.s: clang: warning: argument unused during compilation: '-I .'
salsa20.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/x86/include'

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
clang -O1 -march=native -m32 -fomit-frame-pointer e/x86-1 e/x86-2 e/x86-3 e/x86-athlon e/x86-mmx e/x86-pm e/x86-xmm e/x86-xmm2 e/x86-xmm4 e/x86-xmm5
clang -O3 -march=native -m32 -fomit-frame-pointer e/x86-1 e/x86-2 e/x86-3 e/x86-athlon e/x86-mmx e/x86-pm e/x86-xmm e/x86-xmm2 e/x86-xmm4 e/x86-xmm5

Compiler output

Implementation: crypto_stream/salsa208/x86_xmm5
Compiler: clang -O1 -march=native -m32 -fomit-frame-pointer
stream.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
stream.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
stream.s: clang: warning: argument unused during compilation: '-I .'
stream.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/x86/include'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m32 -fomit-frame-pointer x86_xmm5
clang -O3 -march=native -m32 -fomit-frame-pointer x86_xmm5

Compiler output

Implementation: crypto_stream/salsa208/e/merged
Compiler: icc -m32 -O1 -static -xHost -fomit-frame-pointer
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/ipp/../compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/ipp/../compiler/lib/intel64/libirc.a while searching for irc
try.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
measure.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc
measure.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/ipp/../compiler/lib/intel64/libirc.a while searching for irc
measure.c: ld: warning: skipping incompatible /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/intel64/libirc.a while searching for irc

Number of similar (compiler,implementation) pairs: 30, namely:
CompilerImplementations
icc -m32 -O1 -static -xHost -fomit-frame-pointer e/merged e/ref e/regs e/x86-1 e/x86-2 e/x86-3 e/x86-athlon e/x86-mmx e/x86-pm e/x86-xmm e/x86-xmm2 e/x86-xmm4 e/x86-xmm5 ref x86_xmm5
icc -m32 -O3 -static -xHost -fomit-frame-pointer e/merged e/ref e/regs e/x86-1 e/x86-2 e/x86-3 e/x86-athlon e/x86-mmx e/x86-pm e/x86-xmm e/x86-xmm2 e/x86-xmm4 e/x86-xmm5 ref x86_xmm5