about summary refs log tree commit diff
path: root/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
diff options
context:
space:
mode:
authorEvgeniy A. Dushistov <dushistov@mail.ru>2023-05-11 17:35:01 +0300
committerEvgeniy A. Dushistov <dushistov@mail.ru>2023-05-12 01:40:04 +0300
commit6b58ff5cdf47da9460871a87cf43e5e8adfab9a8 (patch)
treeb9defb0db0823064fa71cd9093b99301ffe44967 /compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
parent4d941cd9812891af3b83dd4de64aa7d8ee99641a (diff)
downloadrust-6b58ff5cdf47da9460871a87cf43e5e8adfab9a8.tar.gz
rust-6b58ff5cdf47da9460871a87cf43e5e8adfab9a8.zip
Usage of atomic counters for llvm code coverage
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp')
-rw-r--r--compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp b/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
index 5ec3b95225d..7b774d6865c 100644
--- a/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
+++ b/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
@@ -745,6 +745,9 @@ LLVMRustOptimize(
         if (InstrProfileOutput) {
           Options.InstrProfileOutput = InstrProfileOutput;
         }
+        // cargo run tests in multhreading mode by default
+        // so use atomics for coverage counters
+        Options.Atomic = true;
         MPM.addPass(InstrProfiling(Options, false));
       }
     );