From: lkcl Date: Wed, 30 Dec 2020 17:18:35 +0000 (+0000) Subject: (no commit message) X-Git-Tag: convert-csv-opcode-to-binary~701 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e51531eac74ae75aeeeadba9157f235fe2c5865a;p=libreriscv.git --- diff --git a/openpower/sv/overview.mdwn b/openpower/sv/overview.mdwn index fc022fe90..08cb3b54f 100644 --- a/openpower/sv/overview.mdwn +++ b/openpower/sv/overview.mdwn @@ -144,6 +144,8 @@ this is where our "simple" loop gets its first complexity. if (RA.isvec) { irs1 += 1; } if (RB.isvec) { irs2 += 1; } +This could have been written out as eight separate cases: one each for when each of RA, RB or RT is scalar or vector. Those eight cases, when optimally combined, result in the pseudocode above. + With some walkthroughs it is clear that the loop exits immediately after the first scalar destination result is written, and that when the destination is a Vector the loop proceeds to fill up the register file,