[Libre-soc-isa] [Bug 1183] add /mrr mode (reverse mode) to Data-Dependent Fail-First CR_ops
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Thu Oct 12 21:15:10 BST 2023
https://bugs.libre-soc.org/show_bug.cgi?id=1183
--- Comment #5 from Jacob Lifshay <programmerjake at gmail.com> ---
(In reply to Luke Kenneth Casson Leighton from comment #4)
> (In reply to Jacob Lifshay from comment #3)
>
> > imo SNZ is quite low priority for simple and mapreduce modes since all it
> > can do is set the output to 1,
>
> no: it inverts the *predicate* bit, otherwise set to zero,
> so that it is TRUE rather than false.
>
> again i reiterate: see sv.bc
ok. same general effect in terms of cross-element decisions.
>
> > it has no effect like in fail-first.
SNZ still has no effect in simple and map-reduce modes, because SNZ is only
relevant when there is a test that occurs across elements, rather than only
within each element.
please write out a loop of what you think SNZ should do in simple mode. I
expect that you will find it to be entirely redundant.
> > Another thing I realized while working on divmod, it would be really handy
> > if stuff with a scalar destination would run through all elements instead of
> > stopping at the first, I didn't check if we do that.
>
> that's exactly what /mr does.
I know that, the problem is /mr can not be set at the same time as fail-first
because they are options in a 2-bit enum-like field (you can pick *only one* of
simple, map-reduce, or fail-first). so either fail-first implies /mr behavior
or not. I think it should imply /mr behavior.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Libre-SOC-ISA
mailing list