From: lkcl Date: Mon, 28 Dec 2020 15:37:09 +0000 (+0000) Subject: (no commit message) X-Git-Tag: convert-csv-opcode-to-binary~759 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ec8f33b53db598bc229ffcf8c5c22b2085208a3d;p=libreriscv.git --- diff --git a/openpower/sv/vector_ops.mdwn b/openpower/sv/vector_ops.mdwn index e3603e8b4..6210310b1 100644 --- a/openpower/sv/vector_ops.mdwn +++ b/openpower/sv/vector_ops.mdwn @@ -254,9 +254,21 @@ Pseudo-code: # Carry-lookahead +used not just for carry lookahead, also a special type of predication mask operation. + * * * * * `((P|G)+G)^P` + +two versions: scalar int version and CR based version. + +scalar int version acts as a scalar carry-propagate, reading XER.CA as input, P and G as regs, and taking a radix argument. the end bits go into XER.CA and CR0.ge + +vector version takes CR0.so as carry in, stores in CR0.so and CR.ge end bits. + +if zero (no propagation) then CR0.eq is zero + +CR based version, TODO.