Implementation notes: ppc64, power9, crypto_encrypt/ntruees787ep1

Computer: power9
Architecture: ppc64
CPU ID: unknown CPU ID
SUPERCOP version: 20210326
Operation: crypto_encrypt
Primitive: ntruees787ep1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
61824855364 132 085614 820 1960T:refgcc_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
62774547824 116 077116 812 1928T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042320210326
64595555364 132 085614 820 1960T:refgcc_-mcpu=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
725936101192 232 081404 812 1928T:refclang_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042320210326
72691650324 116 078988 812 1928T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042320210326
72851350596 116 081404 812 1928T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042320210326
73401050324 116 078988 812 1928T:refclang_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042320210326
87354457092 132 087630 820 1960T:refgcc_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
112529030764 116 056262 804 1928T:refclang_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042320210326
120416628736 116 053670 804 1928T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042320210326
140066530764 116 056262 804 1928T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042320210326
170662337148 132 066027 820 1936T:refgcc_-mcpu=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
170793737148 132 066027 820 1936T:refgcc_-mcpu=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
174799138376 116 066235 820 1936T:refgcc_-mcpu=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
175305438376 116 066235 820 1936T:refgcc_-mcpu=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
175663837304 132 066231 820 1936T:refgcc_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
180153738336 116 066195 820 1936T:refgcc_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
188642929024 116 055355 812 1928T:refgcc_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
191530428736 116 053670 804 1928T:refclang_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2021042320210326
193429128980 116 055495 812 1928T:refgcc_-mcpu=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326
201635228980 116 055495 812 1928T:refgcc_-mcpu=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021042320210326

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
ntru_encrypt.c: ntru_encrypt.c:477:26: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
ntru_encrypt.c: ntru_encrypt.c:477:26: note: place parentheses around the assignment to silence this warning
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ( )
ntru_encrypt.c: ntru_encrypt.c:477:26: note: use '==' to turn this assignment into an equality comparison
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ==
ntru_encrypt.c: ntru_encrypt.c:493:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
ntru_encrypt.c: ntru_encrypt.c:493:22: note: place parentheses around the assignment to silence this warning
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ( )
ntru_encrypt.c: ntru_encrypt.c:493:22: note: use '==' to turn this assignment into an equality comparison
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ==
ntru_encrypt.c: 2 warnings generated.

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
ntru_encrypt.c: ntru_encrypt.c:477:26: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
ntru_encrypt.c: ntru_encrypt.c:477:26: note: place parentheses around the assignment to silence this warning
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ( )
ntru_encrypt.c: ntru_encrypt.c:477:26: note: use '==' to turn this assignment into an equality comparison
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ==
ntru_encrypt.c: ntru_encrypt.c:493:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
ntru_encrypt.c: ntru_encrypt.c:493:22: note: place parentheses around the assignment to silence this warning
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ( )
ntru_encrypt.c: ntru_encrypt.c:493:22: note: use '==' to turn this assignment into an equality comparison
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ==
ntru_encrypt.c: 2 warnings generated.
ntru_encrypt.c: ntru_encrypt.c:477:26: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
ntru_encrypt.c: ntru_encrypt.c:477:26: note: place parentheses around the assignment to silence this warning
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ( )
ntru_encrypt.c: ntru_encrypt.c:477:26: note: use '==' to turn this assignment into an equality comparison
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ==
ntru_encrypt.c: ntru_encrypt.c:493:22: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
ntru_encrypt.c: ntru_encrypt.c:493:22: note: place parentheses around the assignment to silence this warning
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ( )
ntru_encrypt.c: ntru_encrypt.c:493:22: note: use '==' to turn this assignment into an equality comparison
ntru_encrypt.c: if (ci_coeff = *chkR_ptr++ & 0x0001) {
ntru_encrypt.c: ^
ntru_encrypt.c: ==
ntru_encrypt.c: 2 warnings generated.

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
ntru_encrypt.c: ntru_encrypt.c: In function 'ntru_encrypt':
ntru_encrypt.c: ntru_encrypt.c:130:1: note: the layout of aggregates containing vectors with 2-byte alignment has changed in GCC 5
ntru_encrypt.c: 130 | ntru_encrypt(
ntru_encrypt.c: | ^~~~~~~~~~~~
ntru_encrypt_util.c: ntru_encrypt_util.c: In function 'ntru_sef_init':
ntru_encrypt_util.c: ntru_encrypt_util.c:143:1: note: the layout of aggregates containing vectors with 4-byte alignment has changed in GCC 5
ntru_encrypt_util.c: 143 | ntru_sef_init(
ntru_encrypt_util.c: | ^~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -mcpu=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -mcpu=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: clang -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
crypto_hash.o crypto_hash_block_length T
crypto_hash.o crypto_hash_digest T
crypto_hash.o crypto_hash_digest_length T
crypto_hash.o crypto_hash_final T
crypto_hash.o crypto_hash_final_zero_pad T
crypto_hash.o crypto_hash_init T
crypto_hash.o crypto_hash_set_alg T
crypto_hash.o crypto_hash_update T
crypto_msbyte_uint32.o crypto_msbyte_2_uint32 T
crypto_msbyte_uint32.o crypto_uint32_2_msbyte T
crypto_sha1.o crypto_sha1 T
crypto_sha1.o crypto_sha1_digest T
crypto_sha1.o crypto_sha1_final T
crypto_sha1.o crypto_sha1_final_zero_pad T
crypto_sha1.o crypto_sha1_init T
crypto_sha1.o crypto_sha1_update T
crypto_sha2.o crypto_sha2 T
crypto_sha256.o crypto_sha256_digest T
crypto_sha256.o crypto_sha256_final T
crypto_sha256.o crypto_sha256_final_zero_pad T
crypto_sha256.o crypto_sha256_init T
crypto_sha256.o crypto_sha256_update T
ebats.o copyrightclaims T
ebats.o patentclaims T
ebats.o shortciphertext T
ebats.o shortplaintext T
ntru_encrypt.o ntru_decrypt T
ntru_encrypt.o ntru_encrypt T
ntru_encrypt_keygen.o ntru_encrypt_keygen T
ntru_encrypt_param_sets.o get_params T
ntru_encrypt_util.o ntru_bvgm T
ntru_encrypt_util.o ntru_ring_mult T
ntru_encrypt_util.o ntru_sef T
ntru_encrypt_util.o ntru_sef_init T

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

Namespace violations

Implementation: T:ref
Security model: timingleaks
Compiler: clang -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
crypto_hash.o crypto_hash_block_length T
crypto_hash.o crypto_hash_block_length T
crypto_hash.o crypto_hash_digest T
crypto_hash.o crypto_hash_digest T
crypto_hash.o crypto_hash_digest_length T
crypto_hash.o crypto_hash_digest_length T
crypto_hash.o crypto_hash_final T
crypto_hash.o crypto_hash_final T
crypto_hash.o crypto_hash_final_zero_pad T
crypto_hash.o crypto_hash_final_zero_pad T
crypto_hash.o crypto_hash_init T
crypto_hash.o crypto_hash_init T
crypto_hash.o crypto_hash_set_alg T
crypto_hash.o crypto_hash_set_alg T
crypto_hash.o crypto_hash_update T
crypto_hash.o crypto_hash_update T
crypto_msbyte_uint32.o crypto_msbyte_2_uint32 T
crypto_msbyte_uint32.o crypto_msbyte_2_uint32 T
crypto_msbyte_uint32.o crypto_uint32_2_msbyte T
crypto_msbyte_uint32.o crypto_uint32_2_msbyte T
crypto_sha1.o crypto_sha1 T
crypto_sha1.o crypto_sha1 T
crypto_sha1.o crypto_sha1_digest T
crypto_sha1.o crypto_sha1_digest T
crypto_sha1.o crypto_sha1_final T
crypto_sha1.o crypto_sha1_final T
crypto_sha1.o crypto_sha1_final_zero_pad T
crypto_sha1.o crypto_sha1_final_zero_pad T
crypto_sha1.o crypto_sha1_init T
crypto_sha1.o crypto_sha1_init T
crypto_sha1.o crypto_sha1_update T
crypto_sha1.o crypto_sha1_update T
crypto_sha2.o crypto_sha2 T
crypto_sha2.o crypto_sha2 T
crypto_sha256.o crypto_sha256_digest T
crypto_sha256.o crypto_sha256_digest T
crypto_sha256.o crypto_sha256_final T
crypto_sha256.o crypto_sha256_final T
crypto_sha256.o crypto_sha256_final_zero_pad T
crypto_sha256.o crypto_sha256_final_zero_pad T
crypto_sha256.o crypto_sha256_init T
crypto_sha256.o crypto_sha256_init T
crypto_sha256.o crypto_sha256_update T
crypto_sha256.o crypto_sha256_update T
ebats.o copyrightclaims T
ebats.o copyrightclaims T
ebats.o patentclaims T
ebats.o patentclaims T
ebats.o shortciphertext T
ebats.o shortciphertext T
ebats.o shortplaintext T
ebats.o shortplaintext T
ntru_encrypt.o ntru_decrypt T
ntru_encrypt.o ntru_decrypt T
ntru_encrypt.o ntru_encrypt T
ntru_encrypt.o ntru_encrypt T
ntru_encrypt_keygen.o ntru_encrypt_keygen T
ntru_encrypt_keygen.o ntru_encrypt_keygen T
ntru_encrypt_param_sets.o get_params T
ntru_encrypt_param_sets.o get_params T
ntru_encrypt_util.o ntru_bvgm T
ntru_encrypt_util.o ntru_bvgm T
ntru_encrypt_util.o ntru_ring_mult T
ntru_encrypt_util.o ntru_ring_mult T
ntru_encrypt_util.o ntru_sef T
ntru_encrypt_util.o ntru_sef T
ntru_encrypt_util.o ntru_sef_init T
ntru_encrypt_util.o ntru_sef_init T

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