[llvm] RuntimeLibcalls: Fix AArch64 wrongly typed long-double libcalls (PR #215993)

via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 14 16:54:57 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results

* 64395 tests passed
* 2015 tests skipped

All executed tests passed, but another part of the build **failed**. Click on a failure below to see the details.

<details>
<summary>[code=4294967295] unittests/DebugInfo/LogicalView/DebugInfoLogicalViewTests.exe</summary>

```
FAILED: [code=4294967295] unittests/DebugInfo/LogicalView/DebugInfoLogicalViewTests.exe
C:\Windows\system32\cmd.exe /C "cd . && C:\BuildTools\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe -E vs_link_exe --msvc-ver=1944 --intdir=unittests\DebugInfo\LogicalView\CMakeFiles\DebugInfoLogicalViewTests.dir --rc="C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\rc.exe" --mt="C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\mt.exe" --manifests  -- C:\clang\clang-msvc\bin\lld-link.exe /nologo @CMakeFiles\DebugInfoLogicalViewTests.rsp  /out:unittests\DebugInfo\LogicalView\DebugInfoLogicalViewTests.exe /implib:unittests\DebugInfo\LogicalView\DebugInfoLogicalViewTests.lib /pdb:unittests\DebugInfo\LogicalView\DebugInfoLogicalViewTests.pdb /version:0.0 /MANIFEST:NO /Brepro /INCREMENTAL:NO /subsystem:console  /STACK:10000000 && cd ."
LINK: command "C:\clang\clang-msvc\bin\lld-link.exe /nologo @CMakeFiles\DebugInfoLogicalViewTests.rsp /out:unittests\DebugInfo\LogicalView\DebugInfoLogicalViewTests.exe /implib:unittests\DebugInfo\LogicalView\DebugInfoLogicalViewTests.lib /pdb:unittests\DebugInfo\LogicalView\DebugInfoLogicalViewTests.pdb /version:0.0 /MANIFEST:NO /Brepro /INCREMENTAL:NO /subsystem:console /STACK:10000000" failed (exit code 1) with the following output:
lld-link: error: undefined symbol: public: virtual __cdecl llvm::TargetLowering::~TargetLowering(void)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64AsmPrinter.cpp.obj):(public: virtual __cdecl llvm::AArch64Subtarget::~AArch64Subtarget(void))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64TargetMachine.cpp.obj)
>>> referenced by LLVMARMCodeGen.lib(ARMAsmPrinter.cpp.obj):(public: virtual __cdecl llvm::ARMSubtarget::~ARMSubtarget(void))
>>> referenced 47 more times

lld-link: error: undefined symbol: public: virtual __cdecl llvm::SelectionDAGGenTargetInfo::~SelectionDAGGenTargetInfo(void)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64AsmPrinter.cpp.obj):(public: virtual __cdecl llvm::AArch64Subtarget::~AArch64Subtarget(void))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64TargetMachine.cpp.obj)
>>> referenced by LLVMARMCodeGen.lib(ARMAsmPrinter.cpp.obj):(public: virtual __cdecl llvm::ARMSubtarget::~ARMSubtarget(void))
>>> referenced 39 more times

lld-link: error: undefined symbol: public: class llvm::PreservedAnalyses __cdecl llvm::SelectionDAGISelPass::run(class llvm::MachineFunction &, class llvm::AnalysisManager<class llvm::MachineFunction> &)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64TargetMachine.cpp.obj):(private: static class llvm::PreservedAnalyses __cdecl llvm::detail::PassModel<class llvm::MachineFunction, class llvm::AArch64DAGToDAGISelPass, class llvm::AnalysisManager<class llvm::MachineFunction>>::runImpl(class llvm::detail::PassConcept<class llvm::MachineFunction, class llvm::AnalysisManager<class llvm::MachineFunction>> &, class llvm::MachineFunction &, class llvm::AnalysisManager<class llvm::MachineFunction> &))
>>> referenced by LLVMNVPTXCodeGen.lib(NVPTXTargetMachine.cpp.obj):(private: static class llvm::PreservedAnalyses __cdecl llvm::detail::PassModel<class llvm::MachineFunction, class llvm::NVPTXISelDAGToDAGPass, class llvm::AnalysisManager<class llvm::MachineFunction>>::runImpl(class llvm::detail::PassConcept<class llvm::MachineFunction, class llvm::AnalysisManager<class llvm::MachineFunction>> &, class llvm::MachineFunction &, class llvm::AnalysisManager<class llvm::MachineFunction> &))
>>> referenced by LLVMAMDGPUCodeGen.lib(AMDGPUISelDAGToDAG.cpp.obj):(public: class llvm::PreservedAnalyses __cdecl llvm::AMDGPUISelDAGToDAGPass::run(class llvm::MachineFunction &, class llvm::AnalysisManager<class llvm::MachineFunction> &))
>>> referenced 6 more times

lld-link: error: undefined symbol: public: __cdecl llvm::SelectionDAGISel::SelectionDAGISel(class llvm::TargetMachine &, enum llvm::CodeGenOptLevel)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: __cdecl llvm::AArch64DAGToDAGISelPass::AArch64DAGToDAGISelPass(class llvm::AArch64TargetMachine &))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(class llvm::FunctionPass * __cdecl llvm::createAArch64ISelDag(class llvm::AArch64TargetMachine &, enum llvm::CodeGenOptLevel))
>>> referenced by LLVMAMDGPUCodeGen.lib(AMDGPUISelDAGToDAG.cpp.obj):(class llvm::FunctionPass * __cdecl llvm::createAMDGPUISelDag(class llvm::TargetMachine &, enum llvm::CodeGenOptLevel))
>>> referenced 33 more times

lld-link: error: undefined symbol: public: __cdecl llvm::SelectionDAGISelLegacy::SelectionDAGISelLegacy(char &, class std::unique_ptr<class llvm::SelectionDAGISel, struct std::default_delete<class llvm::SelectionDAGISel>>)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(class llvm::FunctionPass * __cdecl llvm::createAArch64ISelDag(class llvm::AArch64TargetMachine &, enum llvm::CodeGenOptLevel))
>>> referenced by LLVMAMDGPUCodeGen.lib(AMDGPUISelDAGToDAG.cpp.obj):(class llvm::FunctionPass * __cdecl llvm::createAMDGPUISelDag(class llvm::TargetMachine &, enum llvm::CodeGenOptLevel))
>>> referenced by LLVMAMDGPUCodeGen.lib(AMDGPUISelDAGToDAG.cpp.obj):(public: __cdecl llvm::AMDGPUDAGToDAGISelLegacy::AMDGPUDAGToDAGISelLegacy(class llvm::TargetMachine &, enum llvm::CodeGenOptLevel))
>>> referenced 21 more times

lld-link: error: undefined symbol: public: virtual bool __cdecl llvm::SelectionDAGISel::runOnMachineFunction(class llvm::MachineFunction &)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual bool __cdecl `anonymous namespace'::AArch64DAGToDAGISel::runOnMachineFunction(class llvm::MachineFunction &))
>>> referenced by LLVMAMDGPUCodeGen.lib(AMDGPUISelDAGToDAG.cpp.obj):(public: virtual bool __cdecl llvm::AMDGPUDAGToDAGISel::runOnMachineFunction(class llvm::MachineFunction &))
>>> referenced by LLVMARMCodeGen.lib(ARMISelDAGToDAG.cpp.obj):(public: virtual bool __cdecl `anonymous namespace'::ARMDAGToDAGISel::runOnMachineFunction(class llvm::MachineFunction &))
>>> referenced 17 more times

lld-link: error: undefined symbol: public: class llvm::SDValue __cdecl llvm::SelectionDAG::getBitcast(struct llvm::EVT, class llvm::SDValue)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMHexagonCodeGen.lib(HexagonISelDAGToDAG.cpp.obj):(private: void __cdecl llvm::HexagonDAGToDAGISel::ppHoistZextI1(class std::vector<class llvm::SDNode *, class std::allocator<class llvm::SDNode *>> &&))
>>> referenced 1201 more times

lld-link: error: undefined symbol: public: class llvm::SDValue __cdecl llvm::SelectionDAG::getNode(unsigned int, class llvm::SDLoc const &, struct llvm::EVT, class llvm::ArrayRef<class llvm::SDValue>)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMHexagonCodeGen.lib(HexagonISelDAGToDAG.cpp.obj):(private: void __cdecl llvm::HexagonDAGToDAGISel::ppHoistZextI1(class std::vector<class llvm::SDNode *, class std::allocator<class llvm::SDNode *>> &&))
>>> referenced by LLVMHexagonCodeGen.lib(HexagonISelDAGToDAG.cpp.obj):(private: void __cdecl llvm::HexagonDAGToDAGISel::ppHoistZextI1(class std::vector<class llvm::SDNode *, class std::allocator<class llvm::SDNode *>> &&))
>>> referenced 799 more times

lld-link: error: undefined symbol: public: class llvm::SDValue __cdecl llvm::SelectionDAG::getNode(unsigned int, class llvm::SDLoc const &, struct llvm::EVT, class llvm::SDValue, class llvm::SDValue)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(private: bool __cdecl `anonymous namespace'::AArch64DAGToDAGISel::SelectAddrModeXRO(class llvm::SDValue, unsigned int, class SDValue::0xFDFDF35D &, class SDValue::0xFDFDF35D &, class SDValue::0xFDFDF35D &, class SDValue::0xFDFDF35D &))
>>> referenced 4298 more times

lld-link: error: undefined symbol: public: void __cdecl llvm::SDNode::dump(class llvm::SelectionDAG const *) const
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced 46 more times

lld-link: error: undefined symbol: public: void __cdecl llvm::SelectionDAG::ReplaceAllUsesOfValueWith(class llvm::SDValue, class llvm::SDValue)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced 300 more times

lld-link: error: undefined symbol: public: void __cdecl llvm::SelectionDAG::RemoveDeadNodes(void)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMAMDGPUCodeGen.lib(AMDGPUISelDAGToDAG.cpp.obj):(public: virtual void __cdecl llvm::AMDGPUDAGToDAGISel::PreprocessISelDAG(void))
>>> referenced by LLVMAMDGPUCodeGen.lib(AMDGPUISelDAGToDAG.cpp.obj):(public: virtual void __cdecl llvm::AMDGPUDAGToDAGISel::PostprocessISelDAG(void))
>>> referenced 13 more times

lld-link: error: undefined symbol: public: class llvm::SDValue __cdecl llvm::SelectionDAG::getConstant(unsigned __int64, class llvm::SDLoc const &, struct llvm::EVT, bool, bool)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced 4657 more times

lld-link: error: undefined symbol: public: class llvm::MachineSDNode * __cdecl llvm::SelectionDAG::getMachineNode(unsigned int, class llvm::SDLoc const &, struct llvm::EVT, class llvm::ArrayRef<class llvm::SDValue>)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced 226 more times

lld-link: error: undefined symbol: public: class llvm::SDValue __cdecl llvm::SelectionDAG::getTargetExtractSubreg(int, class llvm::SDLoc const &, struct llvm::EVT, class llvm::SDValue)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced 170 more times

lld-link: error: undefined symbol: public: void __cdecl llvm::SelectionDAG::ReplaceAllUsesWith(class llvm::SDNode *, class llvm::SDNode *)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: bool __cdecl `anonymous namespace'::AArch64DAGToDAGISel::trySelectXAR(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: bool __cdecl `anonymous namespace'::AArch64DAGToDAGISel::trySelectCastScalableToFixedLengthVector(class llvm::SDNode *))
>>> referenced 157 more times

lld-link: error: undefined symbol: public: static void __cdecl llvm::SelectionDAGISel::EnforceNodeIdInvariant(class llvm::SDNode *)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced 320 more times

lld-link: error: undefined symbol: public: void __cdecl llvm::SelectionDAG::RemoveDeadNode(class llvm::SDNode *)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced 206 more times

lld-link: error: undefined symbol: public: class llvm::SDNode * __cdecl llvm::SelectionDAG::SelectNodeTo(class llvm::SDNode *, unsigned int, struct llvm::EVT, class llvm::ArrayRef<class llvm::SDValue>)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced 39 more times

lld-link: error: undefined symbol: public: class llvm::SDValue __cdecl llvm::SelectionDAG::getFrameIndex(int, struct llvm::EVT, bool)
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: virtual void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::Select(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: void __cdecl `anonymous namespace'::AArch64DAGToDAGISel::SelectTagP(class llvm::SDNode *))
>>> referenced by LLVMAArch64CodeGen.lib(AArch64ISelDAGToDAG.cpp.obj):(public: bool __cdecl `anonymous namespace'::AArch64DAGToDAGISel::SelectAddrModeIndexedSVE<-8, 7>(class llvm::SDNode *, class SDNode::SDValue, class SDNode::llvm &, class SDNode::llvm &))
>>> referenced 221 more times

lld-link: error: too many errors emitted, stopping now (use /errorlimit:0 to see all errors)
```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

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


More information about the llvm-commits mailing list