From 3275b18f8979ab750e3674f28e7f82c7ef37d2a3 Mon Sep 17 00:00:00 2001 From: Petr Hosek Date: Thu, 18 Feb 2021 15:01:05 -0800 Subject: [PATCH] [Coverage] Normalize compilation dir as well This matches debug info behavior. Differential Revision: https://reviews.llvm.org/D97001 --- clang/lib/CodeGen/CoverageMappingGen.cpp | 2 +- clang/test/Profile/profile-prefix-map.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/clang/lib/CodeGen/CoverageMappingGen.cpp b/clang/lib/CodeGen/CoverageMappingGen.cpp index 9c4cab3..e370be1 100644 --- a/clang/lib/CodeGen/CoverageMappingGen.cpp +++ b/clang/lib/CodeGen/CoverageMappingGen.cpp @@ -1726,7 +1726,7 @@ void CoverageMappingModuleGen::emit() { llvm::SmallVector FilenameStrs; FilenameStrs.resize(FileEntries.size() + 1); // The first filename is the current working directory. - FilenameStrs[0] = getCurrentDirname(); + FilenameStrs[0] = normalizeFilename(getCurrentDirname()); for (const auto &Entry : FileEntries) { auto I = Entry.second; FilenameStrs[I] = normalizeFilename(Entry.first->getName()); diff --git a/clang/test/Profile/profile-prefix-map.c b/clang/test/Profile/profile-prefix-map.c index 9c7718e..97b8ff0 100644 --- a/clang/test/Profile/profile-prefix-map.c +++ b/clang/test/Profile/profile-prefix-map.c @@ -16,3 +16,6 @@ // RUN: %clang_cc1 -fprofile-instrument=clang -fcoverage-mapping -emit-llvm -mllvm -enable-name-compression=false -main-file-name profile-prefix-map.c %t/root/nested/profile-prefix-map.c -fprofile-prefix-map=%/t/root=. -o - | FileCheck --check-prefix=PROFILE-PREFIX-MAP %s // RUN: %clang_cc1 -fprofile-instrument=clang -fcoverage-mapping -emit-llvm -mllvm -enable-name-compression=false -main-file-name profile-prefix-map.c ../root/nested/profile-prefix-map.c -fprofile-prefix-map=../root=. -o - | FileCheck --check-prefix=PROFILE-PREFIX-MAP %s // PROFILE-PREFIX-MAP: @__llvm_coverage_mapping = {{.*"\\02.*}}.{{/|\\+}}nested{{.*profile-prefix-map\.c}} + +// RUN: %clang_cc1 -fprofile-instrument=clang -fcoverage-mapping -emit-llvm -mllvm -enable-name-compression=false -main-file-name profile-prefix-map.c %t/root/nested/profile-prefix-map.c -fprofile-compilation-dir=/custom -fprofile-prefix-map=/custom=/nonsense -o - | FileCheck --check-prefix=PROFILE-COMPILATION-DIR %s +// PROFILE-COMPILATION-DIR: @__llvm_coverage_mapping = {{.*"\\02.*}}nonsense -- 2.7.4