[Libre-soc-isa] [Bug 973] an easy way to shift registers up and down is needed
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Mon Oct 9 09:41:36 BST 2023
https://bugs.libre-soc.org/show_bug.cgi?id=973
--- Comment #6 from Jacob Lifshay <programmerjake at gmail.com> ---
(In reply to Luke Kenneth Casson Leighton from comment #5)
> (In reply to Jacob Lifshay from comment #4)
> > turns out bigint divmod using knuth's algorithm d most likely needs dynamic
> > svoffset too,
>
> use 1<<r3 predicate mask with a vector reg
> or in Vertical-First use a scalar reg sv.xxxx.
>
> those are the two main ways to do dynamic single-reg
> targetting.
that's fine for scalar, but bigint divmod most likely needs something like the
following:
for j in ...:
# more stuff in j loop
# j is dynamic and would be nice to use svoffset
for i in range(VL):
prod[i] = maddedu(vn[i], qhat, ...)
for i in range(VL):
# different inputs use/don't-use j, so even
# twin-predication can't do this:
un[i + j] = subfe(prod[i], un[i + j])
# more stuff in j loop
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Libre-SOC-ISA
mailing list