[llvm] r217646 - Revert "llvm-cov: Remove an overly system specific test"

Justin Bogner mail at justinbogner.com
Thu Sep 11 16:20:49 PDT 2014


Author: bogner
Date: Thu Sep 11 18:20:48 2014
New Revision: 217646

URL: http://llvm.org/viewvc/llvm-project?rev=217646&view=rev
Log:
Revert "llvm-cov: Remove an overly system specific test"

This fixes a call to sys::fs::equivalent that should've been to
CodeCoverageTool::equivalentFiles, which lets us restore the test of
r217476 that was removed in r217478.

This reverts r217478, but the test works this time.

Added:
    llvm/trunk/test/tools/llvm-cov/showExpansions.cpp
Modified:
    llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.covmapping
    llvm/trunk/tools/llvm-cov/CodeCoverage.cpp

Modified: 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=217646&r1=217645&r2=217646&view=diff
==============================================================================
Binary files llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.covmapping (original) and llvm/trunk/test/tools/llvm-cov/Inputs/showExpansions.covmapping Thu Sep 11 18:20:48 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=217646&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-cov/showExpansions.cpp (added)
+++ llvm/trunk/test/tools/llvm-cov/showExpansions.cpp Thu Sep 11 18:20:48 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/CodeCoverage.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-cov/CodeCoverage.cpp?rev=217646&r1=217645&r2=217646&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-cov/CodeCoverage.cpp (original)
+++ llvm/trunk/tools/llvm-cov/CodeCoverage.cpp Thu Sep 11 18:20:48 2014
@@ -177,7 +177,7 @@ CodeCoverageTool::getSourceFile(StringRe
   SmallString<256> Path(SourceFile);
   sys::fs::make_absolute(Path);
   for (const auto &Files : LoadedSourceFiles) {
-    if (sys::fs::equivalent(Path.str(), Files.first)) {
+    if (equivalentFiles(Path.str(), Files.first)) {
       return *Files.second;
     }
   }





More information about the llvm-commits mailing list