Revert "Reapply "[PGO] Fix name encoding for ObjC-like functions""

This reverts commit r264641 to investigate why c-general.test is failing
on the bots.

llvm-svn: 264643
diff --git a/llvm/include/llvm/ProfileData/InstrProf.h b/llvm/include/llvm/ProfileData/InstrProf.h
index 31fcffe..3bf0aa3 100644
--- a/llvm/include/llvm/ProfileData/InstrProf.h
+++ b/llvm/include/llvm/ProfileData/InstrProf.h
@@ -151,9 +151,6 @@
   return "__llvm_profile_override_default_filename";
 }
 
-/// Return the marker used to separate PGO names during serialization.
-inline StringRef getInstrProfNameSeparator() { return "\01"; }
-
 /// Return the modified name for function \c F suitable to be
 /// used the key for profile lookup.
 std::string getPGOFuncName(const Function &F,
diff --git a/llvm/lib/ProfileData/InstrProf.cpp b/llvm/lib/ProfileData/InstrProf.cpp
index 1be3df4..2446521 100644
--- a/llvm/lib/ProfileData/InstrProf.cpp
+++ b/llvm/lib/ProfileData/InstrProf.cpp
@@ -158,15 +158,9 @@
 
 int collectPGOFuncNameStrings(const std::vector<std::string> &NameStrs,
                               bool doCompression, std::string &Result) {
-  assert(NameStrs.size() && "No name data to emit");
-
   uint8_t Header[16], *P = Header;
   std::string UncompressedNameStrings =
-      join(NameStrs.begin(), NameStrs.end(), getInstrProfNameSeparator());
-
-  assert(StringRef(UncompressedNameStrings)
-                 .count(getInstrProfNameSeparator()) == (NameStrs.size() - 1) &&
-         "PGO name is invalid (contains separator token)");
+      join(NameStrs.begin(), NameStrs.end(), StringRef(" "));
 
   unsigned EncLen = encodeULEB128(UncompressedNameStrings.length(), P);
   P += EncLen;
@@ -244,7 +238,7 @@
     }
     // Now parse the name strings.
     SmallVector<StringRef, 0> Names;
-    NameStrings.split(Names, getInstrProfNameSeparator());
+    NameStrings.split(Names, ' ');
     for (StringRef &Name : Names)
       Symtab.addFuncName(Name);
 
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 6ea83e5..624483b 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 9c6835c..af4d39c 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 ef80e56..8566704 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 a701504..e122716 100644
--- a/llvm/test/tools/llvm-cov/Inputs/instrprof-comdat.h
+++ b/llvm/test/tools/llvm-cov/Inputs/instrprof-comdat.h
@@ -13,12 +13,7 @@
     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: 20| [[@LINE]]|  }
-                                          // HEADER:  2| [[@LINE]]|
-  return t;                               // HEADER:  2| [[@LINE]]|  return t;
+  }                                       // HEADER: 10| [[@LINE]]|  }
+                                          // HEADER:  1| [[@LINE]]|
+  return t;                               // HEADER:  1| [[@LINE]]|  return t;
 }
-
-// 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.
diff --git a/llvm/test/tools/llvm-profdata/Inputs/c-general.profraw b/llvm/test/tools/llvm-profdata/Inputs/c-general.profraw
index 34448c1..6028383 100644
--- a/llvm/test/tools/llvm-profdata/Inputs/c-general.profraw
+++ b/llvm/test/tools/llvm-profdata/Inputs/c-general.profraw
Binary files differ
diff --git a/llvm/test/tools/llvm-profdata/raw-32-bits-be.test b/llvm/test/tools/llvm-profdata/raw-32-bits-be.test
index bc6ec02..d3def18 100644
--- a/llvm/test/tools/llvm-profdata/raw-32-bits-be.test
+++ b/llvm/test/tools/llvm-profdata/raw-32-bits-be.test
@@ -28,7 +28,7 @@
 RUN: printf '\0\0\0\0\0\0\0\023' >> %t
 RUN: printf '\0\0\0\0\0\0\0\067' >> %t
 RUN: printf '\0\0\0\0\0\0\0\101' >> %t
-RUN: printf '\7\0foo\1bar\0\0\0\0\0\0\0' >> %t
+RUN: printf '\7\0foo bar\0\0\0\0\0\0\0' >> %t
 
 RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s
 
diff --git a/llvm/test/tools/llvm-profdata/raw-32-bits-le.test b/llvm/test/tools/llvm-profdata/raw-32-bits-le.test
index 5ee8b33..b19c74f 100644
--- a/llvm/test/tools/llvm-profdata/raw-32-bits-le.test
+++ b/llvm/test/tools/llvm-profdata/raw-32-bits-le.test
@@ -28,7 +28,7 @@
 RUN: printf '\023\0\0\0\0\0\0\0' >> %t
 RUN: printf '\067\0\0\0\0\0\0\0' >> %t
 RUN: printf '\101\0\0\0\0\0\0\0' >> %t
-RUN: printf '\7\0foo\1bar\0\0\0\0\0\0\0' >> %t
+RUN: printf '\7\0foo bar\0\0\0\0\0\0\0' >> %t
 
 RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s
 
diff --git a/llvm/test/tools/llvm-profdata/raw-64-bits-be.test b/llvm/test/tools/llvm-profdata/raw-64-bits-be.test
index 9778f06..cb59f9a 100644
--- a/llvm/test/tools/llvm-profdata/raw-64-bits-be.test
+++ b/llvm/test/tools/llvm-profdata/raw-64-bits-be.test
@@ -26,7 +26,7 @@
 RUN: printf '\0\0\0\0\0\0\0\023' >> %t
 RUN: printf '\0\0\0\0\0\0\0\067' >> %t
 RUN: printf '\0\0\0\0\0\0\0\101' >> %t
-RUN: printf '\7\0foo\1bar\0\0\0\0\0\0\0' >> %t
+RUN: printf '\7\0foo bar\0\0\0\0\0\0\0' >> %t
 
 RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s
 
diff --git a/llvm/test/tools/llvm-profdata/raw-64-bits-le.test b/llvm/test/tools/llvm-profdata/raw-64-bits-le.test
index 670bdb3..86748b1 100644
--- a/llvm/test/tools/llvm-profdata/raw-64-bits-le.test
+++ b/llvm/test/tools/llvm-profdata/raw-64-bits-le.test
@@ -26,7 +26,7 @@
 RUN: printf '\023\0\0\0\0\0\0\0' >> %t
 RUN: printf '\067\0\0\0\0\0\0\0' >> %t
 RUN: printf '\101\0\0\0\0\0\0\0' >> %t
-RUN: printf '\7\0foo\1bar\0\0\0\0\0\0\0' >> %t
+RUN: printf '\7\0foo bar\0\0\0\0\0\0\0' >> %t
 
 RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s
 
diff --git a/llvm/unittests/ProfileData/InstrProfTest.cpp b/llvm/unittests/ProfileData/InstrProfTest.cpp
index 7dd072c..13d1e05 100644
--- a/llvm/unittests/ProfileData/InstrProfTest.cpp
+++ b/llvm/unittests/ProfileData/InstrProfTest.cpp
@@ -893,7 +893,7 @@
     OS << "func_" << I;
     FuncNames1.push_back(OS.str());
     str.clear();
-    OS << "f oooooooooooooo_" << I;
+    OS << "fooooooooooooooo_" << I;
     FuncNames1.push_back(OS.str());
     str.clear();
     OS << "BAR_" << I;
@@ -931,7 +931,7 @@
       StringRef R = Symtab.getFuncName(IndexedInstrProf::ComputeHash(FuncNames1[0]));
       ASSERT_EQ(StringRef("func_0"), R);
       R = Symtab.getFuncName(IndexedInstrProf::ComputeHash(FuncNames1[1]));
-      ASSERT_EQ(StringRef("f oooooooooooooo_0"), R);
+      ASSERT_EQ(StringRef("fooooooooooooooo_0"), R);
       for (int I = 0; I < 3; I++) {
         std::string N[4];
         N[0] = FuncNames1[2 * I];