[clang] [llvm] [LFI][X86] Add X86 LFI target and system instruction rewrites (PR #189569)
LLVM Continuous Integration via cfe-commits
cfe-commits at lists.llvm.org
Tue Jul 7 01:17:37 PDT 2026
llvm-ci wrote:
LLVM Buildbot has detected a new failure on builder `clang-arm64-windows-msvc` running on `linaro-armv8-windows-msvc-04` while building `clang,llvm` at step 5 "build-unified-tree".
Full details are available at: https://lab.llvm.org/buildbot/#/builders/161/builds/12190
<details>
<summary>Here is the relevant piece of the build log for the reference</summary>
```
Step 5 (build-unified-tree) failure: build (failure)
...
1904.089 [3089/10/2563] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86InstComments.cpp.obj
1905.213 [3088/10/2564] Building CXX object lib\LTO\CMakeFiles\LLVMLTO.dir\LTOModule.cpp.obj
1905.847 [3087/10/2565] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86ShuffleDecode.cpp.obj
1906.006 [3086/10/2566] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86EncodingOptimization.cpp.obj
1907.188 [3085/10/2567] Building CXX object lib\LTO\CMakeFiles\LLVMLTO.dir\LTOCodeGenerator.cpp.obj
1909.549 [3084/10/2568] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86MCAsmInfo.cpp.obj
1910.512 [3083/10/2569] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86MCCodeEmitter.cpp.obj
1910.625 [3082/10/2570] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86AsmBackend.cpp.obj
1910.701 [3081/10/2571] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86MnemonicTables.cpp.obj
1910.990 [3080/10/2572] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86MCLFIRewriter.cpp.obj
FAILED: lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.obj
C:\Users\tcwg\scoop\shims\ccache.exe C:\Users\tcwg\scoop\apps\llvm-arm64\current\bin\clang-cl.exe /nologo -TP -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_GLIBCXX_ASSERTIONS -D_HAS_EXCEPTIONS=0 -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -IC:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\build\lib\Target\X86\MCTargetDesc -IC:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\llvm\lib\Target\X86\MCTargetDesc -IC:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\llvm\lib\Target\X86 -IC:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\build\lib\Target\X86 -IC:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\build\include -IC:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\llvm\include /DWIN32 /D_WINDOWS /Zc:inline /Zc:__cplusplus /Oi /Brepro /bigobj /permissive- -Werror=unguarded-availability-new /W4 -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported /Gw /O2 /Ob2 -std:c++17 -MD -UNDEBUG /EHs-c- /GR- /showIncludes /Folib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86MCLFIRewriter.cpp.obj /Fdlib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\LLVMX86Desc.pdb -c -- C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\llvm\lib\Target\X86\MCTargetDesc\X86MCLFIRewriter.cpp
C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\llvm\lib\Target\X86\MCTargetDesc\X86MCLFIRewriter.cpp(69,10): error: use of undeclared identifier 'X86MCRegisterClasses'; did you mean 'getX86MCRegisterClass'?
69 | X86MCRegisterClasses[X86::GR64RegClassID].contains(Reg);
| ^~~~~~~~~~~~~~~~~~~~
| getX86MCRegisterClass
C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\build\lib\Target\X86\X86GenRegisterInfoEnums.inc(12,24): note: 'getX86MCRegisterClass' declared here
12 | const MCRegisterClass &getX86MCRegisterClass(unsigned RC);
| ^
C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\llvm\lib\Target\X86\MCTargetDesc\X86MCLFIRewriter.cpp(69,10): error: subscript of pointer to function type 'const MCRegisterClass &(unsigned int)'
69 | X86MCRegisterClasses[X86::GR64RegClassID].contains(Reg);
| ^~~~~~~~~~~~~~~~~~~~
C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\llvm\lib\Target\X86\MCTargetDesc\X86MCLFIRewriter.cpp(176,9): error: use of undeclared identifier 'X86MCRegisterClasses'; did you mean 'getX86MCRegisterClass'?
176 | X86MCRegisterClasses[X86::GR64RegClassID].contains(DestReg) &&
| ^~~~~~~~~~~~~~~~~~~~
| getX86MCRegisterClass
C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\build\lib\Target\X86\X86GenRegisterInfoEnums.inc(12,24): note: 'getX86MCRegisterClass' declared here
12 | const MCRegisterClass &getX86MCRegisterClass(unsigned RC);
| ^
C:\Users\tcwg\llvm-worker\clang-arm64-windows-msvc\llvm-project\llvm\lib\Target\X86\MCTargetDesc\X86MCLFIRewriter.cpp(176,9): error: subscript of pointer to function type 'const MCRegisterClass &(unsigned int)'
176 | X86MCRegisterClasses[X86::GR64RegClassID].contains(DestReg) &&
| ^~~~~~~~~~~~~~~~~~~~
4 errors generated.
1911.344 [3080/9/2573] Building CXX object lib\CodeGen\AsmPrinter\CMakeFiles\LLVMAsmPrinter.dir\CodeViewDebug.cpp.obj
1911.482 [3080/8/2574] Building CXX object lib\LTO\CMakeFiles\LLVMLTO.dir\LTOBackend.cpp.obj
1913.855 [3080/7/2575] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86MachObjectWriter.cpp.obj
1914.056 [3080/6/2576] Building CXX object lib\LTO\CMakeFiles\LLVMLTO.dir\LTO.cpp.obj
1914.102 [3080/5/2577] Building CXX object lib\LTO\CMakeFiles\LLVMLTO.dir\ThinLTOCodeGenerator.cpp.obj
1914.428 [3080/4/2578] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86WinCOFFObjectWriter.cpp.obj
1914.641 [3080/3/2579] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86ELFObjectWriter.cpp.obj
1919.836 [3080/2/2580] Building CXX object lib\Target\X86\MCTargetDesc\CMakeFiles\LLVMX86Desc.dir\X86MCTargetDesc.cpp.obj
1923.354 [3080/1/2581] Building CXX object lib\Passes\CMakeFiles\LLVMPasses.dir\PassBuilder.cpp.obj
ninja: build stopped: subcommand failed.
```
</details>
https://github.com/llvm/llvm-project/pull/189569
More information about the cfe-commits
mailing list