Skip to content

Internal Review: vset{i}vli semantics for new fields #52

Description

@awiseAtCodasip

Section "36.4. New fields in the Vector Type ( vtype ) Register"

I do not believe that the semantics of the vset{i}vli instructions in respect of the new fields are clearly stated. Some of the behaviour is hinted at by notes in section 36.10. "Software considerations", but I think it would be preferable to have a clear normative statement of what these instructions do.

I think that the semantics are that for vset{i}vli, the bs, altfmt_A, and altfmt_B fields remain unmodified while the WARL field, lambda, remains unmodified unless the new value of vtype.vsew means that the previous value of lambda is no longer legal, in which case lambda is replaced by a value that is legal. However, I may well be mistaken in this and would welcome being corrected if so.

Related to this subject.

In section 36.4.3. "Alternate formats for inputs ( altfmt_A , altfmt_B )"

"These positions are outside the vsetvli or vsetivli immediate field and must be configured via vsetvl (with the full vtype value in a register) or vsetivli."

I do not understand the "or vsetivli" at the end. Should it be deleted?

In section 31.6.1. "vtype encoding"

"The vsetvl variant operates similarly to vsetvli except that it takes a vtype value from rs2 and can be
used for context restore."

Would if be helpful to add "or to set vtype bit positions above those covered by the vset{i}vli vtypei fields." (or similar wording)?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions