Implementation notes: amd64, sand, crypto_sign/lattisigns512

Computer: sand
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20171218
Operation: crypto_sign
Primitive: lattisigns512

Compiler output

Implementation: crypto_sign/lattisigns512/avx
Compiler: cc
ntt_transform.c: ntt_transform.c:27:11: error: always_inline function '_mm256_set_pd' requires target feature 'sse4.2', but would be inlined into function 'ntt_transform' that is compiled without support for 'sse4.2'
ntt_transform.c: vpinv = _mm256_set_pd(PARAM_APPROX_P_INVERSE, PARAM_APPROX_P_INVERSE, PARAM_APPROX_P_INVERSE, PARAM_APPROX_P_INVERSE);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:28:11: error: always_inline function '_mm256_set_pd' requires target feature 'sse4.2', but would be inlined into function 'ntt_transform' that is compiled without support for 'sse4.2'
ntt_transform.c: vp = _mm256_set_pd(8383489., 8383489., 8383489., 8383489.);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:32:10: error: always_inline function '_mm256_load_pd' requires target feature 'sse4.2', but would be inlined into function 'ntt_transform' that is compiled without support for 'sse4.2'
ntt_transform.c: vo10 = _mm256_load_pd(o+pos);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:33:10: error: always_inline function '_mm256_load_pd' requires target feature 'sse4.2', but would be inlined into function 'ntt_transform' that is compiled without support for 'sse4.2'
ntt_transform.c: vo20 = _mm256_load_pd(o+pos+4);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:34:10: error: always_inline function '_mm256_load_pd' requires target feature 'sse4.2', but would be inlined into function 'ntt_transform' that is compiled without support for 'sse4.2'
ntt_transform.c: neg2 = _mm256_load_pd(_neg2);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:35:10: error: always_inline function '_mm256_load_pd' requires target feature 'sse4.2', but would be inlined into function 'ntt_transform' that is compiled without support for 'sse4.2'
ntt_transform.c: neg4 = _mm256_load_pd(_neg4);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:41:11: error: always_inline function '_mm256_load_pd' requires target feature 'sse4.2', but would be inlined into function 'ntt_transform' that is compiled without support for 'sse4.2'
ntt_transform.c: vx0 = _mm256_load_pd(out+s);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:42:10: error: always_inline function '_mm256_mul_pd' requires target feature 'sse4.2', but would be inlined into function 'ntt_transform' that is compiled without support for 'sse4.2'
ntt_transform.c: vt = _mm256_mul_pd(vx0,neg2);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:43:11: error: always_inline function '_mm256_hadd_pd' requires target feature 'sse4.2', but would be inlined into function 'ntt_transform' that is compiled without support for 'sse4.2'
ntt_transform.c: ...

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

Compiler output

Implementation: crypto_sign/lattisigns512/avx
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
ntt_transform.c: ntt_transform.c:27:11: error: always_inline function '_mm256_set_pd' requires target feature 'xsave', but would be inlined into function 'ntt_transform' that is compiled without support for 'xsave'
ntt_transform.c: vpinv = _mm256_set_pd(PARAM_APPROX_P_INVERSE, PARAM_APPROX_P_INVERSE, PARAM_APPROX_P_INVERSE, PARAM_APPROX_P_INVERSE);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:28:11: error: always_inline function '_mm256_set_pd' requires target feature 'xsave', but would be inlined into function 'ntt_transform' that is compiled without support for 'xsave'
ntt_transform.c: vp = _mm256_set_pd(8383489., 8383489., 8383489., 8383489.);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:32:10: error: always_inline function '_mm256_load_pd' requires target feature 'xsave', but would be inlined into function 'ntt_transform' that is compiled without support for 'xsave'
ntt_transform.c: vo10 = _mm256_load_pd(o+pos);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:33:10: error: always_inline function '_mm256_load_pd' requires target feature 'xsave', but would be inlined into function 'ntt_transform' that is compiled without support for 'xsave'
ntt_transform.c: vo20 = _mm256_load_pd(o+pos+4);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:34:10: error: always_inline function '_mm256_load_pd' requires target feature 'xsave', but would be inlined into function 'ntt_transform' that is compiled without support for 'xsave'
ntt_transform.c: neg2 = _mm256_load_pd(_neg2);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:35:10: error: always_inline function '_mm256_load_pd' requires target feature 'xsave', but would be inlined into function 'ntt_transform' that is compiled without support for 'xsave'
ntt_transform.c: neg4 = _mm256_load_pd(_neg4);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:41:11: error: always_inline function '_mm256_load_pd' requires target feature 'xsave', but would be inlined into function 'ntt_transform' that is compiled without support for 'xsave'
ntt_transform.c: vx0 = _mm256_load_pd(out+s);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:42:10: error: always_inline function '_mm256_mul_pd' requires target feature 'xsave', but would be inlined into function 'ntt_transform' that is compiled without support for 'xsave'
ntt_transform.c: vt = _mm256_mul_pd(vx0,neg2);
ntt_transform.c: ^
ntt_transform.c: ntt_transform.c:43:11: error: always_inline function '_mm256_hadd_pd' requires target feature 'xsave', but would be inlined into function 'ntt_transform' that is compiled without support for 'xsave'
ntt_transform.c: ...

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

Compiler output

Implementation: crypto_sign/lattisigns512/avx
Compiler: gcc
ntt_transform.c: ntt_transform.c:9:23: error: immintrin.h: No such file or directory
ntt_transform.c: ntt_transform.c: In function 'ntt_transform':
ntt_transform.c: ntt_transform.c:24: error: '__m256d' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:24: error: (Each undeclared identifier is reported only once
ntt_transform.c: ntt_transform.c:24: error: for each function it appears in.)
ntt_transform.c: ntt_transform.c:24: error: expected ';' before 'vt'
ntt_transform.c: ntt_transform.c:25: error: expected ';' before 'vx0'
ntt_transform.c: ntt_transform.c:27: error: 'vpinv' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:28: error: 'vp' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:32: error: 'vo10' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:33: error: 'vo20' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:34: error: 'neg2' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:35: error: 'neg4' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:41: error: 'vx0' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:42: error: 'vt' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:45: error: 'vx1' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:50: error: 'vc' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:84: error: 'vo0' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:86: error: 'vo11' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:102: error: 'vx3' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:108: error: 'vx2' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:114: error: 'vx5' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:120: error: 'vx4' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:126: error: 'vx7' undeclared (first use in this function)
ntt_transform.c: ntt_transform.c:132: error: 'vx6' undeclared (first use in this function)
ntt_transform.c: ...

Number of similar (compiler,implementation) pairs: 66, namely:
CompilerImplementations
gcc avx
gcc -O2 -fomit-frame-pointer avx
gcc -O3 -fomit-frame-pointer avx
gcc -O -fomit-frame-pointer avx
gcc -Os -fomit-frame-pointer avx
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx
gcc -fno-schedule-insns -O -fomit-frame-pointer avx
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx
gcc -funroll-loops avx
gcc -funroll-loops -O2 -fomit-frame-pointer avx
gcc -funroll-loops -O3 -fomit-frame-pointer avx
gcc -funroll-loops -O -fomit-frame-pointer avx
gcc -funroll-loops -Os -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m64 -O -fomit-frame-pointer avx
gcc -funroll-loops -m64 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer avx
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer avx
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer avx
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer avx
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer avx
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer avx
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer avx
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer avx
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer avx
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer avx
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer avx
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer avx
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer avx
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer avx
gcc -m64 -O2 -fomit-frame-pointer avx
gcc -m64 -O3 -fomit-frame-pointer avx
gcc -m64 -O -fomit-frame-pointer avx
gcc -m64 -Os -fomit-frame-pointer avx
gcc -m64 -march=k8 -O2 -fomit-frame-pointer avx
gcc -m64 -march=k8 -O3 -fomit-frame-pointer avx
gcc -m64 -march=k8 -O -fomit-frame-pointer avx
gcc -m64 -march=k8 -Os -fomit-frame-pointer avx
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer avx
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx
gcc -m64 -march=nocona -O2 -fomit-frame-pointer avx
gcc -m64 -march=nocona -O3 -fomit-frame-pointer avx
gcc -m64 -march=nocona -O -fomit-frame-pointer avx
gcc -m64 -march=nocona -Os -fomit-frame-pointer avx
gcc -march=k8 -O2 -fomit-frame-pointer avx
gcc -march=k8 -O3 -fomit-frame-pointer avx
gcc -march=k8 -O -fomit-frame-pointer avx
gcc -march=k8 -Os -fomit-frame-pointer avx
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx
gcc -march=nocona -O2 -fomit-frame-pointer avx
gcc -march=nocona -O3 -fomit-frame-pointer avx
gcc -march=nocona -O -fomit-frame-pointer avx
gcc -march=nocona -Os -fomit-frame-pointer avx