Implementation notes: amd64, pascalinspiron75062n1, crypto_hash/echo256

Computer: pascalinspiron75062n1
Architecture: amd64
CPU ID: GenuineIntel-000806c1-bfebfbff
SUPERCOP version: 20210125
Operation: crypto_hash
Primitive: echo256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
49298430 0 022672 804 944T:ccalik/aesnigcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
51136944 0 018952 804 944T:ccalik/aesnigcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
79366294 0 016851 780 912T:ccalik/aesnigcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
85126767 0 018392 804 944T:ccalik/aesnigcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
3531319712 0 031720 804 944T:ccalik/vpermgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
4261932319 0 046632 804 944T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
4557620470 0 132128 804 976T:generic/opt64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
463549708 0 020379 780 912T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
5442723086 0 037328 804 944T:ccalik/vpermgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
5592220341 0 031960 804 944T:ccalik/vpermgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
5667418685 0 1630447 812 976T:generic/opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
6183119754 0 030299 780 912T:ccalik/vpermgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
6504814231 0 028584 804 944T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
6638014992 0 027000 804 944T:ccalik/bitslicedgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
6892916558 0 030800 804 944T:ccalik/bitslicedgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
6946114486 0 026104 804 944T:ccalik/bitslicedgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
7202213996 0 024555 780 912T:ccalik/bitslicedgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
7364311194 0 023312 804 944T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
7613521744 0 136000 804 976T:generic/opt64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
7689823320 0 1637687 812 976T:generic/opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
7853725828 0 1636522 788 944T:powerpc/pp32cv2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
7862929394 0 041496 804 944T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
8085828832 0 040552 804 944T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
8268120384 0 132424 804 976T:generic/opt64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
8520228151 0 038795 780 912T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
8542120983 0 131563 780 944T:generic/opt64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
8889618590 0 1629274 788 944T:generic/opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
9148110725 0 022464 804 944T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
10161419608 0 1631759 812 976T:generic/opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
14241828760 0 1640911 812 976T:powerpc/pp32cv2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
14880433064 0 1647431 812 976T:powerpc/pp32cv2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
15028321560 0 1635927 812 976T:powerpc/pp32cv1gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
15201118248 0 1630399 812 976T:powerpc/pp32cv1gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
15816916814 0 1627498 788 944T:powerpc/pp32cv1gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
16274017883 0 1629647 812 976T:powerpc/pp32cv1gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125
17330627804 0 1639567 812 976T:powerpc/pp32cv2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021052120210125

Compiler output

Implementation: T:aes/aes64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_hash_echo256.a(echo64.o): relocation R_X86_64_32S against symbol `OLDCV' can not be used when making a PIE object; recompile with -fPIE
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aes/aes64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aes/aes64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aes/aes64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:aes/aes64

Compiler output

Implementation: T:athlon/athlon64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
echo64.S: echo64.c: Assembler messages:
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,ah'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,al'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,bl'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,bh'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,al'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,ah'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,bh'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,bl'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,ah'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,al'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,bl'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,bh'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,al'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,ah'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,bl'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,bh'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,dl'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,dh'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,ch'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,cl'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,cl'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,ch'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl ebp,dh'
echo64.S: echo64.c:519: Error: no such instruction: `movzbl esi,dl'
echo64.S: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:athlon/athlon64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:athlon/athlon64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:athlon/athlon64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:athlon/athlon64

Compiler output

Implementation: T:core2/core2v64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
echo64.S: echo64.c: Assembler messages:
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,ah'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,al'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,bl'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,bh'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,al'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,ah'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,bh'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,bl'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,ah'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,al'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,bl'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,bh'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,al'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,ah'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,bl'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,bh'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,dl'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,dh'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,ch'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,cl'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,cl'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,ch'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl ebp,dh'
echo64.S: echo64.c:473: Error: no such instruction: `movzbl esi,dl'
echo64.S: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core2/core2v64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core2/core2v64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core2/core2v64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:core2/core2v64

Compiler output

Implementation: T:generic/opt64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
echo64.c: echo64.c: In function 'crypto_hash_echo256_generic_opt64_timingleaks':
echo64.c: echo64.c:501:29: warning: passing argument 2 of 'Hash' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
echo64.c: 501 | if (Hash(CRYPTO_BYTES * 8,in,inlen * 8,out) == SUCCESS) return 0;
echo64.c: | ^~
echo64.c: echo64.c:488:46: note: expected 'BitSequence *' {aka 'unsigned char *'} but argument is of type 'const unsigned char *'
echo64.c: 488 | HashReturn Hash(int hashbitlen, BitSequence *data, DataLength databitlen, BitSequence *hashval)
echo64.c: | ~~~~~~~~~~~~~^~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt64

Compiler output

Implementation: T:pentium/pentium4v64v1
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_hash_echo256.a(echo32.o): relocation R_X86_64_32S against symbol `SHA3_R' can not be used when making a PIE object; recompile with -fPIE
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:pentium/pentium4v64v1
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:pentium/pentium4v64v1
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:pentium/pentium4v64v1
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:pentium/pentium4v64v1

Compiler output

Implementation: T:pentium/pentium4v64v2
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: crypto_hash_echo256.a(echo64.o): relocation R_X86_64_32S against symbol `SHA3_R' can not be used when making a PIE object; recompile with -fPIE
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:pentium/pentium4v64v2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:pentium/pentium4v64v2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:pentium/pentium4v64v2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:pentium/pentium4v64v2

Namespace violations

Implementation: T:ccalik/aesni
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.o Compress T
hash.o Final T
hash.o Hash T
hash.o Init T
hash.o Update T
hash.o _k_aesmix1 R
hash.o _k_aesmix2 R
hash.o _k_aesmix3 R
hash.o _k_aesmix4 R
hash.o _k_h0e R
hash.o _k_h15 R
hash.o _k_h4e R
hash.o _k_h5b R
hash.o _k_h63 R
hash.o _k_hc6 R
hash.o _k_inv R
hash.o _k_ipt R
hash.o _k_opt R
hash.o _k_s0F R
hash.o _k_sb1 R
hash.o _k_sb2 R
hash.o _k_sb3 R
hash.o _k_sb4 R
hash.o _k_sb5 R
hash.o _k_sb7 R
hash.o _k_sbo R
hash.o const1 R
hash.o invshiftrows R
hash.o lsbmask R
hash.o mul2ipt R
hash.o mul2mask R
hash.o zero R

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/aesni
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/aesni
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/aesni
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/aesni
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/vperm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/vperm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/vperm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/vperm

Namespace violations

Implementation: T:ccalik/bitsliced
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.o Compress T
hash.o Final T
hash.o Hash T
hash.o Init T
hash.o Update T
hash.o _BS0 R
hash.o _BS1 R
hash.o _BS2 R
hash.o _ONE R
hash.o bigshiftrows1 R
hash.o bigshiftrows2 R
hash.o bigshiftrows3 R
hash.o const1 R
hash.o lownibblemask R
hash.o mixcol1 R
hash.o mixcol2 R
hash.o mixcol3 R
hash.o shiftrowsslice R

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/bitsliced
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/bitsliced
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/bitsliced
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ccalik/bitsliced

Namespace violations

Implementation: T:generic/opt32
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
echo32.o CNT_r B
echo32.o Compress T
echo32.o Endianess T
echo32.o Final T
echo32.o Hash T
echo32.o Init T
echo32.o PushString T
echo32.o Update T
echo32.o endian B
echo32.o flip_bits T
echo32.o r B

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt32
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt32
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt32
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt32
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:powerpc/pp32cv1
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:powerpc/pp32cv1
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:powerpc/pp32cv1
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:powerpc/pp32cv1
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:powerpc/pp32cv2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:powerpc/pp32cv2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:powerpc/pp32cv2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:powerpc/pp32cv2

Namespace violations

Implementation: T:generic/opt64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
echo64.o Compress T
echo64.o Endianess T
echo64.o Final T
echo64.o Hash T
echo64.o Init T
echo64.o PushString T
echo64.o Update T
echo64.o endian B

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:generic/opt64

Namespace violations

Implementation: T:sphlib
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
echo.o sph_echo224 T
echo.o sph_echo224_addbits_and_close T
echo.o sph_echo224_close T
echo.o sph_echo224_init T
echo.o sph_echo256 T
echo.o sph_echo256_addbits_and_close T
echo.o sph_echo256_close T
echo.o sph_echo256_init T
echo.o sph_echo384 T
echo.o sph_echo384_addbits_and_close T
echo.o sph_echo384_close T
echo.o sph_echo384_init T
echo.o sph_echo512 T
echo.o sph_echo512_addbits_and_close T
echo.o sph_echo512_close T
echo.o sph_echo512_init T

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib-small
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib-small
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib-small
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:sphlib-small