diff --git a/HashLib.Benchmark/Delphi/HashLib.BenchmarkConsole.dpr b/HashLib.Benchmark/Delphi/HashLib.BenchmarkConsole.dpr
index d9151d4d..b9043e15 100644
--- a/HashLib.Benchmark/Delphi/HashLib.BenchmarkConsole.dpr
+++ b/HashLib.Benchmark/Delphi/HashLib.BenchmarkConsole.dpr
@@ -141,16 +141,17 @@ uses
HlpScryptSimd in '..\..\HashLib\src\Simd\Facade\HlpScryptSimd.pas',
HlpScryptX86Backend in '..\..\HashLib\src\Simd\Backend\HlpScryptX86Backend.pas',
HlpScryptArmBackend in '..\..\HashLib\src\Simd\Backend\HlpScryptArmBackend.pas',
- HlpConverters in '..\..\HashLib\src\Utils\HlpConverters.pas',
- HlpBitOperations in '..\..\HashLib\src\Utils\HlpBitOperations.pas',
- HlpBinaryPrimitives in '..\..\HashLib\src\Utils\HlpBinaryPrimitives.pas',
- HlpCpuFeatures in '..\..\HashLib\src\Utils\HlpCpuFeatures.pas',
- HlpX86SimdFeatures in '..\..\HashLib\src\Utils\HlpX86SimdFeatures.pas',
- HlpArmSimdFeatures in '..\..\HashLib\src\Utils\HlpArmSimdFeatures.pas',
- HlpSimdLevels in '..\..\HashLib\src\Utils\HlpSimdLevels.pas',
- HlpArmHwCapProvider in '..\..\HashLib\src\Utils\HlpArmHwCapProvider.pas',
- HlpDarwinSysCtl in '..\..\HashLib\src\Utils\HlpDarwinSysCtl.pas',
- HlpHashLibTypes in '..\..\HashLib\src\Utils\HlpHashLibTypes.pas',
+ HlpConverters in '..\..\HashLib\src\Misc\HlpConverters.pas',
+ HlpBitOperations in '..\..\HashLib\src\Misc\HlpBitOperations.pas',
+ HlpBinaryPrimitives in '..\..\HashLib\src\Misc\HlpBinaryPrimitives.pas',
+ HlpCpuFeatures in '..\..\HashLib\src\Misc\HlpCpuFeatures.pas',
+ HlpX86SimdFeatures in '..\..\HashLib\src\Misc\HlpX86SimdFeatures.pas',
+ HlpArmSimdFeatures in '..\..\HashLib\src\Misc\HlpArmSimdFeatures.pas',
+ HlpSimdLevels in '..\..\HashLib\src\Misc\HlpSimdLevels.pas',
+ HlpArmHwCapProvider in '..\..\HashLib\src\Misc\HlpArmHwCapProvider.pas',
+ HlpDarwinSysCtl in '..\..\HashLib\src\Misc\HlpDarwinSysCtl.pas',
+ HlpHashLibExceptions in '..\..\HashLib\src\Misc\HlpHashLibExceptions.pas',
+ HlpHashLibTypes in '..\..\HashLib\src\Misc\HlpHashLibTypes.pas',
HlpArrayUtils in '..\..\HashLib\src\Utils\HlpArrayUtils.pas';
procedure ConsoleLog(const AMessage: String);
diff --git a/HashLib.Benchmark/Delphi/HashLib.BenchmarkFMX.dpr b/HashLib.Benchmark/Delphi/HashLib.BenchmarkFMX.dpr
index 3b4c4866..7223afb1 100644
--- a/HashLib.Benchmark/Delphi/HashLib.BenchmarkFMX.dpr
+++ b/HashLib.Benchmark/Delphi/HashLib.BenchmarkFMX.dpr
@@ -140,14 +140,15 @@ uses
HlpScryptSimd in '..\..\HashLib\src\Simd\Facade\HlpScryptSimd.pas',
HlpScryptX86Backend in '..\..\HashLib\src\Simd\Backend\HlpScryptX86Backend.pas',
HlpScryptArmBackend in '..\..\HashLib\src\Simd\Backend\HlpScryptArmBackend.pas',
- HlpConverters in '..\..\HashLib\src\Utils\HlpConverters.pas',
- HlpBitOperations in '..\..\HashLib\src\Utils\HlpBitOperations.pas',
- HlpBinaryPrimitives in '..\..\HashLib\src\Utils\HlpBinaryPrimitives.pas',
- HlpCpuFeatures in '..\..\HashLib\src\Utils\HlpCpuFeatures.pas',
- HlpX86SimdFeatures in '..\..\HashLib\src\Utils\HlpX86SimdFeatures.pas',
- HlpArmSimdFeatures in '..\..\HashLib\src\Utils\HlpArmSimdFeatures.pas',
- HlpSimdLevels in '..\..\HashLib\src\Utils\HlpSimdLevels.pas',
- HlpHashLibTypes in '..\..\HashLib\src\Utils\HlpHashLibTypes.pas',
+ HlpConverters in '..\..\HashLib\src\Misc\HlpConverters.pas',
+ HlpBitOperations in '..\..\HashLib\src\Misc\HlpBitOperations.pas',
+ HlpBinaryPrimitives in '..\..\HashLib\src\Misc\HlpBinaryPrimitives.pas',
+ HlpCpuFeatures in '..\..\HashLib\src\Misc\HlpCpuFeatures.pas',
+ HlpX86SimdFeatures in '..\..\HashLib\src\Misc\HlpX86SimdFeatures.pas',
+ HlpArmSimdFeatures in '..\..\HashLib\src\Misc\HlpArmSimdFeatures.pas',
+ HlpSimdLevels in '..\..\HashLib\src\Misc\HlpSimdLevels.pas',
+ HlpHashLibExceptions in '..\..\HashLib\src\Misc\HlpHashLibExceptions.pas',
+ HlpHashLibTypes in '..\..\HashLib\src\Misc\HlpHashLibTypes.pas',
HlpArrayUtils in '..\..\HashLib\src\Utils\HlpArrayUtils.pas';
{$R *.res}
diff --git a/HashLib.Tests/Delphi.Tests/HashLib.Tests.Mobile.dpr b/HashLib.Tests/Delphi.Tests/HashLib.Tests.Mobile.dpr
index 122693ca..a3c2157a 100644
--- a/HashLib.Tests/Delphi.Tests/HashLib.Tests.Mobile.dpr
+++ b/HashLib.Tests/Delphi.Tests/HashLib.Tests.Mobile.dpr
@@ -142,16 +142,17 @@ uses
HlpScryptSimd in '..\..\HashLib\src\Simd\Facade\HlpScryptSimd.pas',
HlpScryptX86Backend in '..\..\HashLib\src\Simd\Backend\HlpScryptX86Backend.pas',
HlpScryptArmBackend in '..\..\HashLib\src\Simd\Backend\HlpScryptArmBackend.pas',
- HlpConverters in '..\..\HashLib\src\Utils\HlpConverters.pas',
- HlpBitOperations in '..\..\HashLib\src\Utils\HlpBitOperations.pas',
- HlpBinaryPrimitives in '..\..\HashLib\src\Utils\HlpBinaryPrimitives.pas',
- HlpCpuFeatures in '..\..\HashLib\src\Utils\HlpCpuFeatures.pas',
- HlpX86SimdFeatures in '..\..\HashLib\src\Utils\HlpX86SimdFeatures.pas',
- HlpArmSimdFeatures in '..\..\HashLib\src\Utils\HlpArmSimdFeatures.pas',
- HlpSimdLevels in '..\..\HashLib\src\Utils\HlpSimdLevels.pas',
- HlpArmHwCapProvider in '..\..\HashLib\src\Utils\HlpArmHwCapProvider.pas',
- HlpDarwinSysCtl in '..\..\HashLib\src\Utils\HlpDarwinSysCtl.pas',
- HlpHashLibTypes in '..\..\HashLib\src\Utils\HlpHashLibTypes.pas',
+ HlpConverters in '..\..\HashLib\src\Misc\HlpConverters.pas',
+ HlpBitOperations in '..\..\HashLib\src\Misc\HlpBitOperations.pas',
+ HlpBinaryPrimitives in '..\..\HashLib\src\Misc\HlpBinaryPrimitives.pas',
+ HlpCpuFeatures in '..\..\HashLib\src\Misc\HlpCpuFeatures.pas',
+ HlpX86SimdFeatures in '..\..\HashLib\src\Misc\HlpX86SimdFeatures.pas',
+ HlpArmSimdFeatures in '..\..\HashLib\src\Misc\HlpArmSimdFeatures.pas',
+ HlpSimdLevels in '..\..\HashLib\src\Misc\HlpSimdLevels.pas',
+ HlpArmHwCapProvider in '..\..\HashLib\src\Misc\HlpArmHwCapProvider.pas',
+ HlpDarwinSysCtl in '..\..\HashLib\src\Misc\HlpDarwinSysCtl.pas',
+ HlpHashLibExceptions in '..\..\HashLib\src\Misc\HlpHashLibExceptions.pas',
+ HlpHashLibTypes in '..\..\HashLib\src\Misc\HlpHashLibTypes.pas',
HlpArrayUtils in '..\..\HashLib\src\Utils\HlpArrayUtils.pas',
HashLibTestBase in '..\src\HashLibTestBase.pas',
HashLibTestResourceLoader in '..\src\Utils\HashLibTestResourceLoader.pas',
diff --git a/HashLib.Tests/Delphi.Tests/HashLib.Tests.Mobile.dproj b/HashLib.Tests/Delphi.Tests/HashLib.Tests.Mobile.dproj
index 302935a4..ac0a5f98 100644
--- a/HashLib.Tests/Delphi.Tests/HashLib.Tests.Mobile.dproj
+++ b/HashLib.Tests/Delphi.Tests/HashLib.Tests.Mobile.dproj
@@ -482,16 +482,17 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
diff --git a/HashLib.Tests/Delphi.Tests/HashLib.Tests.dpr b/HashLib.Tests/Delphi.Tests/HashLib.Tests.dpr
index f6f545b3..40d36a61 100644
--- a/HashLib.Tests/Delphi.Tests/HashLib.Tests.dpr
+++ b/HashLib.Tests/Delphi.Tests/HashLib.Tests.dpr
@@ -159,16 +159,17 @@ uses
HlpScryptSimd in '..\..\HashLib\src\Simd\Facade\HlpScryptSimd.pas',
HlpScryptX86Backend in '..\..\HashLib\src\Simd\Backend\HlpScryptX86Backend.pas',
HlpScryptArmBackend in '..\..\HashLib\src\Simd\Backend\HlpScryptArmBackend.pas',
- HlpConverters in '..\..\HashLib\src\Utils\HlpConverters.pas',
- HlpBitOperations in '..\..\HashLib\src\Utils\HlpBitOperations.pas',
- HlpBinaryPrimitives in '..\..\HashLib\src\Utils\HlpBinaryPrimitives.pas',
- HlpCpuFeatures in '..\..\HashLib\src\Utils\HlpCpuFeatures.pas',
- HlpX86SimdFeatures in '..\..\HashLib\src\Utils\HlpX86SimdFeatures.pas',
- HlpArmSimdFeatures in '..\..\HashLib\src\Utils\HlpArmSimdFeatures.pas',
- HlpSimdLevels in '..\..\HashLib\src\Utils\HlpSimdLevels.pas',
- HlpArmHwCapProvider in '..\..\HashLib\src\Utils\HlpArmHwCapProvider.pas',
- HlpDarwinSysCtl in '..\..\HashLib\src\Utils\HlpDarwinSysCtl.pas',
- HlpHashLibTypes in '..\..\HashLib\src\Utils\HlpHashLibTypes.pas',
+ HlpConverters in '..\..\HashLib\src\Misc\HlpConverters.pas',
+ HlpBitOperations in '..\..\HashLib\src\Misc\HlpBitOperations.pas',
+ HlpBinaryPrimitives in '..\..\HashLib\src\Misc\HlpBinaryPrimitives.pas',
+ HlpCpuFeatures in '..\..\HashLib\src\Misc\HlpCpuFeatures.pas',
+ HlpX86SimdFeatures in '..\..\HashLib\src\Misc\HlpX86SimdFeatures.pas',
+ HlpArmSimdFeatures in '..\..\HashLib\src\Misc\HlpArmSimdFeatures.pas',
+ HlpSimdLevels in '..\..\HashLib\src\Misc\HlpSimdLevels.pas',
+ HlpArmHwCapProvider in '..\..\HashLib\src\Misc\HlpArmHwCapProvider.pas',
+ HlpDarwinSysCtl in '..\..\HashLib\src\Misc\HlpDarwinSysCtl.pas',
+ HlpHashLibExceptions in '..\..\HashLib\src\Misc\HlpHashLibExceptions.pas',
+ HlpHashLibTypes in '..\..\HashLib\src\Misc\HlpHashLibTypes.pas',
HlpArrayUtils in '..\..\HashLib\src\Utils\HlpArrayUtils.pas',
HashLibTestBase in '..\src\HashLibTestBase.pas',
HashLibTestResourceLoader in '..\src\Utils\HashLibTestResourceLoader.pas',
diff --git a/HashLib.Tests/src/HashLibTestBase.pas b/HashLib.Tests/src/HashLibTestBase.pas
index d544364e..c945df2c 100644
--- a/HashLib.Tests/src/HashLibTestBase.pas
+++ b/HashLib.Tests/src/HashLibTestBase.pas
@@ -21,6 +21,7 @@ interface
HlpConverters,
HlpBinaryPrimitives,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
{$IFDEF FPC}
diff --git a/HashLib.Tests/src/PBKDF_ScryptTests.pas b/HashLib.Tests/src/PBKDF_ScryptTests.pas
index 0ed058f7..384a4e6c 100644
--- a/HashLib.Tests/src/PBKDF_ScryptTests.pas
+++ b/HashLib.Tests/src/PBKDF_ScryptTests.pas
@@ -18,6 +18,7 @@ interface
HlpHashFactory,
HlpConverters,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HashLibTestBase,
ScryptVectors;
diff --git a/HashLib/src/Base/HlpHash.pas b/HashLib/src/Base/HlpHash.pas
index d59864f3..a7b151ae 100644
--- a/HashLib/src/Base/HlpHash.pas
+++ b/HashLib/src/Base/HlpHash.pas
@@ -8,6 +8,7 @@ interface
Classes,
SysUtils,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpConverters,
HlpIHash,
HlpIHashResult;
diff --git a/HashLib/src/Base/HlpHashFactory.pas b/HashLib/src/Base/HlpHashFactory.pas
index 3cacc5ce..e2b3e79f 100644
--- a/HashLib/src/Base/HlpHashFactory.pas
+++ b/HashLib/src/Base/HlpHashFactory.pas
@@ -10,6 +10,7 @@ interface
HlpIHash,
HlpIHashInfo,
HlpHashLibTypes,
+ HlpHashLibExceptions,
// NullDigest Unit //
HlpNullDigest,
// Checksum Unit //
diff --git a/HashLib/src/Base/HlpHashResult.pas b/HashLib/src/Base/HlpHashResult.pas
index 22f331e1..9af23698 100644
--- a/HashLib/src/Base/HlpHashResult.pas
+++ b/HashLib/src/Base/HlpHashResult.pas
@@ -9,6 +9,7 @@ interface
HlpBinaryPrimitives,
HlpBitOperations,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpIHashResult,
HlpConverters,
HlpArrayUtils;
diff --git a/HashLib/src/Base/HlpKDF.pas b/HashLib/src/Base/HlpKDF.pas
index f81a6e54..95819264 100644
--- a/HashLib/src/Base/HlpKDF.pas
+++ b/HashLib/src/Base/HlpKDF.pas
@@ -6,6 +6,7 @@ interface
uses
HlpIKDF,
+ HlpHashLibExceptions,
HlpHashLibTypes;
type
diff --git a/HashLib/src/Checksum/HlpCRC.pas b/HashLib/src/Checksum/HlpCRC.pas
index 9149fefa..5e58c2ef 100644
--- a/HashLib/src/Checksum/HlpCRC.pas
+++ b/HashLib/src/Checksum/HlpCRC.pas
@@ -20,6 +20,7 @@ interface
SyncObjs,
Generics.Collections,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpHash,
HlpIHash,
HlpIHashInfo,
diff --git a/HashLib/src/Crypto/Blake2BParams/HlpBlake2BParams.pas b/HashLib/src/Crypto/Blake2BParams/HlpBlake2BParams.pas
index 79479d96..7b6c756f 100644
--- a/HashLib/src/Crypto/Blake2BParams/HlpBlake2BParams.pas
+++ b/HashLib/src/Crypto/Blake2BParams/HlpBlake2BParams.pas
@@ -9,6 +9,7 @@ interface
HlpIBlake2BParams,
HlpHashSize,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
resourcestring
diff --git a/HashLib/src/Crypto/Blake2SParams/HlpBlake2SParams.pas b/HashLib/src/Crypto/Blake2SParams/HlpBlake2SParams.pas
index 3f25d4a5..c0cbfb2b 100644
--- a/HashLib/src/Crypto/Blake2SParams/HlpBlake2SParams.pas
+++ b/HashLib/src/Crypto/Blake2SParams/HlpBlake2SParams.pas
@@ -9,6 +9,7 @@ interface
HlpIBlake2SParams,
HlpHashSize,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
resourcestring
diff --git a/HashLib/src/Crypto/HlpBlake2B.pas b/HashLib/src/Crypto/HlpBlake2B.pas
index 7bc4d730..31b85c69 100644
--- a/HashLib/src/Crypto/HlpBlake2B.pas
+++ b/HashLib/src/Crypto/HlpBlake2B.pas
@@ -16,6 +16,7 @@ interface
HlpIHash,
HlpIHashInfo,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
type
diff --git a/HashLib/src/Crypto/HlpBlake2S.pas b/HashLib/src/Crypto/HlpBlake2S.pas
index b5e71c9f..939294a8 100644
--- a/HashLib/src/Crypto/HlpBlake2S.pas
+++ b/HashLib/src/Crypto/HlpBlake2S.pas
@@ -16,6 +16,7 @@ interface
HlpIHash,
HlpIHashInfo,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
type
diff --git a/HashLib/src/Crypto/HlpBlake3.pas b/HashLib/src/Crypto/HlpBlake3.pas
index a37a8ac8..ffca7388 100644
--- a/HashLib/src/Crypto/HlpBlake3.pas
+++ b/HashLib/src/Crypto/HlpBlake3.pas
@@ -15,6 +15,7 @@ interface
HlpIHashInfo,
HlpHashSize,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
type
diff --git a/HashLib/src/Crypto/HlpSHA3.pas b/HashLib/src/Crypto/HlpSHA3.pas
index c23687ef..f8daaf1d 100644
--- a/HashLib/src/Crypto/HlpSHA3.pas
+++ b/HashLib/src/Crypto/HlpSHA3.pas
@@ -16,6 +16,7 @@ interface
HlpConverters,
HlpHashSize,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
type
diff --git a/HashLib/src/Crypto/HlpSnefru.pas b/HashLib/src/Crypto/HlpSnefru.pas
index 30e1c842..debe97ea 100644
--- a/HashLib/src/Crypto/HlpSnefru.pas
+++ b/HashLib/src/Crypto/HlpSnefru.pas
@@ -8,6 +8,7 @@ interface
SysUtils,
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpBitOperations,
HlpHashSize,
HlpIHash,
diff --git a/HashLib/src/Crypto/HlpTiger.pas b/HashLib/src/Crypto/HlpTiger.pas
index c0c9bd61..83fbcc74 100644
--- a/HashLib/src/Crypto/HlpTiger.pas
+++ b/HashLib/src/Crypto/HlpTiger.pas
@@ -8,6 +8,7 @@ interface
HlpBinaryPrimitives,
SysUtils,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpHashRounds,
HlpIHash,
HlpIHashInfo,
diff --git a/HashLib/src/Crypto/HlpTiger2.pas b/HashLib/src/Crypto/HlpTiger2.pas
index 345519c8..c263f0b8 100644
--- a/HashLib/src/Crypto/HlpTiger2.pas
+++ b/HashLib/src/Crypto/HlpTiger2.pas
@@ -8,6 +8,7 @@ interface
HlpBinaryPrimitives,
SysUtils,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpHashRounds,
HlpIHash,
HlpIHashInfo,
diff --git a/HashLib/src/Hash128/HlpMurmurHash3_x64_128.pas b/HashLib/src/Hash128/HlpMurmurHash3_x64_128.pas
index cc12ad85..e105ef0e 100644
--- a/HashLib/src/Hash128/HlpMurmurHash3_x64_128.pas
+++ b/HashLib/src/Hash128/HlpMurmurHash3_x64_128.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpIHashInfo,
HlpHash,
HlpIHash,
diff --git a/HashLib/src/Hash128/HlpMurmurHash3_x86_128.pas b/HashLib/src/Hash128/HlpMurmurHash3_x86_128.pas
index fa09f5d2..09efdc8b 100644
--- a/HashLib/src/Hash128/HlpMurmurHash3_x86_128.pas
+++ b/HashLib/src/Hash128/HlpMurmurHash3_x86_128.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpIHashInfo,
HlpHash,
HlpIHash,
diff --git a/HashLib/src/Hash128/HlpXXHash128.pas b/HashLib/src/Hash128/HlpXXHash128.pas
index b69d3d67..b324ba0b 100644
--- a/HashLib/src/Hash128/HlpXXHash128.pas
+++ b/HashLib/src/Hash128/HlpXXHash128.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpHash,
HlpIHash,
HlpIHashInfo,
diff --git a/HashLib/src/Hash32/HlpMurmur2.pas b/HashLib/src/Hash32/HlpMurmur2.pas
index 27aa37b1..9aabfa5b 100644
--- a/HashLib/src/Hash32/HlpMurmur2.pas
+++ b/HashLib/src/Hash32/HlpMurmur2.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpIHash,
HlpIHashInfo,
HlpHashResult,
diff --git a/HashLib/src/Hash32/HlpMurmurHash3_x86_32.pas b/HashLib/src/Hash32/HlpMurmurHash3_x86_32.pas
index ea1f1233..1535bab6 100644
--- a/HashLib/src/Hash32/HlpMurmurHash3_x86_32.pas
+++ b/HashLib/src/Hash32/HlpMurmurHash3_x86_32.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpIHashInfo,
HlpHash,
HlpIHash,
diff --git a/HashLib/src/Hash32/HlpXXHash32.pas b/HashLib/src/Hash32/HlpXXHash32.pas
index 56d62d5a..7fa10bf3 100644
--- a/HashLib/src/Hash32/HlpXXHash32.pas
+++ b/HashLib/src/Hash32/HlpXXHash32.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpHash,
HlpIHash,
HlpIHashInfo,
diff --git a/HashLib/src/Hash64/HlpMurmur2_64.pas b/HashLib/src/Hash64/HlpMurmur2_64.pas
index 8ffcddfd..971aaa43 100644
--- a/HashLib/src/Hash64/HlpMurmur2_64.pas
+++ b/HashLib/src/Hash64/HlpMurmur2_64.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpIHash,
HlpIHashInfo,
HlpHashResult,
diff --git a/HashLib/src/Hash64/HlpSipHash.pas b/HashLib/src/Hash64/HlpSipHash.pas
index 7916f978..c53d914e 100644
--- a/HashLib/src/Hash64/HlpSipHash.pas
+++ b/HashLib/src/Hash64/HlpSipHash.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpIHashInfo,
HlpHash,
HlpIHash,
diff --git a/HashLib/src/Hash64/HlpXXHash3.pas b/HashLib/src/Hash64/HlpXXHash3.pas
index b6ca698c..1d5dfe4d 100644
--- a/HashLib/src/Hash64/HlpXXHash3.pas
+++ b/HashLib/src/Hash64/HlpXXHash3.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpHash,
HlpIHash,
HlpIHashInfo,
diff --git a/HashLib/src/Hash64/HlpXXHash64.pas b/HashLib/src/Hash64/HlpXXHash64.pas
index a79671df..3479f1be 100644
--- a/HashLib/src/Hash64/HlpXXHash64.pas
+++ b/HashLib/src/Hash64/HlpXXHash64.pas
@@ -7,6 +7,7 @@ interface
uses
HlpBinaryPrimitives,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpHash,
HlpIHash,
HlpIHashInfo,
diff --git a/HashLib/src/Interfaces/HlpIKDF.pas b/HashLib/src/Interfaces/HlpIKDF.pas
index dddc950e..9495d162 100644
--- a/HashLib/src/Interfaces/HlpIKDF.pas
+++ b/HashLib/src/Interfaces/HlpIKDF.pas
@@ -5,6 +5,7 @@
interface
uses
+ HlpHashLibExceptions,
HlpHashLibTypes;
type
diff --git a/HashLib/src/KDF/HlpPBKDF2_HMACNotBuildInAdapter.pas b/HashLib/src/KDF/HlpPBKDF2_HMACNotBuildInAdapter.pas
index f3861e85..d9f2721a 100644
--- a/HashLib/src/KDF/HlpPBKDF2_HMACNotBuildInAdapter.pas
+++ b/HashLib/src/KDF/HlpPBKDF2_HMACNotBuildInAdapter.pas
@@ -11,6 +11,7 @@ interface
HlpIHashInfo,
HlpHMACNotBuildInAdapter,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
resourcestring
diff --git a/HashLib/src/KDF/HlpPBKDF_Argon2NotBuildInAdapter.pas b/HashLib/src/KDF/HlpPBKDF_Argon2NotBuildInAdapter.pas
index becd82c3..3f76c74c 100644
--- a/HashLib/src/KDF/HlpPBKDF_Argon2NotBuildInAdapter.pas
+++ b/HashLib/src/KDF/HlpPBKDF_Argon2NotBuildInAdapter.pas
@@ -19,6 +19,7 @@ interface
HlpBinaryPrimitives,
HlpArgon2TypeAndVersion,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
type
diff --git a/HashLib/src/KDF/HlpPBKDF_ScryptNotBuildInAdapter.pas b/HashLib/src/KDF/HlpPBKDF_ScryptNotBuildInAdapter.pas
index 997cda31..c9dc9eea 100644
--- a/HashLib/src/KDF/HlpPBKDF_ScryptNotBuildInAdapter.pas
+++ b/HashLib/src/KDF/HlpPBKDF_ScryptNotBuildInAdapter.pas
@@ -16,6 +16,7 @@ interface
HlpBinaryPrimitives,
HlpPBKDF2_HMACNotBuildInAdapter,
HlpArrayUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
type
diff --git a/HashLib/src/Utils/HlpArmHwCapProvider.pas b/HashLib/src/Misc/HlpArmHwCapProvider.pas
similarity index 100%
rename from HashLib/src/Utils/HlpArmHwCapProvider.pas
rename to HashLib/src/Misc/HlpArmHwCapProvider.pas
diff --git a/HashLib/src/Utils/HlpArmSimdFeatures.pas b/HashLib/src/Misc/HlpArmSimdFeatures.pas
similarity index 100%
rename from HashLib/src/Utils/HlpArmSimdFeatures.pas
rename to HashLib/src/Misc/HlpArmSimdFeatures.pas
diff --git a/HashLib/src/Utils/HlpBinaryPrimitives.pas b/HashLib/src/Misc/HlpBinaryPrimitives.pas
similarity index 100%
rename from HashLib/src/Utils/HlpBinaryPrimitives.pas
rename to HashLib/src/Misc/HlpBinaryPrimitives.pas
diff --git a/HashLib/src/Utils/HlpBitOperations.pas b/HashLib/src/Misc/HlpBitOperations.pas
similarity index 100%
rename from HashLib/src/Utils/HlpBitOperations.pas
rename to HashLib/src/Misc/HlpBitOperations.pas
diff --git a/HashLib/src/Utils/HlpConverters.pas b/HashLib/src/Misc/HlpConverters.pas
similarity index 99%
rename from HashLib/src/Utils/HlpConverters.pas
rename to HashLib/src/Misc/HlpConverters.pas
index 40f8216f..e11a56d5 100644
--- a/HashLib/src/Utils/HlpConverters.pas
+++ b/HashLib/src/Misc/HlpConverters.pas
@@ -10,6 +10,7 @@ interface
{$ENDIF}
Classes,
SysUtils,
+ HlpHashLibExceptions,
HlpHashLibTypes;
resourcestring
diff --git a/HashLib/src/Utils/HlpCpuFeatures.pas b/HashLib/src/Misc/HlpCpuFeatures.pas
similarity index 100%
rename from HashLib/src/Utils/HlpCpuFeatures.pas
rename to HashLib/src/Misc/HlpCpuFeatures.pas
diff --git a/HashLib/src/Utils/HlpDarwinSysCtl.pas b/HashLib/src/Misc/HlpDarwinSysCtl.pas
similarity index 100%
rename from HashLib/src/Utils/HlpDarwinSysCtl.pas
rename to HashLib/src/Misc/HlpDarwinSysCtl.pas
diff --git a/HashLib/src/Misc/HlpHashLibExceptions.pas b/HashLib/src/Misc/HlpHashLibExceptions.pas
new file mode 100644
index 00000000..604ed72a
--- /dev/null
+++ b/HashLib/src/Misc/HlpHashLibExceptions.pas
@@ -0,0 +1,24 @@
+unit HlpHashLibExceptions;
+
+{$I ..\Include\HashLib.inc}
+
+interface
+
+uses
+ SysUtils;
+
+type
+ EHashLibException = class(Exception);
+ EInvalidOperationHashLibException = class(EHashLibException);
+ EIndexOutOfRangeHashLibException = class(EHashLibException);
+ EArgumentHashLibException = class(EHashLibException);
+ EArgumentInvalidHashLibException = class(EHashLibException);
+ EArgumentNilHashLibException = class(EHashLibException);
+ EArgumentOutOfRangeHashLibException = class(EHashLibException);
+ ENullReferenceHashLibException = class(EHashLibException);
+ ENotImplementedHashLibException = class(EHashLibException);
+ EUnsupportedTypeHashLibException = class(EHashLibException);
+
+implementation
+
+end.
diff --git a/HashLib/src/Utils/HlpHashLibTypes.pas b/HashLib/src/Misc/HlpHashLibTypes.pas
similarity index 71%
rename from HashLib/src/Utils/HlpHashLibTypes.pas
rename to HashLib/src/Misc/HlpHashLibTypes.pas
index 89111dca..dd14882e 100644
--- a/HashLib/src/Utils/HlpHashLibTypes.pas
+++ b/HashLib/src/Misc/HlpHashLibTypes.pas
@@ -1,88 +1,78 @@
-unit HlpHashLibTypes;
-
-{$I ..\Include\HashLib.inc}
-
-interface
-
-uses
- SysUtils;
-
-type
-
-{$IFDEF FPC}
- PUInt64 = ^UInt64;
-{$ENDIF FPC}
- EHashLibException = class(Exception);
- EInvalidOperationHashLibException = class(EHashLibException);
- EIndexOutOfRangeHashLibException = class(EHashLibException);
- EArgumentHashLibException = class(EHashLibException);
- EArgumentInvalidHashLibException = class(EHashLibException);
- EArgumentNilHashLibException = class(EHashLibException);
- EArgumentOutOfRangeHashLibException = class(EHashLibException);
- ENullReferenceHashLibException = class(EHashLibException);
- ENotImplementedHashLibException = class(EHashLibException);
- EUnsupportedTypeHashLibException = class(EHashLibException);
-
- ///
- /// Represents a dynamic array of Byte.
- ///
- THashLibByteArray = TBytes;
-
- ///
- /// Represents a dynamic generic array of Type T.
- ///
- THashLibGenericArray = array of T;
-
- ///
- /// Represents a dynamic generic array of array of Type T.
- ///
- THashLibMatrixGenericArray = array of THashLibGenericArray;
-
- ///
- /// Represents a dynamic array of UInt32.
- ///
- THashLibUInt32Array = array of UInt32;
-
- ///
- /// Represents a dynamic array of UInt64.
- ///
- THashLibUInt64Array = array of UInt64;
-
- ///
- /// Represents a dynamic array of String.
- ///
- THashLibStringArray = array of String;
-
- ///
- /// Represents a dynamic array of Char.
- ///
- THashLibCharArray = array of Char;
-
- ///
- /// Represents a dynamic array of array of Byte.
- ///
- THashLibMatrixByteArray = array of THashLibByteArray;
-
- ///
- /// Represents a dynamic array of array of UInt32.
- ///
- THashLibMatrixUInt32Array = array of THashLibUInt32Array;
-
- ///
- /// Represents a dynamic array of array of UInt64.
- ///
- THashLibMatrixUInt64Array = array of THashLibUInt64Array;
-
-implementation
-
-{$IFDEF FPC}
-
-initialization
-
-// Set UTF-8 in AnsiStrings, just like Lazarus
-SetMultiByteConversionCodePage(CP_UTF8);
-// SetMultiByteFileSystemCodePage(CP_UTF8); not needed, this is the default under Windows
-SetMultiByteRTLFileSystemCodePage(CP_UTF8);
-{$ENDIF FPC}
-
-end.
+unit HlpHashLibTypes;
+
+{$I ..\Include\HashLib.inc}
+
+interface
+
+uses
+ SysUtils;
+
+type
+
+{$IFDEF FPC}
+ PUInt64 = ^UInt64;
+{$ENDIF FPC}
+
+ ///
+ /// Represents a dynamic array of Byte.
+ ///
+ THashLibByteArray = TBytes;
+
+ ///
+ /// Represents a dynamic generic array of Type T.
+ ///
+ THashLibGenericArray = array of T;
+
+ ///
+ /// Represents a dynamic generic array of array of Type T.
+ ///
+ THashLibMatrixGenericArray = array of THashLibGenericArray;
+
+ ///
+ /// Represents a dynamic array of UInt32.
+ ///
+ THashLibUInt32Array = array of UInt32;
+
+ ///
+ /// Represents a dynamic array of UInt64.
+ ///
+ THashLibUInt64Array = array of UInt64;
+
+ ///
+ /// Represents a dynamic array of String.
+ ///
+ THashLibStringArray = array of String;
+
+ ///
+ /// Represents a dynamic array of Char.
+ ///
+ THashLibCharArray = array of Char;
+
+ ///
+ /// Represents a dynamic array of array of Byte.
+ ///
+ THashLibMatrixByteArray = array of THashLibByteArray;
+
+ ///
+ /// Represents a dynamic array of array of UInt32.
+ ///
+ THashLibMatrixUInt32Array = array of THashLibUInt32Array;
+
+ ///
+ /// Represents a dynamic array of array of UInt64.
+ ///
+ THashLibMatrixUInt64Array = array of THashLibUInt64Array;
+
+implementation
+
+{$IFDEF FPC}
+
+initialization
+
+// Set UTF-8 in AnsiStrings, just like Lazarus
+SetMultiByteConversionCodePage(CP_UTF8);
+// SetMultiByteFileSystemCodePage(CP_UTF8); not needed, this is the default under Windows
+SetMultiByteRTLFileSystemCodePage(CP_UTF8);
+{$ENDIF FPC}
+
+end.
diff --git a/HashLib/src/Utils/HlpSimdLevels.pas b/HashLib/src/Misc/HlpSimdLevels.pas
similarity index 100%
rename from HashLib/src/Utils/HlpSimdLevels.pas
rename to HashLib/src/Misc/HlpSimdLevels.pas
diff --git a/HashLib/src/Utils/HlpX86SimdFeatures.pas b/HashLib/src/Misc/HlpX86SimdFeatures.pas
similarity index 100%
rename from HashLib/src/Utils/HlpX86SimdFeatures.pas
rename to HashLib/src/Misc/HlpX86SimdFeatures.pas
diff --git a/HashLib/src/NullDigest/HlpNullDigest.pas b/HashLib/src/NullDigest/HlpNullDigest.pas
index 2f19427c..0c4212e6 100644
--- a/HashLib/src/NullDigest/HlpNullDigest.pas
+++ b/HashLib/src/NullDigest/HlpNullDigest.pas
@@ -8,6 +8,7 @@ interface
Classes,
SysUtils,
HlpHashLibTypes,
+ HlpHashLibExceptions,
HlpHash,
HlpIHash,
HlpIHashInfo,
diff --git a/HashLib/src/Packages/Delphi/HashLib4PascalPackage.dpk b/HashLib/src/Packages/Delphi/HashLib4PascalPackage.dpk
index 96126128..02c43b4e 100644
--- a/HashLib/src/Packages/Delphi/HashLib4PascalPackage.dpk
+++ b/HashLib/src/Packages/Delphi/HashLib4PascalPackage.dpk
@@ -167,16 +167,17 @@ contains
HlpScryptSimd in '..\..\Simd\Facade\HlpScryptSimd.pas',
HlpScryptX86Backend in '..\..\Simd\Backend\HlpScryptX86Backend.pas',
HlpScryptArmBackend in '..\..\Simd\Backend\HlpScryptArmBackend.pas',
- HlpConverters in '..\..\Utils\HlpConverters.pas',
- HlpBitOperations in '..\..\Utils\HlpBitOperations.pas',
- HlpBinaryPrimitives in '..\..\Utils\HlpBinaryPrimitives.pas',
- HlpCpuFeatures in '..\..\Utils\HlpCpuFeatures.pas',
- HlpX86SimdFeatures in '..\..\Utils\HlpX86SimdFeatures.pas',
- HlpArmSimdFeatures in '..\..\Utils\HlpArmSimdFeatures.pas',
- HlpSimdLevels in '..\..\Utils\HlpSimdLevels.pas',
- HlpArmHwCapProvider in '..\..\Utils\HlpArmHwCapProvider.pas',
- HlpDarwinSysCtl in '..\..\Utils\HlpDarwinSysCtl.pas',
- HlpHashLibTypes in '..\..\Utils\HlpHashLibTypes.pas',
+ HlpConverters in '..\..\Misc\HlpConverters.pas',
+ HlpBitOperations in '..\..\Misc\HlpBitOperations.pas',
+ HlpBinaryPrimitives in '..\..\Misc\HlpBinaryPrimitives.pas',
+ HlpCpuFeatures in '..\..\Misc\HlpCpuFeatures.pas',
+ HlpX86SimdFeatures in '..\..\Misc\HlpX86SimdFeatures.pas',
+ HlpArmSimdFeatures in '..\..\Misc\HlpArmSimdFeatures.pas',
+ HlpSimdLevels in '..\..\Misc\HlpSimdLevels.pas',
+ HlpArmHwCapProvider in '..\..\Misc\HlpArmHwCapProvider.pas',
+ HlpDarwinSysCtl in '..\..\Misc\HlpDarwinSysCtl.pas',
+ HlpHashLibExceptions in '..\..\Misc\HlpHashLibExceptions.pas',
+ HlpHashLibTypes in '..\..\Misc\HlpHashLibTypes.pas',
HlpArrayUtils in '..\..\Utils\HlpArrayUtils.pas';
end.
diff --git a/HashLib/src/Packages/FPC/HashLib4PascalPackage.lpk b/HashLib/src/Packages/FPC/HashLib4PascalPackage.lpk
index 4b6d6e78..d7a72384 100644
--- a/HashLib/src/Packages/FPC/HashLib4PascalPackage.lpk
+++ b/HashLib/src/Packages/FPC/HashLib4PascalPackage.lpk
@@ -10,7 +10,7 @@
-
+
@@ -29,7 +29,7 @@
"/>
-
+
@@ -335,19 +335,19 @@
-
+
-
+
-
+
-
+
@@ -439,7 +439,7 @@
-
+
@@ -491,23 +491,23 @@
-
+
-
+
-
+
-
+
-
+
@@ -610,6 +610,10 @@
+
+
+
+
diff --git a/HashLib/src/Packages/FPC/HashLib4PascalPackage.pas b/HashLib/src/Packages/FPC/HashLib4PascalPackage.pas
index 26608075..33ed8780 100644
--- a/HashLib/src/Packages/FPC/HashLib4PascalPackage.pas
+++ b/HashLib/src/Packages/FPC/HashLib4PascalPackage.pas
@@ -10,38 +10,37 @@ interface
uses
HlpHash, HlpHashBuffer, HlpHashCryptoNotBuildIn, HlpHashFactory,
HlpHashResult, HlpHashRounds, HlpHashSize, HlpHMACNotBuildInAdapter,
- HlpMultipleTransformNonBlock, HlpAdler32, HlpCRC, HlpGost,
- HlpGrindahl256, HlpGrindahl512, HlpHAS160, HlpHaval, HlpMD2, HlpMD4, HlpMD5,
- HlpMDBase, HlpPanama, HlpRadioGatun32, HlpRadioGatun64, HlpRIPEMD,
- HlpRIPEMD128, HlpRIPEMD160, HlpRIPEMD256, HlpRIPEMD320, HlpSHA0, HlpSHA1,
- HlpSHA2_224, HlpSHA2_256, HlpSHA2_256Base, HlpSHA2_384, HlpSHA2_512,
- HlpSHA2_512Base, HlpSHA2_512_224, HlpSHA2_512_256, HlpSHA3, HlpSnefru,
- HlpTiger, HlpTiger2, HlpWhirlPool, HlpMurmurHash3_x64_128, HlpNullDigest,
- HlpAP, HlpBernstein, HlpBernstein1, HlpBKDR, HlpDEK, HlpDJB, HlpELF, HlpFNV,
- HlpFNV1a, HlpJenkins3, HlpJS, HlpMurmur2, HlpMurmurHash3_x86_32,
- HlpOneAtTime, HlpPJW, HlpRotating, HlpRS, HlpSDBM, HlpShiftAndXor,
- HlpSuperFast, HlpXXHash32, HlpFNV1a64, HlpFNV64, HlpMurmur2_64, HlpSipHash,
- HlpXXHash64, HlpIHash, HlpIHashInfo, HlpIHashResult, HlpConverters,
- HlpBitOperations, HlpBinaryPrimitives, HlpHashLibTypes,
- HlpMurmurHash3_x86_128, HlpPBKDF2_HMACNotBuildInAdapter, HlpIKDF, HlpKDF,
- HlpICRC, HlpBlake2B, HlpBlake2S, HlpGOST3411_2012,
- HlpArgon2TypeAndVersion, HlpPBKDF_Argon2NotBuildInAdapter,
- HlpPBKDF_ScryptNotBuildInAdapter, HlpArrayUtils, HlpBlake2BP, HlpBlake2SP,
- HlpSipHash128, HlpBlake2SParams, HlpBlake2BParams, HlpIBlake2SParams,
- HlpIBlake2BParams, HlpBlake3, HlpXXHash3, HlpXXHash128, HlpCpuFeatures,
- HlpXXHash3Simd, HlpBlake2BSimd, HlpBlake2SSimd, HlpArgon2Simd,
- HlpScryptSimd, HlpBlake3Simd, HlpSHA2_256Simd, HlpSHA2_512Simd, HlpSHA1Simd,
- HlpAdler32Simd, HlpCRCCore, HlpSHA3Simd,
- HlpArmSimdFeatures, HlpSimdLevels, HlpX86SimdFeatures, HlpArmHwCapProvider,
- HlpDarwinSysCtl, HlpSHA2_256X86Backend, HlpSHA2_256ArmBackend,
- HlpSHA1X86Backend, HlpSHA1ArmBackend, HlpSHA2_512X86Backend,
- HlpSHA2_512ArmBackend, HlpSHA3X86Backend, HlpSHA3ArmBackend,
- HlpBlake2BX86Backend, HlpBlake2BArmBackend, HlpBlake2SX86Backend,
- HlpBlake2SArmBackend, HlpBlake3X86Backend, HlpBlake3ArmBackend,
- HlpXXHash3X86Backend, HlpXXHash3ArmBackend, HlpAdler32X86Backend,
- HlpAdler32ArmBackend, HlpArgon2X86Backend, HlpArgon2ArmBackend,
- HlpScryptX86Backend, HlpScryptArmBackend, HlpCRCSimd, HlpCRCX86Backend,
- HlpCRCArmBackend;
+ HlpMultipleTransformNonBlock, HlpAdler32, HlpCRC, HlpGost, HlpGrindahl256,
+ HlpGrindahl512, HlpHAS160, HlpHaval, HlpMD2, HlpMD4, HlpMD5, HlpMDBase,
+ HlpPanama, HlpRadioGatun32, HlpRadioGatun64, HlpRIPEMD, HlpRIPEMD128,
+ HlpRIPEMD160, HlpRIPEMD256, HlpRIPEMD320, HlpSHA0, HlpSHA1, HlpSHA2_224,
+ HlpSHA2_256, HlpSHA2_256Base, HlpSHA2_384, HlpSHA2_512, HlpSHA2_512Base,
+ HlpSHA2_512_224, HlpSHA2_512_256, HlpSHA3, HlpSnefru, HlpTiger, HlpTiger2,
+ HlpWhirlPool, HlpMurmurHash3_x64_128, HlpNullDigest, HlpAP, HlpBernstein,
+ HlpBernstein1, HlpBKDR, HlpDEK, HlpDJB, HlpELF, HlpFNV, HlpFNV1a,
+ HlpJenkins3, HlpJS, HlpMurmur2, HlpMurmurHash3_x86_32, HlpOneAtTime, HlpPJW,
+ HlpRotating, HlpRS, HlpSDBM, HlpShiftAndXor, HlpSuperFast, HlpXXHash32,
+ HlpFNV1a64, HlpFNV64, HlpMurmur2_64, HlpSipHash, HlpXXHash64, HlpIHash,
+ HlpIHashInfo, HlpIHashResult, HlpConverters, HlpBitOperations,
+ HlpBinaryPrimitives, HlpHashLibTypes, HlpMurmurHash3_x86_128,
+ HlpPBKDF2_HMACNotBuildInAdapter, HlpIKDF, HlpKDF, HlpICRC, HlpBlake2B,
+ HlpBlake2S, HlpGOST3411_2012, HlpArgon2TypeAndVersion,
+ HlpPBKDF_Argon2NotBuildInAdapter, HlpPBKDF_ScryptNotBuildInAdapter,
+ HlpArrayUtils, HlpBlake2BP, HlpBlake2SP, HlpSipHash128, HlpBlake2SParams,
+ HlpBlake2BParams, HlpIBlake2SParams, HlpIBlake2BParams, HlpBlake3,
+ HlpXXHash3, HlpXXHash128, HlpCpuFeatures, HlpXXHash3Simd, HlpBlake2BSimd,
+ HlpBlake2SSimd, HlpArgon2Simd, HlpScryptSimd, HlpBlake3Simd,
+ HlpSHA2_256Simd, HlpSHA2_512Simd, HlpSHA1Simd, HlpAdler32Simd, HlpCRCCore,
+ HlpSHA3Simd, HlpArmSimdFeatures, HlpSimdLevels, HlpX86SimdFeatures,
+ HlpArmHwCapProvider, HlpDarwinSysCtl, HlpSHA2_256X86Backend,
+ HlpSHA2_256ArmBackend, HlpSHA1X86Backend, HlpSHA1ArmBackend,
+ HlpSHA2_512X86Backend, HlpSHA2_512ArmBackend, HlpSHA3X86Backend,
+ HlpSHA3ArmBackend, HlpBlake2BX86Backend, HlpBlake2BArmBackend,
+ HlpBlake2SX86Backend, HlpBlake2SArmBackend, HlpBlake3X86Backend,
+ HlpBlake3ArmBackend, HlpXXHash3X86Backend, HlpXXHash3ArmBackend,
+ HlpAdler32X86Backend, HlpAdler32ArmBackend, HlpArgon2X86Backend,
+ HlpArgon2ArmBackend, HlpScryptX86Backend, HlpScryptArmBackend, HlpCRCSimd,
+ HlpCRCX86Backend, HlpCRCArmBackend, HlpHashLibExceptions;
implementation