Implementation notes: amd64, speed2supercop, crypto_aead/trivia0v1

Computer: speed2supercop
Microarchitecture: amd64; Haswell+AES (306c3)
Architecture: amd64
CPU ID: GenuineIntel-000306c3-1fc9cbf5
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: trivia0v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
16135211871 0 027982 792 856T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
16248012754 0 030278 792 872T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
1881048475 0 025742 792 872T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
2192366170 0 019566 792 856T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
2199928690 0 024477 752 928T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
2244004543 0 018735 784 920T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
2323205597 0 019389 752 928T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
3220884196 0 017700 744 928T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625
7391043565 0 015864 728 896T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070320240625

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: 5, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))

Compiler output


encrypt.c: encrypt.c: In function 'load64':
encrypt.c: encrypt.c:52:13: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:    52 | {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:    58 | {int i; u32 temp,
encrypt.c:       |             ^~~~
encrypt.c: encrypt.c: In function 'Mult_by_alpha_power':
encrypt.c: encrypt.c:123:19: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
encrypt.c:   123 |         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:19: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
encrypt.c:   148 |         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:   183 |    if(b&1==1) result=a;
encrypt.c:       |        ^
encrypt.c: encrypt.c:189:13: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
encrypt.c:   189 |         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 (13.3.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)