Implementation notes: aarch64, pmnod145, crypto_sign/picnic2l5fs

Computer: pmnod145
Architecture: aarch64
CPU ID: 431f0af1
SUPERCOP version: 20191017
Operation: crypto_sign
Primitive: picnic2l5fs
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
7378666600190928 2512 16240943 3456 1624optimizedct/neongcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
7381543575182772 2512 16231695 3456 1608optimizedct/neongcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
7520775025175533 2512 16223291 3440 1592optimizedct/neongcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
7656966375184872 2512 16233831 3456 1608optimizedct/neongcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
7744406775219426 2632 16272652 3576 1608optimizedct/carmclang_-march=armv8a+crypto_-mcpu=thunderx2t99_-mtune=thunderx2t99_-O3_-fPIC_-fPIE2019101820191017
7748697800214298 2632 16266676 3576 1608optimizedct/carmclang_-march=armv8a+crypto_-mcpu=thunderx2t99_-mtune=thunderx2t99_-O2_-fPIC_-fPIE2019101820191017
8015943500180952 2512 16230567 3456 1624optimizedct/cgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
8121731050174660 2512 16223255 3456 1608optimizedct/cgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
8244950500168049 2512 16215475 3440 1592optimizedct/cgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017
8970747500174544 2512 16223119 3456 1608optimizedct/cgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101820191017

Test failure

Implementation: ref
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O2 -fPIC -fPIE
error 142
sh: line 1: 59846 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O2 -fPIC -fPIE ref

Test failure

Implementation: ref
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O3 -fPIC -fPIE
error 142
sh: line 1: 59798 Alarm clock killafter 3600 ./try

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O3 -fPIC -fPIE ref

Test failure

Implementation: ref
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 142
sh: line 1: 58374 Alarm clock killafter 3600 ./try

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

Test failure

Implementation: ref
Security model: unknown
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 142
sh: line 1: 54932 Alarm clock killafter 3600 ./try

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

Test failure

Implementation: ref
Security model: unknown
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 142
sh: line 1: 17459 Alarm clock killafter 3600 ./try

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

Test failure

Implementation: ref
Security model: unknown
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 142
sh: line 1: 60918 Alarm clock killafter 3600 ./try

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

Compiler output

Implementation: optimizedct/neon
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O2 -fPIC -fPIE
picnic2_simulate_mul.c: picnic2_simulate_mul.c:295:57: error: argument to '__builtin_neon_vshrq_n_v' must be a constant integer
picnic2_simulate_mul.c: out128[i1 / 2] = mm128_xor(mm128_and(t1, mask), mm128_sr_u64(mm128_and(t2, mask), width));
picnic2_simulate_mul.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
picnic2_simulate_mul.c: ./simd.h:104:28: note: expanded from macro 'mm128_sr_u64'
picnic2_simulate_mul.c: #define mm128_sr_u64(x, s) vshrq_n_u64((x), (s))
picnic2_simulate_mul.c: ^
picnic2_simulate_mul.c: /dibona_home_nfs/rdolbeau/opt/arm/arm-hpc-compiler-19.3_Generic-AArch64_RHEL-7_aarch64-linux/lib/clang/7.1.0/include/arm_neon.h:25337:24: note: expanded from macro 'vshrq_n_u64'
picnic2_simulate_mul.c: __ret = (uint64x2_t) __builtin_neon_vshrq_n_v((int8x16_t)__s0, __p1, 51); \
picnic2_simulate_mul.c: ^
picnic2_simulate_mul.c: ./simd.h:98:41: note: expanded from macro 'mm128_xor'
picnic2_simulate_mul.c: #define mm128_xor(l, r) veorq_u64((l), (r))
picnic2_simulate_mul.c: ^
picnic2_simulate_mul.c: picnic2_simulate_mul.c:296:58: error: argument to '__builtin_neon_vshlq_n_v' must be a constant integer
picnic2_simulate_mul.c: out128[i2 / 2] = mm128_xor(mm128_nand(mask, t2), mm128_sl_u64(mm128_nand(mask, t1), width));
picnic2_simulate_mul.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
picnic2_simulate_mul.c: ./simd.h:103:28: note: expanded from macro 'mm128_sl_u64'
picnic2_simulate_mul.c: #define mm128_sl_u64(x, s) vshlq_n_u64((x), (s))
picnic2_simulate_mul.c: ^
picnic2_simulate_mul.c: /dibona_home_nfs/rdolbeau/opt/arm/arm-hpc-compiler-19.3_Generic-AArch64_RHEL-7_aarch64-linux/lib/clang/7.1.0/include/arm_neon.h:24909:24: note: expanded from macro 'vshlq_n_u64'
picnic2_simulate_mul.c: __ret = (uint64x2_t) __builtin_neon_vshlq_n_v((int8x16_t)__s0, __p1, 51); \
picnic2_simulate_mul.c: ^
picnic2_simulate_mul.c: ./simd.h:98:41: note: expanded from macro 'mm128_xor'
picnic2_simulate_mul.c: #define mm128_xor(l, r) veorq_u64((l), (r))
picnic2_simulate_mul.c: ^
picnic2_simulate_mul.c: 2 errors generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O2 -fPIC -fPIE optimizedct/neon
armclang -march=armv8a+crypto -mcpu=thunderx2t99 -mtune=thunderx2t99 -O3 -fPIC -fPIE optimizedct/neon