We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 7dac297 commit d8811c1Copy full SHA for d8811c1
src/ICSharpCode.SharpZipLib/BZip2/BZip2InputStream.cs
@@ -718,6 +718,11 @@ cache misses.
718
var j = nextSym - 1;
719
720
#if !NETSTANDARD2_0 && !NETFRAMEWORK
721
+ // This is vectorized memory move. Going from the back, we're taking chunks of array
722
+ // and write them at the new location shifted by one. Since chunks are VectorSize long,
723
+ // at the end we have to move "tail" (or head actually) of the array using a plain loop.
724
+ // If System.Numerics.Vector API is not available, the plain loop is used to do the whole copying.
725
+
726
while(j >= VectorSize)
727
{
728
var arrayPart = new System.Numerics.Vector<byte>(yy, j - VectorSize);
0 commit comments