mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217476 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
c4e394a333
commit
26f301f84b
BIN
test/tools/llvm-cov/Inputs/showExpansions.covmapping
Normal file
BIN
test/tools/llvm-cov/Inputs/showExpansions.covmapping
Normal file
Binary file not shown.
BIN
test/tools/llvm-cov/Inputs/showExpansions.profdata
Normal file
BIN
test/tools/llvm-cov/Inputs/showExpansions.profdata
Normal file
Binary file not shown.
31
test/tools/llvm-cov/showExpansions.cpp
Normal file
31
test/tools/llvm-cov/showExpansions.cpp
Normal file
@ -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
|
@ -206,7 +206,7 @@ gatherLineSubViews(size_t &CurrentIdx,
|
|||||||
while (CurrentIdx < E &&
|
while (CurrentIdx < E &&
|
||||||
Items[CurrentIdx]->getSubViewsExpansionLine() == LineNo)
|
Items[CurrentIdx]->getSubViewsExpansionLine() == LineNo)
|
||||||
++CurrentIdx;
|
++CurrentIdx;
|
||||||
return Items.slice(PrevIdx, CurrentIdx);
|
return Items.slice(PrevIdx, CurrentIdx - PrevIdx);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SourceCoverageView::render(raw_ostream &OS, unsigned Offset) {
|
void SourceCoverageView::render(raw_ostream &OS, unsigned Offset) {
|
||||||
|
Loading…
Reference in New Issue
Block a user