Implementation notes: amd64, h4e350, crypto_aead/iscream12v2

Computer: h4e350
Architecture: amd64
CPU ID: AuthenticAMD-00500f10-178bfbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: iscream12v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
395508ssegcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014062120140525
405252ssegcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014062120140525
405282ssegcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014062120140525
405318ssegcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014062120140525
405420ssegcc -m64 -march=core2 -O2 -fomit-frame-pointer2014062120140525
409530ssegcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014062120140525
409602ssegcc -m64 -march=corei7 -O -fomit-frame-pointer2014062120140525
409620ssegcc -m64 -march=core2 -O -fomit-frame-pointer2014062120140525
410199ssegcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014062120140525
412989ssegcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014062120140525
437088ssegcc -m64 -march=core2 -O3 -fomit-frame-pointer2014062120140525
452169ssegcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014062120140525
593967refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014062120140525
594051refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014062120140525
597042refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014062120140525
597066refgcc -m64 -O3 -fomit-frame-pointer2014062120140525
597153refgcc -O3 -fomit-frame-pointer2014062120140525
597399refgcc -march=nocona -O3 -fomit-frame-pointer2014062120140525
597402refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014062120140525
600543refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014062120140525
600711refgcc -march=barcelona -O3 -fomit-frame-pointer2014062120140525
604071refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014062120140525
604146refgcc -march=k8 -O3 -fomit-frame-pointer2014062120140525
606918refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014062120140525
611265refgcc -funroll-loops -O3 -fomit-frame-pointer2014062120140525
611355refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014062120140525
611388refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014062120140525
612375refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014062120140525
613464refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014062120140525
613617refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014062120140525
617409refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014062120140525
617502refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014062120140525
688908refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101620141014
688971refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014080420140622
689826refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014080420140622
690789refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101620141014
694395refclang -O3 -fomit-frame-pointer2014080420140622
1009365refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014062120140525
1009395refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014062120140525
1020648refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014062120140525
1020777refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014062120140525
1020858refgcc -funroll-loops -O2 -fomit-frame-pointer2014062120140525
1020864refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014062120140525
1023015refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014062120140525
1026399refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014062120140525
1026414refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014062120140525
1079631refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014062120140525
1079727refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014062120140525
1081659refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014062120140525
1081749refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014062120140525
1086624refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014062120140525
1086669refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014062120140525
1089039refgcc -funroll-loops -O -fomit-frame-pointer2014062120140525
1118658refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014062120140525
1118922refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014062120140525
1255521refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014062120140525
1255773refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014062120140525
1258482refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014062120140525
1258509refgcc -funroll-loops -Os -fomit-frame-pointer2014062120140525
1260288refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014062120140525
1260387refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014062120140525
1260420refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014062120140525
1280724refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014062120140525
1280745refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014062120140525
1287405refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014062120140525
1287645refgcc -march=barcelona -O2 -fomit-frame-pointer2014062120140525
1292142refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014062120140525
1304634refgcc -march=k8 -O2 -fomit-frame-pointer2014062120140525
1304694refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014062120140525
1306626refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014062120140525
1306629refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014062120140525
1306668refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014062120140525
1306698refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014062120140525
1309407refgcc -O2 -fomit-frame-pointer2014062120140525
1309773refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014062120140525
1312077refgcc -m64 -O2 -fomit-frame-pointer2014062120140525
1349079refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014062120140525
1349118refgcc -march=nocona -O2 -fomit-frame-pointer2014062120140525
1352238refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014062120140525
1352352refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014062120140525
1352355refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014062120140525
1352415refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014062120140525
1394115refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014062120140525
1394337refgcc -march=nocona -Os -fomit-frame-pointer2014062120140525
1420812refgcc -m64 -Os -fomit-frame-pointer2014062120140525
1420920refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014062120140525
1420944refgcc -Os -fomit-frame-pointer2014062120140525
1421031refgcc -march=k8 -Os -fomit-frame-pointer2014062120140525
1422945refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014062120140525
1423143refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014062120140525
1432629refgcc -march=barcelona -Os -fomit-frame-pointer2014062120140525
1432647refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014062120140525
1439190refgcc -march=nocona -O -fomit-frame-pointer2014062120140525
1441176refgcc -m64 -march=nocona -O -fomit-frame-pointer2014062120140525
1443354refgcc -O -fomit-frame-pointer2014062120140525
1443375refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014062120140525
1443390refgcc -fno-schedule-insns -O -fomit-frame-pointer2014062120140525
1443444refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014062120140525
1443447refgcc -m64 -march=core2 -O -fomit-frame-pointer2014062120140525
1443480refgcc -m64 -O -fomit-frame-pointer2014062120140525
1445622refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014062120140525
1511181refgcc -march=k8 -O -fomit-frame-pointer2014062120140525
1511307refgcc -m64 -march=k8 -O -fomit-frame-pointer2014062120140525
1516848refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014062120140525
1516878refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014062120140525
1518507refgcc -march=barcelona -O -fomit-frame-pointer2014062120140525
4402377refcc2014062120140525
4406970refgcc2014062120140525
4448751refgcc -funroll-loops2014062120140525

Test failure

Implementation: crypto_aead/iscream12v2/sse
Compiler: gcc -m64 -march=core2 -Os -fomit-frame-pointer
error 111

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

Compiler output

Implementation: crypto_aead/iscream12v2/sse
Compiler: cc
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:184:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:185:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:189:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:190:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:197:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:198:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:202:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:203:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:210:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:211:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:215:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:216:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:223:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:224:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:228:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:229:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')

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

Compiler output

Implementation: crypto_aead/iscream12v2/sse
Compiler: clang -O3 -fomit-frame-pointer
iscream.c: iscream.c:38:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void encrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: iscream.c:95:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void decrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: fatal error: error in backend: Cannot select: intrinsic %llvm.x86.ssse3.pshuf.b.128

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

Compiler output

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

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

Compiler output

Implementation: crypto_aead/iscream12v2/sse
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
iscream.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
iscream.c: clang: warning: argument unused during compilation: '-mavx2'
iscream.c: clang: warning: argument unused during compilation: '-mpclmul'
iscream.c: iscream.c:38:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void encrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: iscream.c:95:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void decrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: fatal error: error in backend: Cannot select: intrinsic %llvm.x86.ssse3.pshuf.b.128

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

Compiler output

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

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

Compiler output

Implementation: crypto_aead/iscream12v2/sse
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
iscream.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
iscream.c: clang: warning: argument unused during compilation: '-mavx2'
iscream.c: clang: warning: argument unused during compilation: '-mpclmul'
iscream.c: clang: warning: argument unused during compilation: '-fpolly'
iscream.c: clang: warning: argument unused during compilation: '-fvectorize'
iscream.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
iscream.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
iscream.c: iscream.c:38:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void encrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: iscream.c:95:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void decrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: fatal error: error in backend: Cannot select: intrinsic %llvm.x86.ssse3.pshuf.b.128

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 sse

Compiler output

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

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

Compiler output

Implementation: crypto_aead/iscream12v2/sse
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
iscream.c: clang: warning: argument unused during compilation: '-mavx2'
iscream.c: iscream.c:38:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void encrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: iscream.c:95:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void decrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: fatal error: error in backend: Cannot select: intrinsic %llvm.x86.ssse3.pshuf.b.128

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

Compiler output

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

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

Compiler output

Implementation: crypto_aead/iscream12v2/sse
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
iscream.c: clang: warning: argument unused during compilation: '-mavx2'
iscream.c: clang: warning: argument unused during compilation: '-fpolly'
iscream.c: clang: warning: argument unused during compilation: '-fvectorize'
iscream.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
iscream.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
iscream.c: iscream.c:38:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void encrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: iscream.c:95:16: warning: unknown attribute 'flatten' ignored [-Wattributes]
iscream.c: __attribute__((flatten)) void decrypt_tweakey (v16qi *restrict X, v16qi *restrict TK) {
iscream.c: ^
iscream.c: fatal error: error in backend: Cannot select: intrinsic %llvm.x86.ssse3.pshuf.b.128

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 sse

Compiler output

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

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

Compiler output

Implementation: crypto_aead/iscream12v2/sse
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:184:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:185:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:189:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:190:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:197:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:198:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:202:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:203:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:210:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:211:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:215:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:216:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:223:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:224:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:228:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:229:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c: In function 'LBox16P':
iscream.c: iscream.c:184:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:185:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:189:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:190:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
iscream.c: iscream.c:197:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:198:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:202:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:203:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:210:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:211:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:215:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:216:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:223:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:224:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:228:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
iscream.c: iscream.c:229:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')

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