of the corner-cases.
Worse, a naive SIMD ISA cannot have Conditional inter-relationships.
-64-byte or 128-byte-wide LOADs either succeed in full or they fail
-in full. If the strncpy subroutine happens to copy from the last
+In well-defined ISAs, 128-byte or greater LOADs either succeed in full
+or they fail in full.
+If the strncpy subroutine happens to copy from the last
few bytes in memory, SIMD LOADs are the worst thing to use.
We need a way to Conditionally terminate the LOAD and inform the
Programmer, and this is where (as in ARM SVE)
dest[i] = '\0';
\end{verbatim}
-Performing such a conditional NUL-character search in a SIMD ISA
+Leaving aside the prior issue that LOADing beyond the point where the
+NUL was should not even have been attempted in the first place,
+performing such a conditional NUL-character search in a SIMD ISA
is typically extremely convoluted. A usual approach would be
to perform a Parallel compare against NUL (easy enough) followed
by an instruction that then searches sequentially for the first
\textit{All of the sequential-search-and-truncate} is part of
the Data-Dependent Fail-First Mode that is a first-order construct
in SVP64. When applied to the \textbf{sv.cmpi} instruction,
-which produces a Vector of Condition Codes ()as opposed to just
+which produces a Vector of Condition Codes as opposed to just
one for the Scalar \textbf{cmpi} instruction),
the search for the NUL character truncates the Vector Length
at the required point, such that the next instruction (STORE)