Implementation notes: riscv64, riscvunleashed000, crypto_sign/rainbow4a

Computer: riscvunleashed000
Microarchitecture: riscv64; U54 (sifive,u54-mc)
Architecture: riscv64
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_sign
Primitive: rainbow4a

Compiler output

Implementation: T:portable
Security model: timingleaks
Compiler: clang -march=rv64imafdc -mtune=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash_utils.c: hash_utils.c:24:2: warning: 'SHA384_Init' is deprecated [-Wdeprecated-declarations]
hash_utils.c: SHA384_Init( &sha384 );
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/sha.h:119:1: note: 'SHA384_Init' has been explicitly marked deprecated here
hash_utils.c: OSSL_DEPRECATEDIN_3_0 int SHA384_Init(SHA512_CTX *c);
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
hash_utils.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
hash_utils.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
hash_utils.c: ^
hash_utils.c: hash_utils.c:25:2: warning: 'SHA384_Update' is deprecated [-Wdeprecated-declarations]
hash_utils.c: SHA384_Update( &sha384 , m , mlen );
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/sha.h:120:1: note: 'SHA384_Update' has been explicitly marked deprecated here
hash_utils.c: OSSL_DEPRECATEDIN_3_0 int SHA384_Update(SHA512_CTX *c,
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
hash_utils.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
hash_utils.c: ^
hash_utils.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
hash_utils.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
hash_utils.c: ^
hash_utils.c: hash_utils.c:26:2: warning: 'SHA384_Final' is deprecated [-Wdeprecated-declarations]
hash_utils.c: ...

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

Compiler output

Implementation: T:portable
Security model: timingleaks
Compiler: gcc -mcpu=sifive-u54 -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash_utils.c: hash_utils.c: In function '_sha2_str':
hash_utils.c: hash_utils.c:24:9: warning: 'SHA384_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 24 | SHA384_Init( &sha384 );
hash_utils.c: | ^~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:119:27: note: declared here
hash_utils.c: 119 | OSSL_DEPRECATEDIN_3_0 int SHA384_Init(SHA512_CTX *c);
hash_utils.c: | ^~~~~~~~~~~
hash_utils.c: hash_utils.c:25:9: warning: 'SHA384_Update' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 25 | SHA384_Update( &sha384 , m , mlen );
hash_utils.c: | ^~~~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:120:27: note: declared here
hash_utils.c: 120 | OSSL_DEPRECATEDIN_3_0 int SHA384_Update(SHA512_CTX *c,
hash_utils.c: | ^~~~~~~~~~~~~
hash_utils.c: hash_utils.c:26:9: warning: 'SHA384_Final' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 26 | SHA384_Final( digest , &sha384 );
hash_utils.c: | ^~~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:122:27: note: declared here
hash_utils.c: 122 | OSSL_DEPRECATEDIN_3_0 int SHA384_Final(unsigned char *md, SHA512_CTX *c);
hash_utils.c: | ^~~~~~~~~~~~
hash_utils.c: hash_utils.c: In function 'sha2_file':
hash_utils.c: hash_utils.c:60:9: warning: 'SHA384_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 60 | SHA384_Init( &sha384 );
hash_utils.c: ...

Number of similar (compiler,implementation) pairs: 7, namely:
CompilerImplementations
gcc -mcpu=sifive-u54 -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:portable
gcc -mcpu=sifive-u54 -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:portable
gcc -mcpu=sifive-u54 -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:portable
gcc -mcpu=sifive-u54 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:portable
gcc -mcpu=sifive-u54 -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -mcpu=sifive-u54 -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -mcpu=sifive-u54 -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -mcpu=sifive-u54 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash_utils.c: hash_utils.c: In function '_sha2_str':
hash_utils.c: hash_utils.c:24:9: warning: 'SHA384_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 24 | SHA384_Init( &sha384 );
hash_utils.c: | ^~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:119:27: note: declared here
hash_utils.c: 119 | OSSL_DEPRECATEDIN_3_0 int SHA384_Init(SHA512_CTX *c);
hash_utils.c: | ^~~~~~~~~~~
hash_utils.c: hash_utils.c:25:9: warning: 'SHA384_Update' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 25 | SHA384_Update( &sha384 , m , mlen );
hash_utils.c: | ^~~~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:120:27: note: declared here
hash_utils.c: 120 | OSSL_DEPRECATEDIN_3_0 int SHA384_Update(SHA512_CTX *c,
hash_utils.c: | ^~~~~~~~~~~~~
hash_utils.c: hash_utils.c:26:9: warning: 'SHA384_Final' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 26 | SHA384_Final( digest , &sha384 );
hash_utils.c: | ^~~~~~~~~~~~
hash_utils.c: In file included from hash_utils.c:4:
hash_utils.c: /usr/include/openssl/sha.h:122:27: note: declared here
hash_utils.c: 122 | OSSL_DEPRECATEDIN_3_0 int SHA384_Final(unsigned char *md, SHA512_CTX *c);
hash_utils.c: | ^~~~~~~~~~~~
hash_utils.c: hash_utils.c: In function 'sha2_file':
hash_utils.c: hash_utils.c:60:9: warning: 'SHA384_Init' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
hash_utils.c: 60 | SHA384_Init( &sha384 );
hash_utils.c: ...
prng_utils.c: prng_utils.c: In function 'openssl_prng_bytes':
prng_utils.c: prng_utils.c:70:32: warning: implicit declaration of function 'FIPS_mode_set' [-Wimplicit-function-declaration]
prng_utils.c: 70 | fips_mode_on = FIPS_mode_set(1);
prng_utils.c: | ^~~~~~~~~~~~~
try.c: /usr/bin/ld: libcrypto_sign_rainbow4a.a(prng_utils.o): in function `.L14':
try.c: prng_utils.c:(.text+0x...): undefined reference to `FIPS_mode_set'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -mcpu=sifive-u54 -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref