Implementation notes: armeabi, tinkerboard, crypto_hash/bmw512

Computer: tinkerboard
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20191221
Operation: crypto_hash
Primitive: bmw512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3167823992 0 043665 420 824sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
3201416864 0 036465 420 824optbgbeclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
3235629496 0 049329 420 824optbbeclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
3264629620 0 049457 420 824optabeclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
3451026416 0 034179 452 808optbbegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3470826208 0 034016 456 808optc04gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3489426316 0 034083 452 808optabegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3517112542 0 019484 448 808optbgbegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3537423296 0 030215 444 808optbbegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3544259924 0 079729 420 824optc02clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
3562444580 0 064377 420 824optc03clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
3581816450 0 023420 448 808sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3583426674 0 033644 448 808optc03gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3594518398 0 025364 448 808optc04gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3613218622 0 026432 456 808sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3637630136 0 049953 420 824optc04clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
3648651048 0 058856 456 808optc01gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3652646090 0 053060 448 808optc02gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3722659916 0 079721 420 824optc01clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
3753221968 0 029824 456 808sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3753623204 0 030127 444 808optabegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3774630694 0 038456 456 808optbgbegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3824046118 0 053084 448 808optc01gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
3904638548 0 046352 456 808optc03gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4105031748 0 040856 456 808optabegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4110918020 0 037713 420 824sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
4119060172 0 069280 456 808optc01gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4125431020 0 040128 456 808optc04gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4164645716 0 054824 456 808optc03gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4191127960 0 037072 456 808sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4197860132 0 069240 456 808optc02gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4272038340 0 047244 456 808optbgbegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4284451064 0 058872 456 808optc02gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4288037728 0 045536 456 808optbgbegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4319059776 0 067632 456 808optc02gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4333459816 0 067672 456 808optc01gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4362831480 0 039291 452 808optabegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4413331020 0 038872 456 808optc04gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4434431544 0 039355 452 808optbbegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4503031576 0 040688 456 808optbbegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4673210806 0 017780 448 808sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
4829012502 0 020320 456 808sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
5124914036 0 021896 456 808sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
5181810610 0 017580 448 808refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
5254614376 0 034129 420 824refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020010220191221
5426514836 0 023936 456 808refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
5445213640 0 021496 456 808refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
5485245572 0 053424 456 808optc03gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
5547812324 0 020128 456 808refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221
5989822472 0 031584 456 808sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020010220191221

Test failure

Implementation: arm/neon/SSEmap_v1
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
error 111
crypto_hash returns nonzero

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

Compiler output

Implementation: arm/neon/SSEmap_v1
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
Compress512.s: Compress512.s:23:2: error: invalid instruction
Compress512.s: fstmfdd sp!, {d8, d9, d10, d11, d12, d13, d14, d15}
Compress512.s: ^
Compress512.s: Compress512.s:1814:2: error: invalid instruction
Compress512.s: fldmfdd sp!, {d8, d9, d10, d11, d12, d13, d14, d15}
Compress512.s: ^

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE arm/neon/SSEmap_v1

Compiler output

Implementation: optc01
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.c: BlueMidnightWish.c:1326:86: warning: '&' within '^' [-Wbitwise-op-parentheses]
BlueMidnightWish.c: hashState256(state)->LastPart[LastByte] = hashState256(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1326:86: note: place parentheses around the '&' expression to silence this warning
BlueMidnightWish.c: hashState256(state)->LastPart[LastByte] = hashState256(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1360:86: warning: '&' within '^' [-Wbitwise-op-parentheses]
BlueMidnightWish.c: hashState512(state)->LastPart[LastByte] = hashState512(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:1360:86: note: place parentheses around the '&' expression to silence this warning
BlueMidnightWish.c: hashState512(state)->LastPart[LastByte] = hashState512(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc01 optc02

Compiler output

Implementation: optc03
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.c: BlueMidnightWish.c:688:84: warning: '&' within '^' [-Wbitwise-op-parentheses]
BlueMidnightWish.c: hashState512(state)->LastPart[LastByte] = hashState512(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:688:84: note: place parentheses around the '&' expression to silence this warning
BlueMidnightWish.c: hashState512(state)->LastPart[LastByte] = hashState512(state)->LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc03

Compiler output

Implementation: optc04
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.c: BlueMidnightWish.c:988:84: warning: '&' within '^' [-Wbitwise-op-parentheses]
BlueMidnightWish.c: hashState512_(state).LastPart[LastByte] = hashState512_(state).LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: BlueMidnightWish.c:988:84: note: place parentheses around the '&' expression to silence this warning
BlueMidnightWish.c: hashState512_(state).LastPart[LastByte] = hashState512_(state).LastPart[LastByte] & (0xff << (PadOnePosition + 1) )\
BlueMidnightWish.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BlueMidnightWish.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc04

Namespace violations

Implementation: optbgbe
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
bmw_large_speed.o bmw512_ctx2hash T
bmw_large_speed.o bmw512_init T
bmw_large_speed.o bmw512_lastBlock T
bmw_large_speed.o bmw512_nextBlock T
memxor.o memxor T

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optbgbe
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE optbgbe
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE optbgbe
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE optbgbe
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE optbgbe

Namespace violations

Implementation: optc01
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.o Final T
BlueMidnightWish.o Hash T
BlueMidnightWish.o Init T
BlueMidnightWish.o Update T
BlueMidnightWish.o i224p2 R
BlueMidnightWish.o i256p2 R
BlueMidnightWish.o i384p2 R
BlueMidnightWish.o i512p2 R

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc01
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc01
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc01
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE optc01
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE optc01
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc02
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc02
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc02
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE optc02
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE optc02

Namespace violations

Implementation: optc03
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.o Final T
BlueMidnightWish.o Hash T
BlueMidnightWish.o Init T
BlueMidnightWish.o Update T
BlueMidnightWish.o i512p2 R

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc03
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc03
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc03
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE optc03
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE optc03

Namespace violations

Implementation: optc04
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.o Hash T
BlueMidnightWish.o i512p2 R

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optc04
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc04
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE optc04
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE optc04
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE optc04

Namespace violations

Implementation: ref
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
BlueMidnightWish.o Compression256 T
BlueMidnightWish.o Compression512 T
BlueMidnightWish.o Final T
BlueMidnightWish.o Hash T
BlueMidnightWish.o Init T
BlueMidnightWish.o Update T
BlueMidnightWish.o expand32_1 T
BlueMidnightWish.o expand32_2 T
BlueMidnightWish.o expand64_1 T
BlueMidnightWish.o expand64_2 T
BlueMidnightWish.o i224p2 R
BlueMidnightWish.o i256p2 R
BlueMidnightWish.o i384p2 R
BlueMidnightWish.o i512p2 R

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref

Namespace violations

Implementation: sphlib
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
bmw.o sph_bmw224 T
bmw.o sph_bmw224_addbits_and_close T
bmw.o sph_bmw224_close T
bmw.o sph_bmw224_init T
bmw.o sph_bmw256 T
bmw.o sph_bmw256_addbits_and_close T
bmw.o sph_bmw256_close T
bmw.o sph_bmw256_init T
bmw.o sph_bmw384 T
bmw.o sph_bmw384_addbits_and_close T
bmw.o sph_bmw384_close T
bmw.o sph_bmw384_init T
bmw.o sph_bmw512 T
bmw.o sph_bmw512_addbits_and_close T
bmw.o sph_bmw512_close T
bmw.o sph_bmw512_init T

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