Add Zcb extension#1025
Merged
Merged
Conversation
This was referenced Dec 18, 2025
Merged
hcallahan-lowrisc
approved these changes
Mar 10, 2026
This commit is a cherry-pick of only the Zcb extension from Jonathan Jonssons's commit: 5e72708 Zcb (code reduction): since no gcc support is in the mainline assembler yet these instructions are injected as raw data. Coverage class has been extended with these instructions and the illegal instruction class should not be able to generate legal Zcb instruction if the extension is enabled. load_store_instr_lib: Added the Zcb load and store instructions to this class. Co-authored-by: Samuel Riedel <sriedel@lowrisc.org>"
4cd99ca to
0b914a5
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds support for the Zcb extension. It is originally derived from @JJ-Gaisler's commit in PR #921 but was split off to isolate the Zcb implementation for easier reviewing. It also cleans up a few existing nits and simplifies the
rdspecial cases.Therefore, this PR depends on PR #1024 and should be rebased and merged after that PR lands. Because Zcb introduces instructions requiring
rs1 == rd, having PR #1024 merged first simplifies the design. New changes from this PR: review only new commitsThose tests are used in Ibex's verification: lowRISC/ibex#2324