Skip to content

Commit

Permalink
Add extra rule to prevent ambiguou extension name with version
Browse files Browse the repository at this point in the history
- The second letter from the bottom cannot be a numeric if the
  last letter is ``p''

- For example, Zfoo1p0 is ambiguou without this extra rule:
  Zfoo1p extension with version 0 or Zfoo extension with version 1.0.
  • Loading branch information
kito-cheng committed Sep 9, 2021
1 parent 8d8d03d commit 311ea1f
Showing 1 changed file with 10 additions and 7 deletions.
17 changes: 10 additions & 7 deletions src/naming.tex
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,11 @@ \section{Underscores}
\section{Additional Standard Extension Names}

Standard extensions can also be named using a single ``Z'' followed by an
alphanumeric name, the name must end with an alphabetical, and an optional
version number. For example, ``Zifencei'' names the instruction-fetch fence
extension described in Chapter~\ref{chap:zifencei}; ``Zifencei2'' and
``Zifencei2p0'' name version 2.0 of same.
alphanumeric name, the name must end with an alphabetical, an optional
version number, and the second letter from the bottom cannot be a numeric if the
last letter is ``p''. For example, ``Zifencei'' names the instruction-fetch
fence extension described in Chapter~\ref{chap:zifencei}; ``Zifencei2'' and
``Zifencei2p0'' name version 2.0 are the same.

The first letter following the ``Z'' conventionally indicates the most closely
related alphabetical extension category, IMAFDQLCBKJTPV. For the ``Zam''
Expand All @@ -97,7 +98,8 @@ \section{Supervisor-level Instruction-Set Extensions}

Standard supervisor-level instruction-set extensions are defined in Volume II,
but are named using ``S'' as a prefix, followed by an alphanumeric name, the
name must end with an alphabetical, and an optional version number.
name must end with an alphabetical, an optional version number, and the second
letter from the bottom cannot be a numeric if the last letter is ``p''.
Supervisor-level extensions must be separated from
other multi-letter extensions by an underscore.

Expand Down Expand Up @@ -127,8 +129,9 @@ \section{Machine-level Instruction-Set Extensions}
\section{Non-Standard Extension Names}

Non-standard extensions are named using a single ``X'' followed by an
alphanumeric name, the name must end with an alphabetical, and an optional
version number.
alphanumeric name, the name must end with an alphabetical, an optional
version number, and the second letter from the bottom cannot be a numeric if the
last letter is ``p''.
For example, ``Xhwacha'' names the Hwacha vector-fetch ISA extension;
``Xhwacha2'' and ``Xhwacha2p0'' name version 2.0 of same.

Expand Down

0 comments on commit 311ea1f

Please sign in to comment.