From 75a6db8f4c025c1d62bf03ea79f3d893ac711a45 Mon Sep 17 00:00:00 2001 From: Jason Nelson Date: Fri, 31 Jul 2020 16:33:00 -0700 Subject: [PATCH] Eliminate three allocations in HbMakeCodeLengths --- src/SharpCompress/Compressors/BZip2/CBZip2OutputStream.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/SharpCompress/Compressors/BZip2/CBZip2OutputStream.cs b/src/SharpCompress/Compressors/BZip2/CBZip2OutputStream.cs index 01d3af4c..a0e9705a 100644 --- a/src/SharpCompress/Compressors/BZip2/CBZip2OutputStream.cs +++ b/src/SharpCompress/Compressors/BZip2/CBZip2OutputStream.cs @@ -89,9 +89,9 @@ namespace SharpCompress.Compressors.BZip2 int nNodes, nHeap, n1, n2, i, j, k; bool tooLong; - int[] heap = new int[BZip2Constants.MAX_ALPHA_SIZE + 2]; - int[] weight = new int[BZip2Constants.MAX_ALPHA_SIZE * 2]; - int[] parent = new int[BZip2Constants.MAX_ALPHA_SIZE * 2]; + Span heap = stackalloc int[BZip2Constants.MAX_ALPHA_SIZE + 2]; // 1040 bytes + Span weight = stackalloc int[BZip2Constants.MAX_ALPHA_SIZE * 2]; // 1040 bytes + Span parent = stackalloc int[BZip2Constants.MAX_ALPHA_SIZE * 2]; // 1040 bytes for (i = 0; i < alphaSize; i++) {