From: bugzilla-daemon@libre-riscv.org
To: libre-riscv-dev@lists.libre-riscv.org
Subject: [libre-riscv-dev] [Bug 279] New: inconsistency in 3.0B spec on definition of "equivalence" operator
Date: Sat, 04 Apr 2020 19:54:12 +0000
Message-ID: <bug-279-13@http.bugs.libre-riscv.org/> (raw)
http://bugs.libre-riscv.org/show_bug.cgi?id=279
Bug ID: 279
Summary: inconsistency in 3.0B spec on definition of
"equivalence" operator
Product: Libre-SOC's first SoC
Version: unspecified
Hardware: PC
OS: Linux
Status: CONFIRMED
Severity: enhancement
Priority: ---
Component: Specification
Assignee: lkcl@lkcl.net
Reporter: lkcl@lkcl.net
CC: libre-riscv-dev@lists.libre-riscv.org
NLnet milestone: ---
Section 1.3.4 p6
Equivalence logical operators ((a===b) = (a XOR ¬b))
Section 2.5.1 p40
The bit in the Condition Register specified by BA+32 is
XORed with the bit in the Condition Register specified
by BB+32, and the complemented result is placed into
the bit in the Condition Register specified by BT+32.
Section 3.3.13 p95
The contents of register RS are XORed with the con-
tents of register RB and the complemented result is
placed into register RA.
these are "technically" equivalent, however the definition is inconsistent
with the wording. to be consistent, Section 1.3.4 should read:
Equivalence logical operators ((a===b) = ¬(a XOR b))
however by an accidental property of XOR, they're the same.
also known as an "XNOR gate", which is *sigh* a better name than "Equivalence"
https://en.wikipedia.org/wiki/XNOR_gate
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
libre-riscv-dev mailing list
libre-riscv-dev@lists.libre-riscv.org
http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev
next reply index
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-04 19:54 bugzilla-daemon [this message]
2020-04-05 4:19 ` [libre-riscv-dev] [Bug 279] " bugzilla-daemon
2020-04-05 10:01 ` bugzilla-daemon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bug-279-13@http.bugs.libre-riscv.org/ \
--to=bugzilla-daemon@libre-riscv.org \
--cc=libre-riscv-dev@lists.libre-riscv.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Libre RISC-V Mailing list Archives (accessible via public-inbox)
Archives are clonable: git clone --mirror https://inbox.libre-soc.org/libre-riscv-dev
Example config snippet for mirrors
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git