Implementation notes: amd64, h5nano, crypto_aead/deoxyseq256128v1

Computer: h5nano
Architecture: amd64
CPU ID: CentaurHauls-000006f8-afc9fbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: deoxyseq256128v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
3357160refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014080620140622
3359510refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014080620140622
3359510refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014080620140622
3359515refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014080620140622
3549610refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014080620140622
3556360refgcc -funroll-loops -O3 -fomit-frame-pointer2014080620140622
3556380refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014080620140622
3581955refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014080620140622
3583275refgcc -O3 -fomit-frame-pointer2014080620140622
3583335refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014080620140622
3583845refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014080620140622
3584725refgcc -march=k8 -O3 -fomit-frame-pointer2014080620140622
3584765refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014080620140622
3585245refgcc -m64 -O3 -fomit-frame-pointer2014080620140622
3585785refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014080620140622
3589670refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014080620140622
3594005refgcc -march=barcelona -O3 -fomit-frame-pointer2014080620140622
3607220refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014080620140622
3607280refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014080620140622
3607440refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014080620140622
3612210refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014080620140622
3658865refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014080620140622
3658915refgcc -march=nocona -O3 -fomit-frame-pointer2014080620140622
7189915refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014080620140622
7189915refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014080620140622
7193155refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014080620140622
7198445refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014080620140622
7209010refgcc -funroll-loops -O2 -fomit-frame-pointer2014080620140622
7472045refclang -O3 -fomit-frame-pointer2014080620140622
7474875refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101620141014
7475210refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101620141014
7475220refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014080620140622
7475720refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014080620140622
7611315refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014080620140622
7733790refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014080620140622
7742090refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014080620140622
8038375refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014080620140622
8528915refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014080620140622
8528940refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014080620140622
8529050refgcc -funroll-loops -O -fomit-frame-pointer2014080620140622
8597135refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014080620140622
8597135refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014080620140622
9110940refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014080620140622
9111040refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014080620140622
9111045refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014080620140622
9111060refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014080620140622
10194250refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014080620140622
10194385refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014080620140622
10194450refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014080620140622
10196515refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014080620140622
10198400refgcc -m64 -O2 -fomit-frame-pointer2014080620140622
10198460refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014080620140622
10204735refgcc -march=k8 -O2 -fomit-frame-pointer2014080620140622
10204780refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014080620140622
10234805refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014080620140622
10381825refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014080620140622
10415815refgcc -march=barcelona -O2 -fomit-frame-pointer2014080620140622
10543445refgcc -O2 -fomit-frame-pointer2014080620140622
11490440refgcc -march=nocona -O2 -fomit-frame-pointer2014080620140622
11585595refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014080620140622
11867815refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014080620140622
11887630refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014080620140622
11887720refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014080620140622
11887720refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014080620140622
11887730refgcc -funroll-loops -Os -fomit-frame-pointer2014080620140622
11887775refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014080620140622
11888605refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014080620140622
11888635refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014080620140622
11940890refgcc -march=barcelona -O -fomit-frame-pointer2014080620140622
11950705refgcc -m64 -march=k8 -O -fomit-frame-pointer2014080620140622
11950760refgcc -march=k8 -O -fomit-frame-pointer2014080620140622
12051200refgcc -m64 -Os -fomit-frame-pointer2014080620140622
12051220refgcc -Os -fomit-frame-pointer2014080620140622
12051220refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014080620140622
12051595refgcc -march=k8 -Os -fomit-frame-pointer2014080620140622
12052675refgcc -march=barcelona -Os -fomit-frame-pointer2014080620140622
12052985refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014080620140622
12054515refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014080620140622
12054605refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014080620140622
12054615refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014080620140622
12054625refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014080620140622
12056650refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014080620140622
12081675refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014080620140622
12081695refgcc -march=nocona -Os -fomit-frame-pointer2014080620140622
12123175refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014080620140622
12177460refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014080620140622
12201460refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014080620140622
13354295refgcc -m64 -march=core2 -O -fomit-frame-pointer2014080620140622
13429590refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014080620140622
13430080refgcc -march=nocona -O -fomit-frame-pointer2014080620140622
13469365refgcc -m64 -O -fomit-frame-pointer2014080620140622
13480695refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014080620140622
13521300refgcc -fno-schedule-insns -O -fomit-frame-pointer2014080620140622
13589290refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014080620140622
13608635refgcc -O -fomit-frame-pointer2014080620140622
13628150refgcc -m64 -march=nocona -O -fomit-frame-pointer2014080620140622
13695605refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014080620140622
27801840refgcc2014080620140622
27802420refgcc -funroll-loops2014080620140622
27814710refcc2014080620140622

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/opt
Compiler: cc
deoxys-256.c: In file included from deoxys-256.c:27:0:
deoxys-256.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
deoxys-256.c: In file included from deoxys-256.c:28:0:
deoxys-256.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/tmmintrin.h:31:3: error: #error "SSSE3 instruction set not enabled"
deoxys-256.c: deoxys-256.c: In function 'XLS':
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: ...

Number of similar (compiler,implementation) pairs: 71, namely:
CompilerImplementations
cc opt
gcc opt
gcc -O2 -fomit-frame-pointer opt
gcc -O3 -fomit-frame-pointer opt
gcc -O -fomit-frame-pointer opt
gcc -Os -fomit-frame-pointer opt
gcc -fno-schedule-insns -O2 -fomit-frame-pointer opt
gcc -fno-schedule-insns -O3 -fomit-frame-pointer opt
gcc -fno-schedule-insns -O -fomit-frame-pointer opt
gcc -fno-schedule-insns -Os -fomit-frame-pointer opt
gcc -funroll-loops opt
gcc -funroll-loops -O2 -fomit-frame-pointer opt
gcc -funroll-loops -O3 -fomit-frame-pointer opt
gcc -funroll-loops -O -fomit-frame-pointer opt
gcc -funroll-loops -Os -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer opt
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer opt
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer opt
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer opt
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer opt
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer opt
gcc -m64 -O2 -fomit-frame-pointer opt
gcc -m64 -O3 -fomit-frame-pointer opt
gcc -m64 -O -fomit-frame-pointer opt
gcc -m64 -Os -fomit-frame-pointer opt
gcc -m64 -march=k8 -O2 -fomit-frame-pointer opt
gcc -m64 -march=k8 -O3 -fomit-frame-pointer opt
gcc -m64 -march=k8 -O -fomit-frame-pointer opt
gcc -m64 -march=k8 -Os -fomit-frame-pointer opt
gcc -m64 -march=nocona -O2 -fomit-frame-pointer opt
gcc -m64 -march=nocona -O3 -fomit-frame-pointer opt
gcc -m64 -march=nocona -O -fomit-frame-pointer opt
gcc -m64 -march=nocona -Os -fomit-frame-pointer opt
gcc -march=barcelona -O2 -fomit-frame-pointer opt
gcc -march=barcelona -O3 -fomit-frame-pointer opt
gcc -march=barcelona -O -fomit-frame-pointer opt
gcc -march=barcelona -Os -fomit-frame-pointer opt
gcc -march=k8 -O2 -fomit-frame-pointer opt
gcc -march=k8 -O3 -fomit-frame-pointer opt
gcc -march=k8 -O -fomit-frame-pointer opt
gcc -march=k8 -Os -fomit-frame-pointer opt
gcc -march=nocona -O2 -fomit-frame-pointer opt
gcc -march=nocona -O3 -fomit-frame-pointer opt
gcc -march=nocona -O -fomit-frame-pointer opt
gcc -march=nocona -Os -fomit-frame-pointer opt

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/opt
Compiler: clang -O3 -fomit-frame-pointer
deoxys-256.c: In file included from deoxys-256.c:27:
deoxys-256.c: /usr/include/clang/3.0/include/wmmintrin.h:28:3: error: #error "AES instructions not enabled"
deoxys-256.c: # error "AES instructions not enabled"
deoxys-256.c: ^
deoxys-256.c: In file included from deoxys-256.c:28:
deoxys-256.c: /usr/include/clang/3.0/include/tmmintrin.h:28:2: error: #error "SSSE3 instruction set not enabled"
deoxys-256.c: #error "SSSE3 instruction set not enabled"
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: warning: implicit declaration of function '_mm_shuffle_epi8' is invalid in C99 [-Wimplicit-function-declaration]
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:79:41: note: expanded from:
deoxys-256.c: s = xor( s , xor( subkeys[ 0] , t ) );t=permute( t , H_PERMUTATION);\
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:7:22: note: expanded from:
deoxys-256.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: error: assigning to '__m128i' from incompatible type 'int';
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys-256.c: ./tweakable-cipher.macros:79:40: note: expanded from:
deoxys-256.c: s = xor( s , xor( subkeys[ 0] , t ) );t=permute( t , H_PERMUTATION);\
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: warning: implicit declaration of function '_mm_aesenc_si128' is invalid in C99 [-Wimplicit-function-declaration]
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer opt

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/ref
Compiler: clang -O3 -fomit-frame-pointer
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/opt
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
deoxys-256.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
deoxys-256.c: clang: warning: argument unused during compilation: '-mavx2'
deoxys-256.c: clang: warning: argument unused during compilation: '-mpclmul'
deoxys-256.c: In file included from deoxys-256.c:27:
deoxys-256.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
deoxys-256.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
deoxys-256.c: #error "SSE4.1 instruction set not enabled"
deoxys-256.c: ^
deoxys-256.c: In file included from deoxys-256.c:28:
deoxys-256.c: /usr/include/clang/3.0/include/tmmintrin.h:28:2: error: #error "SSSE3 instruction set not enabled"
deoxys-256.c: #error "SSSE3 instruction set not enabled"
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: warning: implicit declaration of function '_mm_shuffle_epi8' is invalid in C99 [-Wimplicit-function-declaration]
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:79:41: note: expanded from:
deoxys-256.c: s = xor( s , xor( subkeys[ 0] , t ) );t=permute( t , H_PERMUTATION);\
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:7:22: note: expanded from:
deoxys-256.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: error: assigning to '__m128i' from incompatible type 'int';
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys-256.c: ./tweakable-cipher.macros:79:40: note: expanded from:
deoxys-256.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer opt

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
deoxys.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
deoxys.c: clang: warning: argument unused during compilation: '-mavx2'
deoxys.c: clang: warning: argument unused during compilation: '-mpclmul'
encrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
tweakableBC.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
tweakableBC.c: clang: warning: argument unused during compilation: '-mavx2'
tweakableBC.c: clang: warning: argument unused during compilation: '-mpclmul'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/opt
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
deoxys-256.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
deoxys-256.c: clang: warning: argument unused during compilation: '-mavx2'
deoxys-256.c: clang: warning: argument unused during compilation: '-mpclmul'
deoxys-256.c: clang: warning: argument unused during compilation: '-fpolly'
deoxys-256.c: clang: warning: argument unused during compilation: '-fvectorize'
deoxys-256.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
deoxys-256.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
deoxys-256.c: In file included from deoxys-256.c:27:
deoxys-256.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
deoxys-256.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
deoxys-256.c: #error "SSE4.1 instruction set not enabled"
deoxys-256.c: ^
deoxys-256.c: In file included from deoxys-256.c:28:
deoxys-256.c: /usr/include/clang/3.0/include/tmmintrin.h:28:2: error: #error "SSSE3 instruction set not enabled"
deoxys-256.c: #error "SSSE3 instruction set not enabled"
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: warning: implicit declaration of function '_mm_shuffle_epi8' is invalid in C99 [-Wimplicit-function-declaration]
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:79:41: note: expanded from:
deoxys-256.c: s = xor( s , xor( subkeys[ 0] , t ) );t=permute( t , H_PERMUTATION);\
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:7:22: note: expanded from:
deoxys-256.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys-256.c: ^
deoxys-256.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer opt

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
deoxys.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
deoxys.c: clang: warning: argument unused during compilation: '-mavx2'
deoxys.c: clang: warning: argument unused during compilation: '-mpclmul'
deoxys.c: clang: warning: argument unused during compilation: '-fpolly'
deoxys.c: clang: warning: argument unused during compilation: '-fvectorize'
deoxys.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
deoxys.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
encrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
encrypt.c: clang: warning: argument unused during compilation: '-fpolly'
encrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
tweakableBC.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
tweakableBC.c: clang: warning: argument unused during compilation: '-mavx2'
tweakableBC.c: clang: warning: argument unused during compilation: '-mpclmul'
tweakableBC.c: clang: warning: argument unused during compilation: '-fpolly'
tweakableBC.c: clang: warning: argument unused during compilation: '-fvectorize'
tweakableBC.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
tweakableBC.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/opt
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
deoxys-256.c: clang: warning: argument unused during compilation: '-mavx2'
deoxys-256.c: In file included from deoxys-256.c:27:
deoxys-256.c: /usr/include/clang/3.0/include/wmmintrin.h:28:3: error: #error "AES instructions not enabled"
deoxys-256.c: # error "AES instructions not enabled"
deoxys-256.c: ^
deoxys-256.c: In file included from deoxys-256.c:28:
deoxys-256.c: /usr/include/clang/3.0/include/tmmintrin.h:28:2: error: #error "SSSE3 instruction set not enabled"
deoxys-256.c: #error "SSSE3 instruction set not enabled"
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: warning: implicit declaration of function '_mm_shuffle_epi8' is invalid in C99 [-Wimplicit-function-declaration]
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:79:41: note: expanded from:
deoxys-256.c: s = xor( s , xor( subkeys[ 0] , t ) );t=permute( t , H_PERMUTATION);\
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:7:22: note: expanded from:
deoxys-256.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: error: assigning to '__m128i' from incompatible type 'int';
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys-256.c: ./tweakable-cipher.macros:79:40: note: expanded from:
deoxys-256.c: s = xor( s , xor( subkeys[ 0] , t ) );t=permute( t , H_PERMUTATION);\
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: warning: implicit declaration of function '_mm_aesenc_si128' is invalid in C99 [-Wimplicit-function-declaration]
deoxys-256.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer opt

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/ref
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
deoxys.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
tweakableBC.c: clang: warning: argument unused during compilation: '-mavx2'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/opt
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
deoxys-256.c: clang: warning: argument unused during compilation: '-mavx2'
deoxys-256.c: clang: warning: argument unused during compilation: '-fpolly'
deoxys-256.c: clang: warning: argument unused during compilation: '-fvectorize'
deoxys-256.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
deoxys-256.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
deoxys-256.c: In file included from deoxys-256.c:27:
deoxys-256.c: /usr/include/clang/3.0/include/wmmintrin.h:28:3: error: #error "AES instructions not enabled"
deoxys-256.c: # error "AES instructions not enabled"
deoxys-256.c: ^
deoxys-256.c: In file included from deoxys-256.c:28:
deoxys-256.c: /usr/include/clang/3.0/include/tmmintrin.h:28:2: error: #error "SSSE3 instruction set not enabled"
deoxys-256.c: #error "SSSE3 instruction set not enabled"
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: warning: implicit declaration of function '_mm_shuffle_epi8' is invalid in C99 [-Wimplicit-function-declaration]
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:79:41: note: expanded from:
deoxys-256.c: s = xor( s , xor( subkeys[ 0] , t ) );t=permute( t , H_PERMUTATION);\
deoxys-256.c: ^
deoxys-256.c: ./tweakable-cipher.macros:7:22: note: expanded from:
deoxys-256.c: #define permute(a,b) _mm_shuffle_epi8(a,b)
deoxys-256.c: ^
deoxys-256.c: deoxys-256.c:92:21: error: assigning to '__m128i' from incompatible type 'int';
deoxys-256.c: if( Direction){ AES( State , subkeys , Tweak , tTweak ); }
deoxys-256.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
deoxys-256.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer opt

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/ref
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
deoxys.c: clang: warning: argument unused during compilation: '-mavx2'
deoxys.c: clang: warning: argument unused during compilation: '-fpolly'
deoxys.c: clang: warning: argument unused during compilation: '-fvectorize'
deoxys.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
deoxys.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-fpolly'
encrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
tweakableBC.c: clang: warning: argument unused during compilation: '-mavx2'
tweakableBC.c: clang: warning: argument unused during compilation: '-fpolly'
tweakableBC.c: clang: warning: argument unused during compilation: '-fvectorize'
tweakableBC.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
tweakableBC.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/opt
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
deoxys-256.c: In file included from deoxys-256.c:27:0:
deoxys-256.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
deoxys-256.c: In file included from deoxys-256.c:28:0:
deoxys-256.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/tmmintrin.h:31:3: error: #error "SSSE3 instruction set not enabled"
deoxys-256.c: deoxys-256.c: In function 'XLS':
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: ...
deoxys-256.c: In file included from deoxys-256.c:27:0:
deoxys-256.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
deoxys-256.c: In file included from deoxys-256.c:28:0:
deoxys-256.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/tmmintrin.h:31:3: error: #error "SSSE3 instruction set not enabled"
deoxys-256.c: deoxys-256.c: In function 'XLS':
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: ...

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

Compiler output

Implementation: crypto_aead/deoxyseq256128v1/opt
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
deoxys-256.c: In file included from deoxys-256.c:27:0:
deoxys-256.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
deoxys-256.c: deoxys-256.c: In function 'XLS':
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:92:21: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:93:10: error: incompatible types when assigning to type '__m128i' from type 'int'
deoxys-256.c: deoxys-256.c:93:3: error: incompatible type for argument 2 of '_mm_xor_si128'
deoxys-256.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/emmintrin.h:1249:1: note: expected '__m128i' but argument is of type 'int'
deoxys-256.c: deoxys-256.c:93:3: error: incompatible type for argument 2 of '_mm_xor_si128'
deoxys-256.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/emmintrin.h:1249:1: note: expected '__m128i' but argument is of type 'int'
deoxys-256.c: deoxys-256.c:93:3: error: incompatible type for argument 2 of '_mm_xor_si128'
deoxys-256.c: ...

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer opt
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer opt
gcc -m64 -march=corei7 -O -fomit-frame-pointer opt
gcc -m64 -march=corei7 -Os -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer opt
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer opt