Skip to content

[vector-crypto] Clarifying relationship between Zvknhb and Zvknha#2635

Open
nibrunieAtSi5 wants to merge 1 commit intoriscv:mainfrom
nibrunieAtSi5:zvknhb-zvknha-relationship-clearing
Open

[vector-crypto] Clarifying relationship between Zvknhb and Zvknha#2635
nibrunieAtSi5 wants to merge 1 commit intoriscv:mainfrom
nibrunieAtSi5:zvknhb-zvknha-relationship-clearing

Conversation

@nibrunieAtSi5
Copy link
Contributor

The current vector crypto specification does not mention any specific link between the two extensions. Their respective description implies that Zvknhb is a subset of Zvknha. This patch attempts at clarifying this relationship as simply as possible.

I have not modified any of the definition (Zvknhb still defines support for both SEW=32 and 64, and Zvknha defines support for SEW=32, other values being reserved encodings).

Copy link
Member

@aswaterman aswaterman left a comment

Choose a reason for hiding this comment

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

Do normative tags for extension dependence rules really make sense? How could you write a test that tests this property?

@nibrunieAtSi5
Copy link
Contributor Author

Do normative tags for extension dependence rules really make sense? How could you write a test that tests this property?

I will have to consult @james-ball-qualcomm and the authors of #2518, as I simply reproduced what was done for other extensions in vector-crypto:

- names: [Zvknhb_depZve64x, Zvbc_depZve64x, Zvkn_depZve64x, Zvknc_depZve64x, Zvkng_depZve64x]
tags: ["norm:Zvknhb_Zvbc_Zvkn_Zvknc_Zvkng_depZve64x"]
- names: [Zvbb_depZve32x, Zvkb_depZve32x, Zvkg_depZve32x, Zvkned_depZve32x, Zvknha_depZve32x, Zvksed_depZve32x, Zvksh_depZve32x, Zvks_depZve32x, Zvksc_depZve32x,
Zvksg_depZve32x, Zvkt_depZve32x]
tags: ["norm:Zvbb_Zvkb_Zvkg_Zvkned_Zvknha_Zvksed_Zvksh_Zvks_Zvksc_Zvksg_Zvkt_depZve32x"]
- name: veccrypto_indepZkt
tags: ["norm:veccrypto_indepZkt"]

The current vector crypto specification does not mention any specific link between the two extensions.
Their respective description implies that Zvknhb is a subset of Zvknha.
This patch attempts at clarifying this relationship as simply as possible.
@nibrunie nibrunie force-pushed the zvknhb-zvknha-relationship-clearing branch from 0afef0b to b2ed1cc Compare February 2, 2026 22:31
@nibrunieAtSi5 nibrunieAtSi5 marked this pull request as ready for review February 2, 2026 23:37
@radimkrcmar
Copy link
Contributor

I think this would be better as a non-normative clarification, because Zvknha is already defined as subset of Zvknhb.
(The subset of Zvknhb is behaviorally indistinguishable from Zvknha.)

The change wouldn't have any effect on the ISA string requirements either... Normative rules should have a meaning.

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.

4 participants