Implementation notes: amd64, hydra2, crypto_stream/aes256ctr

Computer: hydra2
Architecture: amd64
CPU ID: GenuineIntel-000206c2-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_stream
Primitive: aes256ctr
TimeImplementationCompilerBenchmark dateSUPERCOP version
3236opensslclang -O3 -fomit-frame-pointer2014101420141014
3236opensslclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101420141014
3236opensslclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
3236opensslgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014101420141014
3240opensslclang -O3 -fwrapv -march=native -fomit-frame-pointer2014101420141014
3240opensslclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014101420141014
3240opensslclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
3240opensslgcc -O2 -fomit-frame-pointer2014101420141014
3240opensslgcc -O3 -fomit-frame-pointer2014101420141014
3240opensslgcc -O -fomit-frame-pointer2014101420141014
3240opensslgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014101420141014
3240opensslgcc -fno-schedule-insns -Os -fomit-frame-pointer2014101420141014
3240opensslgcc -funroll-loops -O3 -fomit-frame-pointer2014101420141014
3240opensslgcc -funroll-loops -Os -fomit-frame-pointer2014101420141014
3240opensslgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014101420141014
3240opensslgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014101420141014
3240opensslgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014101420141014
3240opensslgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014101420141014
3240opensslgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014101420141014
3240opensslgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -O2 -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014101420141014
3240opensslgcc -m64 -march=nocona -Os -fomit-frame-pointer2014101420141014
3240opensslgcc -march=barcelona -O3 -fomit-frame-pointer2014101420141014
3240opensslgcc -march=k8 -O3 -fomit-frame-pointer2014101420141014
3240opensslgcc -march=k8 -Os -fomit-frame-pointer2014101420141014
3240opensslgcc -march=nocona -O2 -fomit-frame-pointer2014101420141014
3244opensslgcc -Os -fomit-frame-pointer2014101420141014
3244opensslgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014101420141014
3244opensslgcc -fno-schedule-insns -O -fomit-frame-pointer2014101420141014
3244opensslgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014101420141014
3244opensslgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014101420141014
3244opensslgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014101420141014
3244opensslgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014101420141014
3244opensslgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014101420141014
3244opensslgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014101420141014
3244opensslgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014101420141014
3244opensslgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014101420141014
3244opensslgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014101420141014
3244opensslgcc -m64 -O3 -fomit-frame-pointer2014101420141014
3244opensslgcc -m64 -march=barcelona -O -fomit-frame-pointer2014101420141014
3244opensslgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014101420141014
3244opensslgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014101420141014
3244opensslgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014101420141014
3244opensslgcc -m64 -march=k8 -O -fomit-frame-pointer2014101420141014
3244opensslgcc -march=barcelona -O2 -fomit-frame-pointer2014101420141014
3244opensslgcc -march=barcelona -O -fomit-frame-pointer2014101420141014
3244opensslgcc -march=nocona -Os -fomit-frame-pointer2014101420141014
3248opensslcc2014101420141014
3248opensslclang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops2014101420141014
3248opensslgcc -funroll-loops -O2 -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -O -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -m64 -O -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014101420141014
3248opensslgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014101420141014
3248opensslgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014101420141014
3248opensslgcc -m64 -march=core2 -O -fomit-frame-pointer2014101420141014
3248opensslgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014101420141014
3248opensslgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014101420141014
3248opensslgcc -m64 -march=corei7 -O -fomit-frame-pointer2014101420141014
3248opensslgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014101420141014
3248opensslgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014101420141014
3248opensslgcc -march=k8 -O -fomit-frame-pointer2014101420141014
3248opensslgcc -march=nocona -O3 -fomit-frame-pointer2014101420141014
3248opensslgcc -march=nocona -O -fomit-frame-pointer2014101420141014
3252opensslgcc2014101420141014
3252opensslgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014101420141014
3252opensslgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014101420141014
3252opensslgcc -m64 -Os -fomit-frame-pointer2014101420141014
3252opensslgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014101420141014
3252opensslgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014101420141014
3252opensslgcc -m64 -march=k8 -Os -fomit-frame-pointer2014101420141014
3252opensslgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014101420141014
3252opensslgcc -march=k8 -O2 -fomit-frame-pointer2014101420141014
3256opensslgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014101420141014
3256opensslgcc -m64 -O -fomit-frame-pointer2014101420141014
3256opensslgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014101420141014
3260opensslgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014101420141014
3260opensslgcc -m64 -march=nocona -O -fomit-frame-pointer2014101420141014
3264opensslgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014101420141014
3272opensslgcc -march=barcelona -Os -fomit-frame-pointer2014101420141014
3276opensslgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014101420141014
3280opensslgcc -m64 -march=core2 -Os -fomit-frame-pointer2014101420141014
3284opensslgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014101420141014
3296opensslgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014101420141014
3308opensslgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014101420141014
3500dolbeau/aesenc-intgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014101420141014
3552opensslgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014101420141014
5072cryptoppclang++ -O3 -fwrapv -march=native -fomit-frame-pointer2014071220140622
5080cryptoppg++ -march=barcelona -O3 -fomit-frame-pointer2014052920140525
5084cryptoppclang++ -O3 -fomit-frame-pointer2014071220140622
5104cryptoppg++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014052920140525
5108cryptoppg++ -O2 -fomit-frame-pointer2014052920140525
5112cryptoppg++ -fno-schedule-insns -O3 -fomit-frame-pointer2014052920140525
5112cryptoppg++ -m64 -march=corei7 -O2 -fomit-frame-pointer2014052920140525
5112cryptoppg++ -m64 -march=nocona -O -fomit-frame-pointer2014052920140525
5116cryptoppg++ -m64 -O2 -fomit-frame-pointer2014052920140525
5116cryptoppg++ -march=k8 -O2 -fomit-frame-pointer2014052920140525
5116cryptoppg++ -march=k8 -O -fomit-frame-pointer2014052920140525
5124cryptoppg++ -fno-schedule-insns -O2 -fomit-frame-pointer2014052920140525
5124cryptoppg++ -m64 -march=barcelona -O3 -fomit-frame-pointer2014052920140525
5124cryptoppg++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014052920140525
5124cryptoppg++ -march=nocona -O -fomit-frame-pointer2014052920140525
5128cryptoppg++ -O3 -fomit-frame-pointer2014052920140525
5132cryptoppg++ -m64 -march=nocona -O3 -fomit-frame-pointer2014052920140525
5136cryptoppg++ -m64 -O3 -fomit-frame-pointer2014052920140525
5140cryptoppg++ -m64 -march=core2 -O -fomit-frame-pointer2014052920140525
5140cryptoppg++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014052920140525
5144cryptoppg++ -march=barcelona -O -fomit-frame-pointer2014052920140525
5152cryptoppg++ -m64 -march=core2 -O2 -fomit-frame-pointer2014052920140525
5152cryptoppg++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014052920140525
5152cryptoppg++ -march=k8 -Os -fomit-frame-pointer2014052920140525
5156cryptoppg++ -m64 -Os -fomit-frame-pointer2014052920140525
5156cryptoppg++ -m64 -march=corei7 -O3 -fomit-frame-pointer2014052920140525
5156cryptoppg++ -m64 -march=nocona -O2 -fomit-frame-pointer2014052920140525
5160cryptoppg++ -m64 -march=barcelona -Os -fomit-frame-pointer2014052920140525
5164cryptoppg++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014052920140525
5164cryptoppg++ -march=nocona -O3 -fomit-frame-pointer2014052920140525
5168cryptoppg++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014052920140525
5168cryptoppg++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014052920140525
5172cryptoppg++ -m64 -march=core2 -Os -fomit-frame-pointer2014052920140525
5172cryptoppg++ -m64 -march=nocona -Os -fomit-frame-pointer2014052920140525
5176cryptoppclang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014071220140622
5176cryptoppg++ -m64 -march=k8 -O3 -fomit-frame-pointer2014052920140525
5176cryptoppg++ -march=barcelona -Os -fomit-frame-pointer2014052920140525
5176cryptoppg++ -march=k8 -O3 -fomit-frame-pointer2014052920140525
5180cryptoppg++ -fno-schedule-insns -O -fomit-frame-pointer2014052920140525
5180cryptoppg++ -m64 -march=barcelona -O -fomit-frame-pointer2014052920140525
5184cryptoppclang++ -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014071220140622
5184cryptoppg++ -m64 -march=corei7 -O -fomit-frame-pointer2014052920140525
5184cryptoppg++ -march=nocona -O2 -fomit-frame-pointer2014052920140525
5188cryptoppclang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer2014071220140622
5188cryptoppg++ -Os -fomit-frame-pointer2014052920140525
5188cryptoppg++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014052920140525
5200cryptoppg++ -m64 -march=barcelona -O2 -fomit-frame-pointer2014052920140525
5200cryptoppg++ -m64 -march=native -mtune=native -O -fomit-frame-pointer2014052920140525
5204cryptoppg++ -m64 -O -fomit-frame-pointer2014052920140525
5208cryptoppg++ -m64 -march=corei7 -Os -fomit-frame-pointer2014052920140525
5212cryptoppg++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014052920140525
5212cryptoppg++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014052920140525
5212cryptoppg++ -march=nocona -Os -fomit-frame-pointer2014052920140525
5220cryptoppg++ -O -fomit-frame-pointer2014052920140525
5220cryptoppg++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014052920140525
5228cryptoppg++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014052920140525
5228cryptoppg++ -m64 -march=k8 -O -fomit-frame-pointer2014052920140525
5236cryptoppclang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101420141014
5252cryptoppg++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014052920140525
5256cryptoppg++ -m64 -march=core2 -O3 -fomit-frame-pointer2014052920140525
5276cryptoppg++ -march=barcelona -O2 -fomit-frame-pointer2014052920140525
5280cryptoppg++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014052920140525
5288cryptoppg++ -fno-schedule-insns -Os -fomit-frame-pointer2014052920140525
5288cryptoppg++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014052920140525
5544cryptoppg++ -m64 -march=k8 -O2 -fomit-frame-pointer2014052920140525
5568cryptoppg++ -m64 -march=k8 -Os -fomit-frame-pointer2014052920140525
6424dolbeau/aesenc-intgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014101420141014
6448dolbeau/aesenc-intgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014101420141014
7212cryptoppg++2014052920140525
7652dolbeau/aesenc-intgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014101420141014
8088dolbeau/aesenc-intclang -O3 -fwrapv -march=native -fomit-frame-pointer2014101420141014
8088dolbeau/aesenc-intclang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014

Compiler output

Implementation: crypto_stream/aes256ctr/dolbeau/aesenc-int
Compiler: cc
aesenc-int.c: aesenc-int.c: In function 'aesni_key256_expand':
aesenc-int.c: aesenc-int.c:67:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:68:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:70:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:71:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:73:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:74:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:76:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:77:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:79:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:80:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:82:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:83:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:85:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c: In function 'aesni_encrypt1':
aesenc-int.c: aesenc-int.c:96:10: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:98:8: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c: In function 'aesni_encrypt4':
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: ...

Number of similar (compiler,implementation) pairs: 87, namely:
CompilerImplementations
cc dolbeau/aesenc-int
gcc dolbeau/aesenc-int
gcc -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops dolbeau/aesenc-int
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int

Compiler output

Implementation: crypto_stream/aes256ctr/openssl
Compiler: cc
stream.c: stream.c: In function 'crypto_stream_aes256ctr_openssl':
stream.c: stream.c:12:3: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]

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

Compiler output

Implementation: crypto_stream/aes256ctr/cryptopp
Compiler: clang++ -O3 -fomit-frame-pointer
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidRounds(const std::string &algorithm, unsigned int rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is not a valid number of rounds") {}
stream.cpp: ^
stream.cpp: 2 warnings generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang++ -O3 -fomit-frame-pointer cryptopp
clang++ -O3 -fwrapv -march=native -fomit-frame-pointer cryptopp

Compiler output

Implementation: crypto_stream/aes256ctr/cryptopp
Compiler: clang++ -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
stream.cpp: clang: warning: argument unused during compilation: '-fpolly'
stream.cpp: clang: warning: argument unused during compilation: '-fvectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidRounds(const std::string &algorithm, unsigned int rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is not a valid number of rounds") {}
stream.cpp: ^
stream.cpp: 2 warnings generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer cryptopp

Compiler output

Implementation: crypto_stream/aes256ctr/cryptopp
Compiler: clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
stream.cpp: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
stream.cpp: clang: warning: argument unused during compilation: '-mavx2'
stream.cpp: clang: warning: argument unused during compilation: '-mpclmul'
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidRounds(const std::string &algorithm, unsigned int rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is not a valid number of rounds") {}
stream.cpp: ^
stream.cpp: 2 warnings generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 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 cryptopp

Compiler output

Implementation: crypto_stream/aes256ctr/cryptopp
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
stream.cpp: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
stream.cpp: clang: warning: argument unused during compilation: '-mavx2'
stream.cpp: clang: warning: argument unused during compilation: '-mpclmul'
stream.cpp: clang: warning: argument unused during compilation: '-fpolly'
stream.cpp: clang: warning: argument unused during compilation: '-fvectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/benchmarking/supercop-20141014/supercop-data/hydra2/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: ...

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 cryptopp

Compiler output

Implementation: crypto_stream/aes256ctr/cryptopp
Compiler: clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer
stream.cpp: clang: warning: argument unused during compilation: '-mavx2'
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidRounds(const std::string &algorithm, unsigned int rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is not a valid number of rounds") {}
stream.cpp: ^
stream.cpp: 2 warnings generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.

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

Compiler output

Implementation: crypto_stream/aes256ctr/cryptopp
Compiler: clang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
stream.cpp: clang: warning: argument unused during compilation: '-mavx2'
stream.cpp: clang: warning: argument unused during compilation: '-fpolly'
stream.cpp: clang: warning: argument unused during compilation: '-fvectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/supercop/supercop-20140622/supercop-data/hydra2/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidRounds(const std::string &algorithm, unsigned int rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is not a valid number of rounds") {}
stream.cpp: ^
stream.cpp: ...
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 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 cryptopp

Compiler output

Implementation: crypto_stream/aes256ctr/dolbeau/aesenc-int
Compiler: clang -O3 -fomit-frame-pointer
aesenc-int.c: aesenc-int.c:67:3: warning: implicit declaration of function '_mm_aeskeygenassist_si128' is invalid in C99 [-Wimplicit-function-declaration]
aesenc-int.c: BLOCK1(0x01);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:48:19: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp2, IMM); \
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:67:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: BLOCK1(0x01);
aesenc-int.c: ^~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:48:11: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp2, IMM); \
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:68:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: BLOCK2(0x01);
aesenc-int.c: ^~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:58:11: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp0, IMM); \
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:70:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: BLOCK1(0x02);
aesenc-int.c: ^~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:48:11: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp2, IMM); \
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:71:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer dolbeau/aesenc-int

Compiler output

Implementation: crypto_stream/aes256ctr/openssl
Compiler: clang -O3 -fomit-frame-pointer
stream.c: stream.c:12:3: warning: implicitly declaring C library function 'memset' with type 'void *(void *, int, unsigned long)'
stream.c: memset(temp, 0, outlen);
stream.c: ^
stream.c: stream.c:12:3: note: please include the header gt; or explicitly provide a declaration for 'memset'
stream.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.
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: 2, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer openssl
clang -O3 -fwrapv -march=native -fomit-frame-pointer openssl

Compiler output

Implementation: crypto_stream/aes256ctr/dolbeau/aesenc-int
Compiler: clang -O3 -fwrapv -march=native -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 -fwrapv -march=native -fomit-frame-pointer dolbeau/aesenc-int

Compiler output

Implementation: crypto_stream/aes256ctr/dolbeau/aesenc-int
Compiler: clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
aesenc-int.c: clang: warning: argument unused during compilation: '-fpolly'
aesenc-int.c: clang: warning: argument unused during compilation: '-fvectorize'
aesenc-int.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
aesenc-int.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=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer dolbeau/aesenc-int

Compiler output

Implementation: crypto_stream/aes256ctr/openssl
Compiler: clang -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
stream.c: clang: warning: argument unused during compilation: '-fpolly'
stream.c: clang: warning: argument unused during compilation: '-fvectorize'
stream.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
stream.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
stream.c: stream.c:12:3: warning: implicitly declaring C library function 'memset' with type 'void *(void *, int, unsigned long)'
stream.c: memset(temp, 0, outlen);
stream.c: ^
stream.c: stream.c:12:3: note: please include the header gt; or explicitly provide a declaration for 'memset'
stream.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.
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=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer openssl

Compiler output

Implementation: crypto_stream/aes256ctr/dolbeau/aesenc-int
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
aesenc-int.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
aesenc-int.c: clang: warning: argument unused during compilation: '-mavx2'
aesenc-int.c: clang: warning: argument unused during compilation: '-mpclmul'
aesenc-int.c: In file included from aesenc-int.c:11:
aesenc-int.c: In file included from /usr/include/clang/3.0/include/immintrin.h:52:
aesenc-int.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
aesenc-int.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
aesenc-int.c: #error "SSE4.1 instruction set not enabled"
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:204:1: warning: implicit declaration of function '_mm_shuffle_epi8' is invalid in C99 [-Wimplicit-function-declaration]
aesenc-int.c: FUNC(4, MAKE4)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:188:13: note: expanded from:
aesenc-int.c: MAKEN(NVxV_WRAP); \
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:154:3: note: expanded from:
aesenc-int.c: X(0);X(1);X(2);X(3)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:134:11: note: expanded from:
aesenc-int.c: nv##a = _mm_shuffle_epi8(ad##a, _mm_set_epi8(8,9,10,11,12,13,14,15,0,1,2,3,4,5,6,7))
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:204:1: error: assigning to '__m128i' from incompatible type 'int';
aesenc-int.c: FUNC(4, MAKE4)
aesenc-int.c: ^~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:188:13: note: expanded from:
aesenc-int.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 dolbeau/aesenc-int

Compiler output

Implementation: crypto_stream/aes256ctr/openssl
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
stream.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
stream.c: clang: warning: argument unused during compilation: '-mavx2'
stream.c: clang: warning: argument unused during compilation: '-mpclmul'
stream.c: stream.c:12:3: warning: implicitly declaring C library function 'memset' with type 'void *(void *, int, unsigned long)'
stream.c: memset(temp, 0, outlen);
stream.c: ^
stream.c: stream.c:12:3: note: please include the header gt; or explicitly provide a declaration for 'memset'
stream.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.
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 openssl

Compiler output

Implementation: crypto_stream/aes256ctr/dolbeau/aesenc-int
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
aesenc-int.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
aesenc-int.c: clang: warning: argument unused during compilation: '-mavx2'
aesenc-int.c: clang: warning: argument unused during compilation: '-mpclmul'
aesenc-int.c: clang: warning: argument unused during compilation: '-fpolly'
aesenc-int.c: clang: warning: argument unused during compilation: '-fvectorize'
aesenc-int.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
aesenc-int.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
aesenc-int.c: In file included from aesenc-int.c:11:
aesenc-int.c: In file included from /usr/include/clang/3.0/include/immintrin.h:52:
aesenc-int.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
aesenc-int.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
aesenc-int.c: #error "SSE4.1 instruction set not enabled"
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:204:1: warning: implicit declaration of function '_mm_shuffle_epi8' is invalid in C99 [-Wimplicit-function-declaration]
aesenc-int.c: FUNC(4, MAKE4)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:188:13: note: expanded from:
aesenc-int.c: MAKEN(NVxV_WRAP); \
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:154:3: note: expanded from:
aesenc-int.c: X(0);X(1);X(2);X(3)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:134:11: note: expanded from:
aesenc-int.c: nv##a = _mm_shuffle_epi8(ad##a, _mm_set_epi8(8,9,10,11,12,13,14,15,0,1,2,3,4,5,6,7))
aesenc-int.c: ^
aesenc-int.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 dolbeau/aesenc-int

Compiler output

Implementation: crypto_stream/aes256ctr/openssl
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
stream.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
stream.c: clang: warning: argument unused during compilation: '-mavx2'
stream.c: clang: warning: argument unused during compilation: '-mpclmul'
stream.c: clang: warning: argument unused during compilation: '-fpolly'
stream.c: clang: warning: argument unused during compilation: '-fvectorize'
stream.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
stream.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
stream.c: stream.c:12:3: warning: implicitly declaring C library function 'memset' with type 'void *(void *, int, unsigned long)'
stream.c: memset(temp, 0, outlen);
stream.c: ^
stream.c: stream.c:12:3: note: please include the header gt; or explicitly provide a declaration for 'memset'
stream.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.
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 openssl

Compiler output

Implementation: crypto_stream/aes256ctr/dolbeau/aesenc-int
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
aesenc-int.c: clang: warning: argument unused during compilation: '-mavx2'
aesenc-int.c: aesenc-int.c:67:3: warning: implicit declaration of function '_mm_aeskeygenassist_si128' is invalid in C99 [-Wimplicit-function-declaration]
aesenc-int.c: BLOCK1(0x01);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:48:19: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp2, IMM); \
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:67:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: BLOCK1(0x01);
aesenc-int.c: ^~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:48:11: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp2, IMM); \
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:68:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: BLOCK2(0x01);
aesenc-int.c: ^~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:58:11: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp0, IMM); \
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:70:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: BLOCK1(0x02);
aesenc-int.c: ^~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:48:11: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp2, IMM); \
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: ...

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

Compiler output

Implementation: crypto_stream/aes256ctr/openssl
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
stream.c: clang: warning: argument unused during compilation: '-mavx2'
stream.c: stream.c:12:3: warning: implicitly declaring C library function 'memset' with type 'void *(void *, int, unsigned long)'
stream.c: memset(temp, 0, outlen);
stream.c: ^
stream.c: stream.c:12:3: note: please include the header gt; or explicitly provide a declaration for 'memset'
stream.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.
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 openssl

Compiler output

Implementation: crypto_stream/aes256ctr/dolbeau/aesenc-int
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
aesenc-int.c: clang: warning: argument unused during compilation: '-mavx2'
aesenc-int.c: clang: warning: argument unused during compilation: '-fpolly'
aesenc-int.c: clang: warning: argument unused during compilation: '-fvectorize'
aesenc-int.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
aesenc-int.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
aesenc-int.c: aesenc-int.c:67:3: warning: implicit declaration of function '_mm_aeskeygenassist_si128' is invalid in C99 [-Wimplicit-function-declaration]
aesenc-int.c: BLOCK1(0x01);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:48:19: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp2, IMM); \
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:67:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: BLOCK1(0x01);
aesenc-int.c: ^~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:48:11: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp2, IMM); \
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:68:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: BLOCK2(0x01);
aesenc-int.c: ^~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:58:11: note: expanded from:
aesenc-int.c: temp1 = (__m128)_mm_aeskeygenassist_si128((__m128i)temp0, IMM); \
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: aesenc-int.c:70:3: error: invalid conversion between vector type '__m128' and integer type 'int' of different size
aesenc-int.c: BLOCK1(0x02);
aesenc-int.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 dolbeau/aesenc-int

Compiler output

Implementation: crypto_stream/aes256ctr/openssl
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
stream.c: clang: warning: argument unused during compilation: '-mavx2'
stream.c: clang: warning: argument unused during compilation: '-fpolly'
stream.c: clang: warning: argument unused during compilation: '-fvectorize'
stream.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
stream.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
stream.c: stream.c:12:3: warning: implicitly declaring C library function 'memset' with type 'void *(void *, int, unsigned long)'
stream.c: memset(temp, 0, outlen);
stream.c: ^
stream.c: stream.c:12:3: note: please include the header gt; or explicitly provide a declaration for 'memset'
stream.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.
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 openssl

Compiler output

Implementation: crypto_stream/aes256ctr/dolbeau/aesenc-int
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
aesenc-int.c: aesenc-int.c: In function 'aesni_key256_expand':
aesenc-int.c: aesenc-int.c:67:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:68:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:70:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:71:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:73:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:74:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:76:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:77:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:79:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:80:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:82:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:83:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:85:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c: In function 'aesni_encrypt1':
aesenc-int.c: aesenc-int.c:96:10: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:98:8: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c: In function 'aesni_encrypt4':
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: ...
aesenc-int.c: aesenc-int.c: In function 'aesni_key256_expand':
aesenc-int.c: aesenc-int.c:67:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:68:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:70:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:71:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:73:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:74:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:76:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:77:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:79:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:80:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:82:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:83:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c:85:3: error: can't convert between vector values of different size
aesenc-int.c: aesenc-int.c: In function 'aesni_encrypt1':
aesenc-int.c: aesenc-int.c:96:10: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:98:8: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c: In function 'aesni_encrypt4':
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: aesenc-int.c:204:1: error: incompatible types when assigning to type '__m128i' from type 'int'
aesenc-int.c: ...

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

Compiler output

Implementation: crypto_stream/aes256ctr/openssl
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
stream.c: stream.c: In function 'crypto_stream_aes256ctr_openssl':
stream.c: stream.c:12:3: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]
stream.c: stream.c: In function 'crypto_stream_aes256ctr_openssl':
stream.c: stream.c:12:3: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]

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