Implementation notes: amd64, scw1b63b1, crypto_encrypt/ntruees439ep1

Computer: scw1b63b1
Architecture: amd64
CPU ID: GenuineIntel-000506f1-0f8bfbff
SUPERCOP version: 20191017
Operation: crypto_encrypt
Primitive: ntruees439ep1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
22393457095 864 8094758 1720 1728refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019122320191017
22495643273 864 8078926 1720 1728refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019122320191017
22598243448 864 6477891 1696 1664refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122320191017
22623643857 864 6479131 1696 1664refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122320191017
22664643448 864 6477891 1696 1664refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122320191017
23448241787 864 8077054 1720 1728refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019122320191017
23761637304 864 6470829 1688 1664refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122320191017
25924836789 864 8071022 1712 1696refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019122320191017
30718249180 864 6484587 1696 1664refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019122320191017

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
ntru_crypto_sha1.c: ntru_crypto_sha1.c:85:33: warning: '&' within '^' [-Wbitwise-op-parentheses]
ntru_crypto_sha1.c: E += RL(A, 5) + K00_19 + (B & (C ^ D) ^ D) + data[ 0]; B = RL(B, 30);
ntru_crypto_sha1.c: ~~^~~~~~~~~ ~
ntru_crypto_sha1.c: ntru_crypto_sha1.c:85:33: note: place parentheses around the '&' expression to silence this warning
ntru_crypto_sha1.c: E += RL(A, 5) + K00_19 + (B & (C ^ D) ^ D) + data[ 0]; B = RL(B, 30);
ntru_crypto_sha1.c: ^
ntru_crypto_sha1.c: ( )
ntru_crypto_sha1.c: ntru_crypto_sha1.c:86:33: warning: '&' within '^' [-Wbitwise-op-parentheses]
ntru_crypto_sha1.c: D += RL(E, 5) + K00_19 + (A & (B ^ C) ^ C) + data[ 1]; A = RL(A, 30);
ntru_crypto_sha1.c: ~~^~~~~~~~~ ~
ntru_crypto_sha1.c: ...
ntru_crypto_sha1.c: ^
ntru_crypto_sha1.c: ( )
ntru_crypto_sha1.c: ntru_crypto_sha1.c:111:33: warning: '&' within '^' [-Wbitwise-op-parentheses]
ntru_crypto_sha1.c: A += RL(B, 5) + K00_19 + (C & (D ^ E) ^ E) + w[ 3]; C = RL(C, 30);
ntru_crypto_sha1.c: ~~^~~~~~~~~ ~
ntru_crypto_sha1.c: ntru_crypto_sha1.c:111:33: note: place parentheses around the '&' expression to silence this warning
ntru_crypto_sha1.c: A += RL(B, 5) + K00_19 + (C & (D ^ E) ^ E) + w[ 3]; C = RL(C, 30);
ntru_crypto_sha1.c: ^
ntru_crypto_sha1.c: ( )
ntru_crypto_sha1.c: 20 warnings generated.
ntru_crypto_sha2.c: ntru_crypto_sha2.c:90:21: warning: '&' within '^' [-Wbitwise-op-parentheses]
ntru_crypto_sha2.c: H += S1(E) + (E & (F ^ G) ^ G) + 0x428A2F98UL + data[ 0]; D += H;
ntru_crypto_sha2.c: ~~^~~~~~~~~ ~
ntru_crypto_sha2.c: ntru_crypto_sha2.c:90:21: note: place parentheses around the '&' expression to silence this warning
ntru_crypto_sha2.c: H += S1(E) + (E & (F ^ G) ^ G) + 0x428A2F98UL + data[ 0]; D += H;
ntru_crypto_sha2.c: ^
ntru_crypto_sha2.c: ( )
ntru_crypto_sha2.c: ntru_crypto_sha2.c:92:21: warning: '&' within '^' [-Wbitwise-op-parentheses]
ntru_crypto_sha2.c: G += S1(D) + (D & (E ^ F) ^ F) + 0x71374491UL + data[ 1]; C += G;
ntru_crypto_sha2.c: ~~^~~~~~~~~ ~
ntru_crypto_sha2.c: ...
ntru_crypto_sha2.c: ^
ntru_crypto_sha2.c: ( )
ntru_crypto_sha2.c: ntru_crypto_sha2.c:267:21: warning: '&' within '^' [-Wbitwise-op-parentheses]
ntru_crypto_sha2.c: A += S1(F) + (F & (G ^ H) ^ H) + 0xC67178F2UL + w[15]; E += A;
ntru_crypto_sha2.c: ~~^~~~~~~~~ ~
ntru_crypto_sha2.c: ntru_crypto_sha2.c:267:21: note: place parentheses around the '&' expression to silence this warning
ntru_crypto_sha2.c: A += S1(F) + (F & (G ^ H) ^ H) + 0xC67178F2UL + w[15]; E += A;
ntru_crypto_sha2.c: ^
ntru_crypto_sha2.c: ( )
ntru_crypto_sha2.c: 64 warnings generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
ebats.o copyrightclaims T
ebats.o patentclaims T
ebats.o randombytesfn T
ebats.o shortciphertext T
ebats.o shortplaintext T
ntru_crypto_drbg.o ntru_crypto_drbg_generate T
ntru_crypto_drbg.o ntru_crypto_drbg_instantiate T
ntru_crypto_drbg.o ntru_crypto_drbg_reseed T
ntru_crypto_drbg.o ntru_crypto_drbg_uninstantiate T
ntru_crypto_drbg.o ntru_crypto_external_drbg_instantiate T
ntru_crypto_hash.o ntru_crypto_hash_block_length T
ntru_crypto_hash.o ntru_crypto_hash_digest T
ntru_crypto_hash.o ntru_crypto_hash_digest_length T
ntru_crypto_hash.o ntru_crypto_hash_final T
ntru_crypto_hash.o ntru_crypto_hash_final_zero_pad T
ntru_crypto_hash.o ntru_crypto_hash_init T
ntru_crypto_hash.o ntru_crypto_hash_set_alg T
ntru_crypto_hash.o ntru_crypto_hash_update T
ntru_crypto_hmac.o ntru_crypto_hmac_create_ctx T
ntru_crypto_hmac.o ntru_crypto_hmac_destroy_ctx T
ntru_crypto_hmac.o ntru_crypto_hmac_final T
ntru_crypto_hmac.o ntru_crypto_hmac_get_md_len T
ntru_crypto_hmac.o ntru_crypto_hmac_init T
ntru_crypto_hmac.o ntru_crypto_hmac_set_key T
ntru_crypto_hmac.o ntru_crypto_hmac_update T
ntru_crypto_msbyte_uint32.o ntru_crypto_msbyte_2_uint32 T
ntru_crypto_msbyte_uint32.o ntru_crypto_uint32_2_msbyte T
ntru_crypto_ntru_convert.o ntru_bits_2_trits T
ntru_crypto_ntru_convert.o ntru_coeffs_mod4_2_octets T
ntru_crypto_ntru_convert.o ntru_elements_2_octets T
ntru_crypto_ntru_convert.o ntru_indices_2_packed_trits T
ntru_crypto_ntru_convert.o ntru_indices_2_trits T
ntru_crypto_ntru_convert.o ntru_octet_2_trits T
ntru_crypto_ntru_convert.o ntru_octets_2_elements T
ntru_crypto_ntru_convert.o ntru_packed_trits_2_indices T
ntru_crypto_ntru_convert.o ntru_trits_2_bits T
ntru_crypto_ntru_convert.o ntru_trits_2_octet T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_decrypt T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_encrypt T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_encrypt_keygen T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_encrypt_subjectPublicKeyInfo2PublicKey T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_create_privkey_blob T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_create_pubkey_blob T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_get_blob_params T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_parse T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_recreate_pubkey_blob T
ntru_crypto_ntru_encrypt_param_sets.o ntru_encrypt_get_param_set_name T
ntru_crypto_ntru_encrypt_param_sets.o ntru_encrypt_get_params_with_DER_id T
ntru_crypto_ntru_encrypt_param_sets.o ntru_encrypt_get_params_with_OID T
ntru_crypto_ntru_encrypt_param_sets.o ntru_encrypt_get_params_with_id T
ntru_crypto_ntru_mgf1.o ntru_mgf1 T
ntru_crypto_ntru_mgf1.o ntru_mgftp1 T
ntru_crypto_ntru_poly.o ntru_gen_poly T
ntru_crypto_ntru_poly.o ntru_poly_check_min_weight T
ntru_crypto_ntru_poly.o ntru_ring_inv T
ntru_crypto_ntru_poly.o ntru_ring_mult_coefficients T
ntru_crypto_ntru_poly.o ntru_ring_mult_indices T
ntru_crypto_ntru_poly.o ntru_ring_mult_indices_sse3 T
ntru_crypto_ntru_poly.o ntru_ring_mult_product_indices T
ntru_crypto_sha1.o ntru_crypto_sha1 T
ntru_crypto_sha1.o ntru_crypto_sha1_digest T
ntru_crypto_sha1.o ntru_crypto_sha1_final T
ntru_crypto_sha1.o ntru_crypto_sha1_final_zero_pad T
ntru_crypto_sha1.o ntru_crypto_sha1_init T
ntru_crypto_sha1.o ntru_crypto_sha1_update T
ntru_crypto_sha2.o ntru_crypto_sha2 T
ntru_crypto_sha256.o ntru_crypto_sha256_digest T
ntru_crypto_sha256.o ntru_crypto_sha256_final T
ntru_crypto_sha256.o ntru_crypto_sha256_final_zero_pad T
ntru_crypto_sha256.o ntru_crypto_sha256_init T
ntru_crypto_sha256.o ntru_crypto_sha256_update T

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
ebats.o copyrightclaims T
ebats.o patentclaims T
ebats.o randombytesfn T
ebats.o shortciphertext T
ebats.o shortplaintext T
ntru_crypto_drbg.o ntru_crypto_drbg_generate T
ntru_crypto_drbg.o ntru_crypto_drbg_instantiate T
ntru_crypto_drbg.o ntru_crypto_drbg_reseed T
ntru_crypto_drbg.o ntru_crypto_drbg_uninstantiate T
ntru_crypto_drbg.o ntru_crypto_external_drbg_instantiate T
ntru_crypto_hash.o ntru_crypto_hash_block_length T
ntru_crypto_hash.o ntru_crypto_hash_digest T
ntru_crypto_hash.o ntru_crypto_hash_digest_length T
ntru_crypto_hash.o ntru_crypto_hash_final T
ntru_crypto_hash.o ntru_crypto_hash_final_zero_pad T
ntru_crypto_hash.o ntru_crypto_hash_init T
ntru_crypto_hash.o ntru_crypto_hash_set_alg T
ntru_crypto_hash.o ntru_crypto_hash_update T
ntru_crypto_hmac.o ntru_crypto_hmac_create_ctx T
ntru_crypto_hmac.o ntru_crypto_hmac_destroy_ctx T
ntru_crypto_hmac.o ntru_crypto_hmac_final T
ntru_crypto_hmac.o ntru_crypto_hmac_get_md_len T
ntru_crypto_hmac.o ntru_crypto_hmac_init T
ntru_crypto_hmac.o ntru_crypto_hmac_set_key T
ntru_crypto_hmac.o ntru_crypto_hmac_update T
ntru_crypto_msbyte_uint32.o ntru_crypto_msbyte_2_uint32 T
ntru_crypto_msbyte_uint32.o ntru_crypto_uint32_2_msbyte T
ntru_crypto_ntru_convert.o ntru_bits_2_trits T
ntru_crypto_ntru_convert.o ntru_coeffs_mod4_2_octets T
ntru_crypto_ntru_convert.o ntru_elements_2_octets T
ntru_crypto_ntru_convert.o ntru_indices_2_packed_trits T
ntru_crypto_ntru_convert.o ntru_indices_2_trits T
ntru_crypto_ntru_convert.o ntru_octet_2_trits T
ntru_crypto_ntru_convert.o ntru_octets_2_elements T
ntru_crypto_ntru_convert.o ntru_packed_trits_2_indices T
ntru_crypto_ntru_convert.o ntru_trits_2_bits T
ntru_crypto_ntru_convert.o ntru_trits_2_octet T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_decrypt T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_encrypt T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_encrypt_keygen T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_encrypt_publicKey2SubjectPublicKeyInfo T
ntru_crypto_ntru_encrypt.o ntru_crypto_ntru_encrypt_subjectPublicKeyInfo2PublicKey T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_create_privkey_blob T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_create_pubkey_blob T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_get_blob_params T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_parse T
ntru_crypto_ntru_encrypt_key.o ntru_crypto_ntru_encrypt_key_recreate_pubkey_blob T
ntru_crypto_ntru_encrypt_param_sets.o ntru_encrypt_get_param_set_name T
ntru_crypto_ntru_encrypt_param_sets.o ntru_encrypt_get_params_with_DER_id T
ntru_crypto_ntru_encrypt_param_sets.o ntru_encrypt_get_params_with_OID T
ntru_crypto_ntru_encrypt_param_sets.o ntru_encrypt_get_params_with_id T
ntru_crypto_ntru_mgf1.o ntru_mgf1 T
ntru_crypto_ntru_mgf1.o ntru_mgftp1 T
ntru_crypto_ntru_poly.o ntru_gen_poly T
ntru_crypto_ntru_poly.o ntru_poly_check_min_weight T
ntru_crypto_ntru_poly.o ntru_ring_inv T
ntru_crypto_ntru_poly.o ntru_ring_mult_coefficients T
ntru_crypto_ntru_poly.o ntru_ring_mult_indices T
ntru_crypto_ntru_poly.o ntru_ring_mult_indices_quadruple_width_conv T
ntru_crypto_ntru_poly.o ntru_ring_mult_product_indices T
ntru_crypto_sha1.o ntru_crypto_sha1 T
ntru_crypto_sha1.o ntru_crypto_sha1_digest T
ntru_crypto_sha1.o ntru_crypto_sha1_final T
ntru_crypto_sha1.o ntru_crypto_sha1_final_zero_pad T
ntru_crypto_sha1.o ntru_crypto_sha1_init T
ntru_crypto_sha1.o ntru_crypto_sha1_update T
ntru_crypto_sha2.o ntru_crypto_sha2 T
ntru_crypto_sha256.o ntru_crypto_sha256_digest T
ntru_crypto_sha256.o ntru_crypto_sha256_final T
ntru_crypto_sha256.o ntru_crypto_sha256_final_zero_pad T
ntru_crypto_sha256.o ntru_crypto_sha256_init T
ntru_crypto_sha256.o ntru_crypto_sha256_update T

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref