Implementation notes: amd64, hydra7, crypto_sign/dilithium2aes

Computer: hydra7
Microarchitecture: amd64; Sandy Bridge+AES (206a7)
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_sign
Primitive: dilithium2aes
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
384061625368 0 043341 812 1792T!!!refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
509071623334 0 040229 804 1760T!!!refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625

Compiler output


poly.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
poly.c:                  from poly.c:2:
poly.c: poly.c: In function 'crypto_sign_dilithium2aes_avx2_constbranchindex_poly_reduce':
poly.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:815:1: error: inlining failed in call to 'always_inline' '_mm256_sub_epi32': target specific option mismatch
poly.c:   815 | _mm256_sub_epi32 (__m256i __A, __m256i __B)
poly.c:       | ^~~~~~~~~~~~~~~~
poly.c: poly.c:53:9: note: called from here
poly.c:    53 |     f = _mm256_sub_epi32(f,g);
poly.c:       |         ^~~~~~~~~~~~~~~~~~~~~
poly.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
poly.c:                  from poly.c:2:
poly.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:560:1: error: inlining failed in call to 'always_inline' '_mm256_mullo_epi32': target specific option mismatch
poly.c:   560 | _mm256_mullo_epi32 (__m256i __A, __m256i __B)
poly.c:       | ^~~~~~~~~~~~~~~~~~
poly.c: poly.c:52:9: note: called from here
poly.c:    52 |     g = _mm256_mullo_epi32(g,q);
poly.c:       |         ^~~~~~~~~~~~~~~~~~~~~~~
poly.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
poly.c:                  from poly.c:2:
poly.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:724:1: error: inlining failed in call to 'always_inline' '_mm256_srai_epi32': target specific option mismatch
poly.c:   724 | _mm256_srai_epi32 (__m256i __A, int __B)
poly.c:       | ^~~~~~~~~~~~~~~~~
poly.c: poly.c:51:9: note: called from here
poly.c:    51 |     g = _mm256_srai_epi32(g,23);
poly.c:       |         ^~~~~~~~~~~~~~~~~~~~~~~
poly.c: ...

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

Compiler output


aes256ctr.c: aes256ctr.c:557:64: warning: argument 3 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   557 | void aes256ctr_prf(uint8_t *out, size_t outlen, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                                 ~~~~~~~~~~~~~~~^~~
aes256ctr.c: In file included from aes256ctr.c:27:
aes256ctr.c: aes256ctr.h:21:34: note: previously declared as an array 'const uint8_t[32]' {aka 'const unsigned char[32]'}
aes256ctr.c:    21 |                    const uint8_t key[32],
aes256ctr.c:       |                    ~~~~~~~~~~~~~~^~~~~~~
aes256ctr.c: aes256ctr.c:557:84: warning: argument 4 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   557 | void aes256ctr_prf(uint8_t *out, size_t outlen, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                                                     ~~~~~~~~~~~~~~~^~~~~
aes256ctr.c: In file included from aes256ctr.c:27:
aes256ctr.c: aes256ctr.h:22:34: note: previously declared as an array 'const uint8_t[12]' {aka 'const unsigned char[12]'}
aes256ctr.c:    22 |                    const uint8_t nonce[12]);
aes256ctr.c:       |                    ~~~~~~~~~~~~~~^~~~~~~~~
aes256ctr.c: aes256ctr.c:565:54: warning: argument 2 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   565 | void aes256ctr_init(aes256ctr_ctx *s, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                       ~~~~~~~~~~~~~~~^~~
aes256ctr.c: In file included from aes256ctr.c:27:
aes256ctr.c: aes256ctr.h:26:35: note: previously declared as an array 'const uint8_t[32]' {aka 'const unsigned char[32]'}
aes256ctr.c:    26 |                     const uint8_t key[32],
aes256ctr.c:       |                     ~~~~~~~~~~~~~~^~~~~~~
aes256ctr.c: aes256ctr.c:565:74: warning: argument 3 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   565 | void aes256ctr_init(aes256ctr_ctx *s, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                                           ~~~~~~~~~~~~~~~^~~~~
aes256ctr.c: In file included from aes256ctr.c:27:
aes256ctr.c: ...

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

Compiler output


aes256ctr.c: aes256ctr.c:557:64: warning: argument 3 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   557 | void aes256ctr_prf(uint8_t *out, size_t outlen, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                                 ~~~~~~~~~~~~~~~^~~
aes256ctr.c: In file included from aes256ctr.c:27:
aes256ctr.c: aes256ctr.h:21:34: note: previously declared as an array 'const uint8_t[32]' {aka 'const unsigned char[32]'}
aes256ctr.c:    21 |                    const uint8_t key[32],
aes256ctr.c:       |                    ~~~~~~~~~~~~~~^~~~~~~
aes256ctr.c: aes256ctr.c:557:84: warning: argument 4 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   557 | void aes256ctr_prf(uint8_t *out, size_t outlen, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                                                     ~~~~~~~~~~~~~~~^~~~~
aes256ctr.c: In file included from aes256ctr.c:27:
aes256ctr.c: aes256ctr.h:22:34: note: previously declared as an array 'const uint8_t[12]' {aka 'const unsigned char[12]'}
aes256ctr.c:    22 |                    const uint8_t nonce[12]);
aes256ctr.c:       |                    ~~~~~~~~~~~~~~^~~~~~~~~
aes256ctr.c: aes256ctr.c:565:54: warning: argument 2 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   565 | void aes256ctr_init(aes256ctr_ctx *s, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                       ~~~~~~~~~~~~~~~^~~
aes256ctr.c: In file included from aes256ctr.c:27:
aes256ctr.c: aes256ctr.h:26:35: note: previously declared as an array 'const uint8_t[32]' {aka 'const unsigned char[32]'}
aes256ctr.c:    26 |                     const uint8_t key[32],
aes256ctr.c:       |                     ~~~~~~~~~~~~~~^~~~~~~
aes256ctr.c: aes256ctr.c:565:74: warning: argument 3 of type 'const uint8_t *' {aka 'const unsigned char *'} declared as a pointer [-Warray-parameter=]
aes256ctr.c:   565 | void aes256ctr_init(aes256ctr_ctx *s, const uint8_t *key, const uint8_t *nonce)
aes256ctr.c:       |                                                           ~~~~~~~~~~~~~~~^~~~~
aes256ctr.c: In file included from aes256ctr.c:27:
aes256ctr.c: ...
polyvec.c: polyvec.c: In function 'crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_gamma1':
polyvec.c: <command-line>: warning: 'crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_gamma1' reading 48 bytes from a region of size 32 [-Wstringop-overread]
polyvec.c: <command-line>: note: in definition of macro 'CRYPTO_NAMESPACE'
polyvec.c: poly.h:51:29: note: in expansion of macro 'DILITHIUM_NAMESPACE'
polyvec.c:    51 | #define poly_uniform_gamma1 DILITHIUM_NAMESPACE(poly_uniform_gamma1)
polyvec.c:       |                             ^~~~~~~~~~~~~~~~~~~
polyvec.c: polyvec.c:47:5: note: in expansion of macro 'poly_uniform_gamma1'
polyvec.c:    47 |     poly_uniform_gamma1(&v->vec[i], seed, L*nonce + i);
polyvec.c:       |     ^~~~~~~~~~~~~~~~~~~
polyvec.c: <command-line>: note: referencing argument 2 of type 'const uint8_t *' {aka 'const unsigned char *'}
polyvec.c: <command-line>: note: in definition of macro 'CRYPTO_NAMESPACE'
polyvec.c: poly.h:51:29: note: in expansion of macro 'DILITHIUM_NAMESPACE'
polyvec.c:    51 | #define poly_uniform_gamma1 DILITHIUM_NAMESPACE(poly_uniform_gamma1)
polyvec.c:       |                             ^~~~~~~~~~~~~~~~~~~
polyvec.c: polyvec.c:47:5: note: in expansion of macro 'poly_uniform_gamma1'
polyvec.c:    47 |     poly_uniform_gamma1(&v->vec[i], seed, L*nonce + i);
polyvec.c:       |     ^~~~~~~~~~~~~~~~~~~
polyvec.c: <command-line>: note: in a call to function 'crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_gamma1'
polyvec.c: <command-line>: note: in definition of macro 'CRYPTO_NAMESPACE'
polyvec.c: poly.h:51:29: note: in expansion of macro 'DILITHIUM_NAMESPACE'
polyvec.c:    51 | #define poly_uniform_gamma1 DILITHIUM_NAMESPACE(poly_uniform_gamma1)
polyvec.c:       |                             ^~~~~~~~~~~~~~~~~~~
polyvec.c: poly.h:52:6: note: in expansion of macro 'poly_uniform_gamma1'
polyvec.c:    52 | void poly_uniform_gamma1(poly *a,
polyvec.c:       |      ^~~~~~~~~~~~~~~~~~~

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

Failed TIMECOP


Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_uniform (poly.c:343)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform (poly.c:375)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvec_matrix_expand (polyvec.c:22)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:39)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:32)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_uniform (poly.c:343)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform (poly.c:384)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvec_matrix_expand (polyvec.c:22)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:39)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:32)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:417)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_eta (polyvec.c:40)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:42)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:32)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:421)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_eta (polyvec.c:40)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:42)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:32)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:417)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyveck_uniform_eta (polyvec.c:173)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:43)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:32)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:421)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyveck_uniform_eta (polyvec.c:173)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:43)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:32)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_uniform (poly.c:343)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform (poly.c:375)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvec_matrix_expand (polyvec.c:22)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:116)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_uniform (poly.c:343)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform (poly.c:384)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvec_matrix_expand (polyvec.c:22)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:116)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_challenge (poly.c:533)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:142)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Use of uninitialised value of size 8
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_challenge (poly.c:535)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:142)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_chknorm (poly.c:303)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_chknorm (polyvec.c:159)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:150)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_chknorm (poly.c:303)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyveck_chknorm (polyvec.c:326)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:159)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_chknorm (poly.c:303)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyveck_chknorm (polyvec.c:326)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:166)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_make_hint (rounding.c:68)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_make_hint (poly.c:249)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyveck_make_hint (polyvec.c:393)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:170)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:171)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_pack_sig (packing.c:178)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:175)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_challenge (poly.c:533)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:142)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: predoit (try.c:108)
   by 0x...: main (try-anything.c:351)

Use of uninitialised value of size 8
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_challenge (poly.c:535)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:142)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: predoit (try.c:108)
   by 0x...: main (try-anything.c:351)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:171)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: predoit (try.c:108)
   by 0x...: main (try-anything.c:351)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_pack_sig (packing.c:178)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:175)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: predoit (try.c:108)
   by 0x...: main (try-anything.c:351)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:171)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: randombytes_callback (try-anything.c:312)
   by 0x...: predoit (try.c:108)
   by 0x...: main (try-anything.c:351)

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

Failed TIMECOP


Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_uniform (poly.c:343)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform (poly.c:375)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvec_matrix_expand (polyvec.c:22)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:39)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_uniform (poly.c:343)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform (poly.c:384)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvec_matrix_expand (polyvec.c:22)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:39)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:417)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_eta (polyvec.c:40)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:42)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:421)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_eta (polyvec.c:40)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:42)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:421)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_eta (polyvec.c:40)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:42)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:417)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_eta (polyvec.c:40)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:43)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:421)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_eta (polyvec.c:40)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:43)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_eta (poly.c:421)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform_eta (poly.c:465)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_uniform_eta (polyvec.c:40)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_keypair (sign.c:43)
   by 0x...: test (try.c:128)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_uniform (poly.c:343)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform (poly.c:375)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvec_matrix_expand (polyvec.c:22)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:116)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: rej_uniform (poly.c:343)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_uniform (poly.c:384)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvec_matrix_expand (polyvec.c:22)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:116)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_challenge (poly.c:533)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:142)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Use of uninitialised value of size 8
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_challenge (poly.c:535)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:142)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_chknorm (poly.c:303)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_chknorm (polyvec.c:159)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:150)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_chknorm (poly.c:303)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_chknorm (polyvec.c:159)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:159)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_chknorm (poly.c:303)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyvecl_chknorm (polyvec.c:159)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:166)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_make_hint (rounding.c:68)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_make_hint (poly.c:249)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_polyveck_make_hint (polyvec.c:393)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:170)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:171)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_pack_sig (packing.c:178)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:175)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: test (try.c:145)
   by 0x...: main (try-anything.c:345)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: test (try.c:144)
   by 0x...: main (try-anything.c:345)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_challenge (poly.c:533)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:142)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: main (try-anything.c:351)

Use of uninitialised value of size 8
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_poly_challenge (poly.c:535)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:142)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: main (try-anything.c:351)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:171)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: main (try-anything.c:351)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_pack_sig (packing.c:178)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:175)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: main (try-anything.c:351)

Conditional jump or move depends on uninitialised value(s)
   at 0x...: crypto_sign_dilithium2aes_ref_constbranchindex_signature (sign.c:171)
   by 0x...: crypto_sign_dilithium2aes_ref_constbranchindex (sign.c:206)
   by 0x...: doit (try.c:113)
   by 0x...: main (try-anything.c:357)
 Uninitialised value was created by a client request
   at 0x...: poison (try-anything.c:281)
   by 0x...: main (try-anything.c:351)

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