Implementation notes: amd64, panther, crypto_stream/amastrid

Computer: panther
Microarchitecture: amd64; Tiger Lake (806c1)
Architecture: amd64
CPU ID: GenuineIntel-000806c1-00-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_stream
Primitive: amastrid
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
5022518198 24 246235521 1628 3544T:refg++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
5071920694 24 235040134 1140 3352T:refclang++_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
5239220837 32 246241085 1652 3544T:refg++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
5309019557 24 235038974 1140 3352T:refclang++_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
5409918732 24 246236916 1652 3544T:refg++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
5545715984 24 235031760 1116 3352T:refclang++_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7901415592 24 235034821 1228 3320T:refclang++_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
8303811113 24 246226396 1076 3512T:refg++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625

Compiler output


Amastrid.cpp: Amastrid.cpp: In member function 'void Amastrid::Encrypt(unsigned int*)':
Amastrid.cpp: Amastrid.cpp:120:17: warning: 'pos2' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   120 |                 if (pos1 > pos2)
Amastrid.cpp:       |                 ^~
Amastrid.cpp: Amastrid.cpp: In member function 'void Amastrid::Decrypt(unsigned int*)':
Amastrid.cpp: Amastrid.cpp:253:17: warning: 'pos1temp' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   253 |                 if (pos1temp > pos2)
Amastrid.cpp:       |                 ^~
Amastrid.cpp: Amastrid.cpp:289:18: warning: 'pos2o' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   289 |             else if (pos1 == pos2o)
Amastrid.cpp:       |                  ^~
Amastrid.cpp: Amastrid.cpp:291:17: warning: 'pos1o' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   291 |                 if (pos2 == pos1o)
Amastrid.cpp:       |                 ^~

Number of similar (implementation,compiler) pairs: 2, namely:
ImplementationCompiler
T:refg++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refg++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


Amastrid.cpp: Amastrid.cpp: In member function 'void Amastrid::Encrypt(unsigned int*)':
Amastrid.cpp: Amastrid.cpp:122:61: warning: 'pos2' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   122 |                     Amastrid::ShiftRightRot(ar, _size, pos1 - pos2);
Amastrid.cpp:       |                                                        ~~~~~^~~~~~
Amastrid.cpp: Amastrid.cpp: In member function 'void Amastrid::Decrypt(unsigned int*)':
Amastrid.cpp: Amastrid.cpp:251:13: warning: 'pos1temp' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   251 |             if (pos1temp != pos2)
Amastrid.cpp:       |             ^~
Amastrid.cpp: Amastrid.cpp:289:18: warning: 'pos2o' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   289 |             else if (pos1 == pos2o)
Amastrid.cpp:       |                  ^~
Amastrid.cpp: Amastrid.cpp:291:17: warning: 'pos1o' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   291 |                 if (pos2 == pos1o)
Amastrid.cpp:       |                 ^~

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refg++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


Amastrid.cpp: Amastrid.cpp: In member function 'void Amastrid::Encrypt(unsigned int*)':
Amastrid.cpp: Amastrid.cpp:126:60: warning: 'pos2' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   126 |                     Amastrid::ShiftLeftRot(ar, _size, pos2 - pos1);
Amastrid.cpp:       |                                                       ~~~~~^~~~~~
Amastrid.cpp: Amastrid.cpp: In member function 'void Amastrid::Decrypt(unsigned int*)':
Amastrid.cpp: Amastrid.cpp:251:13: warning: 'pos1temp' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   251 |             if (pos1temp != pos2)
Amastrid.cpp:       |             ^~
Amastrid.cpp: Amastrid.cpp:289:18: warning: 'pos2o' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   289 |             else if (pos1 == pos2o)
Amastrid.cpp:       |                  ^~
Amastrid.cpp: Amastrid.cpp:291:17: warning: 'pos1o' may be used uninitialized in this function [-Wmaybe-uninitialized]
Amastrid.cpp:   291 |                 if (pos2 == pos1o)
Amastrid.cpp:       |                 ^~

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refg++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)