Implementation notes: x86, gcc16, crypto_encrypt/ntruees1499ep1

Computer: gcc16
Architecture: x86
CPU ID: AuthenticAMD-00100f23-178bfbff
SUPERCOP version: 20171020
Operation: crypto_encrypt
Primitive: ntruees1499ep1

Compiler output

Implementation: crypto_encrypt/ntruees1499ep1/ref
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c: In function 'grade_school_mul':
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:14: error: '__m128i' undeclared (first use in this function)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:14: error: (Each undeclared identifier is reported only once
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:14: error: for each function it appears in.)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:14: error: 'T' undeclared (first use in this function)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:20: error: expected ';' before 'ai8'
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:21: error: expected ';' before 'ai8h'
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:22: error: expected ';' before 'ai8l'
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:23: error: expected ';' before 'abroad'
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:25: error: expected ';' before 'cur'
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:26: error: expected ';' before 'next'
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:28: error: expected ';' before 'x1'
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:29: error: expected ';' before 'x2'
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:31: error: expected expression before ')' token
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:37: error: 'ai8' undeclared (first use in this function)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:37: error: expected expression before ')' token
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:38: error: 'ai8h' undeclared (first use in this function)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:39: error: 'ai8l' undeclared (first use in this function)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:40: error: 'abroad' undeclared (first use in this function)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:54: error: 'cur' undeclared (first use in this function)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:57: error: 'next' undeclared (first use in this function)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:57: error: expected expression before ')' token
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:59: error: 'x2' undeclared (first use in this function)
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:65: error: 'x1' undeclared (first use in this function)

Number of similar (compiler,implementation) pairs: 96, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer ref
gcc -m32 -O2 -fomit-frame-pointer ref
gcc -m32 -O3 -fomit-frame-pointer ref
gcc -m32 -O -fomit-frame-pointer ref
gcc -m32 -Os -fomit-frame-pointer ref
gcc -m32 -march=athlon -O2 -fomit-frame-pointer ref
gcc -m32 -march=athlon -O3 -fomit-frame-pointer ref
gcc -m32 -march=athlon -O -fomit-frame-pointer ref
gcc -m32 -march=athlon -Os -fomit-frame-pointer ref
gcc -m32 -march=i386 -O2 -fomit-frame-pointer ref
gcc -m32 -march=i386 -O3 -fomit-frame-pointer ref
gcc -m32 -march=i386 -O -fomit-frame-pointer ref
gcc -m32 -march=i386 -Os -fomit-frame-pointer ref
gcc -m32 -march=i486 -O2 -fomit-frame-pointer ref
gcc -m32 -march=i486 -O3 -fomit-frame-pointer ref
gcc -m32 -march=i486 -O -fomit-frame-pointer ref
gcc -m32 -march=i486 -Os -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -O -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -O -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer ref
gcc -m32 -march=k6 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k6 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k6 -O -fomit-frame-pointer ref
gcc -m32 -march=k6 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -O -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -O -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium -O -fomit-frame-pointer ref
gcc -m32 -march=pentium -Os -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_encrypt/ntruees1499ep1/ref
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c: In function 'grade_school_mul':
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:62: error: incompatible types when assigning to type '__m128i' from type 'int'

Number of similar (compiler,implementation) pairs: 48, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer ref
gcc -m32 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m32 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m32 -march=k8 -O -fomit-frame-pointer ref
gcc -m32 -march=k8 -Os -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m32 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m32 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m32 -march=nocona -O -fomit-frame-pointer ref
gcc -m32 -march=nocona -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -O -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -O -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer ref
gcc -m32 -march=prescott -O2 -fomit-frame-pointer ref
gcc -m32 -march=prescott -O3 -fomit-frame-pointer ref
gcc -m32 -march=prescott -O -fomit-frame-pointer ref
gcc -m32 -march=prescott -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_encrypt/ntruees1499ep1/ref
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c: In function 'grade_school_mul':
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:62: error: incompatible types when assigning to type '__m128i' from type 'int'
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c: In function 'grade_school_mul':
ntru_crypto_ntru_mult_coeffs_simd.c: ntru_crypto_ntru_mult_coeffs_simd.c:62: error: incompatible types when assigning to type '__m128i' from type 'int'

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

Compiler output

Implementation: crypto_encrypt/ntruees1499ep1/ref
Compiler: gcc -m32 -march=core2 -O2 -fomit-frame-pointer
try.c: crypto_encrypt_ntruees1499ep1.a(encrypt.o): In function `crypto_encrypt_ntruees1499ep1_ref_keypair':
try.c: encrypt.c:(.text+0x...): undefined reference to `ntru_crypto_external_drbg_instantiate'
try.c: crypto_encrypt_ntruees1499ep1.a(encrypt.o): In function `crypto_encrypt_ntruees1499ep1_ref':
try.c: encrypt.c:(.text+0x...): undefined reference to `ntru_crypto_external_drbg_instantiate'
try.c: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -m32 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m32 -march=core2 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer ref