Skip to content

Add configuration for gcc 16.1 baremetal toolchain and add compatibility fix for RISC-V proxy kernel#3377

Open
isa084 wants to merge 1 commit into
openhwgroup:masterfrom
isa084:riscv-pk-gcc-16p1-support
Open

Add configuration for gcc 16.1 baremetal toolchain and add compatibility fix for RISC-V proxy kernel#3377
isa084 wants to merge 1 commit into
openhwgroup:masterfrom
isa084:riscv-pk-gcc-16p1-support

Conversation

@isa084

@isa084 isa084 commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

The PR adds the following features to fix the issue mentioned in #3356 :

  1. Add a new toolchain configuration for building gcc 16.1, compatible with the instructions in util/toolchain-builder.
  2. Update the riscv-pk installation script to a recent version compatible with gcc > 15. Without this update, the riscv-pk installation fails due to tighter compiler warnings flagged by gcc versions higher than 15.

The final outcome is that users can now :

  1. Build RISC-V GNU toolchain with gcc 16.1 using the existing toolchain-builder.
  2. Run programs compiled with gcc > 15 on veri-testharness-pk simulation target.
  • I have searched for similar pull requests
  • I am a human engaging in an interpersonal interaction. During this interaction, my words are my own and are not generated. If relevant, I provide links to my sources.

Added a new toolchain configuration for building gcc 16.1 using the instructions in util/toolchain-builder. Update the riscv-pk installation script to a recent version compatible with gcc > 15.
@isa084 isa084 requested a review from JeanRochCoulon as a code owner July 6, 2026 13:51
@isa084

This comment was marked as off-topic.

@MikeOpenHWGroup

Copy link
Copy Markdown
Member

As an aside, I used the above compiler version to launch verif/regress/coremark.sh and got total ticks = 229114.

Hi @isa084, please do not introduce multiple topics into a single issue or pull-request. This PR is about the gcc 16.1 baremetal toolchain. If you'd like to ask a question about coremark please do so in a new/different Issue. If GitHub is not a good fit for the discussion, consider posting a question to the CVA6 channel on MatterMost.

@isa084

isa084 commented Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

@MikeOpenHWGroup Sorry about that !

I will open another issue or post it on the CVA6 channel on Mattermost

@valentinThomazic

Copy link
Copy Markdown
Contributor

Hi @isa084
We need to install GCC 16 on Thales CI runners to test the PR.
I will let you know when it is done!

@zchamski

zchamski commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Hi @isa084,

When we upgraded the CVA6 GCC baseline to version 15, the move (and the asociated effort) was motivated by a notable improvement in benchmark perfomance, especially on CoreMark. Does GCC 16 bring any significant benefits in target feature support /perf / code size compared to GCC 15?

@isa084

isa084 commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

@zchamski from my past experience with ARM/RISC-V cores, there is no guarantee that merely upgrading the compiler will lead to performance improvements. I am in interested in investigating this further, once the above PR is accepted.

@JeanRochCoulon

Copy link
Copy Markdown
Contributor

Hello @isa084
Lot of different tools are needed to support CVA6 functionalities: Spike, compilers, Verilator, VCS, Questa, Synthesis tool, Power tools, FPGA tools, ... Upgrading tool requests effort. We will upgrade GCC in the case there is an interest.

@JeanRochCoulon

Copy link
Copy Markdown
Contributor

To demonstrate the performance improvements, coremark job can be used. With GCC15, we are currently at 5 Coremark/MHz.

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.

5 participants