Add Windows assembly files to the build

Windows ASM files generated along side the ATT assembly files.
Adding them to the build so they can be used.
This commit is contained in:
Sean Parkinson
2026-06-29 11:07:30 +10:00
parent f1b700180c
commit bcef8f4f6d
28 changed files with 150930 additions and 2240 deletions
+7 -1
View File
@@ -546,6 +546,12 @@ jobs:
fail-fast: false
matrix:
arch: [ x64, Win32, ARM64 ]
asm: [ false ]
include:
# Intel assembly build (x64 only): assembles the crypto .asm files
# and enables the matching USE_INTEL_SPEEDUP code paths.
- arch: x64
asm: true
# This should be a safe limit for the tests to run.
timeout-minutes: 6
env:
@@ -570,7 +576,7 @@ jobs:
working-directory: ${{env.GITHUB_WORKSPACE}}
# Add additional options to the MSBuild command line here (like platform or verbosity level).
# See https://docs.microsoft.com/visualstudio/msbuild/msbuild-command-line-reference
run: msbuild /m /p:PlatformToolset=v142 /p:Platform=${{matrix.arch}} /p:Configuration=${{env.BUILD_CONFIGURATION}} ${{env.SOLUTION_FILE_PATH}}
run: msbuild /m /p:PlatformToolset=v142 /p:Platform=${{matrix.arch}} /p:Configuration=${{env.BUILD_CONFIGURATION}} /p:WolfSSLIntelAsm=${{matrix.asm}} ${{env.SOLUTION_FILE_PATH}}
- if: ${{ matrix.arch != 'ARM64' }}
name: Run Test
+8 -1
View File
@@ -13,6 +13,13 @@ jobs:
if: ${{ (github.repository_owner == 'wolfssl') && (github.event_name != 'pull_request' || github.event.pull_request.draft == false) }}
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
# false: pure C. true: assemble the crypto .asm files and enable the
# USE_INTEL_SPEEDUP code paths (x64).
asm: [ false, true ]
# This should be a safe limit for the tests to run.
timeout-minutes: 6
@@ -48,7 +55,7 @@ jobs:
working-directory: ${{env.GITHUB_WORKSPACE}}
# Add additional options to the MSBuild command line here (like platform or verbosity level).
# See https://docs.microsoft.com/visualstudio/msbuild/msbuild-command-line-reference
run: msbuild /m /p:PlatformToolset=v142 /p:Platform=${{env.BUILD_PLATFORM}} /p:Configuration=${{env.BUILD_CONFIGURATION}} ${{env.SOLUTION_FILE_PATH}}
run: msbuild /m /p:PlatformToolset=v142 /p:Platform=${{env.BUILD_PLATFORM}} /p:Configuration=${{env.BUILD_CONFIGURATION}} /p:WolfSSLIntelAsm=${{matrix.asm}} ${{env.SOLUTION_FILE_PATH}}
- name: Run wolfCrypt test
working-directory: ${{env.GITHUB_WORKSPACE}}wolfssl\wrapper\CSharp\Debug\x64\
+8
View File
@@ -478,6 +478,14 @@
<ItemGroup>
<ClInclude Include="..\..\IDE\WIN\user_settings.h" />
</ItemGroup>
<!-- Keep USE_INTEL_SPEEDUP/WOLFSSL_X86_64_BUILD consistent with the library
(set by /p:WolfSSLIntelAsm=true) so struct layouts match; a mismatch
overruns hash/Hmac stack buffers. -->
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+8
View File
@@ -478,6 +478,14 @@
<ItemGroup>
<ClInclude Include="..\..\IDE\WIN\user_settings.h" />
</ItemGroup>
<!-- Keep USE_INTEL_SPEEDUP/WOLFSSL_X86_64_BUILD consistent with the library
(set by /p:WolfSSLIntelAsm=true) so struct layouts match; a mismatch
overruns hash/Hmac stack buffers. -->
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+8
View File
@@ -478,6 +478,14 @@
<ItemGroup>
<ClInclude Include="..\..\IDE\WIN\user_settings.h" />
</ItemGroup>
<!-- Keep USE_INTEL_SPEEDUP/WOLFSSL_X86_64_BUILD consistent with the library
(set by /p:WolfSSLIntelAsm=true) so struct layouts match; a mismatch
overruns hash/Hmac stack buffers. -->
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+8
View File
@@ -478,6 +478,14 @@
<ItemGroup>
<ClInclude Include="..\..\IDE\WIN\user_settings.h" />
</ItemGroup>
<!-- Keep USE_INTEL_SPEEDUP/WOLFSSL_X86_64_BUILD consistent with the library
(set by /p:WolfSSLIntelAsm=true) so struct layouts match; a mismatch
overruns hash/Hmac stack buffers. -->
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+8
View File
@@ -256,6 +256,14 @@
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<!-- Keep USE_INTEL_SPEEDUP/WOLFSSL_X86_64_BUILD consistent with the library
(set by /p:WolfSSLIntelAsm=true) so struct layouts match; a mismatch
overruns hash/Hmac stack buffers. -->
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+270 -262
View File
@@ -1,263 +1,271 @@
<?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="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|ARM64">
<Configuration>Debug</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|ARM64">
<Configuration>Release</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{8C89E16E-9C36-45EF-A491-F4EBD4A8D8F1}</ProjectGuid>
<RootNamespace>sslSniffTest</RootNamespace>
<Keyword>Win32Proj</Keyword>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>15.0.28307.799</_ProjectFileVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<LinkIncremental>true</LinkIncremental>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
<LinkIncremental>true</LinkIncremental>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<LinkIncremental>false</LinkIncremental>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
<LinkIncremental>false</LinkIncremental>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader />
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader />
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="snifftest.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\IDE\WIN\user_settings.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
<?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="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|ARM64">
<Configuration>Debug</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|ARM64">
<Configuration>Release</Configuration>
<Platform>ARM64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{8C89E16E-9C36-45EF-A491-F4EBD4A8D8F1}</ProjectGuid>
<RootNamespace>sslSniffTest</RootNamespace>
<Keyword>Win32Proj</Keyword>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v141</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>15.0.28307.799</_ProjectFileVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<LinkIncremental>true</LinkIncremental>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
<LinkIncremental>true</LinkIncremental>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<LinkIncremental>false</LinkIncremental>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
<LinkIncremental>false</LinkIncremental>
<IntDir>$(Configuration)\$(Platform)\$(ProjectName)_obj\</IntDir>
<OutDir>$(SolutionDir)$(Configuration)\$(Platform)\</OutDir>
<TargetName>snifftest</TargetName>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader />
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader />
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>../../../WpdPack/Include;../..;../../IDE/WIN;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;WOLFSSL_USER_SETTINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>wpcap.lib;Packet.lib;sslSniffer.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../../WpdPack/Lib/x64;$(SolutionDir)$(Configuration)\$(Platform)\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="snifftest.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\IDE\WIN\user_settings.h" />
</ItemGroup>
<!-- Keep USE_INTEL_SPEEDUP/WOLFSSL_X86_64_BUILD consistent with the library
(set by /p:WolfSSLIntelAsm=true) so struct layouts match; a mismatch
overruns hash/Hmac stack buffers. -->
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
+8
View File
@@ -484,6 +484,14 @@
<ItemGroup>
<ClInclude Include="..\IDE\WIN\user_settings.h" />
</ItemGroup>
<!-- Keep USE_INTEL_SPEEDUP/WOLFSSL_X86_64_BUILD consistent with the library
(set by /p:WolfSSLIntelAsm=true) so struct layouts match; a mismatch
overruns hash/Hmac stack buffers. -->
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+38 -38
View File
@@ -1141,7 +1141,7 @@ AES_CTR_encrypt_AESNI:
.p2align 4
_AES_CTR_encrypt_AESNI:
#endif /* __APPLE__ */
pushq %rbx
pushq %r12
movdqu L_aes_ctr_aesni_bswap(%rip), %xmm8
movdqu L_aes_ctr_aesni_one(%rip), %xmm9
pxor %xmm10, %xmm10
@@ -1156,7 +1156,7 @@ L_AES_CTR_encrypt_AESNI_enc_64:
# 64 bytes of input
# aes_ctr_enc_64
leaq (%rdi,%rax,1), %r11
leaq (%rsi,%rax,1), %rbx
leaq (%rsi,%rax,1), %r12
movdqa %xmm7, %xmm0
pshufb %xmm8, %xmm0
paddq %xmm9, %xmm7
@@ -1278,10 +1278,10 @@ L_AES_CTR_encrypt_AESNI_64_aes_enc_block_last:
pxor %xmm4, %xmm2
movdqu 48(%r11), %xmm4
pxor %xmm4, %xmm3
movdqu %xmm0, (%rbx)
movdqu %xmm1, 16(%rbx)
movdqu %xmm2, 32(%rbx)
movdqu %xmm3, 48(%rbx)
movdqu %xmm0, (%r12)
movdqu %xmm1, 16(%r12)
movdqu %xmm2, 32(%r12)
movdqu %xmm3, 48(%r12)
addl $0x40, %eax
cmpl %r10d, %eax
jl L_AES_CTR_encrypt_AESNI_enc_64
@@ -1346,7 +1346,7 @@ L_AES_CTR_encrypt_AESNI_16_aes_enc_block_last:
L_AES_CTR_encrypt_AESNI_done_enc:
pshufb %xmm8, %xmm7
movdqu %xmm7, (%r9)
popq %rbx
popq %r12
repz retq
#ifndef __APPLE__
.size AES_CTR_encrypt_AESNI,.-AES_CTR_encrypt_AESNI
@@ -1972,7 +1972,7 @@ AES_CTR_encrypt_avx1:
.p2align 4
_AES_CTR_encrypt_avx1:
#endif /* __APPLE__ */
pushq %rbx
pushq %r12
vmovdqu L_aes_ctr_avx1_bswap(%rip), %xmm8
vmovdqu L_aes_ctr_avx1_one(%rip), %xmm9
vpxor %xmm10, %xmm10, %xmm10
@@ -1987,7 +1987,7 @@ L_AES_CTR_encrypt_avx1_enc_64:
# 64 bytes of input
# aes_ctr_enc_64
leaq (%rdi,%rax,1), %r11
leaq (%rsi,%rax,1), %rbx
leaq (%rsi,%rax,1), %r12
vpshufb %xmm8, %xmm7, %xmm0
vpaddq %xmm9, %xmm7, %xmm7
vpcmpeqq %xmm10, %xmm7, %xmm11
@@ -2097,10 +2097,10 @@ L_AES_CTR_encrypt_avx1_64_aes_enc_block_last:
vpxor 16(%r11), %xmm1, %xmm1
vpxor 32(%r11), %xmm2, %xmm2
vpxor 48(%r11), %xmm3, %xmm3
vmovdqu %xmm0, (%rbx)
vmovdqu %xmm1, 16(%rbx)
vmovdqu %xmm2, 32(%rbx)
vmovdqu %xmm3, 48(%rbx)
vmovdqu %xmm0, (%r12)
vmovdqu %xmm1, 16(%r12)
vmovdqu %xmm2, 32(%r12)
vmovdqu %xmm3, 48(%r12)
addl $0x40, %eax
cmpl %r10d, %eax
jl L_AES_CTR_encrypt_avx1_enc_64
@@ -2162,7 +2162,7 @@ L_AES_CTR_encrypt_avx1_16_aes_enc_block_last:
L_AES_CTR_encrypt_avx1_done_enc:
vpshufb %xmm8, %xmm7, %xmm7
vmovdqu %xmm7, (%r9)
popq %rbx
popq %r12
repz retq
#ifndef __APPLE__
.size AES_CTR_encrypt_avx1,.-AES_CTR_encrypt_avx1
@@ -3165,7 +3165,7 @@ AES_CTR_encrypt_vaes:
.p2align 4
_AES_CTR_encrypt_vaes:
#endif /* __APPLE__ */
pushq %rbx
pushq %r12
vbroadcasti128 L_aes_ctr_bswap_vaes(%rip), %ymm8
vbroadcasti128 (%r9), %ymm7
vpshufb %ymm8, %ymm7, %ymm7
@@ -3216,7 +3216,7 @@ _AES_CTR_encrypt_vaes:
L_AES_CTR_encrypt_vaes_enc_128:
# 128 bytes of input
leaq (%rdi,%rax,1), %r11
leaq (%rsi,%rax,1), %rbx
leaq (%rsi,%rax,1), %r12
vpshufb %ymm8, %ymm4, %ymm0
vpshufb %ymm8, %ymm5, %ymm1
vpshufb %ymm8, %ymm6, %ymm2
@@ -3342,10 +3342,10 @@ L_AES_CTR_encrypt_vaes_128_aes_enc_block_last:
vpxor 32(%r11), %ymm1, %ymm1
vpxor 64(%r11), %ymm2, %ymm2
vpxor 96(%r11), %ymm3, %ymm3
vmovdqu %ymm0, (%rbx)
vmovdqu %ymm1, 32(%rbx)
vmovdqu %ymm2, 64(%rbx)
vmovdqu %ymm3, 96(%rbx)
vmovdqu %ymm0, (%r12)
vmovdqu %ymm1, 32(%r12)
vmovdqu %ymm2, 64(%r12)
vmovdqu %ymm3, 96(%r12)
addl $0x80, %eax
cmpl %r10d, %eax
jl L_AES_CTR_encrypt_vaes_enc_128
@@ -3359,7 +3359,7 @@ L_AES_CTR_encrypt_vaes_done_128:
vbroadcasti128 64+L_aes_ctr_inc_vaes(%rip), %ymm11
# aes_ctr_enc_64
leaq (%rdi,%rax,1), %r11
leaq (%rsi,%rax,1), %rbx
leaq (%rsi,%rax,1), %r12
vpaddq 0+L_aes_ctr_inc_vaes(%rip), %ymm7, %ymm0
vmovdqa %ymm7, %ymm9
vpand 0+L_aes_ctr_inc_vaes(%rip), %ymm9, %ymm15
@@ -3442,8 +3442,8 @@ L_AES_CTR_encrypt_vaes_64_aes_enc_block_last:
vaesenclast %ymm14, %ymm1, %ymm1
vpxor (%r11), %ymm0, %ymm0
vpxor 32(%r11), %ymm1, %ymm1
vmovdqu %ymm0, (%rbx)
vmovdqu %ymm1, 32(%rbx)
vmovdqu %ymm0, (%r12)
vmovdqu %ymm1, 32(%r12)
addl $0x40, %eax
L_AES_CTR_encrypt_vaes_done_64:
movl %edx, %r10d
@@ -3454,7 +3454,7 @@ L_AES_CTR_encrypt_vaes_enc_32:
# 32 bytes of input
# aes_ctr_enc_32
leaq (%rdi,%rax,1), %r11
leaq (%rsi,%rax,1), %rbx
leaq (%rsi,%rax,1), %r12
vpaddq 0+L_aes_ctr_inc_vaes(%rip), %ymm7, %ymm0
vmovdqa %ymm7, %ymm9
vpand 0+L_aes_ctr_inc_vaes(%rip), %ymm9, %ymm15
@@ -3511,7 +3511,7 @@ L_AES_CTR_encrypt_vaes_enc_32:
L_AES_CTR_encrypt_vaes_32_aes_enc_block_last:
vaesenclast %ymm14, %ymm0, %ymm0
vpxor (%r11), %ymm0, %ymm0
vmovdqu %ymm0, (%rbx)
vmovdqu %ymm0, (%r12)
addl $32, %eax
cmpl %r10d, %eax
jl L_AES_CTR_encrypt_vaes_enc_32
@@ -3577,7 +3577,7 @@ L_AES_CTR_encrypt_vaes_16_aes_enc_block_last:
L_AES_CTR_encrypt_vaes_done_enc:
vpshufb %xmm8, %xmm7, %xmm0
vmovdqu %xmm0, (%r9)
popq %rbx
popq %r12
repz retq
#ifndef __APPLE__
.size AES_CTR_encrypt_vaes,.-AES_CTR_encrypt_vaes
@@ -4648,7 +4648,7 @@ AES_CTR_encrypt_avx512:
.p2align 4
_AES_CTR_encrypt_avx512:
#endif /* __APPLE__ */
pushq %rbx
pushq %r12
vbroadcasti32x4 L_aes_ctr_bswap_avx512(%rip), %zmm8
vbroadcasti32x4 (%r9), %zmm7
vpshufb %zmm8, %zmm7, %zmm7
@@ -4709,7 +4709,7 @@ L_AES_CTR_encrypt_avx512_key_cached:
L_AES_CTR_encrypt_avx512_enc_256:
# 256 bytes of input
leaq (%rdi,%rax,1), %r11
leaq (%rsi,%rax,1), %rbx
leaq (%rsi,%rax,1), %r12
vpshufb %zmm8, %zmm4, %zmm0
vpshufb %zmm8, %zmm5, %zmm1
vpshufb %zmm8, %zmm6, %zmm2
@@ -4811,10 +4811,10 @@ L_AES_CTR_encrypt_avx512_256_aes_enc_block_last:
vpxorq 64(%r11), %zmm1, %zmm1
vpxorq 128(%r11), %zmm2, %zmm2
vpxorq 192(%r11), %zmm3, %zmm3
vmovdqu64 %zmm0, (%rbx)
vmovdqu64 %zmm1, 64(%rbx)
vmovdqu64 %zmm2, 128(%rbx)
vmovdqu64 %zmm3, 192(%rbx)
vmovdqu64 %zmm0, (%r12)
vmovdqu64 %zmm1, 64(%r12)
vmovdqu64 %zmm2, 128(%r12)
vmovdqu64 %zmm3, 192(%r12)
addl $0x100, %eax
cmpl %r10d, %eax
jl L_AES_CTR_encrypt_avx512_enc_256
@@ -4828,7 +4828,7 @@ L_AES_CTR_encrypt_avx512_done_256:
vbroadcasti32x4 128+L_aes_ctr_inc_avx512(%rip), %zmm11
# aes_ctr_enc_128
leaq (%rdi,%rax,1), %r11
leaq (%rsi,%rax,1), %rbx
leaq (%rsi,%rax,1), %r12
vpaddq 0+L_aes_ctr_inc_avx512(%rip), %zmm7, %zmm0
vmovdqa64 %zmm7, %zmm9
vpternlogq $0xb2, 0+L_aes_ctr_inc_avx512(%rip), %zmm0, %zmm9
@@ -4890,8 +4890,8 @@ L_AES_CTR_encrypt_avx512_128_aes_enc_block_last:
vaesenclast %zmm14, %zmm1, %zmm1
vpxorq (%r11), %zmm0, %zmm0
vpxorq 64(%r11), %zmm1, %zmm1
vmovdqu64 %zmm0, (%rbx)
vmovdqu64 %zmm1, 64(%rbx)
vmovdqu64 %zmm0, (%r12)
vmovdqu64 %zmm1, 64(%r12)
addl $0x80, %eax
L_AES_CTR_encrypt_avx512_done_128:
movl %edx, %r10d
@@ -4902,7 +4902,7 @@ L_AES_CTR_encrypt_avx512_enc_64:
# 64 bytes of input
# aes_ctr_enc_64
leaq (%rdi,%rax,1), %r11
leaq (%rsi,%rax,1), %rbx
leaq (%rsi,%rax,1), %r12
vpaddq 0+L_aes_ctr_inc_avx512(%rip), %zmm7, %zmm0
vmovdqa64 %zmm7, %zmm9
vpternlogq $0xb2, 0+L_aes_ctr_inc_avx512(%rip), %zmm0, %zmm9
@@ -4941,7 +4941,7 @@ L_AES_CTR_encrypt_avx512_enc_64:
L_AES_CTR_encrypt_avx512_64_aes_enc_block_last:
vaesenclast %zmm14, %zmm0, %zmm0
vpxorq (%r11), %zmm0, %zmm0
vmovdqu64 %zmm0, (%rbx)
vmovdqu64 %zmm0, (%r12)
addl $0x40, %eax
cmpl %r10d, %eax
jl L_AES_CTR_encrypt_avx512_enc_64
@@ -5053,7 +5053,7 @@ L_AES_CTR_encrypt_avx512_16_aes_enc_block_last:
L_AES_CTR_encrypt_avx512_done_enc:
vpshufb %xmm8, %xmm7, %xmm0
vmovdqu %xmm0, (%r9)
popq %rbx
popq %r12
repz retq
#ifndef __APPLE__
.size AES_CTR_encrypt_avx512,.-AES_CTR_encrypt_avx512
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+72 -80
View File
@@ -462,26 +462,22 @@ _TEXT ENDS
IFDEF HAVE_INTEL_AVX1
_DATA SEGMENT
ALIGN 16
L_chacha20_avx1_rotl8 QWORD \
0605040702010003h, 0e0d0c0f0a09080bh
L_chacha20_avx1_rotl8 QWORD 0605040702010003h, 0e0d0c0f0a09080bh
ptr_L_chacha20_avx1_rotl8 QWORD L_chacha20_avx1_rotl8
_DATA ENDS
_DATA SEGMENT
ALIGN 16
L_chacha20_avx1_rotl16 QWORD \
0504070601000302h, 0d0c0f0e09080b0ah
L_chacha20_avx1_rotl16 QWORD 0504070601000302h, 0d0c0f0e09080b0ah
ptr_L_chacha20_avx1_rotl16 QWORD L_chacha20_avx1_rotl16
_DATA ENDS
_DATA SEGMENT
ALIGN 16
L_chacha20_avx1_add QWORD \
0000000100000000h, 0000000300000002h
L_chacha20_avx1_add QWORD 0000000100000000h, 0000000300000002h
ptr_L_chacha20_avx1_add QWORD L_chacha20_avx1_add
_DATA ENDS
_DATA SEGMENT
ALIGN 16
L_chacha20_avx1_four QWORD \
0000000400000004h, 0000000400000004h
L_chacha20_avx1_four QWORD 0000000400000004h, 0000000400000004h
ptr_L_chacha20_avx1_four QWORD L_chacha20_avx1_four
_DATA ENDS
_TEXT SEGMENT READONLY PARA
@@ -1019,30 +1015,26 @@ ENDIF
IFDEF HAVE_INTEL_AVX2
_DATA SEGMENT
ALIGN 16
L_chacha20_avx2_rotl8 QWORD \
0605040702010003h, 0e0d0c0f0a09080bh,
0605040702010003h, 0e0d0c0f0a09080bh
L_chacha20_avx2_rotl8 QWORD 0605040702010003h, 0e0d0c0f0a09080bh
QWORD 0605040702010003h, 0e0d0c0f0a09080bh
ptr_L_chacha20_avx2_rotl8 QWORD L_chacha20_avx2_rotl8
_DATA ENDS
_DATA SEGMENT
ALIGN 16
L_chacha20_avx2_rotl16 QWORD \
0504070601000302h, 0d0c0f0e09080b0ah,
0504070601000302h, 0d0c0f0e09080b0ah
L_chacha20_avx2_rotl16 QWORD 0504070601000302h, 0d0c0f0e09080b0ah
QWORD 0504070601000302h, 0d0c0f0e09080b0ah
ptr_L_chacha20_avx2_rotl16 QWORD L_chacha20_avx2_rotl16
_DATA ENDS
_DATA SEGMENT
ALIGN 16
L_chacha20_avx2_add QWORD \
0000000100000000h, 0000000300000002h,
0000000500000004h, 0000000700000006h
L_chacha20_avx2_add QWORD 0000000100000000h, 0000000300000002h
QWORD 0000000500000004h, 0000000700000006h
ptr_L_chacha20_avx2_add QWORD L_chacha20_avx2_add
_DATA ENDS
_DATA SEGMENT
ALIGN 16
L_chacha20_avx2_eight QWORD \
0000000800000008h, 0000000800000008h,
0000000800000008h, 0000000800000008h
L_chacha20_avx2_eight QWORD 0000000800000008h, 0000000800000008h
QWORD 0000000800000008h, 0000000800000008h
ptr_L_chacha20_avx2_eight QWORD L_chacha20_avx2_eight
_DATA ENDS
_TEXT SEGMENT READONLY PARA
@@ -1093,29 +1085,29 @@ chacha_encrypt_avx2 PROC
vpbroadcastd ymm14, DWORD PTR [rcx+56]
vpbroadcastd ymm15, DWORD PTR [rcx+60]
vpaddd ymm12, ymm12, YMMWORD PTR [r15]
vmovdqa YMMWORD PTR [r11], ymm0
vmovdqa YMMWORD PTR [r11+32], ymm1
vmovdqa YMMWORD PTR [r11+64], ymm2
vmovdqa YMMWORD PTR [r11+96], ymm3
vmovdqa YMMWORD PTR [r11+128], ymm4
vmovdqa YMMWORD PTR [r11+160], ymm5
vmovdqa YMMWORD PTR [r11+192], ymm6
vmovdqa YMMWORD PTR [r11+224], ymm7
vmovdqa YMMWORD PTR [r11+256], ymm8
vmovdqa YMMWORD PTR [r11+288], ymm9
vmovdqa YMMWORD PTR [r11+320], ymm10
vmovdqa YMMWORD PTR [r11+352], ymm11
vmovdqa YMMWORD PTR [r11+384], ymm12
vmovdqa YMMWORD PTR [r11+416], ymm13
vmovdqa YMMWORD PTR [r11+448], ymm14
vmovdqa YMMWORD PTR [r11+480], ymm15
vmovdqu YMMWORD PTR [r11], ymm0
vmovdqu YMMWORD PTR [r11+32], ymm1
vmovdqu YMMWORD PTR [r11+64], ymm2
vmovdqu YMMWORD PTR [r11+96], ymm3
vmovdqu YMMWORD PTR [r11+128], ymm4
vmovdqu YMMWORD PTR [r11+160], ymm5
vmovdqu YMMWORD PTR [r11+192], ymm6
vmovdqu YMMWORD PTR [r11+224], ymm7
vmovdqu YMMWORD PTR [r11+256], ymm8
vmovdqu YMMWORD PTR [r11+288], ymm9
vmovdqu YMMWORD PTR [r11+320], ymm10
vmovdqu YMMWORD PTR [r11+352], ymm11
vmovdqu YMMWORD PTR [r11+384], ymm12
vmovdqu YMMWORD PTR [r11+416], ymm13
vmovdqu YMMWORD PTR [r11+448], ymm14
vmovdqu YMMWORD PTR [r11+480], ymm15
L_chacha20_avx2_start256:
mov r10b, 10
vmovdqa YMMWORD PTR [r12+96], ymm11
vmovdqu YMMWORD PTR [r12+96], ymm11
L_chacha20_avx2_loop256:
vpaddd ymm0, ymm0, ymm4
vpxor ymm12, ymm12, ymm0
vmovdqa ymm11, YMMWORD PTR [r12+96]
vmovdqu ymm11, YMMWORD PTR [r12+96]
vpshufb ymm12, ymm12, YMMWORD PTR [r14]
vpaddd ymm8, ymm8, ymm12
vpxor ymm4, ymm4, ymm8
@@ -1134,7 +1126,7 @@ L_chacha20_avx2_loop256:
vpshufb ymm15, ymm15, YMMWORD PTR [r14]
vpaddd ymm11, ymm11, ymm15
vpxor ymm7, ymm7, ymm11
vmovdqa YMMWORD PTR [r12+96], ymm11
vmovdqu YMMWORD PTR [r12+96], ymm11
vpsrld ymm11, ymm4, 20
vpslld ymm4, ymm4, 12
vpxor ymm4, ymm4, ymm11
@@ -1149,7 +1141,7 @@ L_chacha20_avx2_loop256:
vpxor ymm7, ymm7, ymm11
vpaddd ymm0, ymm0, ymm4
vpxor ymm12, ymm12, ymm0
vmovdqa ymm11, YMMWORD PTR [r12+96]
vmovdqu ymm11, YMMWORD PTR [r12+96]
vpshufb ymm12, ymm12, YMMWORD PTR [r13]
vpaddd ymm8, ymm8, ymm12
vpxor ymm4, ymm4, ymm8
@@ -1168,7 +1160,7 @@ L_chacha20_avx2_loop256:
vpshufb ymm15, ymm15, YMMWORD PTR [r13]
vpaddd ymm11, ymm11, ymm15
vpxor ymm7, ymm7, ymm11
vmovdqa YMMWORD PTR [r12+96], ymm11
vmovdqu YMMWORD PTR [r12+96], ymm11
vpsrld ymm11, ymm4, 25
vpslld ymm4, ymm4, 7
vpxor ymm4, ymm4, ymm11
@@ -1183,7 +1175,7 @@ L_chacha20_avx2_loop256:
vpxor ymm7, ymm7, ymm11
vpaddd ymm0, ymm0, ymm5
vpxor ymm15, ymm15, ymm0
vmovdqa ymm11, YMMWORD PTR [r12+96]
vmovdqu ymm11, YMMWORD PTR [r12+96]
vpshufb ymm15, ymm15, YMMWORD PTR [r14]
vpaddd ymm10, ymm10, ymm15
vpxor ymm5, ymm5, ymm10
@@ -1202,7 +1194,7 @@ L_chacha20_avx2_loop256:
vpshufb ymm14, ymm14, YMMWORD PTR [r14]
vpaddd ymm9, ymm9, ymm14
vpxor ymm4, ymm4, ymm9
vmovdqa YMMWORD PTR [r12+96], ymm11
vmovdqu YMMWORD PTR [r12+96], ymm11
vpsrld ymm11, ymm5, 20
vpslld ymm5, ymm5, 12
vpxor ymm5, ymm5, ymm11
@@ -1217,7 +1209,7 @@ L_chacha20_avx2_loop256:
vpxor ymm4, ymm4, ymm11
vpaddd ymm0, ymm0, ymm5
vpxor ymm15, ymm15, ymm0
vmovdqa ymm11, YMMWORD PTR [r12+96]
vmovdqu ymm11, YMMWORD PTR [r12+96]
vpshufb ymm15, ymm15, YMMWORD PTR [r13]
vpaddd ymm10, ymm10, ymm15
vpxor ymm5, ymm5, ymm10
@@ -1236,7 +1228,7 @@ L_chacha20_avx2_loop256:
vpshufb ymm14, ymm14, YMMWORD PTR [r13]
vpaddd ymm9, ymm9, ymm14
vpxor ymm4, ymm4, ymm9
vmovdqa YMMWORD PTR [r12+96], ymm11
vmovdqu YMMWORD PTR [r12+96], ymm11
vpsrld ymm11, ymm5, 25
vpslld ymm5, ymm5, 7
vpxor ymm5, ymm5, ymm11
@@ -1251,7 +1243,7 @@ L_chacha20_avx2_loop256:
vpxor ymm4, ymm4, ymm11
dec r10b
jnz L_chacha20_avx2_loop256
vmovdqa ymm11, YMMWORD PTR [r12+96]
vmovdqu ymm11, YMMWORD PTR [r12+96]
vpaddd ymm0, ymm0, YMMWORD PTR [r11]
vpaddd ymm1, ymm1, YMMWORD PTR [r11+32]
vpaddd ymm2, ymm2, YMMWORD PTR [r11+64]
@@ -1268,14 +1260,14 @@ L_chacha20_avx2_loop256:
vpaddd ymm13, ymm13, YMMWORD PTR [r11+416]
vpaddd ymm14, ymm14, YMMWORD PTR [r11+448]
vpaddd ymm15, ymm15, YMMWORD PTR [r11+480]
vmovdqa YMMWORD PTR [r12], ymm8
vmovdqa YMMWORD PTR [r12+32], ymm9
vmovdqa YMMWORD PTR [r12+64], ymm10
vmovdqa YMMWORD PTR [r12+96], ymm11
vmovdqa YMMWORD PTR [r12+128], ymm12
vmovdqa YMMWORD PTR [r12+160], ymm13
vmovdqa YMMWORD PTR [r12+192], ymm14
vmovdqa YMMWORD PTR [r12+224], ymm15
vmovdqu YMMWORD PTR [r12], ymm8
vmovdqu YMMWORD PTR [r12+32], ymm9
vmovdqu YMMWORD PTR [r12+64], ymm10
vmovdqu YMMWORD PTR [r12+96], ymm11
vmovdqu YMMWORD PTR [r12+128], ymm12
vmovdqu YMMWORD PTR [r12+160], ymm13
vmovdqu YMMWORD PTR [r12+192], ymm14
vmovdqu YMMWORD PTR [r12+224], ymm15
vpunpckldq ymm8, ymm0, ymm1
vpunpckldq ymm9, ymm2, ymm3
vpunpckhdq ymm12, ymm0, ymm1
@@ -1324,14 +1316,14 @@ L_chacha20_avx2_loop256:
vmovdqu YMMWORD PTR [r8+320], ymm13
vmovdqu YMMWORD PTR [r8+384], ymm14
vmovdqu YMMWORD PTR [r8+448], ymm15
vmovdqa ymm0, YMMWORD PTR [r12]
vmovdqa ymm1, YMMWORD PTR [r12+32]
vmovdqa ymm2, YMMWORD PTR [r12+64]
vmovdqa ymm3, YMMWORD PTR [r12+96]
vmovdqa ymm4, YMMWORD PTR [r12+128]
vmovdqa ymm5, YMMWORD PTR [r12+160]
vmovdqa ymm6, YMMWORD PTR [r12+192]
vmovdqa ymm7, YMMWORD PTR [r12+224]
vmovdqu ymm0, YMMWORD PTR [r12]
vmovdqu ymm1, YMMWORD PTR [r12+32]
vmovdqu ymm2, YMMWORD PTR [r12+64]
vmovdqu ymm3, YMMWORD PTR [r12+96]
vmovdqu ymm4, YMMWORD PTR [r12+128]
vmovdqu ymm5, YMMWORD PTR [r12+160]
vmovdqu ymm6, YMMWORD PTR [r12+192]
vmovdqu ymm7, YMMWORD PTR [r12+224]
vpunpckldq ymm8, ymm0, ymm1
vpunpckldq ymm9, ymm2, ymm3
vpunpckhdq ymm12, ymm0, ymm1
@@ -1380,30 +1372,30 @@ L_chacha20_avx2_loop256:
vmovdqu YMMWORD PTR [r8+352], ymm13
vmovdqu YMMWORD PTR [r8+416], ymm14
vmovdqu YMMWORD PTR [r8+480], ymm15
vmovdqa ymm12, YMMWORD PTR [r11+384]
vmovdqu ymm12, YMMWORD PTR [r11+384]
add rdx, 512
add r8, 512
vpaddd ymm12, ymm12, YMMWORD PTR [rdi]
sub r9d, 512
vmovdqa YMMWORD PTR [r11+384], ymm12
vmovdqu YMMWORD PTR [r11+384], ymm12
cmp r9d, 512
jl L_chacha20_avx2_done256
vmovdqa ymm0, YMMWORD PTR [r11]
vmovdqa ymm1, YMMWORD PTR [r11+32]
vmovdqa ymm2, YMMWORD PTR [r11+64]
vmovdqa ymm3, YMMWORD PTR [r11+96]
vmovdqa ymm4, YMMWORD PTR [r11+128]
vmovdqa ymm5, YMMWORD PTR [r11+160]
vmovdqa ymm6, YMMWORD PTR [r11+192]
vmovdqa ymm7, YMMWORD PTR [r11+224]
vmovdqa ymm8, YMMWORD PTR [r11+256]
vmovdqa ymm9, YMMWORD PTR [r11+288]
vmovdqa ymm10, YMMWORD PTR [r11+320]
vmovdqa ymm11, YMMWORD PTR [r11+352]
vmovdqa ymm12, YMMWORD PTR [r11+384]
vmovdqa ymm13, YMMWORD PTR [r11+416]
vmovdqa ymm14, YMMWORD PTR [r11+448]
vmovdqa ymm15, YMMWORD PTR [r11+480]
vmovdqu ymm0, YMMWORD PTR [r11]
vmovdqu ymm1, YMMWORD PTR [r11+32]
vmovdqu ymm2, YMMWORD PTR [r11+64]
vmovdqu ymm3, YMMWORD PTR [r11+96]
vmovdqu ymm4, YMMWORD PTR [r11+128]
vmovdqu ymm5, YMMWORD PTR [r11+160]
vmovdqu ymm6, YMMWORD PTR [r11+192]
vmovdqu ymm7, YMMWORD PTR [r11+224]
vmovdqu ymm8, YMMWORD PTR [r11+256]
vmovdqu ymm9, YMMWORD PTR [r11+288]
vmovdqu ymm10, YMMWORD PTR [r11+320]
vmovdqu ymm11, YMMWORD PTR [r11+352]
vmovdqu ymm12, YMMWORD PTR [r11+384]
vmovdqu ymm13, YMMWORD PTR [r11+416]
vmovdqu ymm14, YMMWORD PTR [r11+448]
vmovdqu ymm15, YMMWORD PTR [r11+480]
jmp L_chacha20_avx2_start256
L_chacha20_avx2_done256:
shl eax, 3
+12
View File
@@ -2341,6 +2341,9 @@ _fe_invert_x64:
movq 128(%rsp), %rdi
addq $0x90, %rsp
repz retq
#ifndef __APPLE__
.size fe_invert_x64,.-fe_invert_x64
#endif /* __APPLE__ */
#if defined(WOLFSSL_CURVE25519_NOT_USE_ED25519)
#ifndef __APPLE__
.data
@@ -7339,6 +7342,9 @@ _fe_pow22523_x64:
addq $0x70, %rsp
repz retq
#ifndef __APPLE__
.size fe_pow22523_x64,.-fe_pow22523_x64
#endif /* __APPLE__ */
#ifndef __APPLE__
.text
.globl ge_p1p1_to_p2_x64
.type ge_p1p1_to_p2_x64,@function
@@ -13201,6 +13207,9 @@ _fe_invert_avx2:
movq 128(%rsp), %rdi
addq $0x90, %rsp
repz retq
#ifndef __APPLE__
.size fe_invert_avx2,.-fe_invert_avx2
#endif /* __APPLE__ */
#if defined(WOLFSSL_CURVE25519_NOT_USE_ED25519)
#ifndef __APPLE__
.data
@@ -17403,6 +17412,9 @@ _fe_pow22523_avx2:
addq $0x70, %rsp
repz retq
#ifndef __APPLE__
.size fe_pow22523_avx2,.-fe_pow22523_avx2
#endif /* __APPLE__ */
#ifndef __APPLE__
.text
.globl ge_p1p1_to_p2_avx2
.type ge_p1p1_to_p2_avx2,@function
File diff suppressed because it is too large Load Diff
+7
View File
@@ -18,9 +18,16 @@ EXTRA_DIST += wolfcrypt/src/asm.c
EXTRA_DIST += wolfcrypt/src/aes_asm.asm
EXTRA_DIST += wolfcrypt/src/aes_x86_64_asm.asm
EXTRA_DIST += wolfcrypt/src/aes_gcm_asm.asm
EXTRA_DIST += wolfcrypt/src/aes_gcm_x86_asm.asm
EXTRA_DIST += wolfcrypt/src/aes_xts_asm.asm
EXTRA_DIST += wolfcrypt/src/chacha_asm.asm
EXTRA_DIST += wolfcrypt/src/poly1305_asm.asm
EXTRA_DIST += wolfcrypt/src/fe_x25519_asm.asm
EXTRA_DIST += wolfcrypt/src/sha256_asm.asm
EXTRA_DIST += wolfcrypt/src/sha512_asm.asm
EXTRA_DIST += wolfcrypt/src/sha3_asm.asm
EXTRA_DIST += wolfcrypt/src/wc_mlkem_asm.asm
EXTRA_DIST += wolfcrypt/src/wc_mldsa_asm.asm
EXTRA_DIST += wolfcrypt/src/wc_dsp.c
EXTRA_DIST += wolfcrypt/src/sp_dsp32.c
EXTRA_DIST += wolfcrypt/src/sp_x86_64_asm.asm
+13 -15
View File
@@ -598,16 +598,14 @@ poly1305_setkey_avx2 ENDP
_TEXT ENDS
_DATA SEGMENT
ALIGN 16
L_poly1305_avx2_blocks_mask QWORD \
0000000003ffffffh, 0000000003ffffffh,
0000000003ffffffh, 0000000003ffffffh
L_poly1305_avx2_blocks_mask QWORD 0000000003ffffffh, 0000000003ffffffh
QWORD 0000000003ffffffh, 0000000003ffffffh
ptr_L_poly1305_avx2_blocks_mask QWORD L_poly1305_avx2_blocks_mask
_DATA ENDS
_DATA SEGMENT
ALIGN 16
L_poly1305_avx2_blocks_hibit QWORD \
0000000001000000h, 0000000001000000h,
0000000001000000h, 0000000001000000h
L_poly1305_avx2_blocks_hibit QWORD 0000000001000000h, 0000000001000000h
QWORD 0000000001000000h, 0000000001000000h
ptr_L_poly1305_avx2_blocks_hibit QWORD L_poly1305_avx2_blocks_hibit
_DATA ENDS
_TEXT SEGMENT READONLY PARA
@@ -736,15 +734,15 @@ L_poly1305_avx2_blocks_mul_5:
vpaddq ymm12, ymm8, ymm12
vpaddq ymm13, ymm9, ymm13
; Store powers of r and multiple of 5 for use in multiply.
vmovdqa YMMWORD PTR [rbx], ymm10
vmovdqa YMMWORD PTR [rbx+32], ymm11
vmovdqa YMMWORD PTR [rbx+64], ymm12
vmovdqa YMMWORD PTR [rbx+96], ymm13
vmovdqa YMMWORD PTR [rcx], ymm5
vmovdqa YMMWORD PTR [rcx+32], ymm6
vmovdqa YMMWORD PTR [rcx+64], ymm7
vmovdqa YMMWORD PTR [rcx+96], ymm8
vmovdqa YMMWORD PTR [rcx+128], ymm9
vmovdqu YMMWORD PTR [rbx], ymm10
vmovdqu YMMWORD PTR [rbx+32], ymm11
vmovdqu YMMWORD PTR [rbx+64], ymm12
vmovdqu YMMWORD PTR [rbx+96], ymm13
vmovdqu YMMWORD PTR [rcx], ymm5
vmovdqu YMMWORD PTR [rcx+32], ymm6
vmovdqu YMMWORD PTR [rcx+64], ymm7
vmovdqu YMMWORD PTR [rcx+96], ymm8
vmovdqu YMMWORD PTR [rcx+128], ymm9
vmovdqu ymm14, YMMWORD PTR [r13]
; If not finished then loop over data
cmp BYTE PTR [rdi+616], 1
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+26 -26
View File
@@ -22755,7 +22755,7 @@ _wc_mldsa_decode_t0_avx2:
vpsubd %ymm4, %ymm15, %ymm4
vmovdqu %ymm4, 32(%rsi)
# 3/32
vperm2i128 $0x21, %ymm1, %ymm0, %ymm0
vperm2i128 $33, %ymm1, %ymm0, %ymm0
vpermq $0xe9, %ymm0, %ymm4
vpshufb %ymm7, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22770,7 +22770,7 @@ _wc_mldsa_decode_t0_avx2:
vpsubd %ymm4, %ymm15, %ymm4
vmovdqu %ymm4, 96(%rsi)
# 5/32
vperm2i128 $0x21, %ymm2, %ymm1, %ymm1
vperm2i128 $33, %ymm2, %ymm1, %ymm1
vpermq $0x94, %ymm1, %ymm4
vpshufb %ymm9, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22792,7 +22792,7 @@ _wc_mldsa_decode_t0_avx2:
vpsubd %ymm4, %ymm15, %ymm4
vmovdqu %ymm4, 192(%rsi)
# 8/32
vperm2i128 $0x21, %ymm3, %ymm2, %ymm2
vperm2i128 $33, %ymm3, %ymm2, %ymm2
vpermq $0xe9, %ymm2, %ymm4
vpshufb %ymm12, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22809,7 +22809,7 @@ _wc_mldsa_decode_t0_avx2:
# 10/32
vmovdqu 128(%rdi), %ymm0
vmovdqu 160(%rdi), %ymm1
vperm2i128 $0x21, %ymm0, %ymm3, %ymm3
vperm2i128 $33, %ymm0, %ymm3, %ymm3
vpermq $0x94, %ymm3, %ymm4
vpshufb %ymm6, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22831,7 +22831,7 @@ _wc_mldsa_decode_t0_avx2:
vpsubd %ymm4, %ymm15, %ymm4
vmovdqu %ymm4, 352(%rsi)
# 13/32
vperm2i128 $0x21, %ymm1, %ymm0, %ymm0
vperm2i128 $33, %ymm1, %ymm0, %ymm0
vpermq $0xe9, %ymm0, %ymm4
vpshufb %ymm9, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22848,7 +22848,7 @@ _wc_mldsa_decode_t0_avx2:
# 15/32
vmovdqu 192(%rdi), %ymm2
vmovdqu 224(%rdi), %ymm3
vperm2i128 $0x21, %ymm2, %ymm1, %ymm1
vperm2i128 $33, %ymm2, %ymm1, %ymm1
vpermq $0x94, %ymm1, %ymm4
vpshufb %ymm11, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22870,7 +22870,7 @@ _wc_mldsa_decode_t0_avx2:
vpsubd %ymm4, %ymm15, %ymm4
vmovdqu %ymm4, 512(%rsi)
# 18/32
vperm2i128 $0x21, %ymm3, %ymm2, %ymm2
vperm2i128 $33, %ymm3, %ymm2, %ymm2
vpermq $0xe9, %ymm2, %ymm4
vpshufb %ymm6, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22887,7 +22887,7 @@ _wc_mldsa_decode_t0_avx2:
# 20/32
vmovdqu 256(%rdi), %ymm0
vmovdqu 288(%rdi), %ymm1
vperm2i128 $0x21, %ymm0, %ymm3, %ymm3
vperm2i128 $33, %ymm0, %ymm3, %ymm3
vpermq $0x94, %ymm3, %ymm4
vpshufb %ymm8, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22909,7 +22909,7 @@ _wc_mldsa_decode_t0_avx2:
vpsubd %ymm4, %ymm15, %ymm4
vmovdqu %ymm4, 672(%rsi)
# 23/32
vperm2i128 $0x21, %ymm1, %ymm0, %ymm0
vperm2i128 $33, %ymm1, %ymm0, %ymm0
vpermq $0xe9, %ymm0, %ymm4
vpshufb %ymm11, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22926,7 +22926,7 @@ _wc_mldsa_decode_t0_avx2:
# 25/32
vmovdqu 320(%rdi), %ymm2
vmovdqu 352(%rdi), %ymm3
vperm2i128 $0x21, %ymm2, %ymm1, %ymm1
vperm2i128 $33, %ymm2, %ymm1, %ymm1
vpermq $0x99, %ymm1, %ymm4
vpshufb %ymm5, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22941,14 +22941,14 @@ _wc_mldsa_decode_t0_avx2:
vpsubd %ymm4, %ymm15, %ymm4
vmovdqu %ymm4, 800(%rsi)
# 27/32
vpermq $0x3e, %ymm2, %ymm4
vpermq $62, %ymm2, %ymm4
vpshufb %ymm7, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
vpand %ymm14, %ymm4, %ymm4
vpsubd %ymm4, %ymm15, %ymm4
vmovdqu %ymm4, 832(%rsi)
# 28/32
vperm2i128 $0x21, %ymm3, %ymm2, %ymm2
vperm2i128 $33, %ymm3, %ymm2, %ymm2
vpermq $0xe9, %ymm2, %ymm4
vpshufb %ymm8, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22965,7 +22965,7 @@ _wc_mldsa_decode_t0_avx2:
# 30/32
vmovdqu 384(%rdi), %ymm0
vmovdqu 416(%rdi), %ymm1
vperm2i128 $0x21, %ymm0, %ymm3, %ymm3
vperm2i128 $33, %ymm0, %ymm3, %ymm3
vpermq $0x99, %ymm3, %ymm4
vpshufb %ymm10, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
@@ -22980,7 +22980,7 @@ _wc_mldsa_decode_t0_avx2:
vpsubd %ymm4, %ymm15, %ymm4
vmovdqu %ymm4, 960(%rsi)
# 32/32
vpermq $0x3e, %ymm0, %ymm4
vpermq $62, %ymm0, %ymm4
vpshufb %ymm12, %ymm4, %ymm4
vpsrlvd %ymm13, %ymm4, %ymm4
vpand %ymm14, %ymm4, %ymm4
@@ -23115,14 +23115,14 @@ _wc_mldsa_decode_t1_avx2:
vpslld $13, %ymm4, %ymm4
vmovdqu %ymm4, 32(%rsi)
# 3/32
vpermq $0x3e, %ymm0, %ymm4
vpermq $62, %ymm0, %ymm4
vpshufb %ymm7, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
vpand %ymm10, %ymm4, %ymm4
vpslld $13, %ymm4, %ymm4
vmovdqu %ymm4, 64(%rsi)
# 4/32
vperm2i128 $0x21, %ymm1, %ymm0, %ymm0
vperm2i128 $33, %ymm1, %ymm0, %ymm0
vpermq $0xe9, %ymm0, %ymm4
vpshufb %ymm8, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
@@ -23144,7 +23144,7 @@ _wc_mldsa_decode_t1_avx2:
vpslld $13, %ymm4, %ymm4
vmovdqu %ymm4, 160(%rsi)
# 7/32
vperm2i128 $0x21, %ymm2, %ymm1, %ymm1
vperm2i128 $33, %ymm2, %ymm1, %ymm1
vpermq $0xe9, %ymm1, %ymm4
vpshufb %ymm7, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
@@ -23166,7 +23166,7 @@ _wc_mldsa_decode_t1_avx2:
vpslld $13, %ymm4, %ymm4
vmovdqu %ymm4, 256(%rsi)
# 10/32
vperm2i128 $0x21, %ymm3, %ymm2, %ymm2
vperm2i128 $33, %ymm3, %ymm2, %ymm2
vpermq $0x99, %ymm2, %ymm4
vpshufb %ymm6, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
@@ -23190,7 +23190,7 @@ _wc_mldsa_decode_t1_avx2:
# 13/32
vmovdqu 128(%rdi), %ymm0
vmovdqu 160(%rdi), %ymm1
vperm2i128 $0x21, %ymm0, %ymm3, %ymm3
vperm2i128 $33, %ymm0, %ymm3, %ymm3
vpermq $0x99, %ymm3, %ymm4
vpshufb %ymm5, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
@@ -23212,7 +23212,7 @@ _wc_mldsa_decode_t1_avx2:
vpslld $13, %ymm4, %ymm4
vmovdqu %ymm4, 448(%rsi)
# 16/32
vpermq $0x3e, %ymm0, %ymm4
vpermq $62, %ymm0, %ymm4
vpshufb %ymm8, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
vpand %ymm10, %ymm4, %ymm4
@@ -23233,7 +23233,7 @@ _wc_mldsa_decode_t1_avx2:
vpslld $13, %ymm4, %ymm4
vmovdqu %ymm4, 544(%rsi)
# 19/32
vpermq $0x3e, %ymm1, %ymm4
vpermq $62, %ymm1, %ymm4
vpshufb %ymm7, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
vpand %ymm10, %ymm4, %ymm4
@@ -23242,7 +23242,7 @@ _wc_mldsa_decode_t1_avx2:
# 20/32
vmovdqu 192(%rdi), %ymm2
vmovdqu 224(%rdi), %ymm3
vperm2i128 $0x21, %ymm2, %ymm1, %ymm1
vperm2i128 $33, %ymm2, %ymm1, %ymm1
vpermq $0xe9, %ymm1, %ymm4
vpshufb %ymm8, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
@@ -23264,7 +23264,7 @@ _wc_mldsa_decode_t1_avx2:
vpslld $13, %ymm4, %ymm4
vmovdqu %ymm4, 672(%rsi)
# 23/32
vperm2i128 $0x21, %ymm3, %ymm2, %ymm2
vperm2i128 $33, %ymm3, %ymm2, %ymm2
vpermq $0xe9, %ymm2, %ymm4
vpshufb %ymm7, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
@@ -23288,7 +23288,7 @@ _wc_mldsa_decode_t1_avx2:
# 26/32
vmovdqu 256(%rdi), %ymm0
vmovdqu 288(%rdi), %ymm1
vperm2i128 $0x21, %ymm0, %ymm3, %ymm3
vperm2i128 $33, %ymm0, %ymm3, %ymm3
vpermq $0x99, %ymm3, %ymm4
vpshufb %ymm6, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
@@ -23310,7 +23310,7 @@ _wc_mldsa_decode_t1_avx2:
vpslld $13, %ymm4, %ymm4
vmovdqu %ymm4, 864(%rsi)
# 29/32
vperm2i128 $0x21, %ymm1, %ymm0, %ymm0
vperm2i128 $33, %ymm1, %ymm0, %ymm0
vpermq $0x99, %ymm0, %ymm4
vpshufb %ymm5, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
@@ -23332,7 +23332,7 @@ _wc_mldsa_decode_t1_avx2:
vpslld $13, %ymm4, %ymm4
vmovdqu %ymm4, 960(%rsi)
# 32/32
vpermq $0x3e, %ymm1, %ymm4
vpermq $62, %ymm1, %ymm4
vpshufb %ymm8, %ymm4, %ymm4
vpsrlvd %ymm9, %ymm4, %ymm4
vpand %ymm10, %ymm4, %ymm4
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+70
View File
@@ -57,6 +57,13 @@
<ProjectName>wolfssl</ProjectName>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Label="WolfSSLIntelAsm">
<!-- Build the x86_64 crypto assembly (curve25519 / SHA-2 / SHA-3 / ML-KEM /
ML-DSA) and enable the matching USE_INTEL_SPEEDUP code paths. Off by
default (pure C). Enable on an x64 build with:
msbuild /p:WolfSSLIntelAsm=true -->
<WolfSSLIntelAsm Condition="'$(WolfSSLIntelAsm)'==''">false</WolfSSLIntelAsm>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<PlatformToolset>v143</PlatformToolset>
@@ -517,6 +524,28 @@
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\aes_gcm_x86_asm.asm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</ExcludedFromBuild>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">ml.exe /c /safeseh /Zi /Fo"$(OutDir)%(Filename).obj" %(Identity)</Command>
<Command Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">ml.exe /c /safeseh /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(IntDir)%(Filename).obj</Outputs>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</ExcludedFromBuild>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">ml.exe /c /safeseh /Zi /Fo"$(OutDir)%(Filename).obj" %(Identity)</Command>
<Command Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">ml.exe /c /safeseh /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(IntDir)%(Filename).obj</Outputs>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Release|ARM64'">true</ExcludedFromBuild>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\aes_xts_asm.asm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</ExcludedFromBuild>
@@ -573,6 +602,42 @@
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\fe_x25519_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\sha256_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\sha512_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\sha3_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\wc_mlkem_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\wc_mldsa_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<ClInclude Include="IDE\WIN\user_settings.h" />
</ItemGroup>
<ItemGroup>
@@ -585,6 +650,11 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
</ResourceCompile>
</ItemGroup>
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+70
View File
@@ -56,6 +56,13 @@
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Label="WolfSSLIntelAsm">
<!-- Build the x86_64 crypto assembly (curve25519 / SHA-2 / SHA-3 / ML-KEM /
ML-DSA) and enable the matching USE_INTEL_SPEEDUP code paths. Off by
default (pure C). Enable on an x64 build with:
msbuild /p:WolfSSLIntelAsm=true -->
<WolfSSLIntelAsm Condition="'$(WolfSSLIntelAsm)'==''">false</WolfSSLIntelAsm>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<PlatformToolset>v110</PlatformToolset>
@@ -517,6 +524,28 @@
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\aes_gcm_x86_asm.asm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</ExcludedFromBuild>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">ml.exe /c /safeseh /Zi /Fo"$(OutDir)%(Filename).obj" %(Identity)</Command>
<Command Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">ml.exe /c /safeseh /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(IntDir)%(Filename).obj</Outputs>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</ExcludedFromBuild>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">ml.exe /c /safeseh /Zi /Fo"$(OutDir)%(Filename).obj" %(Identity)</Command>
<Command Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">ml.exe /c /safeseh /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(IntDir)%(Filename).obj</Outputs>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Release|ARM64'">true</ExcludedFromBuild>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\aes_xts_asm.asm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</ExcludedFromBuild>
@@ -573,6 +602,42 @@
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\fe_x25519_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\sha256_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\sha512_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\sha3_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\wc_mlkem_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="wolfcrypt\src\wc_mldsa_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<ClInclude Include="IDE\WIN\user_settings.h" />
</ItemGroup>
<ItemGroup>
@@ -585,6 +650,11 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
</ResourceCompile>
</ItemGroup>
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+66
View File
@@ -40,6 +40,13 @@
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Label="WolfSSLIntelAsm">
<!-- Build the x86_64 crypto assembly (curve25519 / SHA-2 / SHA-3 / ML-KEM /
ML-DSA) and enable the matching USE_INTEL_SPEEDUP code paths. Off by
default (pure C). Enable on an x64 build with:
msbuild /p:WolfSSLIntelAsm=true -->
<WolfSSLIntelAsm Condition="'$(WolfSSLIntelAsm)'==''">false</WolfSSLIntelAsm>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<PlatformToolset>v143</PlatformToolset>
@@ -399,6 +406,24 @@
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="..\..\wolfcrypt\src\aes_gcm_x86_asm.asm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</ExcludedFromBuild>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">ml.exe /c /safeseh /Zi /Fo"$(OutDir)%(Filename).obj" %(Identity)</Command>
<Command Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">ml.exe /c /safeseh /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(IntDir)%(Filename).obj</Outputs>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</ExcludedFromBuild>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">ml.exe /c /safeseh /Zi /Fo"$(OutDir)%(Filename).obj" %(Identity)</Command>
<Command Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">ml.exe /c /safeseh /Zi /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(IntDir)%(Filename).obj</Outputs>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">true</ExcludedFromBuild>
</CustomBuild>
<CustomBuild Include="..\..\wolfcrypt\src\aes_xts_asm.asm">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</ExcludedFromBuild>
@@ -455,6 +480,42 @@
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(OutDir)%(Filename).obj</Outputs>
<Outputs Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="..\..\wolfcrypt\src\fe_x25519_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="..\..\wolfcrypt\src\sha256_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="..\..\wolfcrypt\src\sha512_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="..\..\wolfcrypt\src\sha3_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="..\..\wolfcrypt\src\wc_mlkem_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<CustomBuild Include="..\..\wolfcrypt\src\wc_mldsa_asm.asm">
<ExcludedFromBuild>true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">false</ExcludedFromBuild>
<Command Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">ml64.exe /c /Zi /DWOLFSSL_X86_64_BUILD /DWOLFSSL_HAVE_MLKEM /DWOLFSSL_HAVE_MLDSA /DWOLFSSL_HAVE_SLHDSA /DHAVE_ED25519 /Fo"$(IntDir)%(Filename).obj" %(Identity)</Command>
<Outputs Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">$(IntDir)%(Filename).obj</Outputs>
</CustomBuild>
<ClInclude Include="user_settings.h" />
</ItemGroup>
<ItemGroup>
@@ -465,6 +526,11 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ResourceCompile>
</ItemGroup>
<ItemDefinitionGroup Condition="'$(WolfSSLIntelAsm)'=='true' And '$(Platform)'=='x64'">
<ClCompile>
<PreprocessorDefinitions>USE_INTEL_SPEEDUP;WOLFSSL_X86_64_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>