Implementation notes: x86, jos, crypto_stream/aes128ctr

Computer: jos
Architecture: x86
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_stream
Primitive: aes128ctr
TimeImplementationCompilerBenchmark dateSUPERCOP version
21705cryptoppg++ -m32 -march=pentium -O3 -fomit-frame-pointer2014070320140622
21727cryptoppg++ -m32 -march=k6-3 -O3 -fomit-frame-pointer2014070320140622
21727cryptoppg++ -m32 -march=pentium2 -O3 -fomit-frame-pointer2014070320140622
21727cryptoppg++ -m32 -march=pentium -O2 -fomit-frame-pointer2014070320140622
21728cryptoppg++ -m32 -march=barcelona -O2 -fomit-frame-pointer2014070320140622
21728cryptoppg++ -m32 -march=pentiumpro -O3 -fomit-frame-pointer2014070320140622
21750cryptoppg++ -m32 -march=barcelona -O3 -fomit-frame-pointer2014070320140622
21750cryptoppg++ -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2014070320140622
21750cryptoppg++ -m32 -march=pentium4 -O3 -fomit-frame-pointer2014070320140622
21757cryptoppg++ -m32 -march=prescott -O3 -fomit-frame-pointer2014070320140622
21758cryptoppg++ -m32 -march=k6-3 -O -fomit-frame-pointer2014070320140622
21758cryptoppg++ -m32 -march=prescott -O2 -fomit-frame-pointer2014070320140622
21765cryptoppg++ -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2014070320140622
21772cryptoppg++ -m32 -march=k6-2 -O -fomit-frame-pointer2014070320140622
21773cryptoppg++ -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014070320140622
21780cryptoppg++ -m32 -O2 -fomit-frame-pointer2014070320140622
21780cryptoppg++ -m32 -march=pentium3 -O -fomit-frame-pointer2014070320140622
21787cryptoppg++ -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2014070320140622
21787cryptoppg++ -m32 -march=pentium3 -O3 -fomit-frame-pointer2014070320140622
21788cryptoppg++ -m32 -march=k6 -O3 -fomit-frame-pointer2014070320140622
21788cryptoppg++ -m32 -march=pentium2 -O2 -fomit-frame-pointer2014070320140622
21795cryptoppg++ -m32 -O3 -fomit-frame-pointer2014070320140622
21795cryptoppg++ -m32 -march=athlon -O3 -fomit-frame-pointer2014070320140622
21795cryptoppg++ -m32 -march=i486 -O -fomit-frame-pointer2014070320140622
21795cryptoppg++ -m32 -march=nocona -O3 -fomit-frame-pointer2014070320140622
21795cryptoppg++ -m32 -march=pentium-m -O3 -fomit-frame-pointer2014070320140622
21802cryptoppg++ -m32 -march=core2 -O3 -fomit-frame-pointer2014070320140622
21803cryptoppg++ -m32 -march=core2 -O2 -fomit-frame-pointer2014070320140622
21803cryptoppg++ -m32 -march=pentium-m -O2 -fomit-frame-pointer2014070320140622
21810cryptoppg++ -m32 -march=pentium3 -O2 -fomit-frame-pointer2014070320140622
21818cryptoppg++ -m32 -march=pentium2 -O -fomit-frame-pointer2014070320140622
21825cryptoppg++ -m32 -march=athlon -O2 -fomit-frame-pointer2014070320140622
21825cryptoppg++ -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2014070320140622
21825cryptoppg++ -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2014070320140622
21825cryptoppg++ -m32 -march=i486 -O3 -fomit-frame-pointer2014070320140622
21825cryptoppg++ -m32 -march=k6-2 -O3 -fomit-frame-pointer2014070320140622
21825cryptoppg++ -m32 -march=k6 -O -fomit-frame-pointer2014070320140622
21825cryptoppg++ -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2014070320140622
21825cryptoppg++ -m32 -march=pentiumpro -O -fomit-frame-pointer2014070320140622
21833cryptoppg++ -m32 -march=prescott -O -fomit-frame-pointer2014070320140622
21840cryptoppg++ -m32 -march=k8 -O -fomit-frame-pointer2014070320140622
21840cryptoppg++ -m32 -march=nocona -O2 -fomit-frame-pointer2014070320140622
21847cryptoppg++ -m32 -march=k6 -O2 -fomit-frame-pointer2014070320140622
21847cryptoppg++ -m32 -march=native -mtune=native -O -fomit-frame-pointer2014070320140622
21848cryptoppg++ -m32 -march=k6-2 -O2 -fomit-frame-pointer2014070320140622
21855cryptoppg++ -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2014070320140622
21855cryptoppg++ -m32 -march=nocona -O -fomit-frame-pointer2014070320140622
21862cryptoppg++ -m32 -O -fomit-frame-pointer2014070320140622
21862cryptoppg++ -m32 -march=k8 -O2 -fomit-frame-pointer2014070320140622
21862cryptoppg++ -m32 -march=pentiumpro -O2 -fomit-frame-pointer2014070320140622
21863cryptoppg++ -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014070320140622
21863cryptoppg++ -m32 -march=pentium-m -O -fomit-frame-pointer2014070320140622
21877cryptoppg++ -m32 -march=i486 -O2 -fomit-frame-pointer2014070320140622
21878cryptoppg++ -m32 -march=k6-3 -O2 -fomit-frame-pointer2014070320140622
21892cryptoppg++ -m32 -march=k8 -O3 -fomit-frame-pointer2014070320140622
21907cryptoppg++ -m32 -march=pentium4 -O -fomit-frame-pointer2014070320140622
21930cryptoppg++ -m32 -march=athlon -O -fomit-frame-pointer2014070320140622
21952cryptoppg++ -m32 -march=core2 -msse4 -O -fomit-frame-pointer2014070320140622
21960cryptoppg++ -m32 -march=core2 -O -fomit-frame-pointer2014070320140622
21975cryptoppg++ -m32 -march=barcelona -O -fomit-frame-pointer2014070320140622
21990cryptoppg++ -m32 -march=pentium4 -O2 -fomit-frame-pointer2014070320140622
21998cryptoppg++ -m32 -march=pentium-mmx -O -fomit-frame-pointer2014070320140622
22087cryptoppg++ -m32 -march=pentiumpro -Os -fomit-frame-pointer2014070320140622
22095cryptoppg++ -m32 -march=pentium -O -fomit-frame-pointer2014070320140622
22133cryptoppg++ -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014070320140622
22140cryptoppg++ -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2014070320140622
22140cryptoppg++ -m32 -march=k6-3 -Os -fomit-frame-pointer2014070320140622
22140cryptoppg++ -m32 -march=prescott -Os -fomit-frame-pointer2014070320140622
22147cryptoppg++ -m32 -march=k6 -Os -fomit-frame-pointer2014070320140622
22147cryptoppg++ -m32 -march=k8 -Os -fomit-frame-pointer2014070320140622
22148cryptoppg++ -m32 -march=native -mtune=native -Os -fomit-frame-pointer2014070320140622
22163cryptoppg++ -m32 -march=pentium4 -Os -fomit-frame-pointer2014070320140622
22170cryptoppg++ -m32 -march=nocona -Os -fomit-frame-pointer2014070320140622
22177cryptoppg++ -m32 -march=core2 -Os -fomit-frame-pointer2014070320140622
22178cryptoppg++ -m32 -march=barcelona -Os -fomit-frame-pointer2014070320140622
22200cryptoppg++ -m32 -march=athlon -Os -fomit-frame-pointer2014070320140622
22223cryptoppg++ -m32 -march=i386 -Os -fomit-frame-pointer2014070320140622
22237cryptoppg++ -m32 -march=i486 -Os -fomit-frame-pointer2014070320140622
22245cryptoppg++ -m32 -march=pentium-mmx -Os -fomit-frame-pointer2014070320140622
22253cryptoppg++ -m32 -march=pentium3 -Os -fomit-frame-pointer2014070320140622
22260cryptoppg++ -m32 -Os -fomit-frame-pointer2014070320140622
22290cryptoppg++ -m32 -march=pentium-m -Os -fomit-frame-pointer2014070320140622
22350cryptoppg++ -m32 -march=pentium -Os -fomit-frame-pointer2014070320140622
22410cryptoppg++ -m32 -march=k6-2 -Os -fomit-frame-pointer2014070320140622
22568cryptoppg++ -m32 -march=pentium2 -Os -fomit-frame-pointer2014070320140622

Compiler output

Implementation: crypto_stream/aes128ctr/cryptopp
Compiler: g++ -m32 -march=i386 -O2 -fomit-frame-pointer
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::AdditiveCipherAbstractPolicy::CipherResynchronize(unsigned char*, unsigned char const*, unsigned int)':
try.cpp: stream.cpp:(.text._ZN8CryptoPP28AdditiveCipherAbstractPolicy19CipherResynchronizeEPhPKhj[CryptoPP::AdditiveCipherAbstractPolicy::CipherResynchronize(unsigned char*, unsigned char const*, unsigned int)]+0x90): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::RandomNumberGenerator::IncorporateEntropy(unsigned char const*, unsigned int)':
try.cpp: stream.cpp:(.text._ZN8CryptoPP21RandomNumberGenerator18IncorporateEntropyEPKhj[CryptoPP::RandomNumberGenerator::IncorporateEntropy(unsigned char const*, unsigned int)]+0x90): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::Exception::~Exception()':
try.cpp: stream.cpp:(.text._ZN8CryptoPP9ExceptionD2Ev[_ZN8CryptoPP9ExceptionD5Ev]+0x43): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::Clonable::Clone() const':
try.cpp: stream.cpp:(.text._ZNK8CryptoPP8Clonable5CloneEv[CryptoPP::Clonable::Clone() const]+0x90): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::InvalidArgument::~InvalidArgument()':
try.cpp: stream.cpp:(.text._ZN8CryptoPP15InvalidArgumentD2Ev[_ZN8CryptoPP15InvalidArgumentD5Ev]+0x43): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o):stream.cpp:(.text._ZN8CryptoPP28AdditiveCipherAbstractPolicy15SeekToIterationEy[CryptoPP::AdditiveCipherAbstractPolicy::SeekToIteration(unsigned long long)]+0xc7): more undefined references to `__sync_fetch_and_add_4' follow
try.cpp: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -m32 -march=i386 -O2 -fomit-frame-pointer cryptopp

Compiler output

Implementation: crypto_stream/aes128ctr/cryptopp
Compiler: g++ -m32 -march=i386 -O3 -fomit-frame-pointer
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::AdditiveCipherAbstractPolicy::CipherResynchronize(unsigned char*, unsigned char const*, unsigned int)':
try.cpp: stream.cpp:(.text._ZN8CryptoPP28AdditiveCipherAbstractPolicy19CipherResynchronizeEPhPKhj[CryptoPP::AdditiveCipherAbstractPolicy::CipherResynchronize(unsigned char*, unsigned char const*, unsigned int)]+0x90): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::RandomNumberGenerator::IncorporateEntropy(unsigned char const*, unsigned int)':
try.cpp: stream.cpp:(.text._ZN8CryptoPP21RandomNumberGenerator18IncorporateEntropyEPKhj[CryptoPP::RandomNumberGenerator::IncorporateEntropy(unsigned char const*, unsigned int)]+0x90): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::Exception::~Exception()':
try.cpp: stream.cpp:(.text._ZN8CryptoPP9ExceptionD2Ev[_ZN8CryptoPP9ExceptionD5Ev]+0x43): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::Clonable::Clone() const':
try.cpp: stream.cpp:(.text._ZNK8CryptoPP8Clonable5CloneEv[CryptoPP::Clonable::Clone() const]+0x90): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::StreamTransformation::Seek(unsigned long long)':
try.cpp: stream.cpp:(.text._ZN8CryptoPP20StreamTransformation4SeekEy[CryptoPP::StreamTransformation::Seek(unsigned long long)]+0xc7): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o):stream.cpp:(.text._ZN8CryptoPP15InvalidArgumentD0Ev[_ZN8CryptoPP15InvalidArgumentD5Ev]+0x4b): more undefined references to `__sync_fetch_and_add_4' follow
try.cpp: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -m32 -march=i386 -O3 -fomit-frame-pointer cryptopp

Compiler output

Implementation: crypto_stream/aes128ctr/cryptopp
Compiler: g++ -m32 -march=i386 -O -fomit-frame-pointer
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::RandomNumberGenerator::IncorporateEntropy(unsigned char const*, unsigned int)':
try.cpp: stream.cpp:(.text._ZN8CryptoPP21RandomNumberGenerator18IncorporateEntropyEPKhj[CryptoPP::RandomNumberGenerator::IncorporateEntropy(unsigned char const*, unsigned int)]+0xa0): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::Exception::~Exception()':
try.cpp: stream.cpp:(.text._ZN8CryptoPP9ExceptionD2Ev[_ZN8CryptoPP9ExceptionD5Ev]+0x35): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::Clonable::Clone() const':
try.cpp: stream.cpp:(.text._ZNK8CryptoPP8Clonable5CloneEv[CryptoPP::Clonable::Clone() const]+0xa0): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::AdditiveCipherAbstractPolicy::CipherResynchronize(unsigned char*, unsigned char const*, unsigned int)':
try.cpp: stream.cpp:(.text._ZN8CryptoPP28AdditiveCipherAbstractPolicy19CipherResynchronizeEPhPKhj[CryptoPP::AdditiveCipherAbstractPolicy::CipherResynchronize(unsigned char*, unsigned char const*, unsigned int)]+0xa0): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o): In function `CryptoPP::StreamTransformation::Seek(unsigned long long)':
try.cpp: stream.cpp:(.text._ZN8CryptoPP20StreamTransformation4SeekEy[CryptoPP::StreamTransformation::Seek(unsigned long long)]+0xd4): undefined reference to `__sync_fetch_and_add_4'
try.cpp: crypto_stream_aes128ctr.a(stream.o):stream.cpp:(.text._ZN8CryptoPP28AdditiveCipherAbstractPolicy15SeekToIterationEy[CryptoPP::AdditiveCipherAbstractPolicy::SeekToIteration(unsigned long long)]+0xd4): more undefined references to `__sync_fetch_and_add_4' follow
try.cpp: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -m32 -march=i386 -O -fomit-frame-pointer cryptopp