Implementation notes: amd64, oki, crypto_aead/joltikneq12864v1

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_aead
Primitive: joltikneq12864v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
122812? ? ?? ? ?vpermclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
122844? ? ?? ? ?vpermgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112920181123
122844? ? ?? ? ?vpermgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112920181123
122852? ? ?? ? ?vpermgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112920181123
122866? ? ?? ? ?vpermgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112920181123
122894? ? ?? ? ?vpermgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112920181123
122910? ? ?? ? ?vpermclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112920181123
122988? ? ?? ? ?vpermgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112920181123
122990? ? ?? ? ?vpermgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112920181123
122996? ? ?? ? ?vpermgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112920181123
123044? ? ?? ? ?vpermgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112920181123
123282? ? ?? ? ?vpermgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112920181123
124056? ? ?? ? ?vpermgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112920181123
124350? ? ?? ? ?vpermgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112920181123
280458? ? ?? ? ?vpermgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112920181123
280526? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112920181123
280538? ? ?? ? ?vpermgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112920181123
280600? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112920181123
280688? ? ?? ? ?vpermclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
280702? ? ?? ? ?vpermgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112920181123
280704? ? ?? ? ?vpermgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112920181123
280726? ? ?? ? ?vpermclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112920181123
280998? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112920181123
281028? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112920181123
281036? ? ?? ? ?vpermgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112920181123
281100? ? ?? ? ?vpermgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112920181123
281144? ? ?? ? ?vpermgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112920181123
281152? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112920181123
281504? ? ?? ? ?vpermgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112920181123
281666? ? ?? ? ?vpermgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112920181123
281674? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112920181123
282108? ? ?? ? ?vpermgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112920181123
282630? ? ?? ? ?vpermgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112920181123
282852? ? ?? ? ?vpermgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112920181123
282876? ? ?? ? ?vpermgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112920181123
283236? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112920181123
283264? ? ?? ? ?vpermgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112920181123
283314? ? ?? ? ?vpermgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112920181123
283582? ? ?? ? ?vpermgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112920181123
283610? ? ?? ? ?vpermgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112920181123
6346680? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
6348010? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018112920181123
6349750? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
6349944? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018112920181123
6366112? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018112920181123
6368680? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
6374152? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
6380432? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018112920181123
6384246? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
6390016? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018112920181123
6395686? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2018112920181123
6428072? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018112920181123
6428324? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018112920181123
6429846? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018112920181123
6432548? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
6432722? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018112920181123
6434030? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018112920181123
6436190? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018112920181123
6438202? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018112920181123
6438660? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018112920181123
6445914? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
6460610? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
6468682? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018112920181123
6470242? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018112920181123
6475704? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018112920181123
6482222? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018112920181123
6492056? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018112920181123
8151936? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
8166234? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2018112920181123
9211830? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2018112920181123
9212442? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2018112920181123
9340990? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2018112920181123
9348642? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
9348836? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
9364018? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018112920181123
10935804? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
10936378? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
10972620? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
10975300? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
11104068? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018112920181123
11107156? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
11141104? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018112920181123
11152884? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
11153446? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018112920181123
12838674? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
12852810? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
12983252? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018112920181123
12989080? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
13090218? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018112920181123
13093534? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2018112920181123
13106958? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018112920181123
13182284? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
13182364? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018112920181123
13187398? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018112920181123
13234408? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018112920181123
13243876? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
13865934? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018112920181123
13873718? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018112920181123
14008856? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2018112920181123
15233582? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018112920181123
15236168? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018112920181123
15237560? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018112920181123
15238672? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018112920181123
15239190? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018112920181123
15240428? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018112920181123
15242176? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018112920181123
15250816? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018112920181123
15254952? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
15255966? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018112920181123
15264706? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
15264834? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018112920181123
15564982? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018112920181123
15568760? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018112920181123
15577530? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018112920181123
16226582? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2018112920181123
16275274? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018112920181123
16277108? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018112920181123
16277134? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018112920181123
16281476? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018112920181123
16289704? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018112920181123
16290490? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018112920181123
16292446? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018112920181123
16293898? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018112920181123
16301842? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018112920181123
16365868? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
16377818? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018112920181123
16546258? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018112920181123
16547164? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018112920181123
16678050? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018112920181123
18340742? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018112920181123
18343692? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018112920181123
18344546? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018112920181123
18787554? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
18788898? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018112920181123
18794544? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018112920181123
18794820? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018112920181123
18795240? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018112920181123
19276438? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018112920181123
19471550? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018112920181123
19540624? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018112920181123
19545100? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
19545782? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
19548046? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
19558788? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018112920181123
19571106? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018112920181123
19573722? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
19575202? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018112920181123
19580410? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018112920181123
19585060? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018112920181123
19638292? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018112920181123
19690996? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018112920181123
19788232? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
19816510? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
19840572? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
19897478? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018112920181123
19956096? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018112920181123
42038602? ? ?? ? ?refgcc2018112920181123
42245906? ? ?? ? ?refgcc_-funroll-loops2018112920181123
42426026? ? ?? ? ?refcc2018112920181123

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x21afd90: v4i64 = X86ISD::VTRUNC 0x21afbc0
try.c: 0x21afbc0: v16i32 = vselect 0x21a32d0, 0x21382b0, 0x21afa90
try.c: 0x21a32d0: v4i1 = X86ISD::PCMPGTM 0x2195650, 0x213b070
try.c: 0x2195650: v4i64 = X86ISD::VBROADCAST 0x213b400
try.c: 0x213b400: i64,ch = load<LD8[%uglygep72]> 0x2090dd0, 0x2176130, undef:i64
try.c: 0x2176130: i64 = add 0x2196530, 0x2118520
try.c: 0x2196530: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x214b1b0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x2118520: i64 = shl 0x214a960, Constant:i8<3>
try.c: 0x214a960: i64,ch = CopyFromReg 0x2090dd0, Register:i64 %vreg50
try.c: 0x21969f0: i64 = Register %vreg50
try.c: 0x2111a00: i8 = Constant<3>
try.c: 0x218d230: i64 = undef
try.c: 0x213b070: v4i64,ch = CopyFromReg 0x2090dd0, Register:v4i64 %vreg13
try.c: 0x21511b0: v4i64 = Register %vreg13
try.c: 0x21382b0: v16i32 = X86ISD::VBROADCAST 0x214abc0
try.c: 0x214abc0: i32,ch = load<LD4[ConstantPool]> 0x2090dd0, 0x21af700, undef:i64
try.c: 0x21af700: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x213ce30: i64 = TargetConstantPool<i32 1> 0
try.c: 0x218d230: i64 = undef
try.c: 0x21afa90: 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: 0x21af960: i32 = Constant<0>
try.c: 0x21af960: i32 = Constant<0>
try.c: 0x21af960: i32 = Constant<0>
try.c: 0x21af960: i32 = Constant<0>
try.c: ...

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

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x1c60ee0: v4i64 = X86ISD::VTRUNC 0x1c60d10
try.c: 0x1c60d10: v16i32 = vselect 0x1c5d950, 0x1be49a0, 0x1c60be0
try.c: 0x1c5d950: v4i1 = X86ISD::PCMPGTM 0x1c4a3d0, 0x1bf9560
try.c: 0x1c4a3d0: v4i64 = X86ISD::VBROADCAST 0x1bf98f0
try.c: 0x1bf98f0: i64,ch = load<LD8[%uglygep72]> 0x1b43dd0, 0x1c28d00, undef:i64
try.c: 0x1c28d00: i64 = add 0x1c4b2b0, 0x1bf0340
try.c: 0x1c4b2b0: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x1c30160: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x1bf0340: i64 = shl 0x1c2f910, Constant:i8<3>
try.c: 0x1c2f910: i64,ch = CopyFromReg 0x1b43dd0, Register:i64 %vreg50
try.c: 0x1c4b770: i64 = Register %vreg50
try.c: 0x1bf1940: i8 = Constant<3>
try.c: 0x1c48a40: i64 = undef
try.c: 0x1bf9560: v4i64,ch = CopyFromReg 0x1b43dd0, Register:v4i64 %vreg13
try.c: 0x1bdef90: v4i64 = Register %vreg13
try.c: 0x1be49a0: v16i32 = X86ISD::VBROADCAST 0x1c2fb70
try.c: 0x1c2fb70: i32,ch = load<LD4[ConstantPool]> 0x1b43dd0, 0x1c60850, undef:i64
try.c: 0x1c60850: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x1c097a0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x1c48a40: i64 = undef
try.c: 0x1c60be0: 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: 0x1c60ab0: i32 = Constant<0>
try.c: 0x1c60ab0: i32 = Constant<0>
try.c: 0x1c60ab0: i32 = Constant<0>
try.c: 0x1c60ab0: i32 = Constant<0>
try.c: ...

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

Compiler output

Implementation: vperm
Security model: unknown
Compiler: cc
joltik.c: joltik.c:29:3: error: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc vperm

Compiler output

Implementation: vperm
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
joltik.c: joltik.c:29:3: error: "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^
joltik.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments vperm
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments vperm
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments vperm
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments vperm

Compiler output

Implementation: vperm
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x29e2490: v4i64 = X86ISD::VTRUNC 0x29e22c0
try.c: 0x29e22c0: v16i32 = vselect 0x29eabd0, 0x297b1d0, 0x29e2190
try.c: 0x29eabd0: v4i1 = X86ISD::PCMPGTM 0x29cc990, 0x297bf80
try.c: 0x29cc990: v4i64 = X86ISD::VBROADCAST 0x297c310
try.c: 0x297c310: i64,ch = load<LD8[%uglygep72]> 0x28c5dd0, 0x29756c0, undef:i64
try.c: 0x29756c0: i64 = add 0x29cd870, 0x295a130
try.c: 0x29cd870: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x29bfc70: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x295a130: i64 = shl 0x29bf420, Constant:i8<3>
try.c: 0x29bf420: i64,ch = CopyFromReg 0x28c5dd0, Register:i64 %vreg50
try.c: 0x29cdd30: i64 = Register %vreg50
try.c: 0x296a990: i8 = Constant<3>
try.c: 0x29cb000: i64 = undef
try.c: 0x297bf80: v4i64,ch = CopyFromReg 0x28c5dd0, Register:v4i64 %vreg13
try.c: 0x2965d50: v4i64 = Register %vreg13
try.c: 0x297b1d0: v16i32 = X86ISD::VBROADCAST 0x29bf680
try.c: 0x29bf680: i32,ch = load<LD4[ConstantPool]> 0x28c5dd0, 0x29e1e00, undef:i64
try.c: 0x29e1e00: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x2963870: i64 = TargetConstantPool<i32 1> 0
try.c: 0x29cb000: i64 = undef
try.c: 0x29e2190: 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: 0x29e2060: i32 = Constant<0>
try.c: 0x29e2060: i32 = Constant<0>
try.c: 0x29e2060: i32 = Constant<0>
try.c: 0x29e2060: i32 = Constant<0>
try.c: ...

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

Compiler output

Implementation: vperm
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0x208e430: v4i64 = X86ISD::VTRUNC 0x208e260
try.c: 0x208e260: v16i32 = vselect 0x2079580, 0x20279e0, 0x208e130
try.c: 0x2079580: v4i1 = X86ISD::PCMPGTM 0x2076550, 0x2028790
try.c: 0x2076550: v4i64 = X86ISD::VBROADCAST 0x2028b20
try.c: 0x2028b20: i64,ch = load<LD8[%uglygep72]> 0x1f71db0, 0x1ff4060, undef:i64
try.c: 0x1ff4060: i64 = add 0x2077430, 0x20340a0
try.c: 0x2077430: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0x2060c90: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0x20340a0: i64 = shl 0x2060440, Constant:i8<3>
try.c: 0x2060440: i64,ch = CopyFromReg 0x1f71db0, Register:i64 %vreg50
try.c: 0x20778f0: i64 = Register %vreg50
try.c: 0x2017600: i8 = Constant<3>
try.c: 0x2074bc0: i64 = undef
try.c: 0x2028790: v4i64,ch = CopyFromReg 0x1f71db0, Register:v4i64 %vreg13
try.c: 0x2019f30: v4i64 = Register %vreg13
try.c: 0x20279e0: v16i32 = X86ISD::VBROADCAST 0x20606a0
try.c: 0x20606a0: i32,ch = load<LD4[ConstantPool]> 0x1f71db0, 0x208dda0, undef:i64
try.c: 0x208dda0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0x200cbb0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x2074bc0: i64 = undef
try.c: 0x208e130: 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: 0x208e000: i32 = Constant<0>
try.c: 0x208e000: i32 = Constant<0>
try.c: 0x208e000: i32 = Constant<0>
try.c: 0x208e000: i32 = Constant<0>
try.c: ...

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

Compiler output

Implementation: vperm
Security model: unknown
Compiler: gcc
joltik.c: joltik.c:29:3: error: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^~~~~

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

Compiler output

Implementation: vperm
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
joltik.c: joltik.c:29:3: error: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^~~~~
joltik.c: joltik.c:29:3: error: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^~~~~

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