From c3e4f397a12867d8d4b8a98dda5918f17f5f3b57 Mon Sep 17 00:00:00 2001 From: lkcl Date: Mon, 3 Oct 2022 11:43:14 +0100 Subject: [PATCH] --- openpower/sv/svp64/discussion.mdwn | 31 +++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/openpower/sv/svp64/discussion.mdwn b/openpower/sv/svp64/discussion.mdwn index 9bbdcd570..7901cbd05 100644 --- a/openpower/sv/svp64/discussion.mdwn +++ b/openpower/sv/svp64/discussion.mdwn @@ -1,4 +1,3 @@ - # Note about naming the original assessment for SVP from 18 months ago concluded that it should be easy for scalar (non SV) instructions to get at the exact same scalar registers when in SVP mode. otherwise scalar v3.0B code needs to restrict itself to a massively truncated subset of the scalar registers numbered 0-31 (only r0, r4, r8...) which hugely interferes with ABIs to such an extent that it would compromise SV. @@ -204,3 +203,33 @@ Evaluation: * CR ops: maybe on mvs, not on arithmetic. therefore it makes no sense to have DEST SUBVL, and instead to have special mv operations. see [[mv.vec]] + +# SVP64Single review + +full review needed, answering question: + + if sv.op RT.scalar RA.scalar RB.scalar is set to "VL=1" is anything lost? + +four aspects: + +1) instructions with only one source + +2) RM Modes + +3) is the loss of the dynamic meaning "VL=0" nop effect important? + +4) why would "sv.op all-scalar" be inside a loop in the first place? + +## answers to 2, RM Modes + +Normal Mode: + +* simple mode is straight vectorisation. +* reduce mode +* ffirst or data-dependent fail-on-first: +* sat mode or saturation: +* pred-result mode + +simple mode is fine including on predication but has a CHANGE OF BEHAVIOUR. first bit of src/dest is used when zeroing is on, but first ENABLED bit of predicate is used when VL>1. + +reduce mode is unaffected (meaningless) -- 2.30.2