Implementation notes: aarch64, pi3aplus, crypto_aead/trivia0v1

Computer: pi3aplus
Microarchitecture: aarch64; Cortex-A53 (410fd034)
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20240716
Operation: crypto_aead
Primitive: trivia0v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3136257972 0 021757 768 856T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072220240716
3273609080 0 022664 864 864T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072220240716
3729694400 0 016639 856 848T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072220240716
8091324180 0 016671 856 848T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072220240716
12688683552 0 015023 840 840T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072220240716

Compiler output


encrypt.c: encrypt.c:52:13: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c: {int i; u64 temp,
encrypt.c:             ^
encrypt.c: encrypt.c:58:13: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c: {int i; u32 temp,
encrypt.c:             ^
encrypt.c: encrypt.c:123:12: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
encrypt.c:         if((a>>31)&1==1) result = result^(CONST_alpha_32);
encrypt.c:                   ^~~~~
encrypt.c: encrypt.c:123:12: note: place parentheses around the '==' expression to silence this warning
encrypt.c:         if((a>>31)&1==1) result = result^(CONST_alpha_32);
encrypt.c:                   ^
encrypt.c:                    (   )
encrypt.c: encrypt.c:123:12: note: place parentheses around the & expression to evaluate it first
encrypt.c:         if((a>>31)&1==1) result = result^(CONST_alpha_32);
encrypt.c:                   ^
encrypt.c:            (        )
encrypt.c: encrypt.c:148:12: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
encrypt.c:         if((b>>63)&1==1) result = result^(CONST_beta_64);
encrypt.c:                   ^~~~~
encrypt.c: encrypt.c:148:12: note: place parentheses around the '==' expression to silence this warning
encrypt.c:         if((b>>63)&1==1) result = result^(CONST_beta_64);
encrypt.c:                   ^
encrypt.c:                    (   )
encrypt.c: encrypt.c:148:12: note: place parentheses around the & expression to evaluate it first
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


encrypt.c: encrypt.c: In function 'load64':
encrypt.c: encrypt.c:52:13: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:  {int i; u64 temp,
encrypt.c:              ^~~~
encrypt.c: encrypt.c: In function 'load32':
encrypt.c: encrypt.c:58:13: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:  {int i; u32 temp,
encrypt.c:              ^~~~
encrypt.c: encrypt.c: In function 'Mult_by_alpha_power':
encrypt.c: encrypt.c:123:12: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
encrypt.c:   if((a>>31)&1==1) result = result^(CONST_alpha_32);
encrypt.c:             ^
encrypt.c: encrypt.c: In function 'Mult_by_beta_power':
encrypt.c: encrypt.c:148:12: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
encrypt.c:   if((b>>63)&1==1) result = result^(CONST_beta_64);
encrypt.c:             ^
encrypt.c: encrypt.c: In function 'Field_Mult_32':
encrypt.c: encrypt.c:183:8: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
encrypt.c:     if(b&1==1) result=a;
encrypt.c:         ^
encrypt.c: encrypt.c:189:6: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
encrypt.c:   if(b&1==1) result=result^a;
encrypt.c:       ^
encrypt.c: encrypt.c: In function 'Initialize_process_AD_Reinitialize':
encrypt.c: encrypt.c:236:7: warning: unused variable 'FINISH' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)

Namespace violations


encrypt.o Field_Mult_32 T
encrypt.o Initialize_process_AD_Reinitialize T
encrypt.o Key_Ext64 T
encrypt.o Mult_by_alpha_power T
encrypt.o Mult_by_beta_power T
encrypt.o Reverse_32 T
encrypt.o SC_Update64 T
encrypt.o V_Horner_32 T
encrypt.o V_Horner_64 T
encrypt.o insert_SC T
encrypt.o load32 T
encrypt.o load64 T
encrypt.o load_SC T
encrypt.o pad T
encrypt.o process_block T

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)