[Libre-soc-dev] SVP64 Vectorised add-carry => big int add

Luke Kenneth Casson Leighton lkcl at lkcl.net
Tue Apr 12 10:12:25 BST 2022

On Tue, Apr 12, 2022 at 5:00 AM Jacob Lifshay <programmerjake at gmail.com> wrote:

> reading through the wiki some more, i noticed it specifies that SO and
> OV[32] are ignored and not written by SVP64 instructions, I think that may
> not be the best decision, instead I think that SO should not be written to
> avoid the dependency chain issues, but OV[32] should still be read/written
> since, just like CA[32], they don't have the dependency chain issue.

ok do go ahead and put that in, including the example (the intel paper).
it needs to be absolutely clear, so if you can also include an svp64
instruction sequence and raise a bugreport about creating a unit test
for this, that would be good.  (actually, awesome)

> See table 2 in:
> http://www.intel.com/content/dam/www/public/us/en/documents/white-papers/ia-large-integer-arithmetic-paper.pdf
> for an example of why two separate carry chains are needed...the example
> algorithm they use is 512-bit multiplication.

totally get it, at an intuitive level, love it as an important use-case,
don't have the bwain-bandwidth to look at it closely, straight away,
if nothing else bugreport is critical (and link in appendix, at top)


More information about the Libre-soc-dev mailing list