Home | History | Annotate | Download | only in IR

Lines Matching defs:Summary

1 //===-- llvm/ModuleSummaryIndex.h - Module Summary Index --------*- C++ -*-===//
12 /// hold the module index and summary for function importing.
85 /// \brief Function and variable summary information to aid decisions and
100 /// types based on global summary-based analysis.
114 /// Kind of summary for use in dyn_cast<> et al.
126 /// parsing the per-module index for creation of the combined summary index,
150 /// Initialize the original name hash in this summary.
153 /// Which kind of summary subclass this is.
171 /// Sets the linkage to the value determined by global summary-based
177 /// Return true if this summary is for a GlobalValue that needs promotion
204 /// \brief Alias summary information.
209 /// Summary constructors.
212 /// Check if this is an alias summary.
224 assert(AliaseeSummary && "Unexpected missing aliasee summary");
229 /// \brief Function summary information to aid decisions and implementation of
238 /// during the initial compile step when the summary index is first built.
245 /// Summary constructors.
249 /// Check if this is a function summary.
283 /// \brief Global variable summary information to aid decisions and
287 /// but is a placeholder as additional info may be added to the summary
292 /// Summary constructors.
295 /// Check if this is a global variable summary.
304 /// List of global value summary structures for a particular value held
309 /// Map from global value GUID to corresponding summary structures.
317 /// Type used for iterating through the global value summary map.
326 /// Map of global value GUID to its summary, used to identify values defined in
327 /// a particular module, and provide efficient access to their summary.
334 /// Map from value name to list of summary instances for values of that
354 /// Get the list of global value summary objects for a given value name.
359 /// Get the list of global value summary objects for a given value name.
365 /// Get the list of global value summary objects for a given value GUID.
371 /// Add a global value summary for a value of the given name.
373 std::unique_ptr<GlobalValueSummary> Summary) {
375 std::move(Summary));
378 /// Add a global value summary for a value of the given GUID.
380 std::unique_ptr<GlobalValueSummary> Summary) {
381 GlobalValueMap[ValueGUID].push_back(std::move(Summary));
384 /// Find the summary for global \p GUID in module \p ModuleId, or nullptr if
390 return nullptr; // This function does not have a summary
392 auto Summary =
394 [&](const std::unique_ptr<GlobalValueSummary> &Summary) {
395 return Summary->modulePath() == ModuleId;
397 if (Summary == CalleeInfoList->second.end())
399 return Summary->get();
439 /// Add the given per-module index into this module index/summary,
487 /// (GUID -> Summary).
492 /// Summary).