aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSchuyler Eldridge2021-08-02 16:35:00 -0400
committerGitHub2021-08-02 20:35:00 +0000
commitff1cd28202fb423956a6803a889c3632487d8872 (patch)
tree80067c965e2b8255474fe57b11c2f4ab7dc688fc
parent04210ee30acd437bccfe694ddd895e5f450ba01f (diff)
Update spec to disallow 0-bit mux sel (#2305)
Change the FIRRTL spec to disallow a zero-width multiplexer select. Clarify that the select line can be either one-bit or zero-bit, but will infer to one-bit. Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-rw-r--r--spec/spec.pdfbin363498 -> 339523 bytes
-rw-r--r--spec/spec.tex3
2 files changed, 1 insertions, 2 deletions
diff --git a/spec/spec.pdf b/spec/spec.pdf
index d961a28d..b92c62e3 100644
--- a/spec/spec.pdf
+++ b/spec/spec.pdf
Binary files differ
diff --git a/spec/spec.tex b/spec/spec.tex
index d41d0562..a876aca9 100644
--- a/spec/spec.tex
+++ b/spec/spec.tex
@@ -1307,9 +1307,8 @@ A multiplexer expression is legal only if the following holds.
\item The type of the selection signal is an unsigned integer.
\item The width of the selection signal is any of:
\begin{enumerate}
- \item Unspecified
- \item Zero-bit\footnote{A zero-bit width selection signal will be treated as a one-bit, zero-valued selection signal. \emph{This means that a multiplexer expression with a zero-bit selection signal will always take the false path and will likely be optimized away by a FIRRTL compiler.}}
\item One-bit
+ \item Unspecified, but will infer to one-bit
\end{enumerate}
\item The types of the two input expressions are equivalent.
\item The types of the two input expressions are passive (see section \ref{passive_types}).