Implementation notes: riscv64, riscvunleashed000, crypto_core/aes256encrypt

Computer: riscvunleashed000
Microarchitecture: riscv64; U54 (sifive,u54-mc)
Architecture: riscv64
CPU ID: unknown CPU ID
SUPERCOP version: 20240107
Operation: crypto_core
Primitive: aes256encrypt
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
17706062 0 015171 776 752T:dolbeau/std-4ftclang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
17706062 0 015595 776 752T:dolbeau/std-4ftclang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
17706062 0 015171 776 752T:dolbeau/std-4ftclang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
17706062 0 015595 776 752T:dolbeau/std-4ftclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
17716062 0 013513 768 745T:dolbeau/std-4ftclang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
19436328 0 013324 760 752T:dolbeau/std-4ftgcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
19506376 0 013976 776 752T:dolbeau/std-4ftgcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
20236476 0 015702 776 752T:dolbeau/std-4ftgcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
20774076 0 013609 776 752T:dolbeau/std-2ftclang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
20774076 0 013609 776 752T:dolbeau/std-2ftclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
20784076 0 013185 776 752T:dolbeau/std-2ftclang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
20794076 0 013185 776 752T:dolbeau/std-2ftclang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
20804076 0 011527 768 745T:dolbeau/std-2ftclang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
21916328 0 013737 768 752T:dolbeau/std-4ftgcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
22193080 0 012613 776 752T:dolbeau/std-1ftclang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
22193080 0 012613 776 752T:dolbeau/std-1ftclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
22203080 0 012189 776 752T:dolbeau/std-1ftclang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
22213080 0 012189 776 752T:dolbeau/std-1ftclang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
22223080 0 010531 768 745T:dolbeau/std-1ftclang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
225866 0 09813 792 752T:opensslclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
226066 0 09389 792 752T:opensslclang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
226066 0 09813 792 752T:opensslclang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
226066 0 09389 792 752T:opensslclang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
226066 0 07731 784 745T:opensslclang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
2272104 0 09543 808 752T:opensslgcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
2273104 0 07917 808 752T:opensslgcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
227598 0 07307 792 752T:opensslgcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
2288102 0 07724 800 752T:opensslgcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
23654402 0 011398 760 752T:dolbeau/std-2ftgcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
23734442 0 012042 776 752T:dolbeau/std-2ftgcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
24274532 0 013758 776 752T:dolbeau/std-2ftgcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
25263452 0 011052 776 752T:dolbeau/std-1ftgcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
25453428 0 010424 760 752T:dolbeau/std-1ftgcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
25993540 0 012766 776 752T:dolbeau/std-1ftgcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
26304386 0 011795 768 752T:dolbeau/std-2ftgcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
27973414 0 010823 768 752T:dolbeau/std-1ftgcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
8373203710 0 012728 776 752refgcc_-mcpu=sifive-u54_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
17247633078 0 012395 776 752refclang_-march=rv64imafdc_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
17247773078 0 012395 776 752refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
19963242570 0 011511 776 752refclang_-march=rv64imafdc_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
20039492570 0 011511 776 752refclang_-march=rv64imafdc_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
34912971560 0 09060 776 752refgcc_-mcpu=sifive-u54_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
37737171336 0 08703 768 745refclang_-march=rv64imafdc_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024010520231222
39247741508 0 08404 760 752refgcc_-mcpu=sifive-u54_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222
46723701544 0 08853 768 752refgcc_-mcpu=sifive-u54_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024010520231222

Compiler output

Implementation: T:openssl
Security model: timingleaks
Compiler: clang -march=rv64imafdc -mtune=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
core.c: core.c:12:3: warning: 'AES_set_encrypt_key' is deprecated [-Wdeprecated-declarations]
core.c: AES_set_encrypt_key(k,256,&kexp);
core.c: ^
core.c: /usr/include/openssl/aes.h:50:1: note: 'AES_set_encrypt_key' has been explicitly marked deprecated here
core.c: OSSL_DEPRECATEDIN_3_0
core.c: ^
core.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
core.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
core.c: ^
core.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
core.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
core.c: ^
core.c: core.c:13:3: warning: 'AES_ecb_encrypt' is deprecated [-Wdeprecated-declarations]
core.c: AES_ecb_encrypt(in,out,&kexp,AES_ENCRYPT);
core.c: ^
core.c: /usr/include/openssl/aes.h:62:1: note: 'AES_ecb_encrypt' has been explicitly marked deprecated here
core.c: OSSL_DEPRECATEDIN_3_0
core.c: ^
core.c: /usr/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
core.c: # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
core.c: ^
core.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
core.c: # define OSSL_DEPRECATED(since) __attribute__((deprecated))
core.c: ^
core.c: 2 warnings generated.

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

Compiler output

Implementation: T:openssl
Security model: timingleaks
Compiler: gcc -mcpu=sifive-u54 -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
core.c: core.c: In function 'crypto_core_aes256encrypt_openssl_timingleaks':
core.c: core.c:12:3: warning: 'AES_set_encrypt_key' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
core.c: 12 | AES_set_encrypt_key(k,256,&kexp);
core.c: | ^~~~~~~~~~~~~~~~~~~
core.c: In file included from core.c:1:
core.c: /usr/include/openssl/aes.h:51:5: note: declared here
core.c: 51 | int AES_set_encrypt_key(const unsigned char *userKey, const int bits,
core.c: | ^~~~~~~~~~~~~~~~~~~
core.c: core.c:13:3: warning: 'AES_ecb_encrypt' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
core.c: 13 | AES_ecb_encrypt(in,out,&kexp,AES_ENCRYPT);
core.c: | ^~~~~~~~~~~~~~~
core.c: In file included from core.c:1:
core.c: /usr/include/openssl/aes.h:63:6: note: declared here
core.c: 63 | void AES_ecb_encrypt(const unsigned char *in, unsigned char *out,
core.c: | ^~~~~~~~~~~~~~~

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