[llvm] [NFC] Switch a number of DenseMaps to SmallDenseMaps for speedup (PR #109417)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 25 06:28:42 PDT 2024


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `ml-opt-devrel-x86-64` running on `ml-opt-devrel-x86-64-b1` while building `llvm` at step 6 "test-build-unified-tree-check-all".

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

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

```
Step 6 (test-build-unified-tree-check-all) failure: test (failure)
...
4.723 [4/23/684] Building CXX object unittests/tools/llvm-profgen/CMakeFiles/LLVMProfgenTests.dir/ContextCompressionTest.cpp.o
4.745 [3/23/685] Building CXX object unittests/tools/llvm-mca/CMakeFiles/LLVMMCATests.dir/X86/X86TestBase.cpp.o
4.745 [3/22/686] Linking CXX executable unittests/MC/AMDGPU/AMDGPUMCTests
4.746 [3/21/687] Building CXX object unittests/tools/llvm-mca/CMakeFiles/LLVMMCATests.dir/X86/TestIncrementalMCA.cpp.o
4.808 [2/21/688] Linking CXX executable unittests/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerTests
4.851 [2/20/689] Linking CXX executable unittests/tools/llvm-profgen/LLVMProfgenTests
4.943 [2/19/690] Linking CXX executable unittests/Transforms/Coroutines/CoroTests
4.979 [2/18/691] Linking CXX executable unittests/Transforms/Instrumentation/InstrumentationTests
5.020 [2/17/692] Linking CXX executable unittests/tools/llvm-profdata/LLVMProfdataTests
5.074 [2/16/693] Building CXX object unittests/Analysis/CMakeFiles/AnalysisTests.dir/SparsePropagation.cpp.o
FAILED: unittests/Analysis/CMakeFiles/AnalysisTests.dir/SparsePropagation.cpp.o 
ccache /usr/bin/c++ -DCPUINFO_SUPPORTED_PLATFORM=1 -DGTEST_HAS_RTTI=0 -DLLVM_BUILD_STATIC -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/b/ml-opt-devrel-x86-64-b1/build/unittests/Analysis -I/b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/unittests/Analysis -I/var/lib/buildbot/.local/lib/python3.7/site-packages/tensorflow/include -I/b/ml-opt-devrel-x86-64-b1/build/include -I/b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/include -I/b/ml-opt-devrel-x86-64-b1/llvm-project/third-party/unittest/googletest/include -I/b/ml-opt-devrel-x86-64-b1/llvm-project/third-party/unittest/googlemock/include -isystem /tmp/tflitebuild/tensorflow/include -isystem /tmp/tflitebuild/eigen/include/eigen3 -isystem /tmp/tflitebuild/abseil-cpp/include -isystem /tmp/tflitebuild/flatbuffers/include -isystem /tmp/tflitebuild/gemmlowp/include/gemmlowp -isystem /tmp/tflitebuild/ml_dtypes/src/ml_dtypes -isystem /tmp/tflitebuild/ml_dtypes/src/ml_dtypes/ml_dtypes -isystem /tmp/tflitebuild/ruy/include -isystem /tmp/tflitebuild/cpuinfo/include -isystem /tmp/tflitebuild/ARM_NEON_2_x86_SSE/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -fno-lifetime-dse -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-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG  -Wno-variadic-macros -fno-exceptions -funwind-tables -fno-rtti -UNDEBUG -DEIGEN_NEON_GEBP_NR=4 -DTFL_STATIC_LIBRARY_BUILD -Wno-suggest-override -std=c++17 -MD -MT unittests/Analysis/CMakeFiles/AnalysisTests.dir/SparsePropagation.cpp.o -MF unittests/Analysis/CMakeFiles/AnalysisTests.dir/SparsePropagation.cpp.o.d -o unittests/Analysis/CMakeFiles/AnalysisTests.dir/SparsePropagation.cpp.o -c /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/unittests/Analysis/SparsePropagation.cpp
/b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/unittests/Analysis/SparsePropagation.cpp:141:8: error: ‘void {anonymous}::TestLatticeFunc::ComputeInstructionState(llvm::Instruction&, llvm::DenseMap<llvm::PointerIntPair<llvm::Value*, 2, {anonymous}::IPOGrouping>, {anonymous}::TestLatticeVal>&, llvm::SparseSolver<llvm::PointerIntPair<llvm::Value*, 2, {anonymous}::IPOGrouping>, {anonymous}::TestLatticeVal, llvm::LatticeKeyInfo<llvm::PointerIntPair<llvm::Value*, 2, {anonymous}::IPOGrouping> > >&)’ marked ‘override’, but does not override
  141 |   void ComputeInstructionState(
      |        ^~~~~~~~~~~~~~~~~~~~~~~
/b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/unittests/Analysis/SparsePropagation.cpp:230:19: error: cannot declare field ‘{anonymous}::SparsePropagationTest::Lattice’ to be of abstract type ‘{anonymous}::TestLatticeFunc’
  230 |   TestLatticeFunc Lattice;
      |                   ^~~~~~~
/b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/unittests/Analysis/SparsePropagation.cpp:98:7: note:   because the following virtual functions are pure within ‘{anonymous}::TestLatticeFunc’:
   98 | class TestLatticeFunc
      |       ^~~~~~~~~~~~~~~
In file included from /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/unittests/Analysis/SparsePropagation.cpp:9:
/b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/include/llvm/Analysis/SparsePropagation.h:90:16: note:     ‘void llvm::AbstractLatticeFunction<LatticeKey, LatticeVal>::ComputeInstructionState(llvm::Instruction&, llvm::SmallDenseMap<LatticeKey, LatticeVal, 16>&, llvm::SparseSolver<LatticeKey, LatticeVal>&) [with LatticeKey = llvm::PointerIntPair<llvm::Value*, 2, {anonymous}::IPOGrouping>; LatticeVal = {anonymous}::TestLatticeVal]’
   90 |   virtual void ComputeInstructionState(
      |                ^~~~~~~~~~~~~~~~~~~~~~~
5.077 [2/15/694] Linking CXX executable unittests/Transforms/Vectorize/VectorizeTests
5.285 [2/14/695] Linking CXX executable unittests/ExecutionEngine/MCJIT/MCJITTests
5.560 [2/13/696] Linking CXX executable unittests/Target/AMDGPU/AMDGPUTests
5.567 [2/12/697] Linking CXX executable unittests/Target/X86/X86Tests
6.004 [2/11/698] Linking CXX executable unittests/tools/llvm-cfi-verify/CFIVerifyTests
6.089 [2/10/699] Linking CXX executable unittests/Transforms/Utils/UtilsTests
6.111 [2/9/700] Linking CXX executable unittests/Transforms/Scalar/ScalarTests
6.654 [2/8/701] Linking CXX executable unittests/CodeGen/CodeGenTests
6.690 [2/7/702] Linking CXX executable unittests/DebugInfo/DWARF/DebugInfoDWARFTests
6.700 [2/6/703] Linking CXX executable unittests/MIR/MIRTests
6.796 [2/5/704] Linking CXX executable unittests/CodeGen/GlobalISel/GlobalISelTests
6.865 [2/4/705] Linking CXX executable unittests/tools/llvm-mca/LLVMMCATests
6.907 [2/3/706] Linking CXX executable unittests/MI/MITests
7.290 [2/2/707] Linking CXX executable unittests/Target/TargetMachineCTests
7.620 [2/1/708] Linking CXX executable unittests/tools/llvm-exegesis/LLVMExegesisTests
ninja: build stopped: subcommand failed.

```

</details>

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


More information about the llvm-commits mailing list