Update clang to r339409.
Change-Id: I800772d2d838223be1f6b40d490c4591b937fca2
diff --git a/linux-x64/clang/include/llvm/Passes/PassBuilder.h b/linux-x64/clang/include/llvm/Passes/PassBuilder.h
index 5efcda0..24a93bc 100644
--- a/linux-x64/clang/include/llvm/Passes/PassBuilder.h
+++ b/linux-x64/clang/include/llvm/Passes/PassBuilder.h
@@ -27,6 +27,7 @@
class StringRef;
class AAManager;
class TargetMachine;
+class ModuleSummaryIndex;
/// A struct capturing PGO tunables.
struct PGOOptions {
@@ -48,7 +49,7 @@
bool SamplePGOSupport;
};
-/// \brief This class provides access to building LLVM's passes.
+/// This class provides access to building LLVM's passes.
///
/// It's members provide the baseline state available to passes during their
/// construction. The \c PassRegistry.def file specifies how to construct all
@@ -59,7 +60,7 @@
Optional<PGOOptions> PGOOpt;
public:
- /// \brief A struct to capture parsed pass pipeline names.
+ /// A struct to capture parsed pass pipeline names.
///
/// A pipeline is defined as a series of names, each of which may in itself
/// recursively contain a nested pipeline. A name is either the name of a pass
@@ -72,7 +73,7 @@
std::vector<PipelineElement> InnerPipeline;
};
- /// \brief ThinLTO phase.
+ /// ThinLTO phase.
///
/// This enumerates the LLVM ThinLTO optimization phases.
enum class ThinLTOPhase {
@@ -84,7 +85,7 @@
PostLink
};
- /// \brief LLVM-provided high-level optimization levels.
+ /// LLVM-provided high-level optimization levels.
///
/// This enumerates the LLVM-provided high-level optimization levels. Each
/// level has a specific goal and rationale.
@@ -174,7 +175,7 @@
Optional<PGOOptions> PGOOpt = None)
: TM(TM), PGOOpt(PGOOpt) {}
- /// \brief Cross register the analysis managers through their proxies.
+ /// Cross register the analysis managers through their proxies.
///
/// This is an interface that can be used to cross register each
// AnalysisManager with all the others analysis managers.
@@ -183,7 +184,7 @@
CGSCCAnalysisManager &CGAM,
ModuleAnalysisManager &MAM);
- /// \brief Registers all available module analysis passes.
+ /// Registers all available module analysis passes.
///
/// This is an interface that can be used to populate a \c
/// ModuleAnalysisManager with all registered module analyses. Callers can
@@ -191,7 +192,7 @@
/// pre-register analyses and this will not override those.
void registerModuleAnalyses(ModuleAnalysisManager &MAM);
- /// \brief Registers all available CGSCC analysis passes.
+ /// Registers all available CGSCC analysis passes.
///
/// This is an interface that can be used to populate a \c CGSCCAnalysisManager
/// with all registered CGSCC analyses. Callers can still manually register any
@@ -199,7 +200,7 @@
/// not override those.
void registerCGSCCAnalyses(CGSCCAnalysisManager &CGAM);
- /// \brief Registers all available function analysis passes.
+ /// Registers all available function analysis passes.
///
/// This is an interface that can be used to populate a \c
/// FunctionAnalysisManager with all registered function analyses. Callers can
@@ -207,7 +208,7 @@
/// pre-register analyses and this will not override those.
void registerFunctionAnalyses(FunctionAnalysisManager &FAM);
- /// \brief Registers all available loop analysis passes.
+ /// Registers all available loop analysis passes.
///
/// This is an interface that can be used to populate a \c LoopAnalysisManager
/// with all registered loop analyses. Callers can still manually register any
@@ -310,8 +311,9 @@
/// only intended for use when attempting to optimize code. If frontends
/// require some transformations for semantic reasons, they should explicitly
/// build them.
- ModulePassManager buildThinLTODefaultPipeline(OptimizationLevel Level,
- bool DebugLogging = false);
+ ModulePassManager
+ buildThinLTODefaultPipeline(OptimizationLevel Level, bool DebugLogging,
+ const ModuleSummaryIndex *ImportSummary);
/// Build a pre-link, LTO-targeting default optimization pipeline to a pass
/// manager.
@@ -340,13 +342,14 @@
/// require some transformations for semantic reasons, they should explicitly
/// build them.
ModulePassManager buildLTODefaultPipeline(OptimizationLevel Level,
- bool DebugLogging = false);
+ bool DebugLogging,
+ ModuleSummaryIndex *ExportSummary);
/// Build the default `AAManager` with the default alias analysis pipeline
/// registered.
AAManager buildDefaultAAPipeline();
- /// \brief Parse a textual pass pipeline description into a \c
+ /// Parse a textual pass pipeline description into a \c
/// ModulePassManager.
///
/// The format of the textual pass pipeline description looks something like:
@@ -410,7 +413,7 @@
/// returns false.
bool parseAAPipeline(AAManager &AA, StringRef PipelineText);
- /// \brief Register a callback for a default optimizer pipeline extension
+ /// Register a callback for a default optimizer pipeline extension
/// point
///
/// This extension point allows adding passes that perform peephole
@@ -421,7 +424,7 @@
PeepholeEPCallbacks.push_back(C);
}
- /// \brief Register a callback for a default optimizer pipeline extension
+ /// Register a callback for a default optimizer pipeline extension
/// point
///
/// This extension point allows adding late loop canonicalization and
@@ -435,7 +438,7 @@
LateLoopOptimizationsEPCallbacks.push_back(C);
}
- /// \brief Register a callback for a default optimizer pipeline extension
+ /// Register a callback for a default optimizer pipeline extension
/// point
///
/// This extension point allows adding loop passes to the end of the loop
@@ -445,7 +448,7 @@
LoopOptimizerEndEPCallbacks.push_back(C);
}
- /// \brief Register a callback for a default optimizer pipeline extension
+ /// Register a callback for a default optimizer pipeline extension
/// point
///
/// This extension point allows adding optimization passes after most of the
@@ -455,7 +458,7 @@
ScalarOptimizerLateEPCallbacks.push_back(C);
}
- /// \brief Register a callback for a default optimizer pipeline extension
+ /// Register a callback for a default optimizer pipeline extension
/// point
///
/// This extension point allows adding CallGraphSCC passes at the end of the
@@ -466,7 +469,7 @@
CGSCCOptimizerLateEPCallbacks.push_back(C);
}
- /// \brief Register a callback for a default optimizer pipeline extension
+ /// Register a callback for a default optimizer pipeline extension
/// point
///
/// This extension point allows adding optimization passes before the
@@ -487,7 +490,7 @@
PipelineStartEPCallbacks.push_back(C);
}
- /// \brief Register a callback for parsing an AliasAnalysis Name to populate
+ /// Register a callback for parsing an AliasAnalysis Name to populate
/// the given AAManager \p AA
void registerParseAACallback(
const std::function<bool(StringRef Name, AAManager &AA)> &C) {
@@ -541,7 +544,7 @@
}
/// @}}
- /// \brief Register a callback for a top-level pipeline entry.
+ /// Register a callback for a top-level pipeline entry.
///
/// If the PassManager type is not given at the top level of the pipeline
/// text, this Callback should be used to determine the appropriate stack of