From 82b411bd49b59a528599805cdf2772decc1a14ff Mon Sep 17 00:00:00 2001 From: lkcl Date: Thu, 5 May 2022 12:52:16 +0100 Subject: [PATCH] --- openpower/sv/cr_ops.mdwn | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/openpower/sv/cr_ops.mdwn b/openpower/sv/cr_ops.mdwn index 424a90885..5eb5e15dc 100644 --- a/openpower/sv/cr_ops.mdwn +++ b/openpower/sv/cr_ops.mdwn @@ -67,9 +67,9 @@ the main result. # Format -SVP64 RM `MODE` (includes `ELWIDTH` bits) for CR-based operations: +SVP64 RM `MODE` (includes `ELWIDTH_SRC` bits) for CR-based operations: -| 4 | 5 | 19-20 | 21 | 22 23 | description | +| 6 | 7 | 19-20 | 21 | 22 23 | description | | - | - | ----- | --- |---------|----------------- | |sz |SNZ| 0 RG | 0 | dz / | normal mode | |sz |SNZ| 0 RG | 1 | 0 / | scalar reduce mode (mapreduce), SUBVL=1 | @@ -187,14 +187,23 @@ elements thereafter: # Unusual and quirky CR operations -# cmp and other compare ops +## cmp and other compare ops `cmp` and `cmpi` etc take GPRs as sources and create a CR Field as a result. cmpli BF,L,RA,UI cmpeqb BF,RA,RB -With `ELWIDTH_SRC` applying to the source operands this is perfectly fine. -As an aside it explains why `ELWIDTH` was picked to be used for alternative -purposes (`SNZ`) rather than `ELWIDTH_SRC`. +With `ELWIDTH` applying to the source operands this is perfectly fine. + +## crweird operations + +There are 4 weird CR-GPR operations and one reasonable one in +the [[cr_int_predication]] set: + +* crrweird +* mtcrweird +* crweirder +* crweird +* mcrfm - reasonably normal and referring to CR Fields for src and dest. -- 2.30.2