Pass FunctionInfoIndex by reference to WriteFunctionSummaryToFile (NFC)
authorTeresa Johnson <tejohnson@google.com>
Mon, 19 Oct 2015 19:06:06 +0000 (19:06 +0000)
committerTeresa Johnson <tejohnson@google.com>
Mon, 19 Oct 2015 19:06:06 +0000 (19:06 +0000)
Implemented suggestion by dblakie in review for r250704.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@250723 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Bitcode/ReaderWriter.h
lib/Bitcode/Writer/BitcodeWriter.cpp
tools/gold/gold-plugin.cpp
tools/llvm-lto/llvm-lto.cpp

index 18715844c5292f9995e12deb251e3ff884e1dca3..938edf278f75b0a593e9836233a27b077ac8a746 100644 (file)
@@ -101,7 +101,7 @@ namespace llvm {
   /// Write the specified function summary index to the given raw output stream,
   /// where it will be written in a new bitcode block. This is used when
   /// writing the combined index file for ThinLTO.
   /// Write the specified function summary index to the given raw output stream,
   /// where it will be written in a new bitcode block. This is used when
   /// writing the combined index file for ThinLTO.
-  void WriteFunctionSummaryToFile(const FunctionInfoIndex *Index,
+  void WriteFunctionSummaryToFile(const FunctionInfoIndex &Index,
                                   raw_ostream &Out);
 
   /// isBitcodeWrapper - Return true if the given bytes are the magic bytes
                                   raw_ostream &Out);
 
   /// isBitcodeWrapper - Return true if the given bytes are the magic bytes
index 11f6aea9780ce116932561606e06f504decedf30..5b50a905e1bbdddd192f08ad1fc01fd2f7f4469f 100644 (file)
@@ -2314,7 +2314,7 @@ static void WriteValueSymbolTable(
 
 /// Emit function names and summary offsets for the combined index
 /// used by ThinLTO.
 
 /// Emit function names and summary offsets for the combined index
 /// used by ThinLTO.
-static void WriteCombinedValueSymbolTable(const FunctionInfoIndex *Index,
+static void WriteCombinedValueSymbolTable(const FunctionInfoIndex &Index,
                                           BitstreamWriter &Stream) {
   Stream.EnterSubblock(bitc::VALUE_SYMTAB_BLOCK_ID, 4);
 
                                           BitstreamWriter &Stream) {
   Stream.EnterSubblock(bitc::VALUE_SYMTAB_BLOCK_ID, 4);
 
@@ -2345,7 +2345,7 @@ static void WriteCombinedValueSymbolTable(const FunctionInfoIndex *Index,
   // FIXME: We know if the type names can use 7-bit ascii.
   SmallVector<unsigned, 64> NameVals;
 
   // FIXME: We know if the type names can use 7-bit ascii.
   SmallVector<unsigned, 64> NameVals;
 
-  for (const auto &FII : *Index) {
+  for (const auto &FII : Index) {
     for (const auto &FI : FII.getValue()) {
       NameVals.push_back(FI->bitcodeIndex());
 
     for (const auto &FI : FII.getValue()) {
       NameVals.push_back(FI->bitcodeIndex());
 
@@ -2686,7 +2686,7 @@ static void WriteBlockInfo(const ValueEnumerator &VE, BitstreamWriter &Stream) {
 
 /// Write the module path strings, currently only used when generating
 /// a combined index file.
 
 /// Write the module path strings, currently only used when generating
 /// a combined index file.
-static void WriteModStrings(const FunctionInfoIndex *I,
+static void WriteModStrings(const FunctionInfoIndex &I,
                             BitstreamWriter &Stream) {
   Stream.EnterSubblock(bitc::MODULE_STRTAB_BLOCK_ID, 3);
 
                             BitstreamWriter &Stream) {
   Stream.EnterSubblock(bitc::MODULE_STRTAB_BLOCK_ID, 3);
 
@@ -2717,7 +2717,7 @@ static void WriteModStrings(const FunctionInfoIndex *I,
   unsigned Abbrev6Bit = Stream.EmitAbbrev(Abbv);
 
   SmallVector<unsigned, 64> NameVals;
   unsigned Abbrev6Bit = Stream.EmitAbbrev(Abbv);
 
   SmallVector<unsigned, 64> NameVals;
-  for (const StringMapEntry<uint64_t> &MPSE : I->modPathStringEntries()) {
+  for (const StringMapEntry<uint64_t> &MPSE : I.modPathStringEntries()) {
     StringEncoding Bits =
         getStringEncoding(MPSE.getKey().data(), MPSE.getKey().size());
     unsigned AbbrevToUse = Abbrev8Bit;
     StringEncoding Bits =
         getStringEncoding(MPSE.getKey().data(), MPSE.getKey().size());
     unsigned AbbrevToUse = Abbrev8Bit;
@@ -2795,7 +2795,7 @@ static void WritePerModuleFunctionSummary(
 
 /// Emit the combined function summary section into the combined index
 /// file.
 
 /// Emit the combined function summary section into the combined index
 /// file.
-static void WriteCombinedFunctionSummary(const FunctionInfoIndex *I,
+static void WriteCombinedFunctionSummary(const FunctionInfoIndex &I,
                                          BitstreamWriter &Stream) {
   Stream.EnterSubblock(bitc::FUNCTION_SUMMARY_BLOCK_ID, 3);
 
                                          BitstreamWriter &Stream) {
   Stream.EnterSubblock(bitc::FUNCTION_SUMMARY_BLOCK_ID, 3);
 
@@ -2807,12 +2807,12 @@ static void WriteCombinedFunctionSummary(const FunctionInfoIndex *I,
   unsigned FSAbbrev = Stream.EmitAbbrev(Abbv);
 
   SmallVector<unsigned, 64> NameVals;
   unsigned FSAbbrev = Stream.EmitAbbrev(Abbv);
 
   SmallVector<unsigned, 64> NameVals;
-  for (const auto &FII : *I) {
+  for (const auto &FII : I) {
     for (auto &FI : FII.getValue()) {
       FunctionSummary *FS = FI->functionSummary();
       assert(FS);
 
     for (auto &FI : FII.getValue()) {
       FunctionSummary *FS = FI->functionSummary();
       assert(FS);
 
-      NameVals.push_back(I->getModuleId(FS->modulePath()));
+      NameVals.push_back(I.getModuleId(FS->modulePath()));
       NameVals.push_back(FS->instCount());
 
       // Record the starting offset of this summary entry for use
       NameVals.push_back(FS->instCount());
 
       // Record the starting offset of this summary entry for use
@@ -3015,7 +3015,7 @@ void llvm::WriteBitcodeToFile(const Module *M, raw_ostream &Out,
 // Write the specified function summary index to the given raw output stream,
 // where it will be written in a new bitcode block. This is used when
 // writing the combined index file for ThinLTO.
 // Write the specified function summary index to the given raw output stream,
 // where it will be written in a new bitcode block. This is used when
 // writing the combined index file for ThinLTO.
-void llvm::WriteFunctionSummaryToFile(const FunctionInfoIndex *Index,
+void llvm::WriteFunctionSummaryToFile(const FunctionInfoIndex &Index,
                                       raw_ostream &Out) {
   SmallVector<char, 0> Buffer;
   Buffer.reserve(256 * 1024);
                                       raw_ostream &Out) {
   SmallVector<char, 0> Buffer;
   Buffer.reserve(256 * 1024);
index bb718f708ccbf24c54879925e1bd273561bb601c..062f746c8fcb609e5061aee236907eef92936803 100644 (file)
@@ -914,7 +914,7 @@ static ld_plugin_status allSymbolsReadHook(raw_fd_ostream *ApiFile) {
     if (EC)
       message(LDPL_FATAL, "Unable to open %s.thinlto.bc for writing: %s",
               output_name.data(), EC.message().c_str());
     if (EC)
       message(LDPL_FATAL, "Unable to open %s.thinlto.bc for writing: %s",
               output_name.data(), EC.message().c_str());
-    WriteFunctionSummaryToFile(&CombinedIndex, OS);
+    WriteFunctionSummaryToFile(CombinedIndex, OS);
     OS.close();
 
     cleanup_hook();
     OS.close();
 
     cleanup_hook();
index 29d613f8cd2ce7b0068026197e04897ba3f5b480..b35384a0b35a79a172167e5aa8b6953da42af0ed 100644 (file)
@@ -208,7 +208,7 @@ static int createCombinedFunctionIndex(StringRef Command) {
            << ".thinlto.bc': " << EC.message() << "\n";
     return 1;
   }
            << ".thinlto.bc': " << EC.message() << "\n";
     return 1;
   }
-  WriteFunctionSummaryToFile(&CombinedIndex, OS);
+  WriteFunctionSummaryToFile(CombinedIndex, OS);
   OS.close();
   return 0;
 }
   OS.close();
   return 0;
 }