Implementation notes: amd64, h3neo, crypto_aead/aes128gcmv1

Computer: h3neo
Architecture: amd64
CPU ID: AuthenticAMD-00100f63-078bfbff
SUPERCOP version: 20170105
Operation: crypto_aead
Primitive: aes128gcmv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
149498? ? ?? ? ?opensslclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2016102220161009
149508? ? ?? ? ?opensslgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2016102220161009
149525? ? ?? ? ?opensslclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102220161009
149534? ? ?? ? ?opensslgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2016102220161009
149539? ? ?? ? ?opensslgcc_-O3_-fomit-frame-pointer2016102220161009
149544? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2016102220161009
149544? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2016102220161009
149544? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2016102220161009
149548? ? ?? ? ?opensslgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2016102220161009
149556? ? ?? ? ?opensslgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2016102220161009
149573? ? ?? ? ?opensslclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102220161009
149576? ? ?? ? ?opensslgcc_-funroll-loops_-O3_-fomit-frame-pointer2016102220161009
149578? ? ?? ? ?opensslgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2016102220161009
149583? ? ?? ? ?opensslgcc_-march=nocona_-O_-fomit-frame-pointer2016102220161009
149589? ? ?? ? ?opensslgcc_-O_-fomit-frame-pointer2016102220161009
149589? ? ?? ? ?opensslgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2016102220161009
149590? ? ?? ? ?opensslgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2016102220161009
149590? ? ?? ? ?opensslgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2016102220161009
149595? ? ?? ? ?opensslgcc_-march=nocona_-O2_-fomit-frame-pointer2016102220161009
149597? ? ?? ? ?opensslgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2016102220161009
149597? ? ?? ? ?opensslgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2016102220161009
149598? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2016102220161009
149599? ? ?? ? ?opensslgcc_-Os_-fomit-frame-pointer2016102220161009
149607? ? ?? ? ?opensslgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2016102220161009
149608? ? ?? ? ?opensslgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2016102220161009
149619? ? ?? ? ?opensslgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2016102220161009
149622? ? ?? ? ?opensslgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016102220161009
149625? ? ?? ? ?opensslgcc_-funroll-loops_-O2_-fomit-frame-pointer2016102220161009
149629? ? ?? ? ?opensslgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016102220161009
149634? ? ?? ? ?opensslgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016102220161009
149639? ? ?? ? ?opensslgcc_-m64_-march=core2_-O_-fomit-frame-pointer2016102220161009
149645? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2016102220161009
149646? ? ?? ? ?opensslgcc_-march=barcelona_-O3_-fomit-frame-pointer2016102220161009
149647? ? ?? ? ?opensslgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2016102220161009
149648? ? ?? ? ?opensslgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2016102220161009
149649? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2016102220161009
149651? ? ?? ? ?opensslgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2016102220161009
149658? ? ?? ? ?opensslgcc_-m64_-O_-fomit-frame-pointer2016102220161009
149658? ? ?? ? ?opensslgcc_-march=k8_-O_-fomit-frame-pointer2016102220161009
149661? ? ?? ? ?opensslclang_-O3_-fomit-frame-pointer_-Qunused-arguments2016102220161009
149663? ? ?? ? ?opensslgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2016102220161009
149668? ? ?? ? ?opensslgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2016102220161009
149673? ? ?? ? ?opensslgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2016102220161009
149675? ? ?? ? ?opensslgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2016102220161009
149677? ? ?? ? ?opensslgcc_-funroll-loops_-O_-fomit-frame-pointer2016102220161009
149680? ? ?? ? ?opensslgcc_-march=k8_-O2_-fomit-frame-pointer2016102220161009
149682? ? ?? ? ?opensslgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2016102220161009
149699? ? ?? ? ?opensslgcc_-m64_-march=k8_-O_-fomit-frame-pointer2016102220161009
149708? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016102220161009
149709? ? ?? ? ?opensslgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2016102220161009
149715? ? ?? ? ?opensslgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2016102220161009
149716? ? ?? ? ?opensslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2016102220161009
149724? ? ?? ? ?opensslgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2016102220161009
149729? ? ?? ? ?opensslgcc_-march=nocona_-Os_-fomit-frame-pointer2016102220161009
149730? ? ?? ? ?opensslgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2016102220161009
149730? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2016102220161009
149733? ? ?? ? ?opensslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2016102220161009
149736? ? ?? ? ?opensslgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2016102220161009
149741? ? ?? ? ?opensslgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2016102220161009
149743? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2016102220161009
149746? ? ?? ? ?opensslgcc_-march=nocona_-O3_-fomit-frame-pointer2016102220161009
149758? ? ?? ? ?opensslgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2016102220161009
149759? ? ?? ? ?opensslgcc_-funroll-loops_-Os_-fomit-frame-pointer2016102220161009
149767? ? ?? ? ?opensslgcc_-march=barcelona_-O_-fomit-frame-pointer2016102220161009
149772? ? ?? ? ?opensslgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2016102220161009
149775? ? ?? ? ?opensslgcc_-m64_-O2_-fomit-frame-pointer2016102220161009
149782? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2016102220161009
149792? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016102220161009
149798? ? ?? ? ?opensslgcc_-march=k8_-O3_-fomit-frame-pointer2016102220161009
149804? ? ?? ? ?opensslgcc_-march=barcelona_-O2_-fomit-frame-pointer2016102220161009
149836? ? ?? ? ?opensslgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2016102220161009
149916? ? ?? ? ?opensslgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2016102220161009
149954? ? ?? ? ?opensslclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102220161009
149989? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2016102220161009
150027? ? ?? ? ?opensslgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2016102220161009
150054? ? ?? ? ?opensslgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2016102220161009
150064? ? ?? ? ?opensslgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2016102220161009
150080? ? ?? ? ?opensslgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2016102220161009
150122? ? ?? ? ?opensslgcc_-march=barcelona_-Os_-fomit-frame-pointer2016102220161009
150139? ? ?? ? ?opensslgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2016102220161009
150168? ? ?? ? ?opensslgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2016102220161009
150173? ? ?? ? ?opensslgcc_-m64_-O3_-fomit-frame-pointer2016102220161009
150178? ? ?? ? ?opensslgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2016102220161009
150178? ? ?? ? ?opensslgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2016102220161009
150181? ? ?? ? ?opensslgcc_-O2_-fomit-frame-pointer2016102220161009
150202? ? ?? ? ?opensslgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2016102220161009
150239? ? ?? ? ?opensslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2016102220161009
150308? ? ?? ? ?opensslgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2016102220161009
150413? ? ?? ? ?opensslgcc_-m64_-Os_-fomit-frame-pointer2016102220161009
150421? ? ?? ? ?opensslgcc2016102220161009
150503? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2016102220161009
150892? ? ?? ? ?opensslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2016102220161009
150921? ? ?? ? ?opensslgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2016102220161009
150953? ? ?? ? ?opensslcc2016102220161009
151098? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2016102220161009
151188? ? ?? ? ?opensslgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2016102220161009
151456? ? ?? ? ?opensslgcc_-march=k8_-Os_-fomit-frame-pointer2016102220161009
151522? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016102220161009
151546? ? ?? ? ?opensslgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2016102220161009
151594? ? ?? ? ?opensslgcc_-funroll-loops2016102220161009
151619? ? ?? ? ?opensslclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102220161009
4394989? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2016102220161009
4395325? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2016102220161009
4395348? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2016102220161009
4409647? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2016102220161009
4410128? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2016102220161009
4623376? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016102220161009
4623592? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2016102220161009
5182866? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2016102220161009
5194540? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102220161009
5195654? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102220161009
5196606? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2016102220161009
5216394? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102220161009
5220196? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016102220161009
7133224? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2016102220161009
7133416? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2016102220161009
7133428? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016102220161009
7231589? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2016102220161009
7233588? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2016102220161009
7262276? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2016102220161009
7262706? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2016102220161009
7262899? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2016102220161009
7262990? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2016102220161009
7269181? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2016102220161009
7328095? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2016102220161009
7329737? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2016102220161009
17832993? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2016102220161009
17838533? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2016102220161009
17838785? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2016102220161009
17966438? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016102220161009
17969177? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2016102220161009
17992397? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2016102220161009
17992418? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2016102220161009
18104939? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2016102220161009
18105663? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2016102220161009
18232010? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2016102220161009
18232483? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2016102220161009
18254608? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2016102220161009
18254740? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2016102220161009
18303326? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2016102220161009
18303647? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2016102220161009
18304242? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2016102220161009
18673871? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2016102220161009
18674162? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2016102220161009
21432398? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2016102220161009
21684760? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2016102220161009
21685691? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2016102220161009
21685974? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2016102220161009
21686246? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2016102220161009
21859193? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2016102220161009
21862163? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2016102220161009
21871709? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2016102220161009
21877234? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2016102220161009
21888514? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2016102220161009
21891738? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2016102220161009
21906236? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2016102220161009
21927851? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2016102220161009
21929999? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2016102220161009
21930818? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2016102220161009
21979371? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2016102220161009
21986914? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2016102220161009
21991662? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2016102220161009
22033615? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2016102220161009
22034860? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016102220161009
22037441? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2016102220161009
22041170? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2016102220161009
22041389? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2016102220161009
22041439? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2016102220161009
22041680? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2016102220161009
22050018? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2016102220161009
22050994? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2016102220161009
22052322? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2016102220161009
22062899? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2016102220161009
22066341? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2016102220161009
22095405? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2016102220161009
22192368? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016102220161009
22192420? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2016102220161009
22222995? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2016102220161009
22223631? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2016102220161009
22318598? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2016102220161009
22318639? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2016102220161009
22319303? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2016102220161009
22319873? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2016102220161009
22336338? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2016102220161009
22336513? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2016102220161009
22336535? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2016102220161009
22336758? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2016102220161009
22374287? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2016102220161009
22378431? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2016102220161009
22385557? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2016102220161009
22397841? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2016102220161009
22401111? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2016102220161009
22496807? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2016102220161009
22539348? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2016102220161009
23571015? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2016102220161009
23576987? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2016102220161009
23577527? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016102220161009
26113870? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2016102220161009
26872963? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2016102220161009
119499127? ? ?? ? ?refgcc_-funroll-loops2016102220161009
119501473? ? ?? ? ?refgcc2016102220161009
119503528? ? ?? ? ?refcc2016102220161009

Test failure

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer openssl ref

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: cc
aesenc-int.c: aesenc-int.c: In function 'aesni_key128_expand':
aesenc-int.c: aesenc-int.c:42:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
aesenc-int.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:29,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:696:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
aesenc-int.c: _mm_loadu_si128 (__m128i const *__P)
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: aesenc-int.c: In function 'aesni_encrypt1':
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
aesenc-int.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:80:10: error: called from here
aesenc-int.c: temp = _mm_aesenc_si128(temp, rkeys[i]);
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '_mm_aesenclast_si128': target specific option mismatch
aesenc-int.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:82:8: error: called from here
aesenc-int.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc dolbeau/aesenc-int
gcc dolbeau/aesenc-int
gcc -funroll-loops dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
aesenc-int.c: aesenc-int.c:42:34: warning: incompatible pointer types passing 'const unsigned int *' to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aesenc-int.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.0/include/emmintrin.h:1112:32: note: passing argument to parameter '__p' here
aesenc-int.c: _mm_loadu_si128(__m128i const *__p)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:645:16: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_aead_aes128gcmv1_dolbeau_aesenc_int_encrypt' that is compiled without support for 'ssse3'
aesenc-int.c: __m128i Hv = _mm_shuffle_epi8(_mm_load_si128((const __m128i*)H), rev);
aesenc-int.c: ^
aesenc-int.c: 1 warning and 1 error generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments dolbeau/aesenc-int
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments dolbeau/aesenc-int
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/aesenc-int
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/aesenc-int
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/aesenc-int
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: gcc -O2 -fomit-frame-pointer
aesenc-int.c: aesenc-int.c: In function 'aesni_key128_expand':
aesenc-int.c: aesenc-int.c:42:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
aesenc-int.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:29,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:696:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
aesenc-int.c: _mm_loadu_si128 (__m128i const *__P)
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:50:9: error: called from here
aesenc-int.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:69:3: note: in expansion of macro 'BLOCK1'
aesenc-int.c: BLOCK1(0x36);
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ...

Number of similar (compiler,implementation) pairs: 89, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=corei7 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/aesenc-int
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -O -fomit-frame-pointer dolbeau/aesenc-int
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/aesenc-int

Compiler output

Implementation: crypto_aead/aes128gcmv1/dolbeau/aesenc-int
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
aesenc-int.c: aesenc-int.c: In function 'aesni_key128_expand':
aesenc-int.c: aesenc-int.c:42:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
aesenc-int.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:29,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:696:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
aesenc-int.c: _mm_loadu_si128 (__m128i const *__P)
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:50:9: error: called from here
aesenc-int.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:69:3: note: in expansion of macro 'BLOCK1'
aesenc-int.c: BLOCK1(0x36);
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ...
aesenc-int.c: aesenc-int.c: In function 'aesni_key128_expand':
aesenc-int.c: aesenc-int.c:42:34: warning: passing argument 1 of '_mm_loadu_si128' from incompatible pointer type [-Wincompatible-pointer-types]
aesenc-int.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
aesenc-int.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:29,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:696:1: note: expected 'const __vector(2) long long int *' but argument is of type 'const unsigned int *'
aesenc-int.c: _mm_loadu_si128 (__m128i const *__P)
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:50:9: error: called from here
aesenc-int.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:69:3: note: in expansion of macro 'BLOCK1'
aesenc-int.c: BLOCK1(0x36);
aesenc-int.c: ^
aesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
aesenc-int.c: from aesenc-int.c:11:
aesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aesenc-int.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aesenc-int.c: ...

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