Implementation notes: amd64, mangetsu, crypto_aead/enchilada256v1

Computer: mangetsu
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: enchilada256v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
2375184refgcc-4.8 -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014092320140907
2377776refgcc-4.8 -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014092320140907
2438700refgcc-4.8 -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014092320140907
2440176refgcc-4.8 -m64 -march=corei7 -O3 -fomit-frame-pointer2014092320140907
2441232refgcc-4.8 -m64 -march=core2 -O3 -fomit-frame-pointer2014092320140907
2443360refgcc-4.8 -march=nocona -O3 -fomit-frame-pointer2014092320140907
2475328refgcc-4.8 -m64 -march=nocona -O3 -fomit-frame-pointer2014092320140907
2580936refgcc-4.8 -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014092320140907
2583868refgcc-4.8 -m64 -march=corei7-avx -O3 -fomit-frame-pointer2014092320140907
2584228refgcc-4.8 -m64 -march=core-avx-i -O3 -fomit-frame-pointer2014092320140907
2986780refgcc-4.8 -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014092320140907
3100460refgcc-4.8 -funroll-loops -O3 -fomit-frame-pointer2014092320140907
3100888refgcc-4.8 -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014092320140907
3108100refgcc-4.8 -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014092320140907
3109328refgcc-4.8 -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014092320140907
3208976refgcc-4.8 -fno-schedule-insns -O3 -fomit-frame-pointer2014092320140907
3209172refgcc-4.8 -O3 -fomit-frame-pointer2014092320140907
3212032refgcc-4.8 -m64 -O3 -fomit-frame-pointer2014092320140907
3226332refgcc-4.8 -m64 -march=barcelona -O3 -fomit-frame-pointer2014092320140907
3226960refgcc-4.8 -march=barcelona -O3 -fomit-frame-pointer2014092320140907
3229324refgcc-4.8 -m64 -march=k8 -O3 -fomit-frame-pointer2014092320140907
3232828refgcc-4.8 -march=k8 -O3 -fomit-frame-pointer2014092320140907
3586488refgcc-4.8 -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014092320140907
3595792refgcc-4.8 -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014092320140907
4594152refgcc-4.8 -funroll-loops -m64 -O3 -fomit-frame-pointer2014092320140907
17827392refgcc-4.8 -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014092320140907
17827948refgcc-4.8 -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014092320140907
18062908refgcc-4.8 -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014092320140907
18066904refgcc-4.8 -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014092320140907
18079904refgcc-4.8 -funroll-loops -m64 -O2 -fomit-frame-pointer2014092320140907
18079964refgcc-4.8 -funroll-loops -O2 -fomit-frame-pointer2014092320140907
18140200refgcc-4.8 -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014092320140907
19018984refgcc-4.8 -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014092320140907
19032392refgcc-4.8 -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014092320140907
19407168refgcc-4.8 -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014092320140907
19425924refgcc-4.8 -funroll-loops -march=nocona -O -fomit-frame-pointer2014092320140907
19533384refgcc-4.8 -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014092320140907
19539964refgcc-4.8 -funroll-loops -march=barcelona -O -fomit-frame-pointer2014092320140907
19542632refgcc-4.8 -funroll-loops -m64 -O -fomit-frame-pointer2014092320140907
19546204refgcc-4.8 -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014092320140907
19551196refgcc-4.8 -funroll-loops -O -fomit-frame-pointer2014092320140907
19570840refgcc-4.8 -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014092320140907
19573008refgcc-4.8 -funroll-loops -march=k8 -O -fomit-frame-pointer2014092320140907
21255068refgcc-4.8 -fno-schedule-insns -O2 -fomit-frame-pointer2014092320140907
21283404refgcc-4.8 -O2 -fomit-frame-pointer2014092320140907
21287908refgcc-4.8 -m64 -O2 -fomit-frame-pointer2014092320140907
21295124refgcc-4.8 -march=barcelona -O2 -fomit-frame-pointer2014092320140907
21301512refgcc-4.8 -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014092320140907
21306396refgcc-4.8 -m64 -march=barcelona -O2 -fomit-frame-pointer2014092320140907
21309752refgcc-4.8 -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014092320140907
21317324refgcc-4.8 -m64 -march=corei7-avx -O2 -fomit-frame-pointer2014092320140907
21331904refgcc-4.8 -m64 -march=corei7 -O2 -fomit-frame-pointer2014092320140907
21337672refgcc-4.8 -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014092320140907
21337756refgcc-4.8 -m64 -march=core2 -Os -fomit-frame-pointer2014092320140907
21342940refgcc-4.8 -m64 -march=corei7 -Os -fomit-frame-pointer2014092320140907
21343400refgcc-4.8 -march=nocona -O2 -fomit-frame-pointer2014092320140907
21344328refgcc-4.8 -m64 -march=corei7-avx -Os -fomit-frame-pointer2014092320140907
21344424refgcc-4.8 -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014092320140907
21344556refgcc-4.8 -march=barcelona -Os -fomit-frame-pointer2014092320140907
21348792refgcc-4.8 -m64 -march=nocona -O2 -fomit-frame-pointer2014092320140907
21349160refgcc-4.8 -m64 -march=core2 -O2 -fomit-frame-pointer2014092320140907
21349208refgcc-4.8 -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014092320140907
21350232refgcc-4.8 -Os -fomit-frame-pointer2014092320140907
21351048refgcc-4.8 -fno-schedule-insns -Os -fomit-frame-pointer2014092320140907
21351744refgcc-4.8 -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014092320140907
21352228refgcc-4.8 -m64 -march=barcelona -Os -fomit-frame-pointer2014092320140907
21352508refgcc-4.8 -march=k8 -Os -fomit-frame-pointer2014092320140907
21353224refgcc-4.8 -m64 -march=core-avx-i -Os -fomit-frame-pointer2014092320140907
21353536refgcc-4.8 -m64 -march=k8 -Os -fomit-frame-pointer2014092320140907
21354448refgcc-4.8 -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014092320140907
21354480refgcc-4.8 -m64 -Os -fomit-frame-pointer2014092320140907
21357668refgcc-4.8 -m64 -march=core-avx-i -O2 -fomit-frame-pointer2014092320140907
21374840refgcc-4.8 -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014092320140907
21384676refgcc-4.8 -march=k8 -O2 -fomit-frame-pointer2014092320140907
21386456refgcc-4.8 -m64 -march=k8 -O2 -fomit-frame-pointer2014092320140907
21407908refgcc-4.8 -funroll-loops -Os -fomit-frame-pointer2014092320140907
21409792refgcc-4.8 -funroll-loops -m64 -Os -fomit-frame-pointer2014092320140907
21411924refgcc-4.8 -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014092320140907
21413776refgcc-4.8 -funroll-loops -march=k8 -Os -fomit-frame-pointer2014092320140907
21417932refgcc-4.8 -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014092320140907
21531212refgcc-4.8 -m64 -march=nocona -O -fomit-frame-pointer2014092320140907
21531436refgcc-4.8 -march=nocona -O -fomit-frame-pointer2014092320140907
21714244refgcc-4.8 -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014092320140907
21715512refgcc-4.8 -m64 -march=corei7-avx -O -fomit-frame-pointer2014092320140907
21717260refgcc-4.8 -m64 -march=k8 -O -fomit-frame-pointer2014092320140907
21719348refgcc-4.8 -O -fomit-frame-pointer2014092320140907
21719540refgcc-4.8 -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014092320140907
21719708refgcc-4.8 -fno-schedule-insns -O -fomit-frame-pointer2014092320140907
21720652refgcc-4.8 -march=k8 -O -fomit-frame-pointer2014092320140907
21728276refgcc-4.8 -m64 -march=corei7 -O -fomit-frame-pointer2014092320140907
21733412refgcc-4.8 -m64 -march=core-avx-i -O -fomit-frame-pointer2014092320140907
21735896refgcc-4.8 -m64 -march=core2 -O -fomit-frame-pointer2014092320140907
21736708refgcc-4.8 -m64 -march=barcelona -O -fomit-frame-pointer2014092320140907
21741256refgcc-4.8 -march=barcelona -O -fomit-frame-pointer2014092320140907
21743176refgcc-4.8 -m64 -march=native -mtune=native -O -fomit-frame-pointer2014092320140907
21754996refgcc-4.8 -m64 -O -fomit-frame-pointer2014092320140907
21756208refgcc-4.8 -march=nocona -Os -fomit-frame-pointer2014092320140907
21757604refgcc-4.8 -m64 -march=nocona -Os -fomit-frame-pointer2014092320140907
21811032refgcc-4.8 -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014092320140907
21819836refgcc-4.8 -funroll-loops -march=nocona -Os -fomit-frame-pointer2014092320140907
65266404refgcc-4.7 -funroll-loops2014092320140907
65309504refgcc-4.72014092320140907
65454100refgcc-4.82014092320140907
65455960refcc2014092320140907
65506292refgcc-4.8 -funroll-loops2014092320140907

Checksum failure

Implementation: crypto_aead/enchilada256v1/ref
Compiler: clang -O3 -fomit-frame-pointer
dba2cea8fe0b7bc900e026e9b52e160af847b33259bc873785e4484a623ffdc8
Number of similar (compiler,implementation) pairs: 7, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer ref
clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer ref
clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Checksum failure

Implementation: crypto_aead/enchilada256v1/ref
Compiler: gcc-4.7 -O2 -fomit-frame-pointer
8fe7ead79f6bec140299990f0a4fec8a5c4a197669d11debb94369244aa6749c
Number of similar (compiler,implementation) pairs: 72, namely:
CompilerImplementations
gcc-4.7 -O2 -fomit-frame-pointer ref
gcc-4.7 -O3 -fomit-frame-pointer ref
gcc-4.7 -O -fomit-frame-pointer ref
gcc-4.7 -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc-4.7 -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc-4.7 -fno-schedule-insns -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc-4.7 -m64 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=k8 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=nocona -O -fomit-frame-pointer ref
gcc-4.7 -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.7 -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.7 -march=barcelona -O -fomit-frame-pointer ref
gcc-4.7 -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.7 -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.7 -march=k8 -O -fomit-frame-pointer ref
gcc-4.7 -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.7 -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.7 -march=nocona -O -fomit-frame-pointer ref

Checksum failure

Implementation: crypto_aead/enchilada256v1/ref
Compiler: gcc-4.7 -Os -fomit-frame-pointer
0f410c577b9df8611868f6f2d43d2f1c7ef2bf8f02ca7e70fe29ea0ce618d3db
Number of similar (compiler,implementation) pairs: 24, namely:
CompilerImplementations
gcc-4.7 -Os -fomit-frame-pointer ref
gcc-4.7 -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc-4.7 -march=barcelona -Os -fomit-frame-pointer ref
gcc-4.7 -march=k8 -Os -fomit-frame-pointer ref
gcc-4.7 -march=nocona -Os -fomit-frame-pointer ref

Checksum failure

Implementation: crypto_aead/enchilada256v1/ref
Compiler: gcc-4.7 -m64 -march=barcelona -O2 -fomit-frame-pointer
8fe7ead79f6bec140299990f0a4fec8a5c4a197669d11debb94369244aa6749c 8fe7ead79f6bec140299990f0a4fec8a5c4a197669d11debb94369244aa6749c
Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc-4.7 -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=barcelona -O -fomit-frame-pointer ref

Checksum failure

Implementation: crypto_aead/enchilada256v1/ref
Compiler: gcc-4.7 -m64 -march=barcelona -Os -fomit-frame-pointer
0f410c577b9df8611868f6f2d43d2f1c7ef2bf8f02ca7e70fe29ea0ce618d3db 0f410c577b9df8611868f6f2d43d2f1c7ef2bf8f02ca7e70fe29ea0ce618d3db
Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc-4.7 -m64 -march=barcelona -Os -fomit-frame-pointer ref

Test failure

Implementation: crypto_aead/enchilada256v1/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx2 -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/enchilada256v1/ref
Compiler: cc
aescrypt.c: In file included from aescrypt.c:34:0:
aescrypt.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: #elif (('1234' >gt;>gt; 24) == '1')
aescrypt.c: ^
aescrypt.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: #elif (('4321' >gt;>gt; 24) == '1')
aescrypt.c: ^
aestab.c: In file included from aestab.c:30:0:
aestab.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aestab.c: #elif (('1234' >gt;>gt; 24) == '1')
aestab.c: ^
aestab.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aestab.c: #elif (('4321' >gt;>gt; 24) == '1')
aestab.c: ^

Number of similar (compiler,implementation) pairs: 102, namely:
CompilerImplementations
cc ref
gcc-4.8 ref
gcc-4.8 -O2 -fomit-frame-pointer ref
gcc-4.8 -O3 -fomit-frame-pointer ref
gcc-4.8 -O -fomit-frame-pointer ref
gcc-4.8 -Os -fomit-frame-pointer ref
gcc-4.8 -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc-4.8 -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc-4.8 -fno-schedule-insns -O -fomit-frame-pointer ref
gcc-4.8 -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc-4.8 -funroll-loops ref
gcc-4.8 -funroll-loops -O2 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -O3 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -O -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -Os -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc-4.8 -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -O -fomit-frame-pointer ref
gcc-4.8 -m64 -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=k8 -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc-4.8 -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.8 -m64 -march=nocona -O -fomit-frame-pointer ref
gcc-4.8 -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc-4.8 -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.8 -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.8 -march=barcelona -O -fomit-frame-pointer ref
gcc-4.8 -march=barcelona -Os -fomit-frame-pointer ref
gcc-4.8 -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.8 -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.8 -march=k8 -O -fomit-frame-pointer ref
gcc-4.8 -march=k8 -Os -fomit-frame-pointer ref
gcc-4.8 -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.8 -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.8 -march=nocona -O -fomit-frame-pointer ref
gcc-4.8 -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/enchilada256v1/ref
Compiler: clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
aescrypt.c: clang-3.3: warning: argument unused during compilation: '-fpolly'
aestab.c: clang-3.3: warning: argument unused during compilation: '-fpolly'
auth.c: clang-3.3: warning: argument unused during compilation: '-fpolly'
chacha.c: clang-3.3: warning: argument unused during compilation: '-fpolly'
enchilada256.c: clang-3.3: warning: argument unused during compilation: '-fpolly'

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref
clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/enchilada256v1/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
aescrypt.c: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'
aestab.c: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'
auth.c: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'
chacha.c: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'
enchilada256.c: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'

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/enchilada256v1/ref
Compiler: gcc-4.7
aescrypt.c: In file included from aescrypt.c:34:0:
aescrypt.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aestab.c: In file included from aestab.c:30:0:
aestab.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aestab.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]

Number of similar (compiler,implementation) pairs: 101, namely:
CompilerImplementations
gcc-4.7 ref
gcc-4.7 -O2 -fomit-frame-pointer ref
gcc-4.7 -O3 -fomit-frame-pointer ref
gcc-4.7 -O -fomit-frame-pointer ref
gcc-4.7 -Os -fomit-frame-pointer ref
gcc-4.7 -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc-4.7 -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc-4.7 -fno-schedule-insns -O -fomit-frame-pointer ref
gcc-4.7 -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops ref
gcc-4.7 -funroll-loops -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc-4.7 -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=k8 -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc-4.7 -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.7 -m64 -march=nocona -O -fomit-frame-pointer ref
gcc-4.7 -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc-4.7 -march=barcelona -O2 -fomit-frame-pointer ref
gcc-4.7 -march=barcelona -O3 -fomit-frame-pointer ref
gcc-4.7 -march=barcelona -O -fomit-frame-pointer ref
gcc-4.7 -march=barcelona -Os -fomit-frame-pointer ref
gcc-4.7 -march=k8 -O2 -fomit-frame-pointer ref
gcc-4.7 -march=k8 -O3 -fomit-frame-pointer ref
gcc-4.7 -march=k8 -O -fomit-frame-pointer ref
gcc-4.7 -march=k8 -Os -fomit-frame-pointer ref
gcc-4.7 -march=nocona -O2 -fomit-frame-pointer ref
gcc-4.7 -march=nocona -O3 -fomit-frame-pointer ref
gcc-4.7 -march=nocona -O -fomit-frame-pointer ref
gcc-4.7 -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/enchilada256v1/ref
Compiler: gcc-4.7 -m64 -march=barcelona -O2 -fomit-frame-pointer
aescrypt.c: In file included from aescrypt.c:34:0:
aescrypt.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aestab.c: In file included from aestab.c:30:0:
aestab.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aestab.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: In file included from aescrypt.c:34:0:
aescrypt.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aestab.c: In file included from aestab.c:30:0:
aestab.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aestab.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]

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

Compiler output

Implementation: crypto_aead/enchilada256v1/ref
Compiler: gcc-4.8 -m64 -march=barcelona -O2 -fomit-frame-pointer
aescrypt.c: In file included from aescrypt.c:34:0:
aescrypt.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: #elif (('1234' >gt;>gt; 24) == '1')
aescrypt.c: ^
aescrypt.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: #elif (('4321' >gt;>gt; 24) == '1')
aescrypt.c: ^
aestab.c: In file included from aestab.c:30:0:
aestab.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aestab.c: #elif (('1234' >gt;>gt; 24) == '1')
aestab.c: ^
aestab.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aestab.c: #elif (('4321' >gt;>gt; 24) == '1')
aestab.c: ^
aescrypt.c: In file included from aescrypt.c:34:0:
aescrypt.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: #elif (('1234' >gt;>gt; 24) == '1')
aescrypt.c: ^
aescrypt.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aescrypt.c: #elif (('4321' >gt;>gt; 24) == '1')
aescrypt.c: ^
aestab.c: In file included from aestab.c:30:0:
aestab.c: aesopt.h:237:9: warning: multi-character character constant [-Wmultichar]
aestab.c: #elif (('1234' >gt;>gt; 24) == '1')
aestab.c: ^
aestab.c: aesopt.h:239:9: warning: multi-character character constant [-Wmultichar]
aestab.c: #elif (('4321' >gt;>gt; 24) == '1')
aestab.c: ^

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