[llvm] [RISCV] Don't run loop-idiom-vectorize pass in the O0 pipeline. (PR #156798)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 4 09:36:56 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `fuchsia-x86_64-linux` running on `fuchsia-debian-64-us-central1-a-1` while building `llvm` at step 4 "annotate".

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

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

```
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/fuchsia-linux.py ...' (failure)
...
[4975/5179] Linking CXX static library lib/liblldELF.a
[4976/5179] Linking CXX static library lib/libclangCodeGen.a
[4977/5179] Linking CXX static library lib/libclangFrontendTool.a
[4978/5179] Linking CXX executable bin/opt
[4979/5179] Linking CXX executable bin/llvm-lto
[4980/5179] Building CXX object tools/llvm-jitlink/CMakeFiles/llvm-jitlink.dir/llvm-jitlink.cpp.o
[4981/5179] Linking CXX executable bin/llvm-jitlink
[4982/5179] Building CXX object tools/bolt/lib/Rewrite/CMakeFiles/LLVMBOLTRewrite.dir/RewriteInstance.cpp.o
[4983/5179] Linking CXX static library lib/libLLVMBOLTRewrite.a
[4984/5179] Linking CXX executable bin/llvm-bolt-binary-analysis
FAILED: bin/llvm-bolt-binary-analysis 
: && /usr/bin/clang++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -ffat-lto-objects -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix=../../llvm-project -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/= -no-canonical-prefixes -O3 -DNDEBUG -static-libstdc++ -fuse-ld=lld -Wl,--color-diagnostics -ffat-lto-objects    -Wl,--gc-sections tools/bolt/tools/binary-analysis/CMakeFiles/llvm-bolt-binary-analysis.dir/binary-analysis.cpp.o -o bin/llvm-bolt-binary-analysis  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMAArch64CodeGen.a  lib/libLLVMAArch64AsmParser.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Disassembler.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMX86CodeGen.a  lib/libLLVMX86AsmParser.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Disassembler.a  lib/libLLVMX86Info.a  lib/libLLVMRISCVCodeGen.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVDisassembler.a  lib/libLLVMRISCVInfo.a  lib/libLLVMMC.a  lib/libLLVMObject.a  lib/libLLVMSupport.a  lib/libLLVMBOLTRewrite.a  lib/libLLVMBOLTUtils.a  lib/libLLVMCFGuard.a  lib/libLLVMIRPrinter.a  lib/libLLVMGlobalISel.a  lib/libLLVMSelectionDAG.a  lib/libLLVMipo.a  lib/libLLVMVectorize.a  lib/libLLVMSandboxIR.a  lib/libLLVMInstrumentation.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMFrontendDirective.a  lib/libLLVMLinker.a  lib/libLLVMDWARFLinkerClassic.a  lib/libLLVMDWARFLinker.a  lib/libLLVMBOLTProfile.a  lib/libLLVMBOLTRuntimeLibs.a  lib/libLLVMJITLink.a  lib/libLLVMOrcTargetProcess.a  lib/libLLVMOrcShared.a  lib/libLLVMOption.a  lib/libLLVMBOLTPasses.a  lib/libLLVMBOLTTargetAArch64.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMBOLTTargetX86.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Info.a  lib/libLLVMBOLTTargetRISCV.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVInfo.a  lib/libLLVMBOLTCore.a  lib/libLLVMBOLTUtils.a  lib/libLLVMAsmPrinter.a  lib/libLLVMCodeGen.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMTransformUtils.a  lib/libLLVMCGData.a  lib/libLLVMBitWriter.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMTarget.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMMCDisassembler.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  -lrt  -ldl  -lm  lib/libLLVMDemangle.a && :
ld.lld: error: undefined symbol: llvm::OptimizationLevel::O0
>>> referenced by RISCVTargetMachine.cpp
>>>               RISCVTargetMachine.cpp.o:(std::_Function_handler<void (llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel), llvm::RISCVTargetMachine::registerPassBuilderCallbacks(llvm::PassBuilder&)::$_0>::_M_invoke(std::_Any_data const&, llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel&&)) in archive lib/libLLVMRISCVCodeGen.a
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
[4985/5179] Linking CXX executable bin/llvm-bolt-heatmap
FAILED: bin/llvm-bolt-heatmap 
: && /usr/bin/clang++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -ffat-lto-objects -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix=../../llvm-project -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/= -no-canonical-prefixes -O3 -DNDEBUG -static-libstdc++ -fuse-ld=lld -Wl,--color-diagnostics -ffat-lto-objects    -Wl,--gc-sections tools/bolt/tools/heatmap/CMakeFiles/llvm-bolt-heatmap.dir/heatmap.cpp.o -o bin/llvm-bolt-heatmap  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMAArch64CodeGen.a  lib/libLLVMAArch64AsmParser.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Disassembler.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMX86CodeGen.a  lib/libLLVMX86AsmParser.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Disassembler.a  lib/libLLVMX86Info.a  lib/libLLVMRISCVCodeGen.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVDisassembler.a  lib/libLLVMRISCVInfo.a  lib/libLLVMMC.a  lib/libLLVMObject.a  lib/libLLVMSupport.a  lib/libLLVMBOLTProfile.a  lib/libLLVMBOLTRewrite.a  lib/libLLVMBOLTUtils.a  lib/libLLVMCFGuard.a  lib/libLLVMIRPrinter.a  lib/libLLVMGlobalISel.a  lib/libLLVMSelectionDAG.a  lib/libLLVMipo.a  lib/libLLVMVectorize.a  lib/libLLVMSandboxIR.a  lib/libLLVMInstrumentation.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMFrontendDirective.a  lib/libLLVMLinker.a  lib/libLLVMBOLTProfile.a  lib/libLLVMDWARFLinkerClassic.a  lib/libLLVMDWARFLinker.a  lib/libLLVMBOLTRuntimeLibs.a  lib/libLLVMJITLink.a  lib/libLLVMOrcTargetProcess.a  lib/libLLVMOrcShared.a  lib/libLLVMOption.a  lib/libLLVMBOLTPasses.a  lib/libLLVMBOLTTargetAArch64.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMBOLTTargetX86.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Info.a  lib/libLLVMBOLTTargetRISCV.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVInfo.a  lib/libLLVMBOLTCore.a  lib/libLLVMBOLTUtils.a  lib/libLLVMAsmPrinter.a  lib/libLLVMCodeGen.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMTransformUtils.a  lib/libLLVMCGData.a  lib/libLLVMBitWriter.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMTarget.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMMCDisassembler.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  -lrt  -ldl  -lm  lib/libLLVMDemangle.a && :
ld.lld: error: undefined symbol: llvm::OptimizationLevel::O0
>>> referenced by RISCVTargetMachine.cpp
>>>               RISCVTargetMachine.cpp.o:(std::_Function_handler<void (llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel), llvm::RISCVTargetMachine::registerPassBuilderCallbacks(llvm::PassBuilder&)::$_0>::_M_invoke(std::_Any_data const&, llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel&&)) in archive lib/libLLVMRISCVCodeGen.a
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
[4986/5179] Linking CXX executable bin/llvm-bolt
FAILED: bin/llvm-bolt 
: && /usr/bin/clang++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -ffat-lto-objects -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix=../../llvm-project -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/= -no-canonical-prefixes -O3 -DNDEBUG -static-libstdc++ -fuse-ld=lld -Wl,--color-diagnostics -ffat-lto-objects    -Wl,--gc-sections tools/bolt/tools/driver/CMakeFiles/llvm-bolt.dir/llvm-bolt.cpp.o -o bin/llvm-bolt  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMAArch64CodeGen.a  lib/libLLVMAArch64AsmParser.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Disassembler.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMX86CodeGen.a  lib/libLLVMX86AsmParser.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Disassembler.a  lib/libLLVMX86Info.a  lib/libLLVMRISCVCodeGen.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVDisassembler.a  lib/libLLVMRISCVInfo.a  lib/libLLVMMC.a  lib/libLLVMObject.a  lib/libLLVMSupport.a  lib/libLLVMBOLTProfile.a  lib/libLLVMBOLTRewrite.a  lib/libLLVMBOLTUtils.a  lib/libLLVMCFGuard.a  lib/libLLVMIRPrinter.a  lib/libLLVMGlobalISel.a  lib/libLLVMSelectionDAG.a  lib/libLLVMipo.a  lib/libLLVMVectorize.a  lib/libLLVMSandboxIR.a  lib/libLLVMInstrumentation.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMFrontendDirective.a  lib/libLLVMLinker.a  lib/libLLVMBOLTProfile.a  lib/libLLVMDWARFLinkerClassic.a  lib/libLLVMDWARFLinker.a  lib/libLLVMBOLTRuntimeLibs.a  lib/libLLVMJITLink.a  lib/libLLVMOrcTargetProcess.a  lib/libLLVMOrcShared.a  lib/libLLVMOption.a  lib/libLLVMBOLTPasses.a  lib/libLLVMBOLTTargetAArch64.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMBOLTTargetX86.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Info.a  lib/libLLVMBOLTTargetRISCV.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVInfo.a  lib/libLLVMBOLTCore.a  lib/libLLVMBOLTUtils.a  lib/libLLVMAsmPrinter.a  lib/libLLVMCodeGen.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMTransformUtils.a  lib/libLLVMCGData.a  lib/libLLVMBitWriter.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMTarget.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMMCDisassembler.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  -lrt  -ldl  -lm  lib/libLLVMDemangle.a && cd /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix/tools/bolt/tools/driver && /usr/bin/cmake -E create_symlink llvm-bolt /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix/./bin/perf2bolt && cd /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix/tools/bolt/tools/driver && /usr/bin/cmake -E create_symlink llvm-bolt /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix/./bin/llvm-boltdiff
ld.lld: error: undefined symbol: llvm::OptimizationLevel::O0
>>> referenced by RISCVTargetMachine.cpp
>>>               RISCVTargetMachine.cpp.o:(std::_Function_handler<void (llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel), llvm::RISCVTargetMachine::registerPassBuilderCallbacks(llvm::PassBuilder&)::$_0>::_M_invoke(std::_Any_data const&, llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel&&)) in archive lib/libLLVMRISCVCodeGen.a
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
[4987/5179] Building CXX object tools/obj2yaml/CMakeFiles/obj2yaml.dir/elf2yaml.cpp.o
[4988/5179] Building CXX object tools/llvm-readobj/CMakeFiles/obj.llvm-readobj.dir/ELFDumper.cpp.o
ninja: build stopped: subcommand failed.
['ninja', '-C', '/var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix', 'toolchain-distribution'] exited with return code 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP check@@@
Running: ninja -C /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix check-llvm check-clang check-lld
ninja: Entering directory `/var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix'
[1/1420] Linking CXX static library lib/libLLVMTableGenBasic.a
[2/1420] Building CXX object lib/MCA/CMakeFiles/LLVMMCA.dir/HardwareUnits/HardwareUnit.cpp.o
[3/1420] Linking CXX static library lib/libLLVMTableGenCommon.a
[4/1420] Building CXX object lib/MCA/CMakeFiles/LLVMMCA.dir/CodeEmitter.cpp.o
[5/1420] Building CXX object lib/MCA/CMakeFiles/LLVMMCA.dir/HardwareUnits/RetireControlUnit.cpp.o
[6/1420] Building CXX object lib/MCA/CMakeFiles/LLVMMCA.dir/IncrementalSourceMgr.cpp.o
[7/1420] Building CXX object lib/MCA/CMakeFiles/LLVMMCA.dir/Support.cpp.o
[8/1420] Building CXX object lib/Frontend/OpenACC/CMakeFiles/LLVMFrontendOpenACC.dir/ACC.cpp.o
[9/1420] Linking CXX static library lib/libLLVMFrontendOpenACC.a
[10/1420] Building CXX object lib/MCA/CMakeFiles/LLVMMCA.dir/Instruction.cpp.o
[11/1420] Building CXX object lib/MCA/CMakeFiles/LLVMMCA.dir/HWEventListener.cpp.o
Step 6 (build) failure: build (failure)
...
[4975/5179] Linking CXX static library lib/liblldELF.a
[4976/5179] Linking CXX static library lib/libclangCodeGen.a
[4977/5179] Linking CXX static library lib/libclangFrontendTool.a
[4978/5179] Linking CXX executable bin/opt
[4979/5179] Linking CXX executable bin/llvm-lto
[4980/5179] Building CXX object tools/llvm-jitlink/CMakeFiles/llvm-jitlink.dir/llvm-jitlink.cpp.o
[4981/5179] Linking CXX executable bin/llvm-jitlink
[4982/5179] Building CXX object tools/bolt/lib/Rewrite/CMakeFiles/LLVMBOLTRewrite.dir/RewriteInstance.cpp.o
[4983/5179] Linking CXX static library lib/libLLVMBOLTRewrite.a
[4984/5179] Linking CXX executable bin/llvm-bolt-binary-analysis
FAILED: bin/llvm-bolt-binary-analysis 
: && /usr/bin/clang++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -ffat-lto-objects -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix=../../llvm-project -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/= -no-canonical-prefixes -O3 -DNDEBUG -static-libstdc++ -fuse-ld=lld -Wl,--color-diagnostics -ffat-lto-objects    -Wl,--gc-sections tools/bolt/tools/binary-analysis/CMakeFiles/llvm-bolt-binary-analysis.dir/binary-analysis.cpp.o -o bin/llvm-bolt-binary-analysis  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMAArch64CodeGen.a  lib/libLLVMAArch64AsmParser.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Disassembler.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMX86CodeGen.a  lib/libLLVMX86AsmParser.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Disassembler.a  lib/libLLVMX86Info.a  lib/libLLVMRISCVCodeGen.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVDisassembler.a  lib/libLLVMRISCVInfo.a  lib/libLLVMMC.a  lib/libLLVMObject.a  lib/libLLVMSupport.a  lib/libLLVMBOLTRewrite.a  lib/libLLVMBOLTUtils.a  lib/libLLVMCFGuard.a  lib/libLLVMIRPrinter.a  lib/libLLVMGlobalISel.a  lib/libLLVMSelectionDAG.a  lib/libLLVMipo.a  lib/libLLVMVectorize.a  lib/libLLVMSandboxIR.a  lib/libLLVMInstrumentation.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMFrontendDirective.a  lib/libLLVMLinker.a  lib/libLLVMDWARFLinkerClassic.a  lib/libLLVMDWARFLinker.a  lib/libLLVMBOLTProfile.a  lib/libLLVMBOLTRuntimeLibs.a  lib/libLLVMJITLink.a  lib/libLLVMOrcTargetProcess.a  lib/libLLVMOrcShared.a  lib/libLLVMOption.a  lib/libLLVMBOLTPasses.a  lib/libLLVMBOLTTargetAArch64.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMBOLTTargetX86.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Info.a  lib/libLLVMBOLTTargetRISCV.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVInfo.a  lib/libLLVMBOLTCore.a  lib/libLLVMBOLTUtils.a  lib/libLLVMAsmPrinter.a  lib/libLLVMCodeGen.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMTransformUtils.a  lib/libLLVMCGData.a  lib/libLLVMBitWriter.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMTarget.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMMCDisassembler.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  -lrt  -ldl  -lm  lib/libLLVMDemangle.a && :
ld.lld: error: undefined symbol: llvm::OptimizationLevel::O0
>>> referenced by RISCVTargetMachine.cpp
>>>               RISCVTargetMachine.cpp.o:(std::_Function_handler<void (llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel), llvm::RISCVTargetMachine::registerPassBuilderCallbacks(llvm::PassBuilder&)::$_0>::_M_invoke(std::_Any_data const&, llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel&&)) in archive lib/libLLVMRISCVCodeGen.a
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
[4985/5179] Linking CXX executable bin/llvm-bolt-heatmap
FAILED: bin/llvm-bolt-heatmap 
: && /usr/bin/clang++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -ffat-lto-objects -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix=../../llvm-project -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/= -no-canonical-prefixes -O3 -DNDEBUG -static-libstdc++ -fuse-ld=lld -Wl,--color-diagnostics -ffat-lto-objects    -Wl,--gc-sections tools/bolt/tools/heatmap/CMakeFiles/llvm-bolt-heatmap.dir/heatmap.cpp.o -o bin/llvm-bolt-heatmap  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMAArch64CodeGen.a  lib/libLLVMAArch64AsmParser.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Disassembler.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMX86CodeGen.a  lib/libLLVMX86AsmParser.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Disassembler.a  lib/libLLVMX86Info.a  lib/libLLVMRISCVCodeGen.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVDisassembler.a  lib/libLLVMRISCVInfo.a  lib/libLLVMMC.a  lib/libLLVMObject.a  lib/libLLVMSupport.a  lib/libLLVMBOLTProfile.a  lib/libLLVMBOLTRewrite.a  lib/libLLVMBOLTUtils.a  lib/libLLVMCFGuard.a  lib/libLLVMIRPrinter.a  lib/libLLVMGlobalISel.a  lib/libLLVMSelectionDAG.a  lib/libLLVMipo.a  lib/libLLVMVectorize.a  lib/libLLVMSandboxIR.a  lib/libLLVMInstrumentation.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMFrontendDirective.a  lib/libLLVMLinker.a  lib/libLLVMBOLTProfile.a  lib/libLLVMDWARFLinkerClassic.a  lib/libLLVMDWARFLinker.a  lib/libLLVMBOLTRuntimeLibs.a  lib/libLLVMJITLink.a  lib/libLLVMOrcTargetProcess.a  lib/libLLVMOrcShared.a  lib/libLLVMOption.a  lib/libLLVMBOLTPasses.a  lib/libLLVMBOLTTargetAArch64.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMBOLTTargetX86.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Info.a  lib/libLLVMBOLTTargetRISCV.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVInfo.a  lib/libLLVMBOLTCore.a  lib/libLLVMBOLTUtils.a  lib/libLLVMAsmPrinter.a  lib/libLLVMCodeGen.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMTransformUtils.a  lib/libLLVMCGData.a  lib/libLLVMBitWriter.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMTarget.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMMCDisassembler.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  -lrt  -ldl  -lm  lib/libLLVMDemangle.a && :
ld.lld: error: undefined symbol: llvm::OptimizationLevel::O0
>>> referenced by RISCVTargetMachine.cpp
>>>               RISCVTargetMachine.cpp.o:(std::_Function_handler<void (llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel), llvm::RISCVTargetMachine::registerPassBuilderCallbacks(llvm::PassBuilder&)::$_0>::_M_invoke(std::_Any_data const&, llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel&&)) in archive lib/libLLVMRISCVCodeGen.a
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
[4986/5179] Linking CXX executable bin/llvm-bolt
FAILED: bin/llvm-bolt 
: && /usr/bin/clang++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -ffat-lto-objects -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix=../../llvm-project -ffile-prefix-map=/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/= -no-canonical-prefixes -O3 -DNDEBUG -static-libstdc++ -fuse-ld=lld -Wl,--color-diagnostics -ffat-lto-objects    -Wl,--gc-sections tools/bolt/tools/driver/CMakeFiles/llvm-bolt.dir/llvm-bolt.cpp.o -o bin/llvm-bolt  -Wl,-rpath,"\$ORIGIN/../lib:"  lib/libLLVMAArch64CodeGen.a  lib/libLLVMAArch64AsmParser.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Disassembler.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMX86CodeGen.a  lib/libLLVMX86AsmParser.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Disassembler.a  lib/libLLVMX86Info.a  lib/libLLVMRISCVCodeGen.a  lib/libLLVMRISCVAsmParser.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVDisassembler.a  lib/libLLVMRISCVInfo.a  lib/libLLVMMC.a  lib/libLLVMObject.a  lib/libLLVMSupport.a  lib/libLLVMBOLTProfile.a  lib/libLLVMBOLTRewrite.a  lib/libLLVMBOLTUtils.a  lib/libLLVMCFGuard.a  lib/libLLVMIRPrinter.a  lib/libLLVMGlobalISel.a  lib/libLLVMSelectionDAG.a  lib/libLLVMipo.a  lib/libLLVMVectorize.a  lib/libLLVMSandboxIR.a  lib/libLLVMInstrumentation.a  lib/libLLVMFrontendOpenMP.a  lib/libLLVMFrontendOffloading.a  lib/libLLVMObjectYAML.a  lib/libLLVMFrontendAtomic.a  lib/libLLVMFrontendDirective.a  lib/libLLVMLinker.a  lib/libLLVMBOLTProfile.a  lib/libLLVMDWARFLinkerClassic.a  lib/libLLVMDWARFLinker.a  lib/libLLVMBOLTRuntimeLibs.a  lib/libLLVMJITLink.a  lib/libLLVMOrcTargetProcess.a  lib/libLLVMOrcShared.a  lib/libLLVMOption.a  lib/libLLVMBOLTPasses.a  lib/libLLVMBOLTTargetAArch64.a  lib/libLLVMAArch64Desc.a  lib/libLLVMAArch64Info.a  lib/libLLVMAArch64Utils.a  lib/libLLVMBOLTTargetX86.a  lib/libLLVMX86Desc.a  lib/libLLVMX86Info.a  lib/libLLVMBOLTTargetRISCV.a  lib/libLLVMRISCVDesc.a  lib/libLLVMRISCVInfo.a  lib/libLLVMBOLTCore.a  lib/libLLVMBOLTUtils.a  lib/libLLVMAsmPrinter.a  lib/libLLVMCodeGen.a  lib/libLLVMScalarOpts.a  lib/libLLVMAggressiveInstCombine.a  lib/libLLVMInstCombine.a  lib/libLLVMObjCARCOpts.a  lib/libLLVMTransformUtils.a  lib/libLLVMCGData.a  lib/libLLVMBitWriter.a  lib/libLLVMCodeGenTypes.a  lib/libLLVMTarget.a  lib/libLLVMAnalysis.a  lib/libLLVMProfileData.a  lib/libLLVMSymbolize.a  lib/libLLVMDebugInfoGSYM.a  lib/libLLVMDebugInfoPDB.a  lib/libLLVMDebugInfoMSF.a  lib/libLLVMDebugInfoBTF.a  lib/libLLVMFrontendHLSL.a  lib/libLLVMDebugInfoCodeView.a  lib/libLLVMMCDisassembler.a  lib/libLLVMDebugInfoDWARF.a  lib/libLLVMObject.a  lib/libLLVMMCParser.a  lib/libLLVMMC.a  lib/libLLVMIRReader.a  lib/libLLVMBitReader.a  lib/libLLVMAsmParser.a  lib/libLLVMCore.a  lib/libLLVMRemarks.a  lib/libLLVMBitstreamReader.a  lib/libLLVMTextAPI.a  lib/libLLVMDebugInfoDWARFLowLevel.a  lib/libLLVMBinaryFormat.a  lib/libLLVMTargetParser.a  lib/libLLVMSupport.a  -lrt  -ldl  -lm  lib/libLLVMDemangle.a && cd /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix/tools/bolt/tools/driver && /usr/bin/cmake -E create_symlink llvm-bolt /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix/./bin/perf2bolt && cd /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix/tools/bolt/tools/driver && /usr/bin/cmake -E create_symlink llvm-bolt /var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix/./bin/llvm-boltdiff
ld.lld: error: undefined symbol: llvm::OptimizationLevel::O0
>>> referenced by RISCVTargetMachine.cpp
>>>               RISCVTargetMachine.cpp.o:(std::_Function_handler<void (llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel), llvm::RISCVTargetMachine::registerPassBuilderCallbacks(llvm::PassBuilder&)::$_0>::_M_invoke(std::_Any_data const&, llvm::PassManager<llvm::Loop, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&>&, llvm::OptimizationLevel&&)) in archive lib/libLLVMRISCVCodeGen.a
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
[4987/5179] Building CXX object tools/obj2yaml/CMakeFiles/obj2yaml.dir/elf2yaml.cpp.o
[4988/5179] Building CXX object tools/llvm-readobj/CMakeFiles/obj.llvm-readobj.dir/ELFDumper.cpp.o
ninja: build stopped: subcommand failed.
['ninja', '-C', '/var/lib/buildbot/fuchsia-x86_64-linux/build/llvm-build-6o_rx_ix', 'toolchain-distribution'] exited with return code 1.

```

</details>

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


More information about the llvm-commits mailing list