Implementation notes: x86, thoth, crypto_aead/pi32cipher256v1

Computer: thoth
Architecture: x86
CPU ID: AuthenticAMD-00000622-0183f9ff
SUPERCOP version: 20160806
Operation: crypto_aead
Primitive: pi32cipher256v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
193257optimized_nonSSEgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072720160724
279077optimized_nonSSEgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072720160724
280284optimized_nonSSEgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072720160724
295182optimized_nonSSEgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072720160724
308458refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072720160724
428982refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072720160724
433267refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072720160724
447969refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072720160724

Test failure

Implementation: crypto_aead/pi32cipher256v1/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/pi32cipher256v1/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/pi32cipher256v1/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