[llvm] [Analysis] Ensure use of strict fp exceptions in ConstantFolding (PR #136139)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 28 03:58:46 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `flang-aarch64-latest-gcc` running on `linaro-flang-aarch64-latest-gcc` while building `llvm` at step 5 "build-unified-tree".

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

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

```
Step 5 (build-unified-tree) failure: build (failure)
...
 1301 |   auto &S = Callee.getSummaryList()[0];
      |                                      ^
../llvm-project/llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp: In member function ‘bool {anonymous}::DevirtIndex::trySingleImplDevirt(llvm::MutableArrayRef<llvm::ValueInfo>, llvm::VTableSlotSummary&, {anonymous}::VTableSlotInfo&, llvm::WholeProgramDevirtResolution*, std::set<llvm::ValueInfo>&)’:
../llvm-project/llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp:1406:9: warning: possibly dangling reference to a temporary [-Wdangling-reference]
 1406 |   auto &S = TheFn.getSummaryList()[0];
      |         ^
../llvm-project/llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp:1406:37: note: the temporary was destroyed at the end of the full expression ‘TheFn.llvm::ValueInfo::getSummaryList().llvm::ArrayRef<std::unique_ptr<llvm::GlobalValueSummary> >::operator[](0)’
 1406 |   auto &S = TheFn.getSummaryList()[0];
      |                                     ^
14.161 [5526/85/1780] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/ConstantFolding.cpp.o
FAILED: lib/Analysis/CMakeFiles/LLVMAnalysis.dir/ConstantFolding.cpp.o 
/usr/local/bin/c++ -DGTEST_HAS_RTTI=0 -DHAS_LOGF128 -DLLVM_EXPORTS -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/tcwg-buildbot/worker/flang-aarch64-latest-gcc/build/lib/Analysis -I/home/tcwg-buildbot/worker/flang-aarch64-latest-gcc/llvm-project/llvm/lib/Analysis -I/home/tcwg-buildbot/worker/flang-aarch64-latest-gcc/build/include -I/home/tcwg-buildbot/worker/flang-aarch64-latest-gcc/llvm-project/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-maybe-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -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 -fPIC  -fno-exceptions -funwind-tables -fno-rtti -UNDEBUG -ffp-exception-behavior=strict -MD -MT lib/Analysis/CMakeFiles/LLVMAnalysis.dir/ConstantFolding.cpp.o -MF lib/Analysis/CMakeFiles/LLVMAnalysis.dir/ConstantFolding.cpp.o.d -o lib/Analysis/CMakeFiles/LLVMAnalysis.dir/ConstantFolding.cpp.o -c /home/tcwg-buildbot/worker/flang-aarch64-latest-gcc/llvm-project/llvm/lib/Analysis/ConstantFolding.cpp
g++-latest: error: unrecognized command-line option ‘-ffp-exception-behavior=strict’
14.161 [5526/84/1781] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/IVDescriptors.cpp.o
14.162 [5526/83/1782] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/IVUsers.cpp.o
14.164 [5526/82/1783] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/IndirectCallPromotionAnalysis.cpp.o
14.165 [5526/81/1784] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/InlineCost.cpp.o
14.166 [5526/80/1785] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/InlineOrder.cpp.o
14.167 [5526/79/1786] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/InstCount.cpp.o
14.168 [5526/78/1787] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/InstructionPrecedenceTracking.cpp.o
14.169 [5526/77/1788] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/InstructionSimplify.cpp.o
14.169 [5526/76/1789] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/InteractiveModelRunner.cpp.o
14.170 [5526/75/1790] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/KernelInfo.cpp.o
14.171 [5526/74/1791] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LastRunTrackingAnalysis.cpp.o
14.171 [5526/73/1792] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LazyBranchProbabilityInfo.cpp.o
14.172 [5526/72/1793] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LazyBlockFrequencyInfo.cpp.o
14.172 [5526/71/1794] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LazyCallGraph.cpp.o
14.173 [5526/70/1795] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LazyValueInfo.cpp.o
14.173 [5526/69/1796] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/Lint.cpp.o
14.174 [5526/68/1797] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/Loads.cpp.o
14.174 [5526/67/1798] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/Local.cpp.o
14.175 [5526/66/1799] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LoopAccessAnalysis.cpp.o
14.175 [5526/65/1800] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LoopAnalysisManager.cpp.o
14.176 [5526/64/1801] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LoopCacheAnalysis.cpp.o
14.176 [5526/63/1802] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LoopNestAnalysis.cpp.o
14.177 [5526/62/1803] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LoopUnrollAnalyzer.cpp.o
14.177 [5526/61/1804] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LoopInfo.cpp.o
14.178 [5526/60/1805] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/LoopPass.cpp.o
14.179 [5526/59/1806] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/MLInlineAdvisor.cpp.o
14.180 [5526/58/1807] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/MemDerefPrinter.cpp.o
14.181 [5526/57/1808] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/MemoryBuiltins.cpp.o
14.181 [5526/56/1809] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/MemoryDependenceAnalysis.cpp.o
14.182 [5526/55/1810] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/MemoryLocation.cpp.o
14.182 [5526/54/1811] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/MemoryProfileInfo.cpp.o
14.183 [5526/53/1812] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/MemorySSA.cpp.o
14.183 [5526/52/1813] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/MemorySSAUpdater.cpp.o
14.184 [5526/51/1814] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/ModelUnderTrainingRunner.cpp.o
14.184 [5526/50/1815] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/ModuleDebugInfoPrinter.cpp.o
14.185 [5526/49/1816] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/ModuleSummaryAnalysis.cpp.o

```

</details>

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


More information about the llvm-commits mailing list