Implementation notes: amd64, morningstar, crypto_sign/fslwe37

Computer: morningstar
Architecture: amd64
CPU ID: AuthenticAMD-00100f42-178bfbff
SUPERCOP version: 20170904
Operation: crypto_sign
Primitive: fslwe37

Compiler output

Implementation: crypto_sign/fslwe37/ref
Compiler: clang++ -O3 -fomit-frame-pointer -Qunused-arguments
fs_lwe_sign.cpp: fs_lwe_sign.cpp:388:17: error: variable length array of non-POD element type 'NTL::ZZ_pE'
fs_lwe_sign.cpp: ZZ_pE random_Dy[PublicParam.m];
fs_lwe_sign.cpp: ^
fs_lwe_sign.cpp: fs_lwe_sign.cpp:429:18: error: variable length array of non-POD element type 'NTL::ZZ_pE'
fs_lwe_sign.cpp: NTL::ZZ_pE sk_ZZ[PP.m];
fs_lwe_sign.cpp: ^
fs_lwe_sign.cpp: fs_lwe_sign.cpp:430:16: error: variable length array of non-POD element type 'NTL::ZZ_pE'
fs_lwe_sign.cpp: NTL::ZZ_pE rhf[PP.m];
fs_lwe_sign.cpp: ^
fs_lwe_sign.cpp: 3 errors generated.

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

Compiler output

Implementation: crypto_sign/fslwe37/ref
Compiler: g++
try.cpp: In file included from crypto_sign.h:4:0,
try.cpp: from try.cpp:8:
try.cpp: try.cpp: In function 'void allocate()':
try.cpp: crypto_sign_fslwe37.h:23:40: error: 'BYTES_SIGNATUR_E' was not declared in this scope
try.cpp: #define crypto_sign_fslwe37_ref_BYTES (BYTES_SIGNATUR_E + BYTES_SIGNATUR_Z)
try.cpp: ^
try.cpp: crypto_sign_fslwe37.h:40:35: note: in expansion of macro 'crypto_sign_fslwe37_ref_BYTES'
try.cpp: #define crypto_sign_fslwe37_BYTES crypto_sign_fslwe37_ref_BYTES
try.cpp: ^
try.cpp: crypto_sign.h:9:27: note: in expansion of macro 'crypto_sign_fslwe37_BYTES'
try.cpp: #define crypto_sign_BYTES crypto_sign_fslwe37_BYTES
try.cpp: ^
try.cpp: try.cpp:53:34: note: in expansion of macro 'crypto_sign_BYTES'
try.cpp: if (alloclen < MAXTEST_BYTES + crypto_sign_BYTES) alloclen = MAXTEST_BYTES + crypto_sign_BYTES;
try.cpp: ^
try.cpp: crypto_sign_fslwe37.h:23:59: error: 'BYTES_SIGNATUR_Z' was not declared in this scope
try.cpp: #define crypto_sign_fslwe37_ref_BYTES (BYTES_SIGNATUR_E + BYTES_SIGNATUR_Z)
try.cpp: ^
try.cpp: crypto_sign_fslwe37.h:40:35: note: in expansion of macro 'crypto_sign_fslwe37_ref_BYTES'
try.cpp: #define crypto_sign_fslwe37_BYTES crypto_sign_fslwe37_ref_BYTES
try.cpp: ^
try.cpp: crypto_sign.h:9:27: note: in expansion of macro 'crypto_sign_fslwe37_BYTES'
try.cpp: #define crypto_sign_BYTES crypto_sign_fslwe37_BYTES
try.cpp: ^
try.cpp: try.cpp:53:34: note: in expansion of macro 'crypto_sign_BYTES'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 58, namely:
CompilerImplementations
g++ ref
g++ -O2 -fomit-frame-pointer ref
g++ -O3 -fomit-frame-pointer ref
g++ -O -fomit-frame-pointer ref
g++ -Os -fomit-frame-pointer ref
g++ -fno-schedule-insns -O2 -fomit-frame-pointer ref
g++ -fno-schedule-insns -O3 -fomit-frame-pointer ref
g++ -fno-schedule-insns -O -fomit-frame-pointer ref
g++ -fno-schedule-insns -Os -fomit-frame-pointer ref
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
g++ -m64 -O2 -fomit-frame-pointer ref
g++ -m64 -O3 -fomit-frame-pointer ref
g++ -m64 -O -fomit-frame-pointer ref
g++ -m64 -Os -fomit-frame-pointer ref
g++ -m64 -march=core2 -O2 -fomit-frame-pointer ref
g++ -m64 -march=core2 -O3 -fomit-frame-pointer ref
g++ -m64 -march=core2 -O -fomit-frame-pointer ref
g++ -m64 -march=core2 -Os -fomit-frame-pointer ref
g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
g++ -m64 -march=corei7 -O2 -fomit-frame-pointer ref
g++ -m64 -march=corei7 -O -fomit-frame-pointer ref
g++ -m64 -march=corei7 -Os -fomit-frame-pointer ref
g++ -m64 -march=k8 -O2 -fomit-frame-pointer ref
g++ -m64 -march=k8 -O3 -fomit-frame-pointer ref
g++ -m64 -march=k8 -O -fomit-frame-pointer ref
g++ -m64 -march=k8 -Os -fomit-frame-pointer ref
g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
g++ -m64 -march=nocona -O2 -fomit-frame-pointer ref
g++ -m64 -march=nocona -O3 -fomit-frame-pointer ref
g++ -m64 -march=nocona -O -fomit-frame-pointer ref
g++ -m64 -march=nocona -Os -fomit-frame-pointer ref
g++ -march=barcelona -O2 -fomit-frame-pointer ref
g++ -march=barcelona -O3 -fomit-frame-pointer ref
g++ -march=barcelona -O -fomit-frame-pointer ref
g++ -march=barcelona -Os -fomit-frame-pointer ref
g++ -march=k8 -O2 -fomit-frame-pointer ref
g++ -march=k8 -O3 -fomit-frame-pointer ref
g++ -march=k8 -O -fomit-frame-pointer ref
g++ -march=k8 -Os -fomit-frame-pointer ref
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
g++ -march=nocona -O2 -fomit-frame-pointer ref
g++ -march=nocona -O3 -fomit-frame-pointer ref
g++ -march=nocona -O -fomit-frame-pointer ref
g++ -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_sign/fslwe37/ref
Compiler: g++ -m64 -march=barcelona -O2 -fomit-frame-pointer
try.cpp: In file included from crypto_sign.h:4:0,
try.cpp: from try.cpp:8:
try.cpp: try.cpp: In function 'void allocate()':
try.cpp: crypto_sign_fslwe37.h:23:40: error: 'BYTES_SIGNATUR_E' was not declared in this scope
try.cpp: #define crypto_sign_fslwe37_ref_BYTES (BYTES_SIGNATUR_E + BYTES_SIGNATUR_Z)
try.cpp: ^
try.cpp: crypto_sign_fslwe37.h:40:35: note: in expansion of macro 'crypto_sign_fslwe37_ref_BYTES'
try.cpp: #define crypto_sign_fslwe37_BYTES crypto_sign_fslwe37_ref_BYTES
try.cpp: ^
try.cpp: crypto_sign.h:9:27: note: in expansion of macro 'crypto_sign_fslwe37_BYTES'
try.cpp: #define crypto_sign_BYTES crypto_sign_fslwe37_BYTES
try.cpp: ^
try.cpp: try.cpp:53:34: note: in expansion of macro 'crypto_sign_BYTES'
try.cpp: if (alloclen < MAXTEST_BYTES + crypto_sign_BYTES) alloclen = MAXTEST_BYTES + crypto_sign_BYTES;
try.cpp: ^
try.cpp: crypto_sign_fslwe37.h:23:59: error: 'BYTES_SIGNATUR_Z' was not declared in this scope
try.cpp: #define crypto_sign_fslwe37_ref_BYTES (BYTES_SIGNATUR_E + BYTES_SIGNATUR_Z)
try.cpp: ^
try.cpp: crypto_sign_fslwe37.h:40:35: note: in expansion of macro 'crypto_sign_fslwe37_ref_BYTES'
try.cpp: #define crypto_sign_fslwe37_BYTES crypto_sign_fslwe37_ref_BYTES
try.cpp: ^
try.cpp: crypto_sign.h:9:27: note: in expansion of macro 'crypto_sign_fslwe37_BYTES'
try.cpp: #define crypto_sign_BYTES crypto_sign_fslwe37_BYTES
try.cpp: ^
try.cpp: try.cpp:53:34: note: in expansion of macro 'crypto_sign_BYTES'
try.cpp: ...
try.cpp: In file included from crypto_sign.h:4:0,
try.cpp: from try.cpp:8:
try.cpp: try.cpp: In function 'void allocate()':
try.cpp: crypto_sign_fslwe37.h:23:40: error: 'BYTES_SIGNATUR_E' was not declared in this scope
try.cpp: #define crypto_sign_fslwe37_ref_BYTES (BYTES_SIGNATUR_E + BYTES_SIGNATUR_Z)
try.cpp: ^
try.cpp: crypto_sign_fslwe37.h:40:35: note: in expansion of macro 'crypto_sign_fslwe37_ref_BYTES'
try.cpp: #define crypto_sign_fslwe37_BYTES crypto_sign_fslwe37_ref_BYTES
try.cpp: ^
try.cpp: crypto_sign.h:9:27: note: in expansion of macro 'crypto_sign_fslwe37_BYTES'
try.cpp: #define crypto_sign_BYTES crypto_sign_fslwe37_BYTES
try.cpp: ^
try.cpp: try.cpp:53:34: note: in expansion of macro 'crypto_sign_BYTES'
try.cpp: if (alloclen < MAXTEST_BYTES + crypto_sign_BYTES) alloclen = MAXTEST_BYTES + crypto_sign_BYTES;
try.cpp: ^
try.cpp: crypto_sign_fslwe37.h:23:59: error: 'BYTES_SIGNATUR_Z' was not declared in this scope
try.cpp: #define crypto_sign_fslwe37_ref_BYTES (BYTES_SIGNATUR_E + BYTES_SIGNATUR_Z)
try.cpp: ^
try.cpp: crypto_sign_fslwe37.h:40:35: note: in expansion of macro 'crypto_sign_fslwe37_ref_BYTES'
try.cpp: #define crypto_sign_fslwe37_BYTES crypto_sign_fslwe37_ref_BYTES
try.cpp: ^
try.cpp: crypto_sign.h:9:27: note: in expansion of macro 'crypto_sign_fslwe37_BYTES'
try.cpp: #define crypto_sign_BYTES crypto_sign_fslwe37_BYTES
try.cpp: ^
try.cpp: try.cpp:53:34: note: in expansion of macro 'crypto_sign_BYTES'
try.cpp: ...

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