<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup Label="ProjectConfigurations">
    <ProjectConfiguration Include="Debug|Win32">
      <Configuration>Debug</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|Win32">
      <Configuration>Release</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|x64">
      <Configuration>Debug</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|x64">
      <Configuration>Release</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
  </ItemGroup>
  <PropertyGroup Label="Globals">
    <VCProjectVersion>15.0</VCProjectVersion>
    <ProjectGuid>{3346A4AD-C438-4324-8B77-47A16452954B}</ProjectGuid>
    <RootNamespace>randomx</RootNamespace>
    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
    <ConfigurationType>StaticLibrary</ConfigurationType>
    <UseDebugLibraries>true</UseDebugLibraries>
    <PlatformToolset>v143</PlatformToolset>
    <CharacterSet>MultiByte</CharacterSet>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
    <ConfigurationType>StaticLibrary</ConfigurationType>
    <UseDebugLibraries>false</UseDebugLibraries>
    <PlatformToolset>v143</PlatformToolset>
    <WholeProgramOptimization>true</WholeProgramOptimization>
    <CharacterSet>MultiByte</CharacterSet>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
    <ConfigurationType>StaticLibrary</ConfigurationType>
    <UseDebugLibraries>true</UseDebugLibraries>
    <PlatformToolset>v143</PlatformToolset>
    <CharacterSet>MultiByte</CharacterSet>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
    <ConfigurationType>StaticLibrary</ConfigurationType>
    <UseDebugLibraries>false</UseDebugLibraries>
    <PlatformToolset>v143</PlatformToolset>
    <WholeProgramOptimization>true</WholeProgramOptimization>
    <CharacterSet>MultiByte</CharacterSet>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  <ImportGroup Label="ExtensionSettings">
    <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props" />
  </ImportGroup>
  <ImportGroup Label="Shared">
  </ImportGroup>
  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <PropertyGroup Label="UserMacros" />
  <PropertyGroup />
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    <ClCompile>
      <WarningLevel>Level3</WarningLevel>
      <Optimization>Disabled</Optimization>
      <SDLCheck>false</SDLCheck>
      <ConformanceMode>true</ConformanceMode>
    </ClCompile>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <ClCompile>
      <WarningLevel>Level4</WarningLevel>
      <Optimization>Disabled</Optimization>
      <SDLCheck>false</SDLCheck>
      <ConformanceMode>true</ConformanceMode>
    </ClCompile>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <ClCompile>
      <WarningLevel>Level3</WarningLevel>
      <Optimization>MaxSpeed</Optimization>
      <FunctionLevelLinking>true</FunctionLevelLinking>
      <IntrinsicFunctions>true</IntrinsicFunctions>
      <SDLCheck>false</SDLCheck>
      <ConformanceMode>true</ConformanceMode>
      <EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet>
    </ClCompile>
    <Link>
      <EnableCOMDATFolding>true</EnableCOMDATFolding>
      <OptimizeReferences>true</OptimizeReferences>
      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
      <Profile>false</Profile>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
    <ClCompile>
      <WarningLevel>Level4</WarningLevel>
      <Optimization>MaxSpeed</Optimization>
      <FunctionLevelLinking>true</FunctionLevelLinking>
      <IntrinsicFunctions>true</IntrinsicFunctions>
      <SDLCheck>false</SDLCheck>
      <ConformanceMode>true</ConformanceMode>
      <AssemblerOutput>AssemblyCode</AssemblerOutput>
      <PreprocessorDefinitions>_MBCS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
    <Link>
      <EnableCOMDATFolding>true</EnableCOMDATFolding>
      <OptimizeReferences>true</OptimizeReferences>
      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
      <Profile>false</Profile>
      <AdditionalOptions>
      </AdditionalOptions>
      <StackReserveSize>4194304</StackReserveSize>
    </Link>
    <PreBuildEvent>
      <Command>powershell -ExecutionPolicy Bypass -File .\h2inc.ps1 ..\src\configuration.h &gt; ..\src\asm\configuration.asm
SET ERRORLEVEL = 0</Command>
    </PreBuildEvent>
  </ItemDefinitionGroup>
  <ItemGroup>
    <ClCompile Include="..\src\allocator.cpp" />
    <ClCompile Include="..\src\argon2_avx2.c">
      <EnableEnhancedInstructionSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AdvancedVectorExtensions2</EnableEnhancedInstructionSet>
    </ClCompile>
    <ClCompile Include="..\src\argon2_core.c" />
    <ClCompile Include="..\src\argon2_ref.c" />
    <ClCompile Include="..\src\argon2_ssse3.c" />
    <ClCompile Include="..\src\assembly_generator_x86.cpp" />
    <ClCompile Include="..\src\blake2_generator.cpp" />
    <ClCompile Include="..\src\blake2\blake2b.c" />
    <ClCompile Include="..\src\bytecode_machine.cpp" />
    <ClCompile Include="..\src\cpu.cpp" />
    <ClCompile Include="..\src\vm_compiled_light.cpp" />
    <ClCompile Include="..\src\vm_compiled.cpp" />
    <ClCompile Include="..\src\dataset.cpp" />
    <ClCompile Include="..\src\aes_hash.cpp" />
    <ClCompile Include="..\src\instruction.cpp" />
    <ClCompile Include="..\src\instructions_portable.cpp" />
    <ClCompile Include="..\src\vm_interpreted_light.cpp" />
    <ClCompile Include="..\src\vm_interpreted.cpp" />
    <ClCompile Include="..\src\jit_compiler_x86.cpp" />
    <ClCompile Include="..\src\randomx.cpp" />
    <ClCompile Include="..\src\superscalar.cpp" />
    <ClCompile Include="..\src\reciprocal.c" />
    <ClCompile Include="..\src\soft_aes.cpp" />
    <ClCompile Include="..\src\virtual_machine.cpp" />
    <ClCompile Include="..\src\virtual_memory.cpp" />
  </ItemGroup>
  <ItemGroup>
    <MASM Include="..\src\jit_compiler_x86_static.asm" />
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="..\src\allocator.hpp" />
    <ClInclude Include="..\src\argon2.h" />
    <ClInclude Include="..\src\argon2_core.h" />
    <ClInclude Include="..\src\assembly_generator_x86.hpp" />
    <ClInclude Include="..\src\blake2\blake2-impl.h" />
    <ClInclude Include="..\src\blake2\blake2.h" />
    <ClInclude Include="..\src\blake2\blamka-round-avx2.h" />
    <ClInclude Include="..\src\blake2\blamka-round-ref.h" />
    <ClInclude Include="..\src\blake2\blamka-round-ssse3.h" />
    <ClInclude Include="..\src\blake2\endian.h" />
    <ClInclude Include="..\src\blake2_generator.hpp" />
    <ClInclude Include="..\src\bytecode_machine.hpp" />
    <ClInclude Include="..\src\common.hpp" />
    <ClInclude Include="..\src\cpu.hpp" />
    <ClInclude Include="..\src\jit_compiler.hpp" />
    <ClInclude Include="..\src\jit_compiler_a64.hpp" />
    <ClInclude Include="..\src\jit_compiler_fallback.hpp" />
    <ClInclude Include="..\src\vm_compiled_light.hpp" />
    <ClInclude Include="..\src\vm_compiled.hpp" />
    <ClInclude Include="..\src\configuration.h" />
    <ClInclude Include="..\src\dataset.hpp" />
    <ClInclude Include="..\src\aes_hash.hpp" />
    <ClInclude Include="..\src\instruction.hpp" />
    <ClInclude Include="..\src\instruction_weights.hpp" />
    <ClInclude Include="..\src\vm_interpreted_light.hpp" />
    <ClInclude Include="..\src\vm_interpreted.hpp" />
    <ClInclude Include="..\src\intrin_portable.h" />
    <ClInclude Include="..\src\jit_compiler_x86_static.hpp" />
    <ClInclude Include="..\src\jit_compiler_x86.hpp" />
    <ClInclude Include="..\src\randomx.h" />
    <ClInclude Include="..\src\superscalar.hpp" />
    <ClInclude Include="..\src\program.hpp" />
    <ClInclude Include="..\src\reciprocal.h" />
    <ClInclude Include="..\src\soft_aes.h" />
    <ClInclude Include="..\src\superscalar_program.hpp" />
    <ClInclude Include="..\src\virtual_machine.hpp" />
    <ClInclude Include="..\src\virtual_memory.hpp" />
  </ItemGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  <ImportGroup Label="ExtensionTargets">
    <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />
  </ImportGroup>
</Project>