[ThinLTO] Use flags from summary when writing variable summary (NFC)
authorTeresa Johnson <tejohnson@google.com>
Fri, 28 Oct 2016 19:36:00 +0000 (19:36 +0000)
committerTeresa Johnson <tejohnson@google.com>
Fri, 28 Oct 2016 19:36:00 +0000 (19:36 +0000)
We already read the flags out of the summary when writing the summary
records for functions and aliases, do the same for variables.

This is an NFC change for now since the flags computed on the fly from
the GlobalValue currently will always match those in the summary
already, but once I send a follow-on patch to set the NoRename flag for
locals in the llvm.used set this becomes a necessary change.

llvm-svn: 285433

llvm/lib/Bitcode/Writer/BitcodeWriter.cpp

index 62008c42d3d663adf8e68c8e0dd9088f21b41a5d..bea54ca1444e578aeda2bde1df6750d6040dab20 100644 (file)
@@ -3331,9 +3331,9 @@ void ModuleBitcodeWriter::writeModuleLevelReferences(
   if (V.isDeclaration())
     return;
   NameVals.push_back(VE.getValueID(&V));
-  NameVals.push_back(getEncodedGVSummaryFlags(V));
   auto *Summary = Index->getGlobalValueSummary(V);
   GlobalVarSummary *VS = cast<GlobalVarSummary>(Summary);
+  NameVals.push_back(getEncodedGVSummaryFlags(VS->flags()));
 
   unsigned SizeBeforeRefs = NameVals.size();
   for (auto &RI : VS->refs())