Skip to content

Conversation

@HeliC829
Copy link
Contributor

@HeliC829 HeliC829 commented Jul 25, 2025

This PR adds RISC-V 64 build support for ISA-L crypto and CI.
Since AES has no base aliases available, aes_self_tests in fips will be disabled on RISC-V 64.

@pablodelara pablodelara requested a review from Copilot July 25, 2025 08:21
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds RISC-V 64-bit architecture support to the ISA-L crypto library by configuring build files and source lists for the new architecture. Since AES has no base aliases available on RISC-V 64, the AES self-tests are disabled for this architecture in the FIPS module.

  • Adds RISC-V 64 CPU detection and conditional compilation in autotools configuration
  • Includes appropriate source files for cryptographic modules (SHA, MD5, etc.) on RISC-V 64
  • Excludes AES self-tests from FIPS on RISC-V 64 due to missing base aliases

Reviewed Changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated no comments.

File Description
configure.ac Adds RISC-V 64 CPU detection and conditional compilation support
Makefile.am Sets up build configuration and assembly filter for RISC-V 64 architecture
fips/Makefile.am Reorganizes FIPS self-tests and excludes AES tests for RISC-V 64
*/Makefile.am (multiple) Adds RISC-V 64 source file lists for various cryptographic modules
Comments suppressed due to low confidence (1)

sha1_mb/Makefile.am:90

  • There appears to be an extraneous line with just whitespace and a dash. This should be removed to keep the Makefile clean.
src_include += -I $(srcdir)/sha1_mb

@pablodelara
Copy link
Contributor

Hi @HeliC829. Could you work with your colleague @sunyuechi to add RISC-V testing to CI, similar to the way it's done in ISA-L library? Thanks!

@HeliC829
Copy link
Contributor Author

Hi @HeliC829. Could you work with your colleague @sunyuechi to add RISC-V testing to CI, similar to the way it's done in ISA-L library? Thanks!

Sure.

@sunyuechi
Copy link

@HeliC829 will submit the PR for CI support, and I will maintain the related machines (we need to request the project token via email).

@HeliC829
Copy link
Contributor Author

Hi @HeliC829. Could you work with your colleague @sunyuechi to add RISC-V testing to CI, similar to the way it's done in ISA-L library? Thanks!

I've added CI in #161.

@HeliC829 HeliC829 changed the title build: add riscv64 support add riscv64 support and CI Aug 19, 2025
Copy link
Contributor

@pablodelara pablodelara left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for combining the PRs. Could you update README to indicate RISC-V is now supported too? Look at "Prerequisites" section. Also update Release notes, section 3. You can add a bullet point below v2.26, saying RISC-V supported is now added. Please, rebase your PR on top of latest "master" branch. Thanks!

Since AES has no base aliases available for noarch, `aes_self_tests` will cause a link failure on non-x86 and non-aarch64 platforms.

Signed-off-by: Julian Zhu <julian.oerv@isrc.iscas.ac.cn>
Use the base alias implementations for most function.

Signed-off-by: Julian Zhu <julian.oerv@isrc.iscas.ac.cn>
Signed-off-by: Julian Zhu <julian.oerv@isrc.iscas.ac.cn>
Signed-off-by: Julian Zhu <julian.oerv@isrc.iscas.ac.cn>
…rchitectures

Signed-off-by: Julian Zhu <julian.oerv@isrc.iscas.ac.cn>
@HeliC829
Copy link
Contributor Author

Thanks for combining the PRs. Could you update README to indicate RISC-V is now supported too? Look at "Prerequisites" section. Also update Release notes, section 3. You can add a bullet point below v2.26, saying RISC-V supported is now added. Please, rebase your PR on top of latest "master" branch. Thanks!

I've rebased and added some note in Release notes and README.

@pablodelara
Copy link
Contributor

Thanks for combining the PRs. Could you update README to indicate RISC-V is now supported too? Look at "Prerequisites" section. Also update Release notes, section 3. You can add a bullet point below v2.26, saying RISC-V supported is now added. Please, rebase your PR on top of latest "master" branch. Thanks!

I've rebased and added some note in Release notes and README.

Thanks! I will merge the two last commits into the commit that is adding the RISC-V support to the library, to reduce the amount of commits, if that's OK to you.

@HeliC829
Copy link
Contributor Author

Thanks! I will merge the two last commits into the commit that is adding the RISC-V support to the library, to reduce the amount of commits, if that's OK to you.

Sure.

@pablodelara
Copy link
Contributor

This is now merged thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants