Skip to content

Commit 4bdf82f

Browse files
committed
Do not use AdvancedVectorExtensions2 for all *.c files,
so that the resulting binary can be executed on older CPUs, too. Also use AdvancedVectorExtensions512 where necessary.
1 parent 335009b commit 4bdf82f

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

PCbuild/zlib-ng.vcxproj

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@
9898
<PreprocessorDefinitions Condition="$(Platform) == 'Win32' or $(Platform) == 'x64'">%(PreprocessorDefinitions);X86_FEATURES;X86_HAVE_XSAVE_INTRIN;X86_SSE2;X86_SSSE3;X86_SSE42;X86_PCLMULQDQ_CRC;X86_AVX2;X86_AVX512;X86_AVX512VNNI;X86_VPCLMULQDQ_CRC</PreprocessorDefinitions>
9999
<PreprocessorDefinitions Condition="$(Configuration) == 'Debug'">%(PreprocessorDefinitions);ZLIB_DEBUG</PreprocessorDefinitions>
100100
<PreprocessorDefinitions Condition="$(PlatformToolset) == 'ClangCL'">%(PreprocessorDefinitions);HAVE_BUILTIN_CTZ</PreprocessorDefinitions>
101-
<EnableEnhancedInstructionSet Condition="$(Platform) == 'Win32' or $(Platform) == 'x64'">AdvancedVectorExtensions2</EnableEnhancedInstructionSet>
102101
</ClCompile>
103102
</ItemDefinitionGroup>
104103
<ItemGroup>
@@ -155,28 +154,30 @@
155154
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mssse3 -mpclmul</AdditionalOptions>
156155
</ClCompile>
157156
<ClCompile Include="$(zlibNgDir)\arch\x86\slide_hash_avx2.c">
158-
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mavx2</AdditionalOptions>
157+
<EnableEnhancedInstructionSet>AdvancedVectorExtensions2</EnableEnhancedInstructionSet>
159158
</ClCompile>
160159
<ClCompile Include="$(zlibNgDir)\arch\x86\chunkset_avx2.c">
161-
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mavx2</AdditionalOptions>
160+
<EnableEnhancedInstructionSet>AdvancedVectorExtensions2</EnableEnhancedInstructionSet>
162161
</ClCompile>
163162
<ClCompile Include="$(zlibNgDir)\arch\x86\compare256_avx2.c">
164-
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mavx2</AdditionalOptions>
163+
<EnableEnhancedInstructionSet>AdvancedVectorExtensions2</EnableEnhancedInstructionSet>
165164
</ClCompile>
166165
<ClCompile Include="$(zlibNgDir)\arch\x86\adler32_avx2.c">
167-
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mavx2</AdditionalOptions>
166+
<EnableEnhancedInstructionSet>AdvancedVectorExtensions2</EnableEnhancedInstructionSet>
168167
</ClCompile>
169168
<ClCompile Include="$(zlibNgDir)\arch\x86\adler32_avx512.c">
170-
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mavx512bw</AdditionalOptions>
169+
<EnableEnhancedInstructionSet>AdvancedVectorExtensions512</EnableEnhancedInstructionSet>
171170
</ClCompile>
172171
<ClCompile Include="$(zlibNgDir)\arch\x86\chunkset_avx512.c">
173-
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mavx512bw -mavx512vl -mbmi2</AdditionalOptions>
172+
<EnableEnhancedInstructionSet>AdvancedVectorExtensions512</EnableEnhancedInstructionSet>
174173
</ClCompile>
175174
<ClCompile Include="$(zlibNgDir)\arch\x86\adler32_avx512_vnni.c">
176-
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mavx512bw -mavx512vl -mavx512vnni</AdditionalOptions>
175+
<EnableEnhancedInstructionSet>AdvancedVectorExtensions512</EnableEnhancedInstructionSet>
176+
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mavx512vnni</AdditionalOptions>
177177
</ClCompile>
178178
<ClCompile Include="$(zlibNgDir)\arch\x86\crc32_vpclmulqdq.c">
179-
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mavx512f -mvpclmulqdq</AdditionalOptions>
179+
<EnableEnhancedInstructionSet>AdvancedVectorExtensions512</EnableEnhancedInstructionSet>
180+
<AdditionalOptions Condition="$(PlatformToolset) == 'ClangCL'">%(AdditionalOptions) -mvpclmulqdq</AdditionalOptions>
180181
</ClCompile>
181182
</ItemGroup>
182183
<ItemGroup>

0 commit comments

Comments
 (0)