Implementation notes: armeabi, berry2, crypto_encrypt/ntruees593ep1

Computer: berry2
Microarchitecture: armeabi; Cortex-A7 (410fc075)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240425
Operation: crypto_encrypt
Primitive: ntruees593ep1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
93182236674 696 4851230 1148 1608T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024060620240425
93866648170 696 4864570 1156 1608T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024060620240425
104746135670 696 4850330 1148 1608T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024060620240425
114761233821 696 4847778 1140 1600T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024060620240425

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -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:86:33: note: place parentheses around the '&' expression to silence this warning
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:87:33: warning: '&' within '^' [-Wbitwise-op-parentheses]
ntru_crypto_sha1.c: C += RL(D, 5) + K00_19 + (E & (A ^ B) ^ B) + data[ 2]; E = RL(E, 30);
ntru_crypto_sha1.c: ~~^~~~~~~~~ ~
ntru_crypto_sha1.c: ntru_crypto_sha1.c:87:33: note: place parentheses around the '&' expression to silence this warning
ntru_crypto_sha1.c: C += RL(D, 5) + K00_19 + (E & (A ^ B) ^ B) + data[ 2]; E = RL(E, 30);
ntru_crypto_sha1.c: ^
ntru_crypto_sha1.c: ( )
ntru_crypto_sha1.c: ntru_crypto_sha1.c:88:33: warning: '&' within '^' [-Wbitwise-op-parentheses]
ntru_crypto_sha1.c: B += RL(C, 5) + K00_19 + (D & (E ^ A) ^ A) + data[ 3]; D = RL(D, 30);
ntru_crypto_sha1.c: ~~^~~~~~~~~ ~
ntru_crypto_sha1.c: ntru_crypto_sha1.c:88:33: note: place parentheses around the '&' expression to silence this warning
ntru_crypto_sha1.c: ...

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

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -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_double_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: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref