diff options
Diffstat (limited to 'llvm/lib/ProfileData/SampleProfReader.cpp')
| -rw-r--r-- | llvm/lib/ProfileData/SampleProfReader.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/llvm/lib/ProfileData/SampleProfReader.cpp b/llvm/lib/ProfileData/SampleProfReader.cpp index d147222fe2ce..15eb1d174d6f 100644 --- a/llvm/lib/ProfileData/SampleProfReader.cpp +++ b/llvm/lib/ProfileData/SampleProfReader.cpp @@ -382,9 +382,16 @@ std::error_code SampleProfileReaderText::readImpl() { if (!ParseLine(*LineIt, LineTy, Depth, NumSamples, LineOffset, Discriminator, FName, TargetCountMap, FunctionHash, Attributes, IsFlat)) { - reportError(LineIt.line_number(), - "Expected 'NUM[.NUM]: NUM[ mangled_name:NUM]*', found " + - *LineIt); + switch (LineTy) { + case LineType::Metadata: + reportError(LineIt.line_number(), + "Cannot parse metadata: " + *LineIt); + break; + default: + reportError(LineIt.line_number(), + "Expected 'NUM[.NUM]: NUM[ mangled_name:NUM]*', found " + + *LineIt); + } return sampleprof_error::malformed; } if (LineTy != LineType::Metadata && Depth == DepthMetadata) { |
