Implementation notes: aarch64, warbear0, crypto_aead/lakekeyakv1

Computer: warbear0
Architecture: aarch64
CPU ID: 411fd072
SUPERCOP version: 20200826
Operation: crypto_aead
Primitive: lakekeyakv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
34128118676 0 0136697 824 856T:opt64lcufullgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
34784127188 0 0147553 840 880T:opt64ufullgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
35120126092 0 0145345 840 864T:opt64ufullgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
3534456964 0 075001 824 856T:opt64lcu6gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
35472128028 0 0148401 840 880T:opt64lcufullgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
35616126908 0 0146177 840 864T:opt64lcufullgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
3611263556 0 083921 840 880T:opt64u6gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
3614464004 0 083257 840 864T:opt64u6gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
36160133464 0 0151489 824 856T:opt64ufullgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
3638464440 0 084809 840 880T:opt64lcu6gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
3640065028 0 084289 840 864T:opt64lcu6gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
36400124992 0 0144433 840 864T:opt64ufullgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
36640125872 0 0145305 840 864T:opt64lcufullgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
3664060836 0 078849 824 856T:opt64u6gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
3692862764 0 082193 840 864T:opt64u6gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
3752063632 0 083065 840 864T:opt64lcu6gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
10270413510 0 033849 832 880T:compact64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
11915223696 0 043097 832 864T:inplace32bigcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
12553623864 0 041841 816 856T:inplace32bigcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
13083234016 0 054369 832 880T:inplace32bigcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
13875229684 0 048889 832 864T:inplace32bigcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
14822419406 0 1239940 864 1192T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
22289610129 0 029353 832 864T:compact64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
2530889273 0 028681 832 864T:compact64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
2855048508 0 026481 816 856T:compact64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
49971211366 0 1230788 864 1176T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
5876009784 0 1227969 848 1168T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826
69868811082 0 1230684 864 1176T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020083020200826

Compiler output

Implementation: T:opt64lcufullshld
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s: Assembler messages:
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:448: Error: unknown mnemonic `shld' -- `shld 1,x17,x17'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:454: Error: unknown mnemonic `shld' -- `shld 1,x22,x22'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:465: Error: unknown mnemonic `shld' -- `shld 1,x18,x18'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:474: Error: unknown mnemonic `shld' -- `shld 1,x28,x28'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:496: Error: unknown mnemonic `shld' -- `shld 1,x16,x16'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:503: Error: unknown mnemonic `shld' -- `shld 21,x30,x30'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:514: Error: unknown mnemonic `shld' -- `shld 3,x7,x7'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:517: Error: unknown mnemonic `shld' -- `shld 45,x15,x15'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:520: Error: unknown mnemonic `shld' -- `shld 43,x27,x27'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:529: Error: unknown mnemonic `shld' -- `shld 61,x19,x19'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:536: Error: unknown mnemonic `shld' -- `shld 28,x25,x25'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:543: Error: unknown mnemonic `shld' -- `shld 20,x6,x6'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:551: Error: unknown mnemonic `shld' -- `shld 44,x1,x1'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:566: Error: unknown mnemonic `shld' -- `shld 1,x13,x13'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:569: Error: unknown mnemonic `shld' -- `shld 18,x10,x10'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:572: Error: unknown mnemonic `shld' -- `shld 25,x14,x14'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:575: Error: unknown mnemonic `shld' -- `shld 8,x8,x8'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:587: Error: unknown mnemonic `shld' -- `shld 6,x5,x5'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:596: Error: unknown mnemonic `shld' -- `shld 55,x20,x20'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:599: Error: unknown mnemonic `shld' -- `shld 62,x24,x24'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:602: Error: unknown mnemonic `shld' -- `shld 2,x0,x0'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:611: Error: unknown mnemonic `shld' -- `shld 39,x18,x18'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:614: Error: unknown mnemonic `shld' -- `shld 41,x26,x26'
KeccakF-1600-opt64.c: /tmp/ccsizaFN.s:624: Error: unknown mnemonic `shld' -- `shld 14,x2,x2'
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt64lcufullshld

Compiler output

Implementation: T:opt64lcufullshld
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s: Assembler messages:
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:659: Error: unknown mnemonic `shld' -- `shld 1,x17,x17'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:665: Error: unknown mnemonic `shld' -- `shld 1,x22,x22'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:676: Error: unknown mnemonic `shld' -- `shld 1,x18,x18'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:685: Error: unknown mnemonic `shld' -- `shld 1,x28,x28'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:707: Error: unknown mnemonic `shld' -- `shld 1,x16,x16'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:714: Error: unknown mnemonic `shld' -- `shld 21,x30,x30'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:725: Error: unknown mnemonic `shld' -- `shld 3,x7,x7'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:728: Error: unknown mnemonic `shld' -- `shld 45,x15,x15'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:731: Error: unknown mnemonic `shld' -- `shld 43,x27,x27'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:740: Error: unknown mnemonic `shld' -- `shld 61,x19,x19'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:747: Error: unknown mnemonic `shld' -- `shld 28,x25,x25'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:754: Error: unknown mnemonic `shld' -- `shld 20,x6,x6'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:762: Error: unknown mnemonic `shld' -- `shld 44,x1,x1'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:777: Error: unknown mnemonic `shld' -- `shld 1,x13,x13'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:780: Error: unknown mnemonic `shld' -- `shld 18,x10,x10'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:783: Error: unknown mnemonic `shld' -- `shld 25,x14,x14'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:786: Error: unknown mnemonic `shld' -- `shld 8,x8,x8'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:798: Error: unknown mnemonic `shld' -- `shld 6,x5,x5'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:807: Error: unknown mnemonic `shld' -- `shld 55,x20,x20'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:810: Error: unknown mnemonic `shld' -- `shld 62,x24,x24'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:813: Error: unknown mnemonic `shld' -- `shld 2,x0,x0'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:822: Error: unknown mnemonic `shld' -- `shld 39,x18,x18'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:825: Error: unknown mnemonic `shld' -- `shld 41,x26,x26'
KeccakF-1600-opt64.c: /tmp/ccnFcBNg.s:835: Error: unknown mnemonic `shld' -- `shld 14,x2,x2'
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt64lcufullshld

Compiler output

Implementation: T:opt64lcufullshld
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s: Assembler messages:
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:461: Error: unknown mnemonic `shld' -- `shld 1,x23,x23'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:468: Error: unknown mnemonic `shld' -- `shld 1,x6,x6'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:475: Error: unknown mnemonic `shld' -- `shld 1,x12,x12'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:481: Error: unknown mnemonic `shld' -- `shld 1,x25,x25'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:487: Error: unknown mnemonic `shld' -- `shld 1,x1,x1'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:495: Error: unknown mnemonic `shld' -- `shld 44,x3,x3'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:501: Error: unknown mnemonic `shld' -- `shld 43,x28,x28'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:507: Error: unknown mnemonic `shld' -- `shld 21,x15,x15'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:513: Error: unknown mnemonic `shld' -- `shld 14,x7,x7'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:532: Error: unknown mnemonic `shld' -- `shld 28,x17,x17'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:538: Error: unknown mnemonic `shld' -- `shld 20,x18,x18'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:544: Error: unknown mnemonic `shld' -- `shld 3,x22,x22'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:550: Error: unknown mnemonic `shld' -- `shld 45,x26,x26'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:557: Error: unknown mnemonic `shld' -- `shld 61,x5,x5'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:574: Error: unknown mnemonic `shld' -- `shld 1,x14,x14'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:580: Error: unknown mnemonic `shld' -- `shld 6,x4,x4'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:586: Error: unknown mnemonic `shld' -- `shld 25,x30,x30'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:592: Error: unknown mnemonic `shld' -- `shld 8,x27,x27'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:599: Error: unknown mnemonic `shld' -- `shld 18,x17,x17'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:615: Error: unknown mnemonic `shld' -- `shld 27,x16,x16'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:621: Error: unknown mnemonic `shld' -- `shld 36,x9,x9'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:627: Error: unknown mnemonic `shld' -- `shld 10,x13,x13'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:633: Error: unknown mnemonic `shld' -- `shld 15,x11,x11'
KeccakF-1600-opt64.c: /tmp/cc2fo6S8.s:640: Error: unknown mnemonic `shld' -- `shld 56,x5,x5'
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt64lcufullshld

Compiler output

Implementation: T:opt64lcufullshld
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s: Assembler messages:
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:410: Error: unknown mnemonic `shld' -- `shld 1,x23,x23'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:420: Error: unknown mnemonic `shld' -- `shld 1,x12,x12'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:434: Error: unknown mnemonic `shld' -- `shld 1,x25,x25'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:441: Error: unknown mnemonic `shld' -- `shld 43,x28,x28'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:448: Error: unknown mnemonic `shld' -- `shld 21,x15,x15'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:451: Error: unknown mnemonic `shld' -- `shld 1,x6,x6'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:458: Error: unknown mnemonic `shld' -- `shld 1,x1,x1'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:467: Error: unknown mnemonic `shld' -- `shld 14,x7,x7'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:470: Error: unknown mnemonic `shld' -- `shld 44,x3,x3'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:481: Error: unknown mnemonic `shld' -- `shld 20,x18,x18'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:484: Error: unknown mnemonic `shld' -- `shld 3,x22,x22'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:494: Error: unknown mnemonic `shld' -- `shld 28,x17,x17'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:506: Error: unknown mnemonic `shld' -- `shld 45,x26,x26'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:509: Error: unknown mnemonic `shld' -- `shld 61,x5,x5'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:520: Error: unknown mnemonic `shld' -- `shld 8,x27,x27'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:530: Error: unknown mnemonic `shld' -- `shld 18,x17,x17'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:537: Error: unknown mnemonic `shld' -- `shld 6,x4,x4'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:540: Error: unknown mnemonic `shld' -- `shld 1,x14,x14'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:543: Error: unknown mnemonic `shld' -- `shld 25,x30,x30'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:558: Error: unknown mnemonic `shld' -- `shld 15,x11,x11'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:561: Error: unknown mnemonic `shld' -- `shld 56,x5,x5'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:570: Error: unknown mnemonic `shld' -- `shld 27,x16,x16'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:573: Error: unknown mnemonic `shld' -- `shld 36,x9,x9'
KeccakF-1600-opt64.c: /tmp/cc6up2Xx.s:580: Error: unknown mnemonic `shld' -- `shld 10,x13,x13'
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt64lcufullshld

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
KeccakDuplex.c: In file included from KeccakDuplex.h:17,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute'; did you mean 'KeccakF1600_StatePermute'? [-Wimplicit-function-declaration]
KeccakDuplex.c: 53 | #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: 63 | KeccakF_StatePermute(instance->state);
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract'; did you mean 'KeccakF1600_StateXORPermuteExtract'? [-Wimplicit-function-declaration]
KeccakDuplex.c: 73 | #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakF-interface.h:73:40: note: in definition of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: 73 | #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

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