Implementation notes: amd64, cel02, crypto_hash/keccakc256treed2

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_hash
Primitive: keccakc256treed2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
10350136973 0 0151189 824 808T:sseu24gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
10374136734 0 0147388 816 776T:sseu24gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1623830053 0 041020 816 776T:sseu4gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
16624136646 0 0146320 800 776T:sseu24gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1669230237 0 044453 824 808T:sseu4gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1731629869 0 039536 800 776T:sseu4gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
17364136789 0 0147756 816 776T:sseu24gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1979229351 0 039996 816 776T:sseu4gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
22132204961 0 0213964 792 736T:sseu24clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2647241675 0 051404 792 736T:sseu4clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:sseu24
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x564387109260: v4i64 = X86ISD::VTRUNC 0x564387109130
try.c: 0x564387109130: v16i32 = vselect 0x56438711c3a0, 0x5643870bcdb0, 0x564387109000
try.c: 0x56438711c3a0: v4i1 = X86ISD::PCMPGTM 0x564387102810, 0x5643870fe3a0
try.c: 0x564387102810: v4i64 = X86ISD::VBROADCAST 0x5643870a5620
try.c: 0x5643870a5620: i64,ch = load<LD8[%lsr.iv6971]> 0x564387013950, 0x5643870ec510, undef:i64
try.c: 0x5643870ec510: i64,ch = CopyFromReg 0x564387013950, Register:i64 %vreg50
try.c: 0x5643870fe600: i64 = Register %vreg50
try.c: 0x5643870a6af0: i64 = undef
try.c: 0x5643870fe3a0: v4i64,ch = CopyFromReg 0x564387013950, Register:v4i64 %vreg13
try.c: 0x564387103060: v4i64 = Register %vreg13
try.c: 0x5643870bcdb0: v16i32 = X86ISD::VBROADCAST 0x564387102a70
try.c: 0x564387102a70: i32,ch = load<LD4[ConstantPool]> 0x564387013950, 0x5643870cc3c0, undef:i64
try.c: 0x5643870cc3c0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5643870f5160: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5643870a6af0: i64 = undef
try.c: 0x564387109000: 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: 0x564387108ed0: i32 = Constant<0>
try.c: 0x564387108ed0: i32 = Constant<0>
try.c: 0x564387108ed0: i32 = Constant<0>
try.c: 0x564387108ed0: i32 = Constant<0>
try.c: 0x564387108ed0: i32 = Constant<0>
try.c: 0x564387108ed0: i32 = Constant<0>
try.c: 0x564387108ed0: i32 = Constant<0>
try.c: 0x564387108ed0: i32 = Constant<0>
try.c: 0x564387108ed0: 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:sseu24

Compiler output

Implementation: T:sseu24
Security model: timingleaks
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x557228dbe5b0: v4i64 = X86ISD::VTRUNC 0x557228dbe480
try.c: 0x557228dbe480: v16i32 = vselect 0x557228dadc90, 0x557228d3bf00, 0x557228dbe350
try.c: 0x557228dadc90: v4i1 = X86ISD::PCMPGTM 0x557228da5850, 0x557228da13e0
try.c: 0x557228da5850: v4i64 = X86ISD::VBROADCAST 0x557228d3c3c0
try.c: 0x557228d3c3c0: i64,ch = load<LD8[%lsr.iv6971]> 0x557228c9ea40, 0x557228d418f0, undef:i64
try.c: 0x557228d418f0: i64,ch = CopyFromReg 0x557228c9ea40, Register:i64 %vreg50
try.c: 0x557228da1640: i64 = Register %vreg50
try.c: 0x557228d64cf0: i64 = undef
try.c: 0x557228da13e0: v4i64,ch = CopyFromReg 0x557228c9ea40, Register:v4i64 %vreg13
try.c: 0x557228da60a0: v4i64 = Register %vreg13
try.c: 0x557228d3bf00: v16i32 = X86ISD::VBROADCAST 0x557228da5ab0
try.c: 0x557228da5ab0: i32,ch = load<LD4[ConstantPool]> 0x557228c9ea40, 0x557228d3fec0, undef:i64
try.c: 0x557228d3fec0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x557228d65670: i64 = TargetConstantPool<i32 1> 0
try.c: 0x557228d64cf0: i64 = undef
try.c: 0x557228dbe350: 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: 0x557228dbe220: i32 = Constant<0>
try.c: 0x557228dbe220: i32 = Constant<0>
try.c: 0x557228dbe220: i32 = Constant<0>
try.c: 0x557228dbe220: i32 = Constant<0>
try.c: 0x557228dbe220: i32 = Constant<0>
try.c: 0x557228dbe220: i32 = Constant<0>
try.c: 0x557228dbe220: i32 = Constant<0>
try.c: 0x557228dbe220: i32 = Constant<0>
try.c: 0x557228dbe220: 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:sseu24

Compiler output

Implementation: T:sseu24
Security model: timingleaks
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x555978fa08d0: v4i64 = X86ISD::VTRUNC 0x555978fa07a0
try.c: 0x555978fa07a0: v16i32 = vselect 0x555978fa8b60, 0x555978f2e740, 0x555978fa0670
try.c: 0x555978fa8b60: v4i1 = X86ISD::PCMPGTM 0x555978f86f60, 0x555978f82af0
try.c: 0x555978f86f60: v4i64 = X86ISD::VBROADCAST 0x555978f40ee0
try.c: 0x555978f40ee0: i64,ch = load<LD8[%lsr.iv6971]> 0x555978e97930, 0x555978f7a1e0, undef:i64
try.c: 0x555978f7a1e0: i64,ch = CopyFromReg 0x555978e97930, Register:i64 %vreg50
try.c: 0x555978f82d50: i64 = Register %vreg50
try.c: 0x555978f2cdb0: i64 = undef
try.c: 0x555978f82af0: v4i64,ch = CopyFromReg 0x555978e97930, Register:v4i64 %vreg13
try.c: 0x555978f877b0: v4i64 = Register %vreg13
try.c: 0x555978f2e740: v16i32 = X86ISD::VBROADCAST 0x555978f871c0
try.c: 0x555978f871c0: i32,ch = load<LD4[ConstantPool]> 0x555978e97930, 0x555978f404c0, undef:i64
try.c: 0x555978f404c0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x555978f670f0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x555978f2cdb0: i64 = undef
try.c: 0x555978fa0670: 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: 0x555978fa0540: i32 = Constant<0>
try.c: 0x555978fa0540: i32 = Constant<0>
try.c: 0x555978fa0540: i32 = Constant<0>
try.c: 0x555978fa0540: i32 = Constant<0>
try.c: 0x555978fa0540: i32 = Constant<0>
try.c: 0x555978fa0540: i32 = Constant<0>
try.c: 0x555978fa0540: i32 = Constant<0>
try.c: 0x555978fa0540: i32 = Constant<0>
try.c: 0x555978fa0540: 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:sseu24

Compiler output

Implementation: T:sseu24
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
DoublePermutation.c: DoublePermutation.c:507:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'KeccakDoublePermutationOnWords' that is compiled without support for 'ssse3'
DoublePermutation.c: rounds
DoublePermutation.c: ^
DoublePermutation.c: ./KeccakF-1600-unrolling.macros:17:5: note: expanded from macro 'rounds'
DoublePermutation.c: thetaRhoPiChiIotaPrepareTheta( 0, A, E) \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:136:11: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
DoublePermutation.c: Bko = ROL64in128_8(A##mu); \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:38:37: note: expanded from macro 'ROL64in128_8'
DoublePermutation.c: #define ROL64in128_8(a) _mm_shuffle_epi8(a, CONST128(rho8))
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:507:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'KeccakDoublePermutationOnWords' that is compiled without support for 'ssse3'
DoublePermutation.c: ./KeccakF-1600-unrolling.macros:17:5: note: expanded from macro 'rounds'
DoublePermutation.c: thetaRhoPiChiIotaPrepareTheta( 0, A, E) \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:161:11: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
DoublePermutation.c: Bmu = ROL64in128_56(A##so); \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:39:37: note: expanded from macro 'ROL64in128_56'
DoublePermutation.c: #define ROL64in128_56(a) _mm_shuffle_epi8(a, CONST128(rho56))
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:507:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'KeccakDoublePermutationOnWords' that is compiled without support for 'ssse3'
DoublePermutation.c: ./KeccakF-1600-unrolling.macros:18:5: note: expanded from macro 'rounds'
DoublePermutation.c: thetaRhoPiChiIotaPrepareTheta( 1, E, A) \
DoublePermutation.c: ...

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

Compiler output

Implementation: T:sseu4
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55837f31ff50: v4i64 = X86ISD::VTRUNC 0x55837f31fe20
try.c: 0x55837f31fe20: v16i32 = vselect 0x55837f312d50, 0x55837f2d0a80, 0x55837f31fcf0
try.c: 0x55837f312d50: v4i1 = X86ISD::PCMPGTM 0x55837f31a920, 0x55837f3164b0
try.c: 0x55837f31a920: v4i64 = X86ISD::VBROADCAST 0x55837f2bea10
try.c: 0x55837f2bea10: i64,ch = load<LD8[%lsr.iv6971]> 0x55837f22b950, 0x55837f30dac0, undef:i64
try.c: 0x55837f30dac0: i64,ch = CopyFromReg 0x55837f22b950, Register:i64 %vreg50
try.c: 0x55837f316710: i64 = Register %vreg50
try.c: 0x55837f2cf0f0: i64 = undef
try.c: 0x55837f3164b0: v4i64,ch = CopyFromReg 0x55837f22b950, Register:v4i64 %vreg13
try.c: 0x55837f31b170: v4i64 = Register %vreg13
try.c: 0x55837f2d0a80: v16i32 = X86ISD::VBROADCAST 0x55837f31ab80
try.c: 0x55837f31ab80: i32,ch = load<LD4[ConstantPool]> 0x55837f22b950, 0x55837f2bdff0, undef:i64
try.c: 0x55837f2bdff0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55837f287d60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55837f2cf0f0: i64 = undef
try.c: 0x55837f31fcf0: 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: 0x55837f31fbc0: i32 = Constant<0>
try.c: 0x55837f31fbc0: i32 = Constant<0>
try.c: 0x55837f31fbc0: i32 = Constant<0>
try.c: 0x55837f31fbc0: i32 = Constant<0>
try.c: 0x55837f31fbc0: i32 = Constant<0>
try.c: 0x55837f31fbc0: i32 = Constant<0>
try.c: 0x55837f31fbc0: i32 = Constant<0>
try.c: 0x55837f31fbc0: i32 = Constant<0>
try.c: 0x55837f31fbc0: 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:sseu4

Compiler output

Implementation: T:sseu4
Security model: timingleaks
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55affb280ac0: v4i64 = X86ISD::VTRUNC 0x55affb280990
try.c: 0x55affb280990: v16i32 = vselect 0x55affb271780, 0x55affb1f8f20, 0x55affb280860
try.c: 0x55affb271780: v4i1 = X86ISD::PCMPGTM 0x55affb266110, 0x55affb261ca0
try.c: 0x55affb266110: v4i64 = X86ISD::VBROADCAST 0x55affb1f93e0
try.c: 0x55affb1f93e0: i64,ch = load<LD8[%lsr.iv6971]> 0x55affb15fa30, 0x55affb21da60, undef:i64
try.c: 0x55affb21da60: i64,ch = CopyFromReg 0x55affb15fa30, Register:i64 %vreg50
try.c: 0x55affb261f00: i64 = Register %vreg50
try.c: 0x55affb1df120: i64 = undef
try.c: 0x55affb261ca0: v4i64,ch = CopyFromReg 0x55affb15fa30, Register:v4i64 %vreg13
try.c: 0x55affb266960: v4i64 = Register %vreg13
try.c: 0x55affb1f8f20: v16i32 = X86ISD::VBROADCAST 0x55affb266370
try.c: 0x55affb266370: i32,ch = load<LD4[ConstantPool]> 0x55affb15fa30, 0x55affb21c030, undef:i64
try.c: 0x55affb21c030: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55affb1dfaa0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55affb1df120: i64 = undef
try.c: 0x55affb280860: 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: 0x55affb280730: i32 = Constant<0>
try.c: 0x55affb280730: i32 = Constant<0>
try.c: 0x55affb280730: i32 = Constant<0>
try.c: 0x55affb280730: i32 = Constant<0>
try.c: 0x55affb280730: i32 = Constant<0>
try.c: 0x55affb280730: i32 = Constant<0>
try.c: 0x55affb280730: i32 = Constant<0>
try.c: 0x55affb280730: i32 = Constant<0>
try.c: 0x55affb280730: 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:sseu4

Compiler output

Implementation: T:sseu4
Security model: timingleaks
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x5623be6615d0: v4i64 = X86ISD::VTRUNC 0x5623be6614a0
try.c: 0x5623be6614a0: v16i32 = vselect 0x5623be646660, 0x5623be626650, 0x5623be661370
try.c: 0x5623be646660: v4i1 = X86ISD::PCMPGTM 0x5623be65bfa0, 0x5623be657b30
try.c: 0x5623be65bfa0: v4i64 = X86ISD::VBROADCAST 0x5623be5fe690
try.c: 0x5623be5fe690: i64,ch = load<LD8[%lsr.iv6971]> 0x5623be56c950, 0x5623be64ee20, undef:i64
try.c: 0x5623be64ee20: i64,ch = CopyFromReg 0x5623be56c950, Register:i64 %vreg50
try.c: 0x5623be657d90: i64 = Register %vreg50
try.c: 0x5623be5ffb60: i64 = undef
try.c: 0x5623be657b30: v4i64,ch = CopyFromReg 0x5623be56c950, Register:v4i64 %vreg13
try.c: 0x5623be65c7f0: v4i64 = Register %vreg13
try.c: 0x5623be626650: v16i32 = X86ISD::VBROADCAST 0x5623be65c200
try.c: 0x5623be65c200: i32,ch = load<LD4[ConstantPool]> 0x5623be56c950, 0x5623be6032d0, undef:i64
try.c: 0x5623be6032d0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5623be61d870: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5623be5ffb60: i64 = undef
try.c: 0x5623be661370: 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: 0x5623be661240: i32 = Constant<0>
try.c: 0x5623be661240: i32 = Constant<0>
try.c: 0x5623be661240: i32 = Constant<0>
try.c: 0x5623be661240: i32 = Constant<0>
try.c: 0x5623be661240: i32 = Constant<0>
try.c: 0x5623be661240: i32 = Constant<0>
try.c: 0x5623be661240: i32 = Constant<0>
try.c: 0x5623be661240: i32 = Constant<0>
try.c: 0x5623be661240: 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:sseu4

Compiler output

Implementation: T:sseu4
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
DoublePermutation.c: DoublePermutation.c:507:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'KeccakDoublePermutationOnWords' that is compiled without support for 'ssse3'
DoublePermutation.c: rounds
DoublePermutation.c: ^
DoublePermutation.c: ./KeccakF-1600-unrolling.macros:90:9: note: expanded from macro 'rounds'
DoublePermutation.c: thetaRhoPiChiIotaPrepareTheta(i , A, E) \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:136:11: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
DoublePermutation.c: Bko = ROL64in128_8(A##mu); \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:38:37: note: expanded from macro 'ROL64in128_8'
DoublePermutation.c: #define ROL64in128_8(a) _mm_shuffle_epi8(a, CONST128(rho8))
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:507:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'KeccakDoublePermutationOnWords' that is compiled without support for 'ssse3'
DoublePermutation.c: ./KeccakF-1600-unrolling.macros:90:9: note: expanded from macro 'rounds'
DoublePermutation.c: thetaRhoPiChiIotaPrepareTheta(i , A, E) \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:161:11: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
DoublePermutation.c: Bmu = ROL64in128_56(A##so); \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:39:37: note: expanded from macro 'ROL64in128_56'
DoublePermutation.c: #define ROL64in128_56(a) _mm_shuffle_epi8(a, CONST128(rho56))
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:507:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'KeccakDoublePermutationOnWords' that is compiled without support for 'ssse3'
DoublePermutation.c: ./KeccakF-1600-unrolling.macros:91:9: note: expanded from macro 'rounds'
DoublePermutation.c: thetaRhoPiChiIotaPrepareTheta(i+1, E, A) \
DoublePermutation.c: ...

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

Compiler output

Implementation: T:xopu24
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
DoublePermutation.c: DoublePermutation.c:507:5: error: '__builtin_ia32_vprotqi' needs target feature xop
DoublePermutation.c: rounds
DoublePermutation.c: ^
DoublePermutation.c: ./KeccakF-1600-unrolling.macros:17:5: note: expanded from macro 'rounds'
DoublePermutation.c: thetaRhoPiChiIotaPrepareTheta( 0, A, E) \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:78:21: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
DoublePermutation.c: Da = XOR128(Cu, ROL64in128(Ce, 1)); \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:33:37: note: expanded from macro 'ROL64in128'
DoublePermutation.c: #define ROL64in128(a, o) _mm_roti_epi64(a, o)
DoublePermutation.c: ^
DoublePermutation.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/xopintrin.h:250:12: note: expanded from macro '_mm_roti_epi64'
DoublePermutation.c: (__m128i)__builtin_ia32_vprotqi((__v2di)(__m128i)(A), (N)); })
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:507:5: error: '__builtin_ia32_vprotqi' needs target feature xop
DoublePermutation.c: ./KeccakF-1600-unrolling.macros:17:5: note: expanded from macro 'rounds'
DoublePermutation.c: thetaRhoPiChiIotaPrepareTheta( 0, A, E) \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:79:21: note: expanded from macro 'thetaRhoPiChiIotaPrepareTheta'
DoublePermutation.c: De = XOR128(Ca, ROL64in128(Ci, 1)); \
DoublePermutation.c: ^
DoublePermutation.c: DoublePermutation.c:33:37: note: expanded from macro 'ROL64in128'
DoublePermutation.c: #define ROL64in128(a, o) _mm_roti_epi64(a, o)
DoublePermutation.c: ^
DoublePermutation.c: ...

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

Compiler output

Implementation: T:xopu24
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
DoublePermutation.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/x86intrin.h:54:0,
DoublePermutation.c: from DoublePermutation.c:17:
DoublePermutation.c: DoublePermutation.c: In function 'KeccakDoublePermutationOnWords':
DoublePermutation.c: /usr/lib/gcc/x86_64-linux-gnu/6/include/xopintrin.h:266:1: error: inlining failed in call to always_inline '_mm_roti_epi64': target specific option mismatch
DoublePermutation.c: _mm_roti_epi64(__m128i __A, const int __B)
DoublePermutation.c: ^~~~~~~~~~~~~~
DoublePermutation.c: DoublePermutation.c:276:9: note: called from here
DoublePermutation.c: Bsu = ROL64in128(A##se, 2); \
DoublePermutation.c: ^
DoublePermutation.c: KeccakF-1600-unrolling.macros:40:5: note: in expansion of macro 'thetaRhoPiChiIota'
DoublePermutation.c: thetaRhoPiChiIota(23, E, A) \
DoublePermutation.c: ^~~~~~~~~~~~~~~~~
DoublePermutation.c: DoublePermutation.c:507:5: note: in expansion of macro 'rounds'
DoublePermutation.c: rounds
DoublePermutation.c: ^~~~~~
DoublePermutation.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/x86intrin.h:54:0,
DoublePermutation.c: from DoublePermutation.c:17:
DoublePermutation.c: /usr/lib/gcc/x86_64-linux-gnu/6/include/xopintrin.h:266:1: error: inlining failed in call to always_inline '_mm_roti_epi64': target specific option mismatch
DoublePermutation.c: _mm_roti_epi64(__m128i __A, const int __B)
DoublePermutation.c: ^~~~~~~~~~~~~~
DoublePermutation.c: DoublePermutation.c:273:9: note: called from here
DoublePermutation.c: Bso = ROL64in128(A##ma, 41); \
DoublePermutation.c: ^
DoublePermutation.c: KeccakF-1600-unrolling.macros:40:5: note: in expansion of macro 'thetaRhoPiChiIota'
DoublePermutation.c: thetaRhoPiChiIota(23, E, A) \
DoublePermutation.c: ...

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