Changed the structure of the project
This commit is contained in:
parent
f97a60de6c
commit
7d0f9524d8
15
build.cmd
Normal file
15
build.cmd
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
@echo off
|
||||||
|
|
||||||
|
pushd %~dp0
|
||||||
|
|
||||||
|
md artifacts
|
||||||
|
call dotnet --info
|
||||||
|
call dotnet restore src
|
||||||
|
if %errorlevel% neq 0 exit /b %errorlevel%
|
||||||
|
call dotnet test src/Standart.Hash.xxHash.Test
|
||||||
|
if %errorlevel% neq 0 exit /b %errorlevel%
|
||||||
|
|
||||||
|
echo Packing Standart.Hash.xxHash
|
||||||
|
call dotnet pack src/Standart.Hash.xxHash -c Release -o ..\..\artifacts
|
||||||
|
|
||||||
|
popd
|
||||||
12
src/Standart.Hash.xxHash.Perf/Program.cs
Normal file
12
src/Standart.Hash.xxHash.Perf/Program.cs
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
namespace Standart.Hash.xxHash.Perf
|
||||||
|
{
|
||||||
|
using BenchmarkDotNet.Running;
|
||||||
|
|
||||||
|
public class Program
|
||||||
|
{
|
||||||
|
public static void Main(string[] args)
|
||||||
|
{
|
||||||
|
var summary = BenchmarkRunner.Run<xxHashBenchmark>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,20 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<OutputType>Exe</OutputType>
|
||||||
|
<TargetFramework>netcoreapp2.0</TargetFramework>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<PlatformTarget>x64</PlatformTarget>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<Optimize>false</Optimize>
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="BenchmarkDotNet" Version="0.10.14" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\Standart.Hash.xxHash\Standart.Hash.xxHash.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
@ -1,16 +1,15 @@
|
|||||||
namespace xxHash.Perf
|
namespace Standart.Hash.xxHash.Perf
|
||||||
{
|
{
|
||||||
using System;
|
using System;
|
||||||
using BenchmarkDotNet.Attributes;
|
using BenchmarkDotNet.Attributes;
|
||||||
using BenchmarkDotNet.Attributes.Columns;
|
using BenchmarkDotNet.Attributes.Columns;
|
||||||
using BenchmarkDotNet.Attributes.Exporters;
|
using BenchmarkDotNet.Attributes.Exporters;
|
||||||
using Lib;
|
|
||||||
|
|
||||||
[RPlotExporter, RankColumn]
|
[RPlotExporter, RankColumn]
|
||||||
[MinColumn, MaxColumn]
|
[MinColumn, MaxColumn]
|
||||||
[MemoryDiagnoser]
|
[MemoryDiagnoser]
|
||||||
[DisassemblyDiagnoser(printAsm: true, printSource: true)]
|
//[DisassemblyDiagnoser(printAsm: true, printSource: true)]
|
||||||
public class xxHashTest
|
public class xxHashBenchmark
|
||||||
{
|
{
|
||||||
const int KB = 1024;
|
const int KB = 1024;
|
||||||
const int MB = 1024 * KB;
|
const int MB = 1024 * KB;
|
||||||
@ -40,4 +39,4 @@
|
|||||||
return xxHash64.ComputeHash(data, data.Length);
|
return xxHash64.ComputeHash(data, data.Length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -0,0 +1,23 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<IsPackable>false</IsPackable>
|
||||||
|
<TargetFramework>netcoreapp2.0</TargetFramework>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<PlatformTarget>x64</PlatformTarget>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<Optimize>false</Optimize>
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.6.0" />
|
||||||
|
<PackageReference Include="xunit" Version="2.3.1" />
|
||||||
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
|
||||||
|
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\Standart.Hash.xxHash\Standart.Hash.xxHash.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
@ -1,15 +1,14 @@
|
|||||||
namespace xxHash.Test
|
namespace Standart.Hash.xxHash.Test
|
||||||
{
|
{
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using Lib;
|
using Xunit;
|
||||||
using NUnit.Framework;
|
|
||||||
|
|
||||||
[TestFixture]
|
|
||||||
public class xxHash32Test
|
public class xxHash32Test
|
||||||
{
|
{
|
||||||
[Test]
|
[Fact]
|
||||||
public void Compute_hash_for_the_byte_array()
|
public void Compute_hash_for_the_byte_array()
|
||||||
{
|
{
|
||||||
|
// Arrange
|
||||||
byte[] data = new byte[]
|
byte[] data = new byte[]
|
||||||
{
|
{
|
||||||
0xde, 0x55, 0x47, 0x7f, 0x14, 0x8f, 0xf1, 0x48,
|
0xde, 0x55, 0x47, 0x7f, 0x14, 0x8f, 0xf1, 0x48,
|
||||||
@ -30,19 +29,23 @@
|
|||||||
{
|
{
|
||||||
// Act
|
// Act
|
||||||
uint hash = xxHash32.ComputeHash(data, len);
|
uint hash = xxHash32.ComputeHash(data, len);
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
Assert.AreEqual(hash, actual[len - 1]);
|
Assert.Equal(hash, actual[len - 1]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Fact]
|
||||||
public void Compute_hash_for_the_string()
|
public void Compute_hash_for_the_string()
|
||||||
{
|
{
|
||||||
var data = Encoding.UTF8.GetBytes("Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod");
|
// Arrange
|
||||||
|
byte[] data = Encoding.UTF8.GetBytes("Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod");
|
||||||
|
|
||||||
var hash = xxHash32.ComputeHash(data, data.Length);
|
// Act
|
||||||
|
uint hash = xxHash32.ComputeHash(data, data.Length);
|
||||||
|
|
||||||
Assert.AreEqual(hash, 0xe3cd4dee);
|
// Assert
|
||||||
|
Assert.Equal(0xe3cd4dee, hash);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1,15 +1,15 @@
|
|||||||
namespace xxHash.Test
|
namespace Standart.Hash.xxHash.Test
|
||||||
{
|
{
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using Lib;
|
using Hash;
|
||||||
using NUnit.Framework;
|
using Xunit;
|
||||||
|
|
||||||
[TestFixture]
|
|
||||||
public class xxHash64Test
|
public class xxHash64Test
|
||||||
{
|
{
|
||||||
[Test]
|
[Fact]
|
||||||
public void Compute_hash_for_the_byte_array()
|
public void Compute_hash_for_the_byte_array()
|
||||||
{
|
{
|
||||||
|
// Arrange
|
||||||
byte[] data = new byte[]
|
byte[] data = new byte[]
|
||||||
{
|
{
|
||||||
0x60, 0x82, 0x40, 0x77, 0x8a, 0x0e, 0xe4, 0xd5,
|
0x60, 0x82, 0x40, 0x77, 0x8a, 0x0e, 0xe4, 0xd5,
|
||||||
@ -36,21 +36,25 @@
|
|||||||
|
|
||||||
for (int len = 1; len <= data.Length; len++)
|
for (int len = 1; len <= data.Length; len++)
|
||||||
{
|
{
|
||||||
// Assert
|
|
||||||
ulong hash = xxHash64.ComputeHash(data, len);
|
|
||||||
// Act
|
// Act
|
||||||
Assert.AreEqual(hash, actual[len-1]);
|
ulong hash = xxHash64.ComputeHash(data, len);
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
Assert.Equal(hash, actual[len-1]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Fact]
|
||||||
public void Compute_hash_for_the_string()
|
public void Compute_hash_for_the_string()
|
||||||
{
|
{
|
||||||
var data = Encoding.UTF8.GetBytes("Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod");
|
// Arrange
|
||||||
|
byte[] data = Encoding.UTF8.GetBytes("Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod");
|
||||||
|
|
||||||
var hash = xxHash64.ComputeHash(data, data.Length);
|
// Act
|
||||||
|
ulong hash = xxHash64.ComputeHash(data, data.Length);
|
||||||
|
|
||||||
Assert.AreEqual(hash, 0x5dee64ff7c935d7f);
|
// Assert
|
||||||
|
Assert.Equal((ulong) 0x5dee64ff7c935d7f, hash);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
28
src/Standart.Hash.xxHash.sln
Normal file
28
src/Standart.Hash.xxHash.sln
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Standart.Hash.xxHash", "Standart.Hash.xxHash\Standart.Hash.xxHash.csproj", "{E468CD00-D581-46DD-ADE6-71EFA74AD62E}"
|
||||||
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Standart.Hash.xxHash.Perf", "Standart.Hash.xxHash.Perf\Standart.Hash.xxHash.Perf.csproj", "{7B80269B-1EC4-40B5-8E19-F0A68C4404E5}"
|
||||||
|
EndProject
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Standart.Hash.xxHash.Test", "Standart.Hash.xxHash.Test\Standart.Hash.xxHash.Test.csproj", "{0D9506CC-A6A1-4C0C-8827-9AB958942895}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
Release|Any CPU = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{E468CD00-D581-46DD-ADE6-71EFA74AD62E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{E468CD00-D581-46DD-ADE6-71EFA74AD62E}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{E468CD00-D581-46DD-ADE6-71EFA74AD62E}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{E468CD00-D581-46DD-ADE6-71EFA74AD62E}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{7B80269B-1EC4-40B5-8E19-F0A68C4404E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{7B80269B-1EC4-40B5-8E19-F0A68C4404E5}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{7B80269B-1EC4-40B5-8E19-F0A68C4404E5}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{7B80269B-1EC4-40B5-8E19-F0A68C4404E5}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
{0D9506CC-A6A1-4C0C-8827-9AB958942895}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{0D9506CC-A6A1-4C0C-8827-9AB958942895}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{0D9506CC-A6A1-4C0C-8827-9AB958942895}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{0D9506CC-A6A1-4C0C-8827-9AB958942895}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
||||||
23
src/Standart.Hash.xxHash/Standart.Hash.xxHash.csproj
Normal file
23
src/Standart.Hash.xxHash/Standart.Hash.xxHash.csproj
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFrameworks>net45;netstandard2.0</TargetFrameworks>
|
||||||
|
<PackageId>Standart.Hash.xxHash</PackageId>
|
||||||
|
<VersionPrefix>1.0.0</VersionPrefix>
|
||||||
|
<AssemblyName>Standart.Hash.xxHash</AssemblyName>
|
||||||
|
<AssemblyTitle>Standart.Hash.xxHash</AssemblyTitle>
|
||||||
|
<Authors>Alexander Melnik</Authors>
|
||||||
|
<PackageTags>hash;xxHash</PackageTags>
|
||||||
|
<Description>Standart.Hash.xxHash</Description>
|
||||||
|
<PackageProjectUrl>https://github.com/uranium62/xxHash</PackageProjectUrl>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||||
|
<PlatformTarget>x64</PlatformTarget>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<Optimize>false</Optimize>
|
||||||
|
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Project>
|
||||||
@ -1,18 +1,25 @@
|
|||||||
namespace xxHash.Lib
|
namespace Standart.Hash.xxHash
|
||||||
{
|
{
|
||||||
public static class xxHash32
|
public static class xxHash32
|
||||||
{
|
{
|
||||||
private const uint p1 = 2654435761U;
|
private const uint p1 = 2654435761U;
|
||||||
private const uint p2 = 2246822519U;
|
private const uint p2 = 2246822519U;
|
||||||
private const uint p3 = 3266489917U;
|
private const uint p3 = 3266489917U;
|
||||||
private const uint p4 = 668265263U;
|
private const uint p4 = 668265263U;
|
||||||
private const uint p5 = 374761393U;
|
private const uint p5 = 374761393U;
|
||||||
|
|
||||||
|
/// <summary>d
|
||||||
|
/// Compute xxHash for the data byte array
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="data">The source of data</param>
|
||||||
|
/// <param name="len">The length of the data for hashing</param>
|
||||||
|
/// <param name="seed">The seed number</param>
|
||||||
|
/// <returns>hash</returns>
|
||||||
public static unsafe uint ComputeHash(byte[] data, int len, uint seed = 0)
|
public static unsafe uint ComputeHash(byte[] data, int len, uint seed = 0)
|
||||||
{
|
{
|
||||||
fixed (byte* pData = &data[0])
|
fixed (byte* pData = &data[0])
|
||||||
{
|
{
|
||||||
uint* ptr = (uint*) pData;
|
byte* ptr = pData;
|
||||||
byte* end = pData + len;
|
byte* end = pData + len;
|
||||||
uint h32;
|
uint h32;
|
||||||
|
|
||||||
@ -27,22 +34,24 @@
|
|||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
v1 += ptr[0] * p2;
|
v1 += *((uint*)ptr) * p2;
|
||||||
v1 = (v1 << 13) | (v1 >> (32 - 13)); // rotl 13
|
v1 = (v1 << 13) | (v1 >> (32 - 13)); // rotl 13
|
||||||
v1 *= p1;
|
v1 *= p1;
|
||||||
|
ptr += 4;
|
||||||
|
|
||||||
v2 += ptr[1] * p2;
|
v2 += *((uint*)ptr) * p2;
|
||||||
v2 = (v2 << 13) | (v2 >> (32 - 13)); // rotl 13
|
v2 = (v2 << 13) | (v2 >> (32 - 13)); // rotl 13
|
||||||
v2 *= p1;
|
v2 *= p1;
|
||||||
|
ptr += 4;
|
||||||
|
|
||||||
v3 += ptr[2] * p2;
|
v3 += *((uint*)ptr) * p2;
|
||||||
v3 = (v3 << 13) | (v3 >> (32 - 13)); // rotl 13
|
v3 = (v3 << 13) | (v3 >> (32 - 13)); // rotl 13
|
||||||
v3 *= p1;
|
v3 *= p1;
|
||||||
|
ptr += 4;
|
||||||
|
|
||||||
v4 += ptr[3] * p2;
|
v4 += *((uint*)ptr) * p2;
|
||||||
v4 = (v4 << 13) | (v4 >> (32 - 13)); // rotl 13
|
v4 = (v4 << 13) | (v4 >> (32 - 13)); // rotl 13
|
||||||
v4 *= p1;
|
v4 *= p1;
|
||||||
|
|
||||||
ptr += 4;
|
ptr += 4;
|
||||||
|
|
||||||
} while (ptr <= limit);
|
} while (ptr <= limit);
|
||||||
@ -56,22 +65,22 @@
|
|||||||
{
|
{
|
||||||
h32 = seed + p5;
|
h32 = seed + p5;
|
||||||
}
|
}
|
||||||
|
|
||||||
h32 += (uint) len;
|
h32 += (uint) len;
|
||||||
|
|
||||||
// finalize
|
// finalize
|
||||||
while (ptr <= end - 4)
|
while (ptr <= end - 4)
|
||||||
{
|
{
|
||||||
h32 += ptr[0] * p3;
|
h32 += *((uint*)ptr) * p3;
|
||||||
h32 = ((h32 << 17) | (h32 >> (32 - 17))) * p4; // (rotl 17) * p4
|
h32 = ((h32 << 17) | (h32 >> (32 - 17))) * p4; // (rotl 17) * p4
|
||||||
ptr += 1;
|
ptr += 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
byte* lst = (byte*) ptr;
|
while (ptr < end)
|
||||||
while (lst < end)
|
|
||||||
{
|
{
|
||||||
h32 += (*lst) * p5;
|
h32 += *((byte*)ptr) * p5;
|
||||||
h32 = ((h32 << 11) | (h32 >> (32 - 11))) * p1; // (rotl 11) * p1
|
h32 = ((h32 << 11) | (h32 >> (32 - 11))) * p1; // (rotl 11) * p1
|
||||||
lst += 1;
|
ptr += 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// avalanche
|
// avalanche
|
||||||
@ -85,4 +94,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1,4 +1,4 @@
|
|||||||
namespace xxHash.Lib
|
namespace Standart.Hash.xxHash
|
||||||
{
|
{
|
||||||
public static class xxHash64
|
public static class xxHash64
|
||||||
{
|
{
|
||||||
@ -8,11 +8,18 @@
|
|||||||
private const ulong p4 = 9650029242287828579UL;
|
private const ulong p4 = 9650029242287828579UL;
|
||||||
private const ulong p5 = 2870177450012600261UL;
|
private const ulong p5 = 2870177450012600261UL;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Compute xxHash for the data byte array
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="data">The source of data</param>
|
||||||
|
/// <param name="len">The length of the data for hashing</param>
|
||||||
|
/// <param name="seed">The seed number</param>
|
||||||
|
/// <returns>hash</returns>
|
||||||
public static unsafe ulong ComputeHash(byte[] data, int len, ulong seed = 0)
|
public static unsafe ulong ComputeHash(byte[] data, int len, ulong seed = 0)
|
||||||
{
|
{
|
||||||
fixed (byte* pData = &data[0])
|
fixed (byte* pData = &data[0])
|
||||||
{
|
{
|
||||||
ulong* ptr = (ulong*) pData;
|
byte* ptr = pData;
|
||||||
byte* end = pData + len;
|
byte* end = pData + len;
|
||||||
ulong h64;
|
ulong h64;
|
||||||
|
|
||||||
@ -27,23 +34,25 @@
|
|||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
v1 += ptr[0] * p2;
|
v1 += *((ulong*)ptr) * p2;
|
||||||
v1 = (v1 << 31) | (v1 >> (64 - 31)); // rotl 31
|
v1 = (v1 << 31) | (v1 >> (64 - 31)); // rotl 31
|
||||||
v1 *= p1;
|
v1 *= p1;
|
||||||
|
ptr += 8;
|
||||||
|
|
||||||
v2 += ptr[1] * p2;
|
v2 += *((ulong*)ptr) * p2;
|
||||||
v2 = (v2 << 31) | (v2 >> (64 - 31)); // rotl 31
|
v2 = (v2 << 31) | (v2 >> (64 - 31)); // rotl 31
|
||||||
v2 *= p1;
|
v2 *= p1;
|
||||||
|
ptr += 8;
|
||||||
|
|
||||||
v3 += ptr[2] * p2;
|
v3 += *((ulong*)ptr) * p2;
|
||||||
v3 = (v3 << 31) | (v3 >> (64 - 31)); // rotl 31
|
v3 = (v3 << 31) | (v3 >> (64 - 31)); // rotl 31
|
||||||
v3 *= p1;
|
v3 *= p1;
|
||||||
|
ptr += 8;
|
||||||
|
|
||||||
v4 += ptr[3] * p2;
|
v4 += *((ulong*)ptr) * p2;
|
||||||
v4 = (v4 << 31) | (v4 >> (64 - 31)); // rotl 31
|
v4 = (v4 << 31) | (v4 >> (64 - 31)); // rotl 31
|
||||||
v4 *= p1;
|
v4 *= p1;
|
||||||
|
ptr += 8;
|
||||||
ptr += 4;
|
|
||||||
|
|
||||||
} while (ptr <= limit);
|
} while (ptr <= limit);
|
||||||
|
|
||||||
@ -90,28 +99,26 @@
|
|||||||
// finalize
|
// finalize
|
||||||
while (ptr <= end - 8)
|
while (ptr <= end - 8)
|
||||||
{
|
{
|
||||||
ulong t1 = ptr[0] * p2;
|
ulong t1 = *((ulong*)ptr) * p2;
|
||||||
t1 = (t1 << 31) | (t1 >> (64 - 31)); // rotl 31
|
t1 = (t1 << 31) | (t1 >> (64 - 31)); // rotl 31
|
||||||
t1 *= p1;
|
t1 *= p1;
|
||||||
h64 ^= t1;
|
h64 ^= t1;
|
||||||
h64 = ((h64 << 27) | (h64 >> (64 - 27))) * p1 + p4; // (rotl 27) * p1 + p4
|
h64 = ((h64 << 27) | (h64 >> (64 - 27))) * p1 + p4; // (rotl 27) * p1 + p4
|
||||||
ptr += 1;
|
ptr += 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint* l32 = (uint*) ptr;
|
if (ptr <= end - 4)
|
||||||
if (l32 <= end - 4)
|
|
||||||
{
|
{
|
||||||
h64 ^= l32[0] * p1;
|
h64 ^= *((uint*)ptr) * p1;
|
||||||
h64 = ((h64 << 23) | (h64 >> (64 - 23))) * p2 + p3; // (rotl 27) * p2 + p3
|
h64 = ((h64 << 23) | (h64 >> (64 - 23))) * p2 + p3; // (rotl 27) * p2 + p3
|
||||||
l32 += 1;
|
ptr += 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
byte* lst = (byte*)l32;
|
while (ptr < end)
|
||||||
while (lst < end)
|
|
||||||
{
|
{
|
||||||
h64 ^= lst[0] * p5;
|
h64 ^= *((byte*)ptr) * p5;
|
||||||
h64 = ((h64 << 11) | (h64 >> (64 - 11))) * p1; // (rotl 11) * p1
|
h64 = ((h64 << 11) | (h64 >> (64 - 11))) * p1; // (rotl 11) * p1
|
||||||
lst += 1;
|
ptr += 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// avalanche
|
// avalanche
|
||||||
@ -125,4 +132,4 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1,40 +0,0 @@
|
|||||||
using System.Reflection;
|
|
||||||
using System.Runtime.CompilerServices;
|
|
||||||
using System.Runtime.InteropServices;
|
|
||||||
using System.Security;
|
|
||||||
|
|
||||||
// General Information about an assembly is controlled through the following
|
|
||||||
// set of attributes. Change these attribute values to modify the information
|
|
||||||
// associated with an assembly.
|
|
||||||
[assembly: AssemblyTitle("xxHash.Lib")]
|
|
||||||
[assembly: AssemblyDescription("")]
|
|
||||||
[assembly: AssemblyConfiguration("")]
|
|
||||||
[assembly: AssemblyCompany("")]
|
|
||||||
[assembly: AssemblyProduct("xxHash.Lib")]
|
|
||||||
[assembly: AssemblyCopyright("Copyright © 2018")]
|
|
||||||
[assembly: AssemblyTrademark("")]
|
|
||||||
[assembly: AssemblyCulture("")]
|
|
||||||
|
|
||||||
// Setting ComVisible to false makes the types in this assembly not visible
|
|
||||||
// to COM components. If you need to access a type in this assembly from
|
|
||||||
// COM, set the ComVisible attribute to true on that type.
|
|
||||||
[assembly: ComVisible(false)]
|
|
||||||
|
|
||||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
|
||||||
[assembly: Guid("1487b414-7f4b-4b4a-adf3-6c7f6c0a15ac")]
|
|
||||||
|
|
||||||
// Version information for an assembly consists of the following four values:
|
|
||||||
//
|
|
||||||
// Major Version
|
|
||||||
// Minor Version
|
|
||||||
// Build Number
|
|
||||||
// Revision
|
|
||||||
//
|
|
||||||
// You can specify all the values or you can default the Build and Revision Numbers
|
|
||||||
// by using the '*' as shown below:
|
|
||||||
// [assembly: AssemblyVersion("1.0.*")]
|
|
||||||
[assembly: AssemblyVersion("1.0.0.0")]
|
|
||||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
|
||||||
[assembly: AllowPartiallyTrustedCallers]
|
|
||||||
[assembly: SecurityTransparent]
|
|
||||||
[assembly: SecurityRules(SecurityRuleSet.Level2, SkipVerificationInFullTrust = true)]
|
|
||||||
@ -1,45 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
||||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
|
||||||
<ProjectGuid>{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}</ProjectGuid>
|
|
||||||
<OutputType>Library</OutputType>
|
|
||||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
|
||||||
<RootNamespace>xxHash.Lib</RootNamespace>
|
|
||||||
<AssemblyName>xxHash.Lib</AssemblyName>
|
|
||||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
|
||||||
<FileAlignment>512</FileAlignment>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
|
||||||
<DebugSymbols>true</DebugSymbols>
|
|
||||||
<DebugType>full</DebugType>
|
|
||||||
<Optimize>true</Optimize>
|
|
||||||
<OutputPath>bin\Debug\</OutputPath>
|
|
||||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<WarningLevel>4</WarningLevel>
|
|
||||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
|
||||||
<DebugType>pdbonly</DebugType>
|
|
||||||
<Optimize>true</Optimize>
|
|
||||||
<OutputPath>bin\Release\</OutputPath>
|
|
||||||
<DefineConstants>TRACE</DefineConstants>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<WarningLevel>4</WarningLevel>
|
|
||||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
|
||||||
<PlatformTarget>x64</PlatformTarget>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Reference Include="System" />
|
|
||||||
<Reference Include="System.Core" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
|
||||||
<Compile Include="xxHash32.cs" />
|
|
||||||
<Compile Include="xxHash64.cs" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
|
||||||
</Project>
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<startup>
|
|
||||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
|
|
||||||
</startup>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Collections.Immutable" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-1.2.1.0" newVersion="1.2.1.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.IO.Compression" publicKeyToken="b77a5c561934e089" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.IO.FileSystem" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Security.Cryptography.Algorithms" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.1.0.0" newVersion="4.1.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.IO.FileSystem.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Security.Cryptography.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Xml.XPath.XDocument" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
namespace xxHash.Perf
|
|
||||||
{
|
|
||||||
using BenchmarkDotNet.Running;
|
|
||||||
|
|
||||||
class Program
|
|
||||||
{
|
|
||||||
static void Main(string[] args)
|
|
||||||
{
|
|
||||||
var summary = BenchmarkRunner.Run<xxHashTest>();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,36 +0,0 @@
|
|||||||
using System.Reflection;
|
|
||||||
using System.Runtime.CompilerServices;
|
|
||||||
using System.Runtime.InteropServices;
|
|
||||||
|
|
||||||
// General Information about an assembly is controlled through the following
|
|
||||||
// set of attributes. Change these attribute values to modify the information
|
|
||||||
// associated with an assembly.
|
|
||||||
[assembly: AssemblyTitle("xxHash.Perf")]
|
|
||||||
[assembly: AssemblyDescription("")]
|
|
||||||
[assembly: AssemblyConfiguration("")]
|
|
||||||
[assembly: AssemblyCompany("")]
|
|
||||||
[assembly: AssemblyProduct("xxHash.Perf")]
|
|
||||||
[assembly: AssemblyCopyright("Copyright © 2018")]
|
|
||||||
[assembly: AssemblyTrademark("")]
|
|
||||||
[assembly: AssemblyCulture("")]
|
|
||||||
|
|
||||||
// Setting ComVisible to false makes the types in this assembly not visible
|
|
||||||
// to COM components. If you need to access a type in this assembly from
|
|
||||||
// COM, set the ComVisible attribute to true on that type.
|
|
||||||
[assembly: ComVisible(false)]
|
|
||||||
|
|
||||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
|
||||||
[assembly: Guid("2b643cdc-7b3a-4821-a736-4c7b1b280aff")]
|
|
||||||
|
|
||||||
// Version information for an assembly consists of the following four values:
|
|
||||||
//
|
|
||||||
// Major Version
|
|
||||||
// Minor Version
|
|
||||||
// Build Number
|
|
||||||
// Revision
|
|
||||||
//
|
|
||||||
// You can specify all the values or you can default the Build and Revision Numbers
|
|
||||||
// by using the '*' as shown below:
|
|
||||||
// [assembly: AssemblyVersion("1.0.*")]
|
|
||||||
[assembly: AssemblyVersion("1.0.0.0")]
|
|
||||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
|
||||||
@ -1,54 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<packages>
|
|
||||||
<package id="BenchmarkDotNet" version="0.10.13" targetFramework="net461" />
|
|
||||||
<package id="BenchmarkDotNet.Core" version="0.10.13" targetFramework="net461" />
|
|
||||||
<package id="BenchmarkDotNet.Toolchains.Roslyn" version="0.10.13" targetFramework="net461" />
|
|
||||||
<package id="Microsoft.CodeAnalysis.Analyzers" version="1.1.0" targetFramework="net461" />
|
|
||||||
<package id="Microsoft.CodeAnalysis.Common" version="2.6.1" targetFramework="net461" />
|
|
||||||
<package id="Microsoft.CodeAnalysis.CSharp" version="2.6.1" targetFramework="net461" />
|
|
||||||
<package id="Microsoft.DotNet.InternalAbstractions" version="1.0.0" targetFramework="net461" />
|
|
||||||
<package id="Microsoft.DotNet.PlatformAbstractions" version="1.1.1" targetFramework="net461" />
|
|
||||||
<package id="Microsoft.Win32.Registry" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.AppContext" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Collections" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Collections.Concurrent" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Collections.Immutable" version="1.3.1" targetFramework="net461" />
|
|
||||||
<package id="System.Console" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Diagnostics.Debug" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Diagnostics.FileVersionInfo" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Diagnostics.StackTrace" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Diagnostics.Tools" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Dynamic.Runtime" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Globalization" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.IO.Compression" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.IO.FileSystem" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.IO.FileSystem.Primitives" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Linq" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Linq.Expressions" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Reflection" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Reflection.Metadata" version="1.4.2" targetFramework="net461" />
|
|
||||||
<package id="System.Resources.ResourceManager" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Runtime" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Runtime.Extensions" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Runtime.InteropServices" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Runtime.Numerics" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Security.Cryptography.Algorithms" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Security.Cryptography.Encoding" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Security.Cryptography.Primitives" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Security.Cryptography.X509Certificates" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Text.Encoding" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Text.Encoding.CodePages" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Text.Encoding.Extensions" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Threading" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Threading.Tasks" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Threading.Tasks.Extensions" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Threading.Tasks.Parallel" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Threading.Thread" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.ValueTuple" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Xml.ReaderWriter" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Xml.XDocument" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Xml.XmlDocument" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Xml.XmlSerializer" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Xml.XPath" version="4.3.0" targetFramework="net461" />
|
|
||||||
<package id="System.Xml.XPath.XDocument" version="4.3.0" targetFramework="net461" />
|
|
||||||
</packages>
|
|
||||||
@ -1,157 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
||||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
|
||||||
<ProjectGuid>{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}</ProjectGuid>
|
|
||||||
<OutputType>Exe</OutputType>
|
|
||||||
<RootNamespace>xxHash.Perf</RootNamespace>
|
|
||||||
<AssemblyName>xxHash.Perf</AssemblyName>
|
|
||||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
|
||||||
<FileAlignment>512</FileAlignment>
|
|
||||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
|
||||||
<PlatformTarget>x64</PlatformTarget>
|
|
||||||
<DebugSymbols>true</DebugSymbols>
|
|
||||||
<DebugType>full</DebugType>
|
|
||||||
<Optimize>false</Optimize>
|
|
||||||
<OutputPath>bin\Debug\</OutputPath>
|
|
||||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<WarningLevel>4</WarningLevel>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
|
||||||
<PlatformTarget>x64</PlatformTarget>
|
|
||||||
<DebugType>pdbonly</DebugType>
|
|
||||||
<Optimize>true</Optimize>
|
|
||||||
<OutputPath>bin\Release\</OutputPath>
|
|
||||||
<DefineConstants>TRACE</DefineConstants>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<WarningLevel>4</WarningLevel>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Reference Include="BenchmarkDotNet, Version=0.10.13.0, Culture=neutral, PublicKeyToken=aa0ca2f9092cefc4, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\BenchmarkDotNet.0.10.13\lib\net46\BenchmarkDotNet.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="BenchmarkDotNet.Core, Version=0.10.13.0, Culture=neutral, PublicKeyToken=aa0ca2f9092cefc4, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\BenchmarkDotNet.Core.0.10.13\lib\net46\BenchmarkDotNet.Core.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="BenchmarkDotNet.Toolchains.Roslyn, Version=0.10.13.0, Culture=neutral, PublicKeyToken=aa0ca2f9092cefc4, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\BenchmarkDotNet.Toolchains.Roslyn.0.10.13\lib\net46\BenchmarkDotNet.Toolchains.Roslyn.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Microsoft.CodeAnalysis, Version=2.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\Microsoft.CodeAnalysis.Common.2.6.1\lib\netstandard1.3\Microsoft.CodeAnalysis.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Microsoft.CodeAnalysis.CSharp, Version=2.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\Microsoft.CodeAnalysis.CSharp.2.6.1\lib\netstandard1.3\Microsoft.CodeAnalysis.CSharp.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Microsoft.DotNet.InternalAbstractions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\Microsoft.DotNet.InternalAbstractions.1.0.0\lib\net451\Microsoft.DotNet.InternalAbstractions.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Microsoft.DotNet.PlatformAbstractions, Version=1.1.1.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\Microsoft.DotNet.PlatformAbstractions.1.1.1\lib\net451\Microsoft.DotNet.PlatformAbstractions.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="Microsoft.Win32.Registry, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\Microsoft.Win32.Registry.4.3.0\lib\net46\Microsoft.Win32.Registry.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System" />
|
|
||||||
<Reference Include="System.AppContext, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.AppContext.4.3.0\lib\net46\System.AppContext.dll</HintPath>
|
|
||||||
<Private>True</Private>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Collections.Immutable, Version=1.2.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Collections.Immutable.1.3.1\lib\portable-net45+win8+wp8+wpa81\System.Collections.Immutable.dll</HintPath>
|
|
||||||
<Private>True</Private>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.ComponentModel.Composition" />
|
|
||||||
<Reference Include="System.Console, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Console.4.3.0\lib\net46\System.Console.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Core" />
|
|
||||||
<Reference Include="System.Diagnostics.FileVersionInfo, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Diagnostics.FileVersionInfo.4.3.0\lib\net46\System.Diagnostics.FileVersionInfo.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Diagnostics.StackTrace, Version=4.0.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Diagnostics.StackTrace.4.3.0\lib\net46\System.Diagnostics.StackTrace.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.IO.Compression, Version=4.1.2.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll</HintPath>
|
|
||||||
<Private>True</Private>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.IO.FileSystem, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.IO.FileSystem.4.3.0\lib\net46\System.IO.FileSystem.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.IO.FileSystem.Primitives, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.IO.FileSystem.Primitives.4.3.0\lib\net46\System.IO.FileSystem.Primitives.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Management" />
|
|
||||||
<Reference Include="System.Numerics" />
|
|
||||||
<Reference Include="System.Reflection.Metadata, Version=1.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Reflection.Metadata.1.4.2\lib\portable-net45+win8\System.Reflection.Metadata.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Security.Cryptography.Algorithms, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Security.Cryptography.Algorithms.4.3.0\lib\net461\System.Security.Cryptography.Algorithms.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Security.Cryptography.Encoding, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Security.Cryptography.Primitives, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Security.Cryptography.X509Certificates, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Security.Cryptography.X509Certificates.4.3.0\lib\net461\System.Security.Cryptography.X509Certificates.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Text.Encoding.CodePages, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Text.Encoding.CodePages.4.3.0\lib\net46\System.Text.Encoding.CodePages.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.1.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.3.0\lib\portable-net45+win8+wp8+wpa81\System.Threading.Tasks.Extensions.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Threading.Thread, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Threading.Thread.4.3.0\lib\net46\System.Threading.Thread.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.ValueTuple, Version=4.0.1.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.ValueTuple.4.3.0\lib\netstandard1.0\System.ValueTuple.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Xml.Linq" />
|
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
|
||||||
<Reference Include="Microsoft.CSharp" />
|
|
||||||
<Reference Include="System.Data" />
|
|
||||||
<Reference Include="System.Net.Http" />
|
|
||||||
<Reference Include="System.Xml" />
|
|
||||||
<Reference Include="System.Xml.ReaderWriter, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Xml.ReaderWriter.4.3.0\lib\net46\System.Xml.ReaderWriter.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Xml.XmlDocument, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Xml.XmlDocument.4.3.0\lib\net46\System.Xml.XmlDocument.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Xml.XPath, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Xml.XPath.4.3.0\lib\net46\System.Xml.XPath.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System.Xml.XPath.XDocument, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\System.Xml.XPath.XDocument.4.3.0\lib\net46\System.Xml.XPath.XDocument.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Compile Include="Program.cs" />
|
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
|
||||||
<Compile Include="xxHashTest.cs" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="App.config" />
|
|
||||||
<None Include="packages.config" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.1.1.0\analyzers\dotnet\cs\Microsoft.CodeAnalysis.Analyzers.dll" />
|
|
||||||
<Analyzer Include="..\packages\Microsoft.CodeAnalysis.Analyzers.1.1.0\analyzers\dotnet\cs\Microsoft.CodeAnalysis.CSharp.Analyzers.dll" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ProjectReference Include="..\xxHash.Lib\xxHash.Lib.csproj">
|
|
||||||
<Project>{1487b414-7f4b-4b4a-adf3-6c7f6c0a15ac}</Project>
|
|
||||||
<Name>xxHash.Lib</Name>
|
|
||||||
</ProjectReference>
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
|
||||||
</Project>
|
|
||||||
@ -1,36 +0,0 @@
|
|||||||
using System.Reflection;
|
|
||||||
using System.Runtime.CompilerServices;
|
|
||||||
using System.Runtime.InteropServices;
|
|
||||||
|
|
||||||
// General Information about an assembly is controlled through the following
|
|
||||||
// set of attributes. Change these attribute values to modify the information
|
|
||||||
// associated with an assembly.
|
|
||||||
[assembly: AssemblyTitle("xxHash.Test")]
|
|
||||||
[assembly: AssemblyDescription("")]
|
|
||||||
[assembly: AssemblyConfiguration("")]
|
|
||||||
[assembly: AssemblyCompany("")]
|
|
||||||
[assembly: AssemblyProduct("xxHash.Test")]
|
|
||||||
[assembly: AssemblyCopyright("Copyright © 2018")]
|
|
||||||
[assembly: AssemblyTrademark("")]
|
|
||||||
[assembly: AssemblyCulture("")]
|
|
||||||
|
|
||||||
// Setting ComVisible to false makes the types in this assembly not visible
|
|
||||||
// to COM components. If you need to access a type in this assembly from
|
|
||||||
// COM, set the ComVisible attribute to true on that type.
|
|
||||||
[assembly: ComVisible(false)]
|
|
||||||
|
|
||||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
|
||||||
[assembly: Guid("30129d86-62b5-4f40-bbb8-25ff858c18d3")]
|
|
||||||
|
|
||||||
// Version information for an assembly consists of the following four values:
|
|
||||||
//
|
|
||||||
// Major Version
|
|
||||||
// Minor Version
|
|
||||||
// Build Number
|
|
||||||
// Revision
|
|
||||||
//
|
|
||||||
// You can specify all the values or you can default the Build and Revision Numbers
|
|
||||||
// by using the '*' as shown below:
|
|
||||||
// [assembly: AssemblyVersion("1.0.*")]
|
|
||||||
[assembly: AssemblyVersion("1.0.0.0")]
|
|
||||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<packages>
|
|
||||||
<package id="NUnit" version="3.10.1" targetFramework="net461" />
|
|
||||||
</packages>
|
|
||||||
@ -1,67 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<Import Project="..\packages\NUnit.3.10.1\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.10.1\build\NUnit.props')" />
|
|
||||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
|
||||||
<PropertyGroup>
|
|
||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
||||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
|
||||||
<ProjectGuid>{30129D86-62B5-4F40-BBB8-25FF858C18D3}</ProjectGuid>
|
|
||||||
<OutputType>Library</OutputType>
|
|
||||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
|
||||||
<RootNamespace>xxHash.Test</RootNamespace>
|
|
||||||
<AssemblyName>xxHash.Test</AssemblyName>
|
|
||||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
|
||||||
<FileAlignment>512</FileAlignment>
|
|
||||||
<NuGetPackageImportStamp>
|
|
||||||
</NuGetPackageImportStamp>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
|
||||||
<DebugSymbols>true</DebugSymbols>
|
|
||||||
<DebugType>full</DebugType>
|
|
||||||
<Optimize>false</Optimize>
|
|
||||||
<OutputPath>bin\Debug\</OutputPath>
|
|
||||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<WarningLevel>4</WarningLevel>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
|
||||||
<DebugType>pdbonly</DebugType>
|
|
||||||
<Optimize>true</Optimize>
|
|
||||||
<OutputPath>bin\Release\</OutputPath>
|
|
||||||
<DefineConstants>TRACE</DefineConstants>
|
|
||||||
<ErrorReport>prompt</ErrorReport>
|
|
||||||
<WarningLevel>4</WarningLevel>
|
|
||||||
<PlatformTarget>x64</PlatformTarget>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Reference Include="nunit.framework, Version=3.10.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
|
|
||||||
<HintPath>..\packages\NUnit.3.10.1\lib\net45\nunit.framework.dll</HintPath>
|
|
||||||
</Reference>
|
|
||||||
<Reference Include="System" />
|
|
||||||
<Reference Include="System.Core" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Compile Include="xxHash32Test.cs" />
|
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
|
||||||
<Compile Include="xxHash64Test.cs" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ProjectReference Include="..\xxHash.Lib\xxHash.Lib.csproj">
|
|
||||||
<Project>{1487b414-7f4b-4b4a-adf3-6c7f6c0a15ac}</Project>
|
|
||||||
<Name>xxHash.Lib</Name>
|
|
||||||
</ProjectReference>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="packages.config" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
|
|
||||||
</ItemGroup>
|
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
|
||||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
|
||||||
<PropertyGroup>
|
|
||||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
|
||||||
</PropertyGroup>
|
|
||||||
<Error Condition="!Exists('..\packages\NUnit.3.10.1\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.10.1\build\NUnit.props'))" />
|
|
||||||
</Target>
|
|
||||||
</Project>
|
|
||||||
@ -1,65 +0,0 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
|
||||||
# Visual Studio 15
|
|
||||||
VisualStudioVersion = 15.0.27130.2026
|
|
||||||
MinimumVisualStudioVersion = 10.0.40219.1
|
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "xxHash.Lib", "xxHash.Lib\xxHash.Lib.csproj", "{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}"
|
|
||||||
EndProject
|
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "xxHash.Test", "xxHash.Test\xxHash.Test.csproj", "{30129D86-62B5-4F40-BBB8-25FF858C18D3}"
|
|
||||||
EndProject
|
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "xxHash.Perf", "xxHash.Perf\xxHash.Perf.csproj", "{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}"
|
|
||||||
EndProject
|
|
||||||
Global
|
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
|
||||||
Debug|Any CPU = Debug|Any CPU
|
|
||||||
Debug|x64 = Debug|x64
|
|
||||||
Debug|x86 = Debug|x86
|
|
||||||
Release|Any CPU = Release|Any CPU
|
|
||||||
Release|x64 = Release|x64
|
|
||||||
Release|x86 = Release|x86
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Debug|x64.ActiveCfg = Debug|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Debug|x64.Build.0 = Debug|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Debug|x86.ActiveCfg = Debug|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Debug|x86.Build.0 = Debug|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Release|x64.ActiveCfg = Release|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Release|x64.Build.0 = Release|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Release|x86.ActiveCfg = Release|Any CPU
|
|
||||||
{1487B414-7F4B-4B4A-ADF3-6C7F6C0A15AC}.Release|x86.Build.0 = Release|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Debug|x64.ActiveCfg = Debug|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Debug|x64.Build.0 = Debug|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Debug|x86.ActiveCfg = Debug|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Debug|x86.Build.0 = Debug|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Release|x64.ActiveCfg = Release|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Release|x64.Build.0 = Release|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Release|x86.ActiveCfg = Release|Any CPU
|
|
||||||
{30129D86-62B5-4F40-BBB8-25FF858C18D3}.Release|x86.Build.0 = Release|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Debug|x64.ActiveCfg = Debug|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Debug|x64.Build.0 = Debug|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Debug|x86.ActiveCfg = Debug|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Debug|x86.Build.0 = Debug|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Release|x64.ActiveCfg = Release|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Release|x64.Build.0 = Release|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Release|x86.ActiveCfg = Release|Any CPU
|
|
||||||
{2B643CDC-7B3A-4821-A736-4C7B1B280AFF}.Release|x86.Build.0 = Release|Any CPU
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
|
||||||
HideSolutionNode = FALSE
|
|
||||||
EndGlobalSection
|
|
||||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
|
||||||
SolutionGuid = {5FB21551-AFF0-4BF4-8011-8BF4C703F80E}
|
|
||||||
EndGlobalSection
|
|
||||||
EndGlobal
|
|
||||||
Loading…
Reference in New Issue
Block a user