Implementation notes: amd64, cel02, crypto_aead/riverkeyakv1

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: riverkeyakv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
37902823489 0 1648229 840 1192T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
70279012708 0 1233554 816 1080T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
123577210154 0 1631173 840 1128T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
13921608742 0 1227748 808 1080T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
144284610236 0 1631845 840 1128T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
19570288792 0 1628232 816 1128T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakDuplex.c: KeccakDuplex.c:63:9: warning: implicit declaration of function 'KeccakP800_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP800_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: warning: implicit declaration of function 'KeccakP800_12_StateXORPermuteExtract' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:73:40: note: expanded from macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: 2 warnings generated.
try.c: fatal error: error in backend: Cannot select: 0x55f0b51f9eb0: v4i64 = X86ISD::VTRUNC 0x55f0b51f9d80
try.c: 0x55f0b51f9d80: v16i32 = vselect 0x55f0b51ea080, 0x55f0b51a8330, 0x55f0b51f9c50
try.c: 0x55f0b51ea080: v4i1 = X86ISD::PCMPGTM 0x55f0b51f1c50, 0x55f0b51ed7e0
try.c: 0x55f0b51f1c50: v4i64 = X86ISD::VBROADCAST 0x55f0b5195900
try.c: 0x55f0b5195900: i64,ch = load<LD8[%lsr.iv6971]> 0x55f0b5102980, 0x55f0b51dd430, undef:i64
try.c: 0x55f0b51dd430: i64,ch = CopyFromReg 0x55f0b5102980, Register:i64 %vreg50
try.c: 0x55f0b51eda40: i64 = Register %vreg50
try.c: 0x55f0b51a69a0: i64 = undef
try.c: 0x55f0b51ed7e0: v4i64,ch = CopyFromReg 0x55f0b5102980, Register:v4i64 %vreg13
try.c: 0x55f0b51f24a0: v4i64 = Register %vreg13
try.c: 0x55f0b51a8330: v16i32 = X86ISD::VBROADCAST 0x55f0b51f1eb0
try.c: 0x55f0b51f1eb0: i32,ch = load<LD4[ConstantPool]> 0x55f0b5102980, 0x55f0b5194ee0, undef:i64
try.c: 0x55f0b5194ee0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55f0b5162bc0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55f0b51a69a0: i64 = undef
try.c: 0x55f0b51f9c50: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x55f0b51f9b20: i32 = Constant<0>
try.c: 0x55f0b51f9b20: i32 = Constant<0>
try.c: 0x55f0b51f9b20: i32 = Constant<0>
try.c: 0x55f0b51f9b20: i32 = Constant<0>
try.c: 0x55f0b51f9b20: i32 = Constant<0>
try.c: 0x55f0b51f9b20: i32 = Constant<0>
try.c: 0x55f0b51f9b20: i32 = Constant<0>
try.c: 0x55f0b51f9b20: i32 = Constant<0>
try.c: 0x55f0b51f9b20: i32 = Constant<0>
try.c: ...

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakDuplex.c: KeccakDuplex.c:63:9: warning: implicit declaration of function 'KeccakP800_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP800_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: warning: implicit declaration of function 'KeccakP800_12_StateXORPermuteExtract' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:73:40: note: expanded from macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: 2 warnings generated.
try.c: fatal error: error in backend: Cannot select: 0x55d6c05630c0: v4i64 = X86ISD::VTRUNC 0x55d6c0562f90
try.c: 0x55d6c0562f90: v16i32 = vselect 0x55d6c055da90, 0x55d6c0503c20, 0x55d6c0562e60
try.c: 0x55d6c055da90: v4i1 = X86ISD::PCMPGTM 0x55d6c0556ec0, 0x55d6c0552440
try.c: 0x55d6c0556ec0: v4i64 = X86ISD::VBROADCAST 0x55d6c05040e0
try.c: 0x55d6c05040e0: i64,ch = load<LD8[%lsr.iv6971]> 0x55d6c0450a20, 0x55d6c04f3430, undef:i64
try.c: 0x55d6c04f3430: i64,ch = CopyFromReg 0x55d6c0450a20, Register:i64 %vreg50
try.c: 0x55d6c05526a0: i64 = Register %vreg50
try.c: 0x55d6c04ffe40: i64 = undef
try.c: 0x55d6c0552440: v4i64,ch = CopyFromReg 0x55d6c0450a20, Register:v4i64 %vreg13
try.c: 0x55d6c0557710: v4i64 = Register %vreg13
try.c: 0x55d6c0503c20: v16i32 = X86ISD::VBROADCAST 0x55d6c0557120
try.c: 0x55d6c0557120: i32,ch = load<LD4[ConstantPool]> 0x55d6c0450a20, 0x55d6c04f1a00, undef:i64
try.c: 0x55d6c04f1a00: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55d6c05007c0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55d6c04ffe40: i64 = undef
try.c: 0x55d6c0562e60: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x55d6c0562d30: i32 = Constant<0>
try.c: 0x55d6c0562d30: i32 = Constant<0>
try.c: 0x55d6c0562d30: i32 = Constant<0>
try.c: 0x55d6c0562d30: i32 = Constant<0>
try.c: 0x55d6c0562d30: i32 = Constant<0>
try.c: 0x55d6c0562d30: i32 = Constant<0>
try.c: 0x55d6c0562d30: i32 = Constant<0>
try.c: 0x55d6c0562d30: i32 = Constant<0>
try.c: 0x55d6c0562d30: i32 = Constant<0>
try.c: ...

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakDuplex.c: KeccakDuplex.c:63:9: warning: implicit declaration of function 'KeccakP800_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP800_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: warning: implicit declaration of function 'KeccakP800_12_StateXORPermuteExtract' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:73:40: note: expanded from macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: 2 warnings generated.
try.c: fatal error: error in backend: Cannot select: 0x556f5f33d010: v4i64 = X86ISD::VTRUNC 0x556f5f33cee0
try.c: 0x556f5f33cee0: v16i32 = vselect 0x556f5f326ee0, 0x556f5f2c6a50, 0x556f5f33cdb0
try.c: 0x556f5f326ee0: v4i1 = X86ISD::PCMPGTM 0x556f5f31f670, 0x556f5f31b200
try.c: 0x556f5f31f670: v4i64 = X86ISD::VBROADCAST 0x556f5f2c2a30
try.c: 0x556f5f2c2a30: i64,ch = load<LD8[%lsr.iv6971]> 0x556f5f230950, 0x556f5f312770, undef:i64
try.c: 0x556f5f312770: i64,ch = CopyFromReg 0x556f5f230950, Register:i64 %vreg50
try.c: 0x556f5f31b460: i64 = Register %vreg50
try.c: 0x556f5f2c3f00: i64 = undef
try.c: 0x556f5f31b200: v4i64,ch = CopyFromReg 0x556f5f230950, Register:v4i64 %vreg13
try.c: 0x556f5f31fec0: v4i64 = Register %vreg13
try.c: 0x556f5f2c6a50: v16i32 = X86ISD::VBROADCAST 0x556f5f31f8d0
try.c: 0x556f5f31f8d0: i32,ch = load<LD4[ConstantPool]> 0x556f5f230950, 0x556f5f2bf3d0, undef:i64
try.c: 0x556f5f2bf3d0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x556f5f2e7480: i64 = TargetConstantPool<i32 1> 0
try.c: 0x556f5f2c3f00: i64 = undef
try.c: 0x556f5f33cdb0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x556f5f33cc80: i32 = Constant<0>
try.c: 0x556f5f33cc80: i32 = Constant<0>
try.c: 0x556f5f33cc80: i32 = Constant<0>
try.c: 0x556f5f33cc80: i32 = Constant<0>
try.c: 0x556f5f33cc80: i32 = Constant<0>
try.c: 0x556f5f33cc80: i32 = Constant<0>
try.c: 0x556f5f33cc80: i32 = Constant<0>
try.c: 0x556f5f33cc80: i32 = Constant<0>
try.c: 0x556f5f33cc80: i32 = Constant<0>
try.c: ...

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
KeccakDuplex.c: KeccakDuplex.c:63:9: warning: implicit declaration of function 'KeccakP800_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP800_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: warning: implicit declaration of function 'KeccakP800_12_StateXORPermuteExtract' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:73:40: note: expanded from macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: 2 warnings generated.

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakDuplex.c: In file included from KeccakDuplex.h:17:0,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP800_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP800_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP800_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: note: in definition of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP800_12_StateXORPermuteExtract
KeccakDuplex.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref