diff options
author | Justin Bogner <mail@justinbogner.com> | 2015-03-17 00:18:51 +0000 |
---|---|---|
committer | Justin Bogner <mail@justinbogner.com> | 2015-03-17 00:18:51 +0000 |
commit | d0a6243529c23e79c3d9a033cf977c0f7df43ead (patch) | |
tree | 684ce87c86d7b47af91dd6c1dc3579a83df5321e /llvm/lib/IR/GCOV.cpp | |
parent | 79f8d11d5af9d75154177352dbb03993246bf191 (diff) | |
download | bcm5719-llvm-d0a6243529c23e79c3d9a033cf977c0f7df43ead.tar.gz bcm5719-llvm-d0a6243529c23e79c3d9a033cf977c0f7df43ead.zip |
llvm-cov: Warn instead of error if a .gcda has arcs from an exit block
Patch by Vanderson M. Rosario. Thanks!
llvm-svn: 232443
Diffstat (limited to 'llvm/lib/IR/GCOV.cpp')
-rw-r--r-- | llvm/lib/IR/GCOV.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/IR/GCOV.cpp b/llvm/lib/IR/GCOV.cpp index 08f44e079a4..b0a2bae4e06 100644 --- a/llvm/lib/IR/GCOV.cpp +++ b/llvm/lib/IR/GCOV.cpp @@ -302,10 +302,12 @@ bool GCOVFunction::readGCDA(GCOVBuffer &Buff, GCOV::GCOVVersion Version) { // required to combine the edge counts that are contained in the GCDA file. for (uint32_t BlockNo = 0; Count > 0; ++BlockNo) { // The last block is always reserved for exit block - if (BlockNo >= Blocks.size() - 1) { + if (BlockNo >= Blocks.size()) { errs() << "Unexpected number of edges (in " << Name << ").\n"; return false; } + if (BlockNo == Blocks.size() - 1) + errs() << "(" << Name << ") has arcs from exit block.\n"; GCOVBlock &Block = *Blocks[BlockNo]; for (size_t EdgeNo = 0, End = Block.getNumDstEdges(); EdgeNo < End; ++EdgeNo) { |