[llvm] r217476 - llvm-cov: Fix a misuse of ArrayRef::slice I introduced in r217430
Justin Bogner
mail at justinbogner.com
Tue Sep 9 23:06:08 PDT 2014
Author: bogner
Date: Wed Sep 10 01:06:07 2014
New Revision: 217476
URL: http://llvm.org/viewvc/llvm-project?rev=217476&view=rev
Log:
llvm-cov: Fix a misuse of ArrayRef::slice I introduced in r217430
It appears this code was completely untested, so using ArrayRef wrong
didn't break anything obvious.
Added:
llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.covmapping
llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.profdata
llvm/trunk/test/tools/llvm-cov/showExpansions.cpp
Modified:
llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp
Added: llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.covmapping
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.covmapping?rev=217476&view=auto
==============================================================================
Binary files llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.covmapping (added) and llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.covmapping Wed Sep 10 01:06:07 2014 differ
Added: llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.profdata
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.profdata?rev=217476&view=auto
==============================================================================
Binary files llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.profdata (added) and llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.profdata Wed Sep 10 01:06:07 2014 differ
Added: llvm/trunk/test/tools/llvm-cov/showExpansions.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cov/showExpansions.cpp?rev=217476&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-cov/showExpansions.cpp (added)
+++ llvm/trunk/test/tools/llvm-cov/showExpansions.cpp Wed Sep 10 01:06:07 2014
@@ -0,0 +1,31 @@
+// RUN: llvm-cov show %S/Inputs/showExpansions.covmapping -instr-profile %S/Inputs/showExpansions.profdata -dump -show-expansions -filename-equivalence %s | FileCheck %s
+
+#define DO_SOMETHING_ELSE() \
+ do { \
+ } while (0)
+#define ANOTHER_THING() \
+ do { \
+ if (0) { \
+ } \
+ } while (0)
+
+#define DO_SOMETHING(x) \
+ do { \
+ if (x) \
+ DO_SOMETHING_ELSE(); \
+ else \
+ ANOTHER_THING(); \
+ } while (0)
+
+int main(int argc, const char *argv[]) {
+ for (int i = 0; i < 100; ++i)
+ DO_SOMETHING(i);
+ return 0;
+}
+
+// CHECK: Expansion of {{[0-9]+}}:13 -> 18 @ {{[0-9]+}}, 22:5
+// CHECK: Expansion of {{[0-9]+}}:4 -> 5 @ {{[0-9]+}}, 15:7
+// CHECK: Expansion of {{[0-9]+}}:7 -> 10 @ {{[0-9]+}}, 17:7
+
+// llvm-cov doesn't work on big endian yet
+// XFAIL: powerpc64-, s390x, mips-, mips64-, sparc
Modified: llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp?rev=217476&r1=217475&r2=217476&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp (original)
+++ llvm/trunk/tools/llvm-cov/SourceCoverageView.cpp Wed Sep 10 01:06:07 2014
@@ -206,7 +206,7 @@ gatherLineSubViews(size_t &CurrentIdx,
while (CurrentIdx < E &&
Items[CurrentIdx]->getSubViewsExpansionLine() == LineNo)
++CurrentIdx;
- return Items.slice(PrevIdx, CurrentIdx);
+ return Items.slice(PrevIdx, CurrentIdx - PrevIdx);
}
void SourceCoverageView::render(raw_ostream &OS, unsigned Offset) {
More information about the llvm-commits
mailing list