Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does Zicfiss require Zcmop and thus Zca to be implemented? #201

Closed
topperc opened this issue Dec 28, 2023 · 5 comments
Closed

Does Zicfiss require Zcmop and thus Zca to be implemented? #201

topperc opened this issue Dec 28, 2023 · 5 comments

Comments

@topperc
Copy link

topperc commented Dec 28, 2023

The spec includes this sentence "The Zicfiss extension has dependencies on the following extensions: Zicsr, Zimop, and Zcmop.".
One reading of this suggests that Zicfiss requires Zcmop to be implemented. And since Zcmop requires Zca, then Zca must also be implemented.

I doubt that this was the intent and expect that Zicfiss can be supported by hardware that does not support compressed instructions. And that use of compressed Zicfiss instruction require Zcmop, but uncompressed Zicfiss instructions do not.

Which interpretation is correct?

@ved-rivos
Copy link
Collaborator

Zicfiss provides provides compressed form of sspush x1 and sspopchk x5. The compressed instructions depend on Zcmop. However, if compressed instructions are not implemented then the compressed instructions provided by Zicfiss also do not need to be implemented. Further mandates may be placed by profiles but Zicfiss besides depending on Zcmop does not require implementing compressed instructions.

@ved-rivos
Copy link
Collaborator

Hope that addressed the question.

@topperc
Copy link
Author

topperc commented Jan 2, 2024

It did. Will it be clarified in the spec? I filed this because LLVM received a patch that interpreted the sentence as meaning -march=rv64i_zcfiss was equivalent to -march=rv64i_zcfiss_zca_zcmop.

@ved-rivos
Copy link
Collaborator

ved-rivos commented Jan 3, 2024

@topperc please see if PR #202 clarifies this.

@topperc
Copy link
Author

topperc commented Jan 3, 2024

@topperc please see if PR #202 clarifies this.

Looks good to me.

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

No branches or pull requests

2 participants