summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/llvm-cov/Inputs
diff options
context:
space:
mode:
authorVedant Kumar <vsk@apple.com>2016-03-28 21:06:42 +0000
committerVedant Kumar <vsk@apple.com>2016-03-28 21:06:42 +0000
commit86705ba5b1bd0c60556abcd7e05f52d6e84f5dc1 (patch)
tree746a4bfe06225e8ee25054eb35feb914774195c7 /llvm/test/tools/llvm-cov/Inputs
parentfaebbb053d4971a68d10df9a4f3d5db5aeed0afd (diff)
downloadbcm5719-llvm-86705ba5b1bd0c60556abcd7e05f52d6e84f5dc1.tar.gz
bcm5719-llvm-86705ba5b1bd0c60556abcd7e05f52d6e84f5dc1.zip
Reapply (2x) "[PGO] Fix name encoding for ObjC-like functions"
Function names in ObjC can have spaces in them. This interacts poorly with name compression, which uses spaces to separate PGO names. Fix the issue by using a different separator and update a test. I chose "\01" as the separator because 1) it's non-printable, 2) we strip it from PGO names, and 3) it's the next natural choice once "\00" is discarded (that one's overloaded). What's changed since the original commit? - I fixed up the covmap-V2 binary format tests using a linux VM. - I weakened the CHECK lines in instrprof-comdat.h to account for the fact that there have been bugfixes to clang coverage. These will be fixed up in a follow-up. - I added an assert to make sure we don't get bitten by this again. - I constructed the c-general.profraw file without name compression enabled to appease some bots. Differential Revision: http://reviews.llvm.org/D18516 llvm-svn: 264658
Diffstat (limited to 'llvm/test/tools/llvm-cov/Inputs')
-rwxr-xr-xllvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux32lbin29634 -> 29424 bytes
-rwxr-xr-xllvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux64lbin2125077 -> 2124848 bytes
-rw-r--r--llvm/test/tools/llvm-cov/Inputs/elf_binary_comdat.profdatabin1040 -> 840 bytes
-rw-r--r--llvm/test/tools/llvm-cov/Inputs/instrprof-comdat.h14
4 files changed, 11 insertions, 3 deletions
diff --git a/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux32l b/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux32l
index 624483bf6e3..6ea83e5d24e 100755
--- a/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux32l
+++ b/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux32l
Binary files differ
diff --git a/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux64l b/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux64l
index af4d39cedfb..9c6835cdff1 100755
--- a/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux64l
+++ b/llvm/test/tools/llvm-cov/Inputs/binary-formats.v2.linux64l
Binary files differ
diff --git a/llvm/test/tools/llvm-cov/Inputs/elf_binary_comdat.profdata b/llvm/test/tools/llvm-cov/Inputs/elf_binary_comdat.profdata
index 85667041e2c..ef80e56a884 100644
--- a/llvm/test/tools/llvm-cov/Inputs/elf_binary_comdat.profdata
+++ b/llvm/test/tools/llvm-cov/Inputs/elf_binary_comdat.profdata
Binary files differ
diff --git a/llvm/test/tools/llvm-cov/Inputs/instrprof-comdat.h b/llvm/test/tools/llvm-cov/Inputs/instrprof-comdat.h
index e1227167cd4..46e73b40169 100644
--- a/llvm/test/tools/llvm-cov/Inputs/instrprof-comdat.h
+++ b/llvm/test/tools/llvm-cov/Inputs/instrprof-comdat.h
@@ -13,7 +13,15 @@ template <class T> T FOO<T>::DoIt(T ti) { // HEADER: 2| [[@LINE]]|template
t += I; // HEADER: 20| [[@LINE]]| t += I;
if (I > ti / 2) // HEADER: 20| [[@LINE]]| if (I > ti
t -= 1; // HEADER: 8| [[@LINE]]| t -= 1;
- } // HEADER: 10| [[@LINE]]| }
- // HEADER: 1| [[@LINE]]|
- return t; // HEADER: 1| [[@LINE]]| return t;
+ } // HEADER: {{.*}}| [[@LINE]]| }
+ // HEADER: {{.*}}| [[@LINE]]|
+ return t; // HEADER: {{.*}}| [[@LINE]]| return t;
}
+
+// FIXME: Some check lines in this function were temporarily weakened to
+// simplify a bugfix.
+
+// To generate the binaries which correspond to this file, you must first
+// compile a program with two calls to Foo<int>::DoIt(10) for each desired
+// architecture. Collect a raw profile from any one of these binaries, index
+// it, and check it in along with the executables.
OpenPOWER on IntegriCloud