[libre-riscv-dev] [Bug 279] inconsistency in 3.0B spec on definition of "equivalence" operator

bugzilla-daemon at libre-riscv.org bugzilla-daemon at libre-riscv.org
Sun Apr 5 11:01:13 BST 2020


http://bugs.libre-riscv.org/show_bug.cgi?id=279

--- Comment #2 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to Jacob Lifshay from comment #1)
> In my opinion, both == and XNOR (as well as != and XOR) can be used to
> denote the same operation, but with two different ways of thinking about it:
> 
> 1. XNOR/XOR used when flipping bits, (carry-less) adding, LFSRs, etc.
> 2. ==/!= used when checking for same/different values.

yes, interestingly, Anton, in Microwatt, splits up add/sub into its
sub-components:

* add 0, 1, carry
* actual add
* invert / don't bit-invert result (1s complement)

therefore, bit-inversion of the result could, hypothetically, be done
here as well.

i "solved" this one temporarily by removing the XNOR operator and
replacing it with invert (a XOR b)

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the libre-riscv-dev mailing list