Implementation notes: amd64, saber214, crypto_aead/morus1280128v2

Computer: saber214
Microarchitecture: amd64; Bulldozer (600f20)
Architecture: amd64
CPU ID: AuthenticAMD-00600f20-1789c3f5
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: morus1280128v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
72395936 0 018910 808 856T:sse2clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
72548855 0 023452 816 856T:sse2clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
72578903 0 025892 816 872T:sse2clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
78399549 0 022892 816 856T:sse2clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
830312123 0 027988 816 856T:sse2clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
100488592 0 024757 784 928T:sse2gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
1770314958 0 031141 784 928T:ref64gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
1771014958 0 031141 784 928T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
270695527 0 018704 760 896T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
272425527 0 018704 760 896T:ref64gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
276295966 0 020693 784 928T:ref64gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
276436242 0 020948 816 856T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
277066242 0 020948 816 856T:ref64clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
278406242 0 023340 816 872T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
279335966 0 020693 784 928T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
282115178 0 018214 808 856T:ref64clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
282556242 0 023340 816 872T:ref64clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
282835178 0 018214 808 856T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
284756778 0 022748 816 856T:ref64clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
285115873 0 020276 776 928T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
286695873 0 020276 776 928T:ref64gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
287136778 0 022748 816 856T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
314687179 0 020644 816 856T:ref64clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
315807179 0 020644 816 856T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625

Compiler output


encrypt.c: encrypt.c:55:13: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
encrypt.c:         state[0] = XOR256(state[0], state[3]);
encrypt.c:                    ^
encrypt.c: encrypt.c:25:27: note: expanded from macro 'XOR256'
encrypt.c: #define XOR256(x,y)       _mm256_xor_si256((x),(y))        /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
encrypt.c:                           ^
encrypt.c: encrypt.c:56:30: error: always_inline function '_mm256_and_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
encrypt.c:         state[0] = XOR256(state[0], AND256(state[1], state[2]));
encrypt.c:                                     ^
encrypt.c: encrypt.c:26:27: note: expanded from macro 'AND256'
encrypt.c: #define AND256(x,y)       _mm256_and_si256((x),(y))        /*AND(x,y) = x & y, where x and y are two 256-bit word*/
encrypt.c:                           ^
encrypt.c: encrypt.c:56:13: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
encrypt.c:         state[0] = XOR256(state[0], AND256(state[1], state[2]));
encrypt.c:                    ^
encrypt.c: encrypt.c:25:27: note: expanded from macro 'XOR256'
encrypt.c: #define XOR256(x,y)       _mm256_xor_si256((x),(y))        /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
encrypt.c:                           ^
encrypt.c: encrypt.c:57:13: error: always_inline function '_mm256_slli_epi64' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
encrypt.c:         state[0] = ROTL256(state[0], n1);
encrypt.c:                    ^
encrypt.c: encrypt.c:39:34: note: expanded from macro 'ROTL256'
encrypt.c: #define ROTL256(x,n)      OR256( _mm256_slli_epi64((x), (n)), _mm256_srli_epi64((x),(64-n)) )   /*Rotate 4 64-bit unsigned integers in x to the left by n-bit positions*/
encrypt.c:                                  ^
encrypt.c: encrypt.c:57:13: error: always_inline function '_mm256_srli_epi64' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:avx2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c:55:13: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
encrypt.c:         state[0] = XOR256(state[0], state[3]);
encrypt.c:                    ^
encrypt.c: encrypt.c:25:27: note: expanded from macro 'XOR256'
encrypt.c: #define XOR256(x,y)       _mm256_xor_si256((x),(y))        /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
encrypt.c:                           ^
encrypt.c: encrypt.c:55:13: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
encrypt.c: encrypt.c:25:27: note: expanded from macro 'XOR256'
encrypt.c: #define XOR256(x,y)       _mm256_xor_si256((x),(y))        /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
encrypt.c:                           ^
encrypt.c: encrypt.c:56:30: error: always_inline function '_mm256_and_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
encrypt.c:         state[0] = XOR256(state[0], AND256(state[1], state[2]));
encrypt.c:                                     ^
encrypt.c: encrypt.c:26:27: note: expanded from macro 'AND256'
encrypt.c: #define AND256(x,y)       _mm256_and_si256((x),(y))        /*AND(x,y) = x & y, where x and y are two 256-bit word*/
encrypt.c:                           ^
encrypt.c: encrypt.c:56:30: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
encrypt.c: encrypt.c:26:27: note: expanded from macro 'AND256'
encrypt.c: #define AND256(x,y)       _mm256_and_si256((x),(y))        /*AND(x,y) = x & y, where x and y are two 256-bit word*/
encrypt.c:                           ^
encrypt.c: encrypt.c:56:13: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
encrypt.c:         state[0] = XOR256(state[0], AND256(state[1], state[2]));
encrypt.c:                    ^
encrypt.c: encrypt.c:25:27: note: expanded from macro 'XOR256'
encrypt.c: #define XOR256(x,y)       _mm256_xor_si256((x),(y))        /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:avx2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_morus1280128v2_avx2_timingleaks_encrypt':
encrypt.c: encrypt.c:309:31: warning: unused variable 'j' [-Wunused-variable]
encrypt.c:   309 |         unsigned long long i, j;
encrypt.c:       |                               ^
encrypt.c: encrypt.c: In function 'crypto_aead_morus1280128v2_avx2_timingleaks_decrypt':
encrypt.c: encrypt.c:360:23: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:   360 |         unsigned char check = 0;
encrypt.c:       |                       ^~~~~
encrypt.c: encrypt.c:359:23: warning: unused variable 'tag' [-Wunused-variable]
encrypt.c:   359 |         unsigned char tag[16];
encrypt.c:       |                       ^~~
encrypt.c: encrypt.c:357:31: warning: unused variable 'j' [-Wunused-variable]
encrypt.c:   357 |         unsigned long long i, j;
encrypt.c:       |                               ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
encrypt.c:                  from encrypt.c:2:
encrypt.c: encrypt.c: In function 'morus_enc_aut_step':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:1071:1: error: inlining failed in call to 'always_inline' '_mm256_permute4x64_epi64': target specific option mismatch
encrypt.c:  1071 | _mm256_permute4x64_epi64 (__m256i __X, const int __M)
encrypt.c:       | ^~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:41:27: note: called from here
encrypt.c:    41 | #define ROTL256_64(x)     _mm256_permute4x64_epi64((x), _MM_SHUFFLE(2,1,0,3))  /*Rotate x by 64-bit  positions to the left*/
encrypt.c:       |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:207:20: note: in expansion of macro 'ROTL256_64'
encrypt.c:   207 |         state[2] = ROTL256_64(state[2]);
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:avx2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:avx2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:avx2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:avx2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


encrypt.c: encrypt.c:370:10: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:         uint8_t check = 0;
encrypt.c:                 ^
encrypt.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_morus1280128v2_ref_timingleaks_decrypt':
encrypt.c: encrypt.c:370:17: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:   370 |         uint8_t check = 0;
encrypt.c:       |                 ^~~~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


encrypt.c: encrypt.c:318:10: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:         uint8_t check = 0;
encrypt.c:                 ^
encrypt.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:ref64clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ref64clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ref64clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ref64clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:ref64clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_morus1280128v2_ref64_timingleaks_decrypt':
encrypt.c: encrypt.c:318:17: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:   318 |         uint8_t check = 0;
encrypt.c:       |                 ^~~~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:ref64gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ref64gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ref64gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:ref64gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


encrypt.c: encrypt.c:366:10: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:         uint8_t check = 0;
encrypt.c:                 ^
encrypt.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:sse2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:sse2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:sse2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:sse2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:sse2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_morus1280128v2_sse2_timingleaks_decrypt':
encrypt.c: encrypt.c:366:17: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:   366 |         uint8_t check = 0;
encrypt.c:       |                 ^~~~~
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_initialization':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:98: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_initialization_key_256':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:118: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_tag_generation':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:141: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_tag_verification':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:176: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_enc_aut_partialblock':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:271: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o):.../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:303: more undefined references to `morus_stateupdate' follow
try.c: collect2: error: ld returned 1 exit status

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:sse2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_morus1280128v2_sse2_timingleaks_decrypt':
encrypt.c: encrypt.c:366:17: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:   366 |         uint8_t check = 0;
encrypt.c:       |                 ^~~~~

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:sse2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_morus1280128v2_sse2_timingleaks_decrypt':
encrypt.c: encrypt.c:366:17: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:   366 |         uint8_t check = 0;
encrypt.c:       |                 ^~~~~
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_initialization':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:98: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_initialization_key_256':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:118: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_tag_generation':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:141: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_tag_verification':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:176: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_enc_aut_partialblock':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:271: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o):.../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:303: more undefined references to `morus_stateupdate' follow
try.c: collect2: error: ld returned 1 exit status

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

Compiler output


encrypt.c: encrypt.c: In function 'crypto_aead_morus1280128v2_sse2_timingleaks_decrypt':
encrypt.c: encrypt.c:366:17: warning: unused variable 'check' [-Wunused-variable]
encrypt.c:   366 |         uint8_t check = 0;
encrypt.c:       |                 ^~~~~
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_initialization':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:98: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_initialization_key_256':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:118: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_tag_generation':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:141: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_tag_verification':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:176: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `morus_enc_aut_partialblock':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:271: undefined reference to `morus_stateupdate'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o):.../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:303: more undefined references to `morus_stateupdate' follow
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `crypto_aead_morus1280128v2_sse2_timingleaks_encrypt':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:328: undefined reference to `morus_enc_aut_step'
try.c: /usr/bin/ld: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:339: undefined reference to `morus_enc_aut_step'
try.c: /usr/bin/ld: libcrypto_aead_morus1280128v2.a(encrypt.o): in function `crypto_aead_morus1280128v2_sse2_timingleaks_decrypt':
try.c: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:373: undefined reference to `morus_enc_aut_step'
try.c: /usr/bin/ld: .../supercop-data/saber214/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_aead/morus1280128v2/sse2/work/encrypt.c:385: undefined reference to `morus_dec_aut_step'
try.c: collect2: error: ld returned 1 exit status

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