Implementation notes: x86, thoth, crypto_aead/pi32cipher128v1

Computer: thoth
Architecture: x86
CPU ID: AuthenticAMD-00000622-0183f9ff
SUPERCOP version: 20160806
Operation: crypto_aead
Primitive: pi32cipher128v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
193569optimized_nonSSEgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072720160724
280234optimized_nonSSEgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072720160724
280584optimized_nonSSEgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072720160724
296262optimized_nonSSEgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072720160724
307490refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072720160724
431250refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072720160724
432444refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072720160724
447814refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072720160724

Test failure

Implementation: crypto_aead/pi32cipher128v1/optimized_nonSSE
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
error 111
crypto_aead_decrypt returns nonzero

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments optimized_nonSSE ref

Compiler output

Implementation: crypto_aead/pi32cipher128v1/ref
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
encrypt.c: encrypt.c:240:42: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c: ~~ ^
encrypt.c: encrypt.c:354:68: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: c[CRYPTO_NSECBYTES+b+i] = InternalState8[i1] = InternalState8[i1++] ^ m[b+i];
encrypt.c: ~~ ^
encrypt.c: encrypt.c:508:42: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c: ~~ ^
encrypt.c: 3 warnings generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: crypto_aead/pi32cipher128v1/optimized_nonSSE
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
encrypt.c: encrypt.c:354:42: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c: ~~ ^
encrypt.c: encrypt.c:468:68: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: c[CRYPTO_NSECBYTES+b+i] = InternalState8[i1] = InternalState8[i1++] ^ m[b+i];
encrypt.c: ~~ ^
encrypt.c: encrypt.c:622:42: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c: ~~ ^
encrypt.c: 3 warnings generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments optimized_nonSSE