Add LZMA decompress assembly code support for Windows On ARM and support...
A free file archiver for extremely high compression
Brought to you by:
ipavlov
This patch does the following:
1. Adds support for compiling Windows On ARM LZMA decompress assembly file using clang-cl as the assembler. This gives significant performance improvements on WoA compared to the C/C++ version.
2. Fix issues in various files where "arm_neon.h" was not being included when compiled with clang-cl.
3. Remove semicolons after some macros in the source code to get rid of warnings with newer version of clang-cl.
4. Adds pragmas to ignore some diagnostics introduced in newer version of clang-cl, that couldn't be fixed easily in source code.
I tested with clang 17.
My compilation steps are as follows:
cmd
cd C:\<path>\7-Zip\CPP\7zip\Bundles\Alone2
call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsarm64.bat"
set CC=clang-cl
set CXX=clang-cl
nmake
--
Usman Nadeem
Qualcomm Innovation Center, Inc.
Diff:
I've already fixed code for clang-16 - clang-19 comptibility and lzma-asm for arm64-windows.
The fixed code is similar to your patch.
I'll open source code soon.