aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
diff options
context:
space:
mode:
authorGulfem Savrun Yeniceri <gulfem@google.com>2021-08-30 19:12:16 +0000
committerGulfem Savrun Yeniceri <gulfem@google.com>2021-11-09 18:04:12 +0000
commitee88b8d63e475a75ae525563edfa95f6fcaac83a (patch)
treececb7658fd07afba839372a218d8a6e56f1bdd12 /llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
parent1e78d5d008f95b47834ce2438a9b0faf96c85985 (diff)
downloadllvm-ee88b8d63e475a75ae525563edfa95f6fcaac83a.zip
llvm-ee88b8d63e475a75ae525563edfa95f6fcaac83a.tar.gz
llvm-ee88b8d63e475a75ae525563edfa95f6fcaac83a.tar.bz2
[compiler-rt] Add more diagnostic to InstrProfError
If profile data is malformed for any kind of reason, we generate an error that only reports "malformed instrumentation profile data" without any further information. This patch extends InstrProfError class to receive an optional error message argument, so that we can do better error reporting. Differential Revision: https://reviews.llvm.org/D108942
Diffstat (limited to 'llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp')
-rw-r--r--llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp b/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
index 9fffb24..94bd480 100644
--- a/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
+++ b/llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
@@ -567,7 +567,8 @@ class VersionedCovMapFuncRecordReader : public CovMapFuncRecordReader {
if (Error Err = CFR->template getFuncName<Endian>(ProfileNames, FuncName))
return Err;
if (FuncName.empty())
- return make_error<InstrProfError>(instrprof_error::malformed);
+ return make_error<InstrProfError>(instrprof_error::malformed,
+ "function name is empty");
++CovMapNumUsedRecords;
Records.emplace_back(Version, FuncName, FuncHash, Mapping,
FileRange.StartingIndex, FileRange.Length);