[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
Mon Jul 6 22:04:43 PDT 2026


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `polly-x86_64-linux` running on `polly-x86_64-gce1` while building `clang,llvm` at step 3 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/105/builds/19152

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 3 (annotate) failure: 'python ../llvm.src/polly/ci/polly-x86_64-linux.py ...' (failure)
...
[ 46%/1155.500s :: 2429->10->2147 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86ATTInstPrinter.cpp.o
[ 46%/1155.889s :: 2428->10->2148 (of 4585)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/GISel/X86InstructionSelector.cpp.o
[ 46%/1157.576s :: 2427->10->2149 (of 4585)] Building CXX object lib/Target/X86/Disassembler/CMakeFiles/LLVMX86Disassembler.dir/X86Disassembler.cpp.o
[ 46%/1158.220s :: 2426->10->2150 (of 4585)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/GISel/X86PostLegalizerCombiner.cpp.o
[ 46%/1158.700s :: 2425->10->2151 (of 4585)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/GISel/X86PreLegalizerCombiner.cpp.o
[ 46%/1158.716s :: 2424->10->2152 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MnemonicTables.cpp.o
[ 46%/1159.275s :: 2423->10->2153 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86EncodingOptimization.cpp.o
[ 46%/1159.570s :: 2422->10->2154 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCAsmInfo.cpp.o
[ 47%/1162.342s :: 2421->10->2155 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCCodeEmitter.cpp.o
[ 47%/1162.392s :: 2420->10->2156 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o
FAILED: lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o 
ccache /usr/bin/c++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/build/llvm.build/lib/Target/X86/MCTargetDesc -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86 -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/build/llvm.build/lib/Target/X86 -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/build/llvm.build/include -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-dangling-reference -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-dangling-pointer -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -std=c++17 -fvisibility=hidden -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o -MF lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o.d -o lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o -c /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp: In function ‘bool isGR64OrNone(llvm::MCRegister)’:
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp:69:10: error: ‘X86MCRegisterClasses’ was not declared in this scope
   69 |          X86MCRegisterClasses[X86::GR64RegClassID].contains(Reg);
      |          ^~~~~~~~~~~~~~~~~~~~
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp: In member function ‘void llvm::X86::X86MCLFIRewriter::rewriteFSAccess(const llvm::MCInst&, llvm::MCStreamer&, const llvm::MCSubtargetInfo&)’:
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp:176:9: error: ‘X86MCRegisterClasses’ was not declared in this scope
  176 |         X86MCRegisterClasses[X86::GR64RegClassID].contains(DestReg) &&
      |         ^~~~~~~~~~~~~~~~~~~~
[ 47%/1162.998s :: 2420->9->2157 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86ELFObjectWriter.cpp.o
[ 47%/1163.205s :: 2420->8->2158 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86AsmBackend.cpp.o
[ 47%/1163.301s :: 2420->7->2159 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MachObjectWriter.cpp.o
[ 47%/1163.343s :: 2420->6->2160 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86WinCOFFStreamer.cpp.o
[ 47%/1163.485s :: 2420->5->2161 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86WinCOFFObjectWriter.cpp.o
[ 47%/1163.631s :: 2420->4->2162 (of 4585)] Building CXX object lib/Target/X86/AsmParser/CMakeFiles/LLVMX86AsmParser.dir/X86AsmParser.cpp.o
[ 47%/1165.654s :: 2420->3->2163 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86WinCOFFTargetStreamer.cpp.o
[ 47%/1168.245s :: 2420->2->2164 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCTargetDesc.cpp.o
[ 47%/1179.074s :: 2420->1->2165 (of 4585)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86ISelLowering.cpp.o
In file included from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/ADT/APFloat.h:18,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/CodeGenTypes/LowLevelType.h:31,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/CodeGen/MachineMemOperand.h:22,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h:18,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86SelectionDAGInfo.h:16,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86ISelLowering.h:17,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86ISelLowering.cpp:14:
In destructor ‘llvm::APInt::~APInt()’,
    inlined from ‘LowerShift(llvm::SDValue, const llvm::X86Subtarget&, llvm::SelectionDAG&)::<lambda(llvm::SDValue)>’ at /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86ISelLowering.cpp:31413:
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/ADT/APInt.h:193:18: warning: ‘void operator delete [](void*)’ called on a pointer to an unallocated object ‘72909780498219007’ [-Wfree-nonheap-object]
  193 |       delete[] U.pVal;
      |                  ^~~~
In destructor ‘llvm::APInt::~APInt()’,
    inlined from ‘LowerShift(llvm::SDValue, const llvm::X86Subtarget&, llvm::SelectionDAG&)::<lambda(llvm::SDValue)>’ at /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86ISelLowering.cpp:31414:
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/ADT/APInt.h:193:18: warning: ‘void operator delete [](void*)’ called on a pointer to an unallocated object ‘9241421688590303745’ [-Wfree-nonheap-object]
  193 |       delete[] U.pVal;
      |                  ^~~~
ninja: build stopped: subcommand failed.
Running: ccache -sv
Cache directory:              /srv/bbworker/.cache/ccache
Step 7 (build-llvm) failure: build-llvm (failure)
...
[ 46%/1155.500s :: 2429->10->2147 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86ATTInstPrinter.cpp.o
[ 46%/1155.889s :: 2428->10->2148 (of 4585)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/GISel/X86InstructionSelector.cpp.o
[ 46%/1157.576s :: 2427->10->2149 (of 4585)] Building CXX object lib/Target/X86/Disassembler/CMakeFiles/LLVMX86Disassembler.dir/X86Disassembler.cpp.o
[ 46%/1158.220s :: 2426->10->2150 (of 4585)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/GISel/X86PostLegalizerCombiner.cpp.o
[ 46%/1158.700s :: 2425->10->2151 (of 4585)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/GISel/X86PreLegalizerCombiner.cpp.o
[ 46%/1158.716s :: 2424->10->2152 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MnemonicTables.cpp.o
[ 46%/1159.275s :: 2423->10->2153 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86EncodingOptimization.cpp.o
[ 46%/1159.570s :: 2422->10->2154 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCAsmInfo.cpp.o
[ 47%/1162.342s :: 2421->10->2155 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCCodeEmitter.cpp.o
[ 47%/1162.392s :: 2420->10->2156 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o
FAILED: lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o 
ccache /usr/bin/c++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/build/llvm.build/lib/Target/X86/MCTargetDesc -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86 -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/build/llvm.build/lib/Target/X86 -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/build/llvm.build/include -I/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-dangling-reference -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-dangling-pointer -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -std=c++17 -fvisibility=hidden -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o -MF lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o.d -o lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCLFIRewriter.cpp.o -c /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp: In function ‘bool isGR64OrNone(llvm::MCRegister)’:
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp:69:10: error: ‘X86MCRegisterClasses’ was not declared in this scope
   69 |          X86MCRegisterClasses[X86::GR64RegClassID].contains(Reg);
      |          ^~~~~~~~~~~~~~~~~~~~
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp: In member function ‘void llvm::X86::X86MCLFIRewriter::rewriteFSAccess(const llvm::MCInst&, llvm::MCStreamer&, const llvm::MCSubtargetInfo&)’:
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp:176:9: error: ‘X86MCRegisterClasses’ was not declared in this scope
  176 |         X86MCRegisterClasses[X86::GR64RegClassID].contains(DestReg) &&
      |         ^~~~~~~~~~~~~~~~~~~~
[ 47%/1162.998s :: 2420->9->2157 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86ELFObjectWriter.cpp.o
[ 47%/1163.205s :: 2420->8->2158 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86AsmBackend.cpp.o
[ 47%/1163.301s :: 2420->7->2159 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MachObjectWriter.cpp.o
[ 47%/1163.343s :: 2420->6->2160 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86WinCOFFStreamer.cpp.o
[ 47%/1163.485s :: 2420->5->2161 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86WinCOFFObjectWriter.cpp.o
[ 47%/1163.631s :: 2420->4->2162 (of 4585)] Building CXX object lib/Target/X86/AsmParser/CMakeFiles/LLVMX86AsmParser.dir/X86AsmParser.cpp.o
[ 47%/1165.654s :: 2420->3->2163 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86WinCOFFTargetStreamer.cpp.o
[ 47%/1168.245s :: 2420->2->2164 (of 4585)] Building CXX object lib/Target/X86/MCTargetDesc/CMakeFiles/LLVMX86Desc.dir/X86MCTargetDesc.cpp.o
[ 47%/1179.074s :: 2420->1->2165 (of 4585)] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86ISelLowering.cpp.o
In file included from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/ADT/APFloat.h:18,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/CodeGenTypes/LowLevelType.h:31,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/CodeGen/MachineMemOperand.h:22,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h:18,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86SelectionDAGInfo.h:16,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86ISelLowering.h:17,
                 from /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86ISelLowering.cpp:14:
In destructor ‘llvm::APInt::~APInt()’,
    inlined from ‘LowerShift(llvm::SDValue, const llvm::X86Subtarget&, llvm::SelectionDAG&)::<lambda(llvm::SDValue)>’ at /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86ISelLowering.cpp:31413:
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/ADT/APInt.h:193:18: warning: ‘void operator delete [](void*)’ called on a pointer to an unallocated object ‘72909780498219007’ [-Wfree-nonheap-object]
  193 |       delete[] U.pVal;
      |                  ^~~~
In destructor ‘llvm::APInt::~APInt()’,
    inlined from ‘LowerShift(llvm::SDValue, const llvm::X86Subtarget&, llvm::SelectionDAG&)::<lambda(llvm::SDValue)>’ at /srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/lib/Target/X86/X86ISelLowering.cpp:31414:
/srv/bbworker/polly-x86_64-gce1/polly-x86_64-linux/llvm.src/llvm/include/llvm/ADT/APInt.h:193:18: warning: ‘void operator delete [](void*)’ called on a pointer to an unallocated object ‘9241421688590303745’ [-Wfree-nonheap-object]
  193 |       delete[] U.pVal;
      |                  ^~~~
ninja: build stopped: subcommand failed.
Running: ccache -sv
Cache directory:              /srv/bbworker/.cache/ccache

```

</details>

https://github.com/llvm/llvm-project/pull/189569


More information about the cfe-commits mailing list